mirror of
https://github.com/enduro2d/enduro2d.git
synced 2025-12-15 00:11:55 +07:00
dummy camera gizmos component
This commit is contained in:
@@ -15,6 +15,8 @@
|
||||
namespace e2d
|
||||
{
|
||||
class camera final {
|
||||
public:
|
||||
class gizmos final {};
|
||||
public:
|
||||
camera() = default;
|
||||
|
||||
@@ -53,6 +55,20 @@ namespace e2d
|
||||
asset_dependencies& dependencies,
|
||||
const collect_context& ctx) const;
|
||||
};
|
||||
|
||||
template <>
|
||||
class factory_loader<camera::gizmos> final : factory_loader<> {
|
||||
public:
|
||||
static const char* schema_source;
|
||||
|
||||
bool operator()(
|
||||
camera::gizmos& component,
|
||||
const fill_context& ctx) const;
|
||||
|
||||
bool operator()(
|
||||
asset_dependencies& dependencies,
|
||||
const collect_context& ctx) const;
|
||||
};
|
||||
}
|
||||
|
||||
namespace e2d
|
||||
|
||||
@@ -18,8 +18,7 @@ namespace e2d
|
||||
{
|
||||
class label final {
|
||||
public:
|
||||
class dirty final {
|
||||
};
|
||||
class dirty final {};
|
||||
public:
|
||||
ENUM_HPP_CLASS_DECL(haligns, u8,
|
||||
(left)
|
||||
|
||||
@@ -1,7 +1,11 @@
|
||||
{
|
||||
"components" : {
|
||||
"named" : {
|
||||
"name" : "camera"
|
||||
},
|
||||
"camera" : {
|
||||
"background" : [1.0, 0.4, 0.0, 1.0]
|
||||
}
|
||||
},
|
||||
"camera.gizmos" : {}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,12 +3,7 @@
|
||||
"scene" : {}
|
||||
},
|
||||
"children" : [{
|
||||
"prototype" : "../prefabs/camera_prefab.json",
|
||||
"components" : {
|
||||
"named" : {
|
||||
"name" : "camera"
|
||||
}
|
||||
}
|
||||
"prototype" : "../prefabs/camera_prefab.json"
|
||||
},{
|
||||
"prototype" : "../prefabs/gnome_prefab.json",
|
||||
"components" : {
|
||||
|
||||
@@ -3,12 +3,7 @@
|
||||
"scene" : {}
|
||||
},
|
||||
"children" : [{
|
||||
"prototype" : "../prefabs/camera_prefab.json",
|
||||
"components" : {
|
||||
"named" : {
|
||||
"name" : "camera"
|
||||
}
|
||||
}
|
||||
"prototype" : "../prefabs/camera_prefab.json"
|
||||
},{
|
||||
"prototype" : "../prefabs/coin_prefab.json",
|
||||
"components" : {
|
||||
|
||||
@@ -76,11 +76,47 @@ namespace e2d
|
||||
}
|
||||
}
|
||||
|
||||
namespace e2d
|
||||
{
|
||||
const char* factory_loader<camera::gizmos>::schema_source = R"json({
|
||||
"type" : "object",
|
||||
"required" : [],
|
||||
"additionalProperties" : false,
|
||||
"properties" : {}
|
||||
})json";
|
||||
|
||||
bool factory_loader<camera::gizmos>::operator()(
|
||||
camera::gizmos& component,
|
||||
const fill_context& ctx) const
|
||||
{
|
||||
E2D_UNUSED(component, ctx);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool factory_loader<camera::gizmos>::operator()(
|
||||
asset_dependencies& dependencies,
|
||||
const collect_context& ctx) const
|
||||
{
|
||||
E2D_UNUSED(dependencies, ctx);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
namespace e2d
|
||||
{
|
||||
const char* component_inspector<camera>::title = "camera";
|
||||
|
||||
void component_inspector<camera>::operator()(gcomponent<camera>& c) const {
|
||||
if ( bool gizmos = c.owner().component<camera::gizmos>().exists();
|
||||
ImGui::Checkbox("gizmos", &gizmos) )
|
||||
{
|
||||
if ( gizmos ) {
|
||||
c.owner().component<camera::gizmos>().ensure();
|
||||
} else {
|
||||
c.owner().component<camera::gizmos>().remove();
|
||||
}
|
||||
}
|
||||
|
||||
if ( i32 depth = c->depth();
|
||||
ImGui::DragInt("depth", &depth) )
|
||||
{
|
||||
|
||||
@@ -178,6 +178,7 @@ namespace e2d
|
||||
.register_component<actor>("actor")
|
||||
.register_component<behaviour>("behaviour")
|
||||
.register_component<camera>("camera")
|
||||
.register_component<camera::gizmos>("camera.gizmos")
|
||||
.register_component<flipbook_player>("flipbook_player")
|
||||
.register_component<label>("label")
|
||||
.register_component<label::dirty>("label.dirty")
|
||||
@@ -194,6 +195,7 @@ namespace e2d
|
||||
.register_component<actor>("actor")
|
||||
.register_component<behaviour>("behaviour")
|
||||
.register_component<camera>("camera")
|
||||
//.register_component<camera::gizmos>("camera.gizmos")
|
||||
.register_component<flipbook_player>("flipbook_player")
|
||||
.register_component<label>("label")
|
||||
//.register_component<label::dirty>("label.dirty")
|
||||
|
||||
Reference in New Issue
Block a user