Visualization Library v1.0.3A lightweight C++ OpenGL middleware for 2D/3D graphics |
[Download] [Tutorials] [All Classes] [Grouped Classes] |
The RenderQueue class collects a list of RenderToken objects to be sorted and rendered. More...
#include <RenderQueue.hpp>
Classes | |
class | Sorter |
Public Member Functions | |
RenderQueue () | |
const RenderToken * | at (int i) const |
RenderToken * | at (int i) |
RenderToken * | newToken (bool multipass) |
void | clear () |
bool | empty () |
int | size () const |
void | sort (RenderQueueSorter *sorter, Camera *camera) |
Protected Attributes | |
std::vector< ref< RenderToken > > | mList |
std::vector< ref< RenderToken > > | mListMP |
int | mSize |
int | mSizeMP |
The RenderQueue class collects a list of RenderToken objects to be sorted and rendered.
Definition at line 45 of file RenderQueue.hpp.
vl::RenderQueue::RenderQueue | ( | ) | [inline] |
Definition at line 50 of file RenderQueue.hpp.
References mList, mListMP, and VL_DEBUG_SET_OBJECT_NAME.
const RenderToken* vl::RenderQueue::at | ( | int | i ) | const [inline] |
Definition at line 57 of file RenderQueue.hpp.
References mList.
Referenced by vl::Renderer::render(), vl::EdgeRenderer::render(), vl::OcclusionCullRenderer::render_pass1(), vl::OcclusionCullRenderer::render_pass2(), and sort().
RenderToken* vl::RenderQueue::at | ( | int | i ) | [inline] |
Definition at line 59 of file RenderQueue.hpp.
References mList.
RenderToken* vl::RenderQueue::newToken | ( | bool | multipass ) | [inline] |
Definition at line 61 of file RenderQueue.hpp.
References mList, mListMP, mSize, and mSizeMP.
Referenced by vl::Rendering::fillRenderQueue().
void vl::RenderQueue::clear | ( | ) | [inline] |
Definition at line 79 of file RenderQueue.hpp.
References mSize, and mSizeMP.
Referenced by vl::Rendering::render().
bool vl::RenderQueue::empty | ( | ) | [inline] |
Definition at line 85 of file RenderQueue.hpp.
References mSize.
int vl::RenderQueue::size | ( | ) | const [inline] |
Definition at line 90 of file RenderQueue.hpp.
References mSize.
Referenced by vl::Renderer::render(), vl::EdgeRenderer::render(), vl::OcclusionCullRenderer::render_pass1(), vl::OcclusionCullRenderer::render_pass2(), and sort().
void vl::RenderQueue::sort | ( | RenderQueueSorter * | sorter, |
Camera * | camera | ||
) | [inline] |
Definition at line 95 of file RenderQueue.hpp.
References at(), vl::Renderable::boundingBox(), vl::AABB::center(), vl::RenderQueueSorter::confirmZCameraDistanceNeed(), vl::AABB::isNull(), vl::RenderToken::mActor, vl::RenderToken::mCameraDistance, vl::RenderQueueSorter::mightNeedZCameraDistance(), mList, vl::RenderToken::mRenderable, size(), vl::Actor::transform(), vl::Camera::viewMatrix(), VL_CHECK, and vl::Transform::worldMatrix().
Referenced by vl::Rendering::render().
std::vector< ref<RenderToken> > vl::RenderQueue::mList [protected] |
Definition at line 142 of file RenderQueue.hpp.
Referenced by at(), newToken(), RenderQueue(), and sort().
std::vector< ref<RenderToken> > vl::RenderQueue::mListMP [protected] |
Definition at line 143 of file RenderQueue.hpp.
Referenced by newToken(), and RenderQueue().
int vl::RenderQueue::mSize [protected] |
Definition at line 144 of file RenderQueue.hpp.
Referenced by clear(), empty(), newToken(), and size().
int vl::RenderQueue::mSizeMP [protected] |
Definition at line 145 of file RenderQueue.hpp.
Referenced by clear(), and newToken().