Unravel Engine C++ Reference
Loading...
Searching...
No Matches
gizmo_physics_component.cpp
Go to the documentation of this file.
4namespace unravel
5{
6
7void gizmo_physics_component::draw(rtti::context& ctx, entt::meta_any& var, const camera& cam, gfx::dd_raii& dd)
8{
10 auto& data = var.cast<physics_component&>();
11
12 auto owner = data.get_owner();
13 const auto& transform = owner.get<transform_component>();
14 const auto& shape = data.get_shapes();
15 const auto& world_transform = transform.get_transform_global();
16
18 uint32_t color = 0x8800ff00;
19
20 if(!data.is_autoscaled())
21 {
22 auto trans = world_transform;
23 trans.reset_scale();
24 dd.encoder.pushTransform((const float*)trans);
25
26 }
27 else
28 {
29 dd.encoder.pushTransform((const float*)world_transform);
30
31 }
32
33 dd.encoder.setColor(color);
34 dd.encoder.setWireframe(true);
37}
38
40 entt::meta_any& var,
41 const camera& cam,
42 gfx::dd_raii& dd)
43{
44}
45} // namespace unravel
Class representing a camera. Contains functionality for manipulating and updating a camera....
Definition camera.h:35
auto get_owner() const noexcept -> entt::const_handle
Gets the owner of the component.
Component that handles physics properties and behaviors.
Component that handles transformations (position, rotation, scale, etc.) in the ACE framework.
auto as_derived(meta_any &obj) -> bool
void draw(DebugDrawEncoder &dde, const physics_sphere_shape &sh)
Definition gizmos.cpp:12
void setColor(uint32_t _abgr)
void setWireframe(bool _wireframe)
void pushTransform(const void *_mtx)
DebugDrawEncoder encoder
Definition debugdraw.h:15
void draw(rtti::context &ctx, entt::meta_any &var, const camera &cam, gfx::dd_raii &dd) override
void draw_billboard(rtti::context &ctx, entt::meta_any &var, const camera &cam, gfx::dd_raii &dd) override