载入中...
搜索中...
未找到
eve::stylize::AttackVfxRuntime::Impl结构体 参考

类

struct  LiveLayer
 
struct  LivePhase
 
struct  Slot
 

Public 成员函数

Result< AttackVfxInstanceState * > resolve (AttackVfxHandle handle)
 
const AttackVfxInstanceState * peek (AttackVfxHandle handle) const noexcept
 
Result< LogicalId > resolveSkinId (const AttackVfxRecipe &recipe, const AttackVfxRequest &request) const
 
const AttackVfxSkin * skinFor (const AttackVfxInstanceState &state) const
 
AttackVfxLayerStartRequest makeLayerRequest (const AttackVfxInstanceState &state, AttackVfxPhaseKind phase, std::size_t phaseIndex, std::size_t layerIndex, const AttackVfxLayer *layer, const AttackVfxSkin *skin) const
 
Result< void > startOneLayer (Slot &slot, std::size_t phaseIndex, const AttackVfxPhase &authored, const AttackVfxLayer &layer, std::size_t layerIndex, const AttackVfxSkin *skin, AttackVfxFrame &frame)
 
Result< void > startPhaseLayers (Slot &slot, std::size_t phaseIndex, AttackVfxFrame &frame)
 
Result< void > stopLiveLayer (LiveLayer &live, AttackVfxStopBehavior behavior)
 
Result< void > stopPhaseLayers (Slot &slot, std::size_t phaseIndex, std::optional< AttackVfxStopBehavior > behaviorOverride=std::nullopt)
 
Result< void > clearDraining (Slot &slot, AttackVfxStopBehavior behavior)
 
Result< void > updateLiveLayer (Slot &slot, LiveLayer &live, double dtSeconds)
 
Result< void > updatePhaseLayers (Slot &slot, std::size_t phaseIndex, double dtSeconds)
 
Result< void > updateDraining (Slot &slot, double dtSeconds)
 
Result< void > enterPhase (Slot &slot, std::size_t phaseIndex, AttackVfxFrame &frame)
 
Result< void > exitPhase (Slot &slot, std::size_t phaseIndex, AttackVfxFrame &frame, std::string_view cue, std::optional< AttackVfxStopBehavior > behaviorOverride=std::nullopt)
 
void armTimedPhases (AttackVfxInstanceState &state)
 
Result< void > applyCue (Slot &slot, std::string_view cue, AttackVfxFrame &frame)
 
Result< void > finishInstance (std::size_t slotIndex, AttackVfxFrame &frame, std::string_view cue, bool clearImmediately)
 
void stopAllOccupied ()
 

Public 属性

std::vector< Slot > slots {kDefaultCapacity}
 
std::unordered_map< std::string, AttackVfxRecipe > recipes
 
std::unordered_map< std::string, AttackVfxSkin > skins
 
std::uint64_t tickSerial = 0
 

详细描述

在文件 AttackVfxRuntime.cpp 第 26 行定义.

成员函数说明

◆ applyCue()

◆ armTimedPhases()

void eve::stylize::AttackVfxRuntime::Impl::armTimedPhases ( AttackVfxInstanceState &  state)
inline

在文件 AttackVfxRuntime.cpp 第 329 行定义.

引用了 recipes , 以及 state.

◆ clearDraining()

Result< void > eve::stylize::AttackVfxRuntime::Impl::clearDraining ( Slot &  slot,
AttackVfxStopBehavior  behavior 
)
inline

◆ enterPhase()

Result< void > eve::stylize::AttackVfxRuntime::Impl::enterPhase ( Slot &  slot,
std::size_t  phaseIndex,
AttackVfxFrame &  frame 
)
inline

◆ exitPhase()

Result< void > eve::stylize::AttackVfxRuntime::Impl::exitPhase ( Slot &  slot,
std::size_t  phaseIndex,
AttackVfxFrame &  frame,
std::string_view  cue,
std::optional< AttackVfxStopBehavior >  behaviorOverride = std::nullopt 
)
inline

◆ finishInstance()

