Graphics/GraphicsComponent: Add GetAABB method
This commit is contained in:
parent
44aec8d5a5
commit
0656b388bc
|
|
@ -34,6 +34,7 @@ namespace Nz
|
||||||
|
|
||||||
inline void DetachRenderable(const std::shared_ptr<InstancedRenderable>& renderable);
|
inline void DetachRenderable(const std::shared_ptr<InstancedRenderable>& renderable);
|
||||||
|
|
||||||
|
inline Boxf GetAABB() const;
|
||||||
inline const Renderable& GetRenderableEntry(std::size_t renderableIndex) const;
|
inline const Renderable& GetRenderableEntry(std::size_t renderableIndex) const;
|
||||||
inline const std::array<Renderable, MaxRenderableCount>& GetRenderables() const;
|
inline const std::array<Renderable, MaxRenderableCount>& GetRenderables() const;
|
||||||
inline const Recti& GetScissorBox() const;
|
inline const Recti& GetScissorBox() const;
|
||||||
|
|
|
||||||
|
|
@ -53,6 +53,18 @@ namespace Nz
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
inline Boxf GraphicsComponent::GetAABB() const
|
||||||
|
{
|
||||||
|
if (m_renderables.empty())
|
||||||
|
return Boxf::Zero();
|
||||||
|
|
||||||
|
Boxf aabb = m_renderables.front().renderable->GetAABB();
|
||||||
|
for (std::size_t i = 1; i < m_renderables.size(); ++i)
|
||||||
|
aabb.ExtendTo(m_renderables[i].renderable->GetAABB());
|
||||||
|
|
||||||
|
return aabb;
|
||||||
|
}
|
||||||
|
|
||||||
inline auto GraphicsComponent::GetRenderableEntry(std::size_t renderableIndex) const -> const Renderable&
|
inline auto GraphicsComponent::GetRenderableEntry(std::size_t renderableIndex) const -> const Renderable&
|
||||||
{
|
{
|
||||||
assert(renderableIndex < m_renderables.size());
|
assert(renderableIndex < m_renderables.size());
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue