|
|
|
|
@ -160,13 +160,19 @@ namespace AZ
|
|
|
|
|
0,0,1,0,
|
|
|
|
|
0,0,0,1 };
|
|
|
|
|
yUpWorld.StoreToRowMajorFloat12(viewToWorldMatrixRaw);
|
|
|
|
|
const AZ::Matrix4x4 prevViewToWorldMatrix = m_viewToWorldMatrix;
|
|
|
|
|
m_viewToWorldMatrix = AZ::Matrix4x4::CreateFromRowMajorFloat16(viewToWorldMatrixRaw);
|
|
|
|
|
|
|
|
|
|
m_worldToViewMatrix = m_viewToWorldMatrix.GetInverseFast();
|
|
|
|
|
|
|
|
|
|
m_worldToClipMatrix = m_viewToClipMatrix * m_worldToViewMatrix;
|
|
|
|
|
|
|
|
|
|
m_onWorldToViewMatrixChange.Signal(m_worldToViewMatrix);
|
|
|
|
|
// Only signal an update when there is a change, otherwise this might block
|
|
|
|
|
// user input from changing the value.
|
|
|
|
|
if (!prevViewToWorldMatrix.IsClose(m_viewToWorldMatrix))
|
|
|
|
|
{
|
|
|
|
|
m_onWorldToViewMatrixChange.Signal(m_worldToViewMatrix);
|
|
|
|
|
}
|
|
|
|
|
m_onWorldToClipMatrixChange.Signal(m_worldToClipMatrix);
|
|
|
|
|
|
|
|
|
|
InvalidateSrg();
|
|
|
|
|
|