载入中...
搜索中...
未找到
eve::procgen::PcgMeshLodSet类 参考

Owned generic mesh LOD output generated with Pcg's independent-per-level policy. 更多...

#include <PcgMeshLod.h>

Public 成员函数

int getLevelCount () const noexcept
 Return the number of complete generated levels.
 
float getTransitionHeight (int index) const noexcept
 Return one level's transition height, or -1 for an invalid index.
 
float getFadeWidth (int index) const noexcept
 Return one level's fade width, or -1 for an invalid index.
 
float getQuality (int index) const noexcept
 Return one level's quality, or -1 for an invalid index.
 
int selectLevel (float relativeHeight) const noexcept
 Select a level from projected relative height; -1 means culled and -2 invalid input.
 
float getSwitchDistance (int level, float worldDiameter, float verticalFovDegrees) const noexcept
 Convert one level threshold to camera distance, or -1 for invalid input.
 
const MeshBuild * meshAt (int index) const noexcept
 Borrow a generated mesh, or null for an invalid index. @ownership The set retains ownership. @lifetime Valid until replacement, move or destruction of this set.
 
const PcgMeshLodRendererState * rendererStateAt (int index) const noexcept
 Borrow one generated level's immutable renderer state, or null.
 
int getFadeMode () const noexcept
 Return Unity LODFadeMode copied from the build profile.
 
bool getAnimateCrossFading () const noexcept
 Return whether transitions use injected time.
 
float getCrossFadeAnimationDuration () const noexcept
 Return injected-time transition duration.
 

友元

EVENGINE_API_DOMAINS Result< void > buildPcgMeshLodsInto (PcgMeshLodSet &, const MeshBuild &, const PcgMeshLodProfile &)
 Generate a complete generic Pcg LOD chain and publish it atomically.
 

详细描述

Owned generic mesh LOD output generated with Pcg's independent-per-level policy.

Every generated level is simplified from the same immutable source mesh, matching LODGenerator.CreateLevelRenderer; levels are not simplified sequentially. The set owns all CPU meshes and values and is safe to move. Callers serialize access.

在文件 PcgMeshLod.h 第 144 行定义.

成员函数说明

◆ getAnimateCrossFading()

bool eve::procgen::PcgMeshLodSet::getAnimateCrossFading ( ) const
inlinenoexcept

Return whether transitions use injected time.

在文件 PcgMeshLod.h 第 167 行定义.

被这些函数引用 eve::procgen::Procgen::configurePcgMeshLods().

◆ getCrossFadeAnimationDuration()

float eve::procgen::PcgMeshLodSet::getCrossFadeAnimationDuration ( ) const
inlinenoexcept

Return injected-time transition duration.

在文件 PcgMeshLod.h 第 169 行定义.

被这些函数引用 eve::procgen::Procgen::configurePcgMeshLods().

◆ getFadeMode()

int eve::procgen::PcgMeshLodSet::getFadeMode ( ) const
inlinenoexcept

Return Unity LODFadeMode copied from the build profile.

在文件 PcgMeshLod.h 第 165 行定义.

被这些函数引用 eve::procgen::Procgen::configurePcgMeshLods().

◆ getFadeWidth()

float eve::procgen::PcgMeshLodSet::getFadeWidth ( int  index) const
noexcept

Return one level's fade width, or -1 for an invalid index.

在文件 PcgMeshLod.cpp 第 202 行定义.

引用了 index.

被这些函数引用 eve::procgen::Procgen::configurePcgMeshLods().

◆ getLevelCount()

int eve::procgen::PcgMeshLodSet::getLevelCount ( ) const
inlinenoexcept

Return the number of complete generated levels.

在文件 PcgMeshLod.h 第 147 行定义.

被这些函数引用 eve::procgen::Procgen::configurePcgMeshLods().

◆ getQuality()

float eve::procgen::PcgMeshLodSet::getQuality ( int  index) const
noexcept

Return one level's quality, or -1 for an invalid index.

在文件 PcgMeshLod.cpp 第 206 行定义.

引用了 index.

◆ getSwitchDistance()

float eve::procgen::PcgMeshLodSet::getSwitchDistance ( int  level,
float  worldDiameter,
float  verticalFovDegrees 
) const
noexcept

Convert one level threshold to camera distance, or -1 for invalid input.

在文件 PcgMeshLod.cpp 第 223 行定义.

引用了 level.

被这些函数引用 eve::procgen::Procgen::configurePcgMeshLods().

◆ getTransitionHeight()

float eve::procgen::PcgMeshLodSet::getTransitionHeight ( int  index) const
noexcept

Return one level's transition height, or -1 for an invalid index.

在文件 PcgMeshLod.cpp 第 198 行定义.

引用了 index.

◆ meshAt()

const MeshBuild * eve::procgen::PcgMeshLodSet::meshAt ( int  index) const
noexcept

Borrow a generated mesh, or null for an invalid index. @ownership The set retains ownership. @lifetime Valid until replacement, move or destruction of this set.

在文件 PcgMeshLod.cpp 第 210 行定义.

引用了 index.

被这些函数引用 eve::procgen::Procgen::configurePcgMeshLods().

◆ rendererStateAt()

const PcgMeshLodRendererState * eve::procgen::PcgMeshLodSet::rendererStateAt ( int  index) const
noexcept

Borrow one generated level's immutable renderer state, or null.

在文件 PcgMeshLod.cpp 第 213 行定义.

引用了 index.

被这些函数引用 eve::procgen::Procgen::configurePcgMeshLods().

◆ selectLevel()

int eve::procgen::PcgMeshLodSet::selectLevel ( float  relativeHeight) const
noexcept

Select a level from projected relative height; -1 means culled and -2 invalid input.

在文件 PcgMeshLod.cpp 第 217 行定义.

友元及相关函数文档

◆ buildPcgMeshLodsInto

EVENGINE_API_DOMAINS Result< void > buildPcgMeshLodsInto ( PcgMeshLodSet &  ,
const MeshBuild &  ,
const PcgMeshLodProfile &   
)
friend

Generate a complete generic Pcg LOD chain and publish it atomically.

参数
outputReplaced only after every level has simplified successfully.
sourceImmutable source mesh; it may be a mesh borrowed from another owner.
profileImmutable owned settings with one through four descending levels.
返回
Success or a structured diagnostic without changing output. @thread Synchronous CPU operation; no callbacks or borrowed references are retained.

在文件 PcgMeshLod.cpp 第 232 行定义.


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