vkmEngine
1.0.0
A C++ game engine ·
vkmengine.com
Loading...
Searching...
No Matches
bone_socket_system.h
1
#pragma once
2
3
#include "core/system.h"
4
#include "debug/fault_latch.h"
5
6
namespace
Vkm::Engine {
7
17
class
BoneSocketSystem :
public
System {
18
public
:
19
BoneSocketSystem() =
default
;
20
~BoneSocketSystem()
override
=
default
;
21
22
BoneSocketSystem(
const
BoneSocketSystem& other) =
delete
;
23
BoneSocketSystem& operator=(
const
BoneSocketSystem& other) =
delete
;
24
25
BoneSocketSystem(BoneSocketSystem && other) =
delete
;
26
BoneSocketSystem& operator=(BoneSocketSystem && other) =
delete
;
27
28
public
:
29
void
update
(
FrameContext
& ctx)
override
;
30
31
private
:
37
void
placeSockets(
FrameContext
& ctx);
38
39
private
:
40
// Each is silent on screen (an unplaced socket stays where it was), so each is logged; one latch
41
// per fault, so one never silences another.
42
FaultLatch
m_noPublishedPose;
43
FaultLatch
m_noTransform;
44
FaultLatch
m_unrooted;
45
FaultLatch
m_noSkeleton;
46
FaultLatch
m_bonelessSkeleton;
47
FaultLatch
m_noBone;
48
};
49
50
}
// namespace Vkm::Engine
Vkm::Engine::BoneSocketSystem::update
void update(FrameContext &ctx) override
Execute this system for the current frame.
Vkm::Engine::FaultLatch
Names a recurring fault once per gap rather than once a frame.
Definition
fault_latch.h:11
Vkm::Engine::FrameContext
Per-frame state bundle passed to every system.
Definition
system.h:55
system
animation
bone_socket_system.h
Generated by
1.14.0