BsRenderableProxy.h 674 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #pragma once
  2. #include "BsCorePrerequisites.h"
  3. #include "BsMaterialProxy.h"
  4. #include "BsBounds.h"
  5. #include "BsMatrix4.h"
  6. namespace BansheeEngine
  7. {
  8. // TODO UNDOCUMENTED
  9. class BS_CORE_EXPORT RenderableSubProxy
  10. {
  11. public:
  12. RenderableSubProxy();
  13. void markBoundsDirty() { mBoundsDirty = true; }
  14. void markBoundsClean() { mBoundsDirty = false; }
  15. bool getBoundsDirty() const { return mBoundsDirty; }
  16. Bounds calculateWorldBounds();
  17. UINT32 id;
  18. Matrix4 worldTransform;
  19. MeshProxy* mesh;
  20. MaterialProxy material;
  21. UINT64 layer;
  22. private:
  23. bool mBoundsDirty;
  24. };
  25. class BS_CORE_EXPORT RenderableProxy
  26. {
  27. public:
  28. Vector<RenderableSubProxy*> subProxies;
  29. };
  30. }