Result< void > eve::stylize::AttackVfxRuntime::Impl::finishInstance ( std::size_t  slotIndex,
AttackVfxFrame &  frame,
std::string_view  cue,
bool  clearImmediately 
)
inline

◆ makeLayerRequest()

AttackVfxLayerStartRequest eve::stylize::AttackVfxRuntime::Impl::makeLayerRequest ( const AttackVfxInstanceState &  state,
AttackVfxPhaseKind  phase,
std::size_t  phaseIndex,
std::size_t  layerIndex,
const AttackVfxLayer *  layer,
const AttackVfxSkin *  skin 
) const
inline

在文件 AttackVfxRuntime.cpp 第 88 行定义.

引用了 eve::stylize::AttackVfxLayerStartRequest::instance, layer, phase, request, state , 以及 tickSerial.

被这些函数引用 startOneLayer() , 以及 updateLiveLayer().

◆ peek()

const AttackVfxInstanceState * eve::stylize::AttackVfxRuntime::Impl::peek ( AttackVfxHandle  handle) const
inlinenoexcept

在文件 AttackVfxRuntime.cpp 第 61 行定义.

引用了 handle , 以及 slots.

◆ resolve()

Result< AttackVfxInstanceState * > eve::stylize::AttackVfxRuntime::Impl::resolve ( AttackVfxHandle  handle)
inline

◆ resolveSkinId()

Result< LogicalId > eve::stylize::AttackVfxRuntime::Impl::resolveSkinId ( const AttackVfxRecipe &  recipe,
const AttackVfxRequest &  request 
) const
inline

◆ skinFor()

const AttackVfxSkin * eve::stylize::AttackVfxRuntime::Impl::skinFor ( const AttackVfxInstanceState &  state) const
inline

在文件 AttackVfxRuntime.cpp 第 82 行定义.

引用了 skins , 以及 state.

被这些函数引用 startPhaseLayers(), updateDraining() , 以及 updateLiveLayer().

◆ startOneLayer()

◆ startPhaseLayers()

◆ stopAllOccupied()

void eve::stylize::AttackVfxRuntime::Impl::stopAllOccupied ( )
inline

在文件 AttackVfxRuntime.cpp 第 410 行定义.

引用了 draining, finishInstance(), slots , 以及 state.

◆ stopLiveLayer()

◆ stopPhaseLayers()

Result< void > eve::stylize::AttackVfxRuntime::Impl::stopPhaseLayers ( Slot &  slot,
std::size_t  phaseIndex,
std::optional< AttackVfxStopBehavior >  behaviorOverride = std::nullopt 
)
inline

◆ updateDraining()

◆ updateLiveLayer()

◆ updatePhaseLayers()

Result< void > eve::stylize::AttackVfxRuntime::Impl::updatePhaseLayers ( Slot &  slot,
std::size_t  phaseIndex,
double  dtSeconds 
)
inline

类成员变量说明

◆ recipes

std::unordered_map<std::string, AttackVfxRecipe> eve::stylize::AttackVfxRuntime::Impl::recipes

在文件 AttackVfxRuntime.cpp 第 48 行定义.

被这些函数引用 applyCue(), armTimedPhases(), startPhaseLayers() , 以及 updateLiveLayer().

◆ skins

std::unordered_map<std::string, AttackVfxSkin> eve::stylize::AttackVfxRuntime::Impl::skins

在文件 AttackVfxRuntime.cpp 第 49 行定义.

被这些函数引用 resolveSkinId() , 以及 skinFor().

◆ slots

std::vector<Slot> eve::stylize::AttackVfxRuntime::Impl::slots {kDefaultCapacity}

在文件 AttackVfxRuntime.cpp 第 47 行定义.

被这些函数引用 finishInstance(), peek(), resolve() , 以及 stopAllOccupied().

◆ tickSerial

std::uint64_t eve::stylize::AttackVfxRuntime::Impl::tickSerial = 0

在文件 AttackVfxRuntime.cpp 第 50 行定义.

被这些函数引用 makeLayerRequest() , 以及 updateDraining().


该结构体的文档由以下文件生成: