mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-06-22 06:34:26 +00:00
- 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>
36 lines
665 B
C++
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
|