Exemplo n.º 1
0
 void Camera::Record() {
     PrepareForRecord();
     
     m_framebuffer->Bind();
     m_framebuffer->Clear();
     
     if (m_drawingCallback) {
         (*m_drawingCallback)(GetViewProjectionMatrix());
     } else {
         RenderingEngine::SharedInstance().RenderScene(GetViewProjectionMatrix());
     }
 }
Exemplo n.º 2
0
/**
*  @brief
*    Returns the absolute world view projection matrix of the scene node
*/
const Matrix4x4 &VisNode::GetWorldViewProjectionMatrix() const
{
	// Recalculation required?
	if (m_nInternalFlags & RecalculateWorldViewProj) {
		// Calculate the world view projection transform matrix
		m_mWorldViewProj = GetViewProjectionMatrix()*m_mWorld;

		// Recalculation done
		m_nInternalFlags &= ~RecalculateWorldViewProj;
	}

	// Return the matrix
	return m_mWorldViewProj;
}
Exemplo n.º 3
0
void rViewport::GetViewFrustrum(rFrustrum& frustrum) const{
	rMatrix4 view;
	GetViewProjectionMatrix(view);

	rMatrixUtil::ExtractViewFrustrum(view, frustrum);
}