protected override void DoRender(RenderEventArgs arg)
{
ICamera camera = arg.CameraStack.Peek();
mat4 projection = camera.GetProjectionMatrix();
mat4 view = camera.GetViewMatrix();
mat4 model = this.GetModelMatrix();
this.SetUniform(projectionMatrix, projection);
this.SetUniform(viewMatrix, view);
this.SetUniform(modelMatrix, model);
if (this.RenderWireframe)
{
// render wireframe.
this.SetUniform("renderWireframe", true);
polygonMode.On();
polygonOffsetState.On();
base.DoRender(arg);
polygonOffsetState.Off();
polygonMode.Off();
}
if (this.RenderBody)
{
// render solid body.
this.SetUniform("renderWireframe", false);
base.DoRender(arg);
}
}