| 123456789101112131415161718192021222324252627282930313233 |
- #include "CmRenderQueue.h"
- #include "CmRenderOperation.h"
- namespace CamelotFramework
- {
- RenderQueue::RenderQueue()
- {
- }
- void RenderQueue::clear()
- {
- mRenderOperations.clear();
- mSortedRenderOps.clear();
- }
- void RenderQueue::add(const HMaterial& material, const HMesh& mesh, UINT32 submeshIdx, const Vector3& worldPosForSort)
- {
- // TODO - Make sure RenderOperations are cached so we dont allocate memory for them every frame
- mRenderOperations.push_back(RenderOperation());
- RenderOperation& renderOp = mRenderOperations.back();
- renderOp.material = material;
- renderOp.mesh = mesh;
- renderOp.worldPosition = worldPosForSort;
- renderOp.submeshIdx = submeshIdx;
- }
- const Vector<SortedRenderOp>::type& RenderQueue::getSortedRenderOps() const
- {
- return mSortedRenderOps;
- }
- }
|