namespace Render
{
-class UniformNameCache;
/**
* Renderers are used to render meshes
* @param[in] geometry The new geometry
*/
void SetGeometry( Render::Geometry* geometry );
-
- /**
- * Retrieves the geometry used by the renderer
- * @return The geometry used by the renderer
- */
- Render::Geometry* GetGeometry() const
- {
- return mGeometry;
- }
-
/**
* Second-phase construction.
* This is called when the renderer is inside render thread
* @param[in] context Context used by the renderer
* @param[in] textureCache The texture cache to use
- * @param[in] uniformNameCache Cache of uniform names to use
*/
- void Initialize( Context& context, SceneGraph::TextureCache& textureCache, Render::UniformNameCache& uniformNameCache );
+ void Initialize( Context& context, SceneGraph::TextureCache& textureCache );
/**
* Destructor
bool GetWriteToColorBuffer() const;
/**
- * Sets batching mode on the renderer
- * @param[in] batchingEnabled batching state
- */
- void SetBatchingEnabled( bool batchingEnabled );
-
- /**
* Called to render during RenderManager::Render().
* @param[in] context The context used for rendering
* @param[in] textureCache The texture cache used to get textures
* @param[in] modelViewMatrix The model-view matrix.
* @param[in] viewMatrix The view matrix.
* @param[in] projectionMatrix The projection matrix.
- * @param[in] size Size of the render item
- * @param[in] externalGeometry Optional external geometry, if set the original geometry is ignored. If NULL, original geometry will be drawn as normal.
- * @param[in] blend If true, blending is enabled
*/
void Render( Context& context,
SceneGraph::TextureCache& textureCache,
const Matrix& viewMatrix,
const Matrix& projectionMatrix,
const Vector3& size,
- Render::Geometry* externalGeometry,
bool blend);
/**
Context* mContext;
SceneGraph::TextureCache* mTextureCache;
- Render::UniformNameCache* mUniformNameCache;
Render::Geometry* mGeometry;
struct UniformIndexMap
bool mWriteToColorBuffer:1; ///< True if we are writing to the color buffer
bool mUpdateAttributesLocation:1; ///< Indicates attribute locations have changed
bool mPremultipledAlphaEnabled:1; ///< Flag indicating whether the Pre-multiplied Alpha Blending is required
- bool mBatchingEnabled:1; ///< Flag indicating if the renderer is batchable
};
} // namespace SceneGraph