载入中...
搜索中...
未找到
eve::voxel::Voxel类 参考

High-performance voxel rendering module. 更多...

#include <Voxel.h>

类 eve::voxel::Voxel 继承关系图:
eve::Module

Public 成员函数

 Module_REG (Voxel)
 
 Voxel ()=default
 
 ~Voxel () override=default
 
int getChunkSize () const
 
CubeTypeRegistrynewCubeTypes ()
 返回一个新的方块类型注册表(由调用者持有 / 脚本持有)。
 
VoxelWorldnewWorld (const CubeTypeRegistry *types=nullptr)
 创建世界;内部拷贝注册表(传 nullptr 表示空注册表,类型 id 即纹理 id)。
 
- Public 成员函数 继承自 eve::Module
virtual ~Module ()
 
virtual std::string getName () const =0
 

详细描述

High-performance voxel rendering module.

  • 32³ chunks, greedy-meshed into face rectangles
  • Each rect packed into one uint32 (xyz + wh + tex)
  • Six per-chunk face buffers (pos/neg X/Y/Z)
  • Camera frustum + view-range + face-orientation cull → instanced draws

门面只负责「组织世界」与「定义方块类型」;打包 / 网格化等实现细节 归渲染侧与内部头文件。方块类型由注册表定义,创建世界时传入。

Script: voxel <- eve.Voxel(); types <- voxel.newCubeTypes(); world <- voxel.newWorld(types);

在文件 Voxel.h29 行定义.

构造及析构函数说明

◆ Voxel()

eve::voxel::Voxel::Voxel ( )
default

◆ ~Voxel()

eve::voxel::Voxel::~Voxel ( )
overridedefault

成员函数说明

◆ getChunkSize()

int eve::voxel::Voxel::getChunkSize ( ) const
inline

在文件 Voxel.h35 行定义.

引用了 eve::voxel::kChunkSize.

◆ Module_REG()

eve::voxel::Voxel::Module_REG ( Voxel  )

◆ newCubeTypes()

CubeTypeRegistry * eve::voxel::Voxel::newCubeTypes ( )

返回一个新的方块类型注册表(由调用者持有 / 脚本持有)。

在文件 Voxel.cpp16 行定义.

◆ newWorld()

VoxelWorld * eve::voxel::Voxel::newWorld ( const CubeTypeRegistry types = nullptr)

创建世界;内部拷贝注册表(传 nullptr 表示空注册表,类型 id 即纹理 id)。

在文件 Voxel.cpp18 行定义.


该类的文档由以下文件生成: