public void OnApply(IRenderContext renderContext)
{
if (_worldViewProjParamDirty)
{
if (_separatedMatrices)
{
_worldParam.SetValue(_world);
_viewParam.SetValue(_view);
_projectionParam.SetValue(_projection);
}
else
{
Matrix worldViewProj;
Matrix worldView;
Matrix.Multiply(ref _world, ref _view, out worldView);
Matrix.Multiply(ref worldView, ref _projection, out worldViewProj);
_worldViewProjParam.SetValue(worldViewProj);
}
_worldViewProjParamDirty = false;
}
}
}