Files
DarkflameServer/dZoneManager/dZMCommon.h
Aaron Kimbrell 7dd918d894 feat: add eSceneType enum, filter scene graph to general scenes, zone parsing improvements
- Add eSceneType enum (General, Audio) replacing raw uint32_t in SceneRef
- Filter BuildSceneGraph to only include General scenes
- Skip transitions referencing non-general scenes in adjacency graph
- Rename SceneRef unknown fields to scenePosition/sceneRadius
- Zone parsing and Level improvements

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-21 11:38:47 -05:00

36 lines
665 B
C++

#pragma once
#include "dCommonVars.h"
#include "NiPoint3.h"
#include "NiQuaternion.h"
#include "LDFFormat.h"
#include <vector>
#include <string>
#include <array>
struct RenderAttr {
std::string name;
uint32_t numFloats{};
bool isColor{};
std::array<float, 4> values{};
};
struct RenderTechnique {
std::string name;
std::vector<RenderAttr> attrs;
};
struct SceneObject {
LWOOBJID id;
LOT lot;
uint32_t nodeType;
uint32_t glomId;
NiPoint3 position;
NiQuaternion rotation = QuatUtils::IDENTITY;
float scale = 1.0f;
RenderTechnique renderTechnique;
LwoNameValue settings;
};
#define LOT_MARKER_PLAYER_START 1931
#define LOT_MARKET_CAMERA_TARGET 2182