mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-06-22 14:44:22 +00:00
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>
This commit is contained in:
@@ -4,6 +4,20 @@
|
||||
#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;
|
||||
@@ -13,7 +27,7 @@ struct SceneObject {
|
||||
NiPoint3 position;
|
||||
NiQuaternion rotation = QuatUtils::IDENTITY;
|
||||
float scale = 1.0f;
|
||||
uint32_t value3;
|
||||
RenderTechnique renderTechnique;
|
||||
LwoNameValue settings;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user