载入中...
搜索中...
未找到
VoxelWorldTarget.h
浏览该文件的文档.
1#pragma once
2#include "common/Export.h"
3
4
6
7#include <memory>
8#include <string>
9
10namespace eve::voxel {
11class VoxelWorld;
12}
13namespace eve::voxel_editing {
14
18public:
22 editing::TargetId targetId() const override { return editing::TargetId(id_); }
24 std::uint64_t revision() const override;
26 editing::EditRegion dirtyRegion() const override { return dirty_.xzRegion(); }
28 void clearDirtyRegion() override { dirty_.clear(); }
30 editing::TargetDescriptor describe() const override;
35 void* queryCapability(const editing::CapabilityId& capability) override;
37 int readInt3(int x, int y, int z) const override;
39 [[nodiscard]] editing::FieldWriteStatus writeInt3(int x, int y, int z, int value) override;
41 editing::EditVolume dirtyVolume() const override { return dirty_; }
43 void clearDirtyVolume() override { dirty_.clear(); }
44
45private:
46 std::string id_;
47 voxel::VoxelWorld* world_ = nullptr;
49};
50
57[[nodiscard]] EVENGINE_API_ORCHESTRATION std::unique_ptr<VoxelWorldTarget> createVoxelWorldTarget(
58 std::string id, voxel::VoxelWorld* world);
59
60} // namespace eve::voxel_editing
double value
float y
Definition AnimClip.cpp:738
float x
Definition AnimClip.cpp:738
float z
Definition AnimClip.cpp:738
#define EVENGINE_API_ORCHESTRATION
Definition Export.h:111
World3D * world
std::uint64_t revision
UUID-backed identifier adapter for legacy textual boundaries.
Definition Identity.h:314
IEditableTarget public API.
Stable capability for sparse integer volumes.
Sparse chunk map + visibility selection (frustum + distance + face orientation). Meshing is neighbor-...
Definition VoxelWorld.h:60
Non-owning authoring adapter from a live voxel world to the volume protocol.
editing::EditVolume dirtyVolume() const override
Dirty volume.
editing::EditRegion dirtyRegion() const override
Dirty region.
void clearDirtyRegion() override
Clears dirty region.
editing::TargetId targetId() const override
Target id.
void clearDirtyVolume() override
Clears dirty volume.
FieldWriteStatus
FieldWriteStatus public API.
std::unique_ptr< VoxelWorldTarget > createVoxelWorldTarget(std::string id, voxel::VoxelWorld *world)
Create a voxel-world adapter.
方块类型定义:名字、各面图集纹理、方向性、组合声明。 方向性方块在注册时按 orientation 绕 Y 轴展开成多个"具体类型"变体, 每个变体持有旋转后的各面纹理;渲染端只消费纹理 id,不接触 ...
Definition Chunk.h:12
EditRegion public API.
Integer axis-aligned volume invalidated by a 3D edit.
Stable discovery metadata exposed by every editable target.