implement grid and heightmap with lambert shading

This commit is contained in:
2018-12-24 22:22:16 +01:00
parent 4d2706bfab
commit 52c87d9ec6
16 changed files with 297 additions and 101 deletions

View File

@@ -188,6 +188,18 @@ public:
return static_cast<T*>(found);
return nullptr;
}
template<class T = Node> std::shared_ptr<T> find_ref(const char* ids)
{
uint16_t id = const_hash(ids);
for (auto& c : m_children)
{
if (c->m_nodeID == id)
return std::static_pointer_cast<T>(c);
else if (auto found = c->find_ref(ids))
return std::static_pointer_cast<T>(found);
}
return nullptr;
}
template<class T> T* add_child()
{
auto* n = new T;