程序化房屋生成模块(eve.HouseGen):组件库 + 布局生成。 更多...
#include <HouseGen.h>
Public 成员函数 | |
| eve::Result< void > | loadComponentsFromJson (const std::string &json) |
| 从 JSON / 文件加载房屋组件库。 | |
| eve::Result< void > | loadComponentsFromFile (const std::string &filename) |
| void | clearComponents () |
| 清空组件库。 | |
| int | getComponentCount () const |
| 组件数量。 | |
| HouseRequest | newRequest () const |
| 工厂:生成请求 / 布局。 | |
| HouseLayout | newLayout () const |
| eve::Result< void > | generate (const HouseRequest &request, HouseLayout &layout) |
| 按请求生成布局;失败返回结构化诊断。 | |
| eve::Result< void > | instantiate (const HouseLayout &layout, graphics::Graphics &gfx, model3d::Model3D &models) const |
| Instantiate a generated layout through the current component library. | |
| HouseComponentLibrary & | library () |
| 组件库(可直接访问)。 | |
| const HouseComponentLibrary & | library () const |
| Library. | |
静态 Public 成员函数 | |
| static void | expose (ssq::Class &cls) |
详细描述
程序化房屋生成模块(eve.HouseGen):组件库 + 布局生成。
在文件 HouseGen.h 第 15 行定义.
成员函数说明
◆ clearComponents()
| void eve::housegen::HouseGen::clearComponents | ( | ) |
清空组件库。
在文件 HouseGen.cpp 第 19 行定义.
引用了 eve::housegen::HouseComponentLibrary::clear().
被这些函数引用 expose().
◆ expose()
|
static |
在文件 HouseGen.cpp 第 125 行定义.
引用了 clearComponents(), cls, eve::Diagnostic::error(), getComponentCount(), eve::InvalidArgument, layout, newLayout(), newRequest(), eve::script::projectResult(), request, value , 以及 vm.
◆ generate()
| eve::Result< void > eve::housegen::HouseGen::generate | ( | const HouseRequest & | request, |
| HouseLayout & | layout | ||
| ) |
按请求生成布局;失败返回结构化诊断。
在文件 HouseGen.cpp 第 23 行定义.
引用了 eve::housegen::HouseGenerator::generate(), layout , 以及 request.
◆ getComponentCount()
| int eve::housegen::HouseGen::getComponentCount | ( | ) | const |
组件数量。
在文件 HouseGen.cpp 第 20 行定义.
引用了 eve::housegen::HouseComponentLibrary::count().
被这些函数引用 expose().
◆ instantiate()
| eve::Result< void > eve::housegen::HouseGen::instantiate | ( | const HouseLayout & | layout, |
| graphics::Graphics & | gfx, | ||
| model3d::Model3D & | models | ||
| ) | const |
Instantiate a generated layout through the current component library.
- 返回
- Applied on complete ECS publication; failure rolls back every entity created by this call. @cost Linear in component instances plus model import and GPU resource creation for uncached assets.
在文件 HouseGen.cpp 第 118 行定义.
引用了 eve::Applied, eve::Result< T >::failure(), layout, eve::Result< void >::ok(), eve::Status::success() , 以及 eve::Result< T >::success().
◆ library() [1/2]
|
inline |
组件库(可直接访问)。
在文件 HouseGen.h 第 38 行定义.
◆ library() [2/2]
|
inline |
Library.
在文件 HouseGen.h 第 40 行定义.
◆ loadComponentsFromFile()
| eve::Result< void > eve::housegen::HouseGen::loadComponentsFromFile | ( | const std::string & | filename | ) |
在文件 HouseGen.cpp 第 16 行定义.
◆ loadComponentsFromJson()
| eve::Result< void > eve::housegen::HouseGen::loadComponentsFromJson | ( | const std::string & | json | ) |
从 JSON / 文件加载房屋组件库。
在文件 HouseGen.cpp 第 15 行定义.
◆ newLayout()
| HouseLayout eve::housegen::HouseGen::newLayout | ( | ) | const |
在文件 HouseGen.cpp 第 22 行定义.
被这些函数引用 expose().
◆ newRequest()
| HouseRequest eve::housegen::HouseGen::newRequest | ( | ) | const |
该类的文档由以下文件生成:
- src/modules/procgen/house/HouseGen.h
- src/modules/procgen/house/HouseGen.cpp