summaryrefslogtreecommitdiff
path: root/sample/d3d11/distance_field.cpp
diff options
context:
space:
mode:
authorJason Maskell <[email protected]>2016-05-19 15:51:45 +0200
committerJason Maskell <[email protected]>2016-05-19 15:51:45 +0200
commitb352eb55361a8b92f7cef224db990c00318afeff (patch)
treeaee2120d1772898cd240ba059f46437b25216119 /sample/d3d11/distance_field.cpp
parentLots more conversion work done, not quite compiling yet. Paranoia commit. (diff)
downloadarchived-waveworks-archive-b352eb55361a8b92f7cef224db990c00318afeff.tar.xz
archived-waveworks-archive-b352eb55361a8b92f7cef224db990c00318afeff.zip
Sample now compiles cleanly, doesn't run yet due to media path issues.
Diffstat (limited to 'sample/d3d11/distance_field.cpp')
-rw-r--r--sample/d3d11/distance_field.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/sample/d3d11/distance_field.cpp b/sample/d3d11/distance_field.cpp
index 3ad7ad7..61e335b 100644
--- a/sample/d3d11/distance_field.cpp
+++ b/sample/d3d11/distance_field.cpp
@@ -39,7 +39,7 @@ const unsigned int kTopDownDataResolution = 256;
DistanceField::DistanceField( CTerrain* const pTerrainRenderer )
: m_pTerrainRenderer( pTerrainRenderer )
- , m_viewDirectionWS( 0, -1, 0 )
+ , m_viewDirectionWS( 0, -1, 0, 0 )
, m_pTopDownDataSRV( NULL )
, m_pTopDownDataRTV( NULL )
, m_pTopDownDataTexture( NULL )
@@ -150,14 +150,15 @@ void DistanceField::renderTopDownData( ID3D11DeviceContext* pDC, const XMVECTOR
pDC->ClearRenderTargetView( m_pTopDownDataRTV, ClearColor );
pDC->OMSetRenderTargetsAndUnorderedAccessViews( 1, &m_pTopDownDataRTV, NULL, 0, 0, NULL, NULL );
- m_topDownViewPositionWS = XMVectorSet( XMVectorGetX(eyePositionWS), kHeightAboveSeaLevel, XMVectorGetZ(eyePositionWS), 0 );
+ m_topDownViewPositionWS = XMFLOAT4( XMVectorGetX(eyePositionWS), kHeightAboveSeaLevel, XMVectorGetZ(eyePositionWS), 0 );
const float kOrthoSize = 700;
- m_viewToProjectionMatrix = XMMatrixOrthographicLH( kOrthoSize, kOrthoSize, 0.3f, kHeightAboveSeaLevel + kMinHeightBelowSeaLevel );
+ XMStoreFloat4x4(&m_viewToProjectionMatrix, XMMatrixOrthographicLH(kOrthoSize, kOrthoSize, 0.3f, kHeightAboveSeaLevel + kMinHeightBelowSeaLevel));
+
const XMVECTOR up = XMVectorSet( 0, 0, 1, 0 );
- m_worldToViewMatrix = XMMatrixLookAtLH( m_topDownViewPositionWS, eyePositionWS, up);
+ XMStoreFloat4x4(&m_worldToViewMatrix, XMMatrixLookAtLH(XMLoadFloat4(&m_topDownViewPositionWS), eyePositionWS, up));
- m_pTerrainRenderer->RenderTerrainToHeightField( pDC, m_worldToViewMatrix, m_viewToProjectionMatrix, m_topDownViewPositionWS, m_viewDirectionWS );
+ m_pTerrainRenderer->RenderTerrainToHeightField( pDC, XMLoadFloat4x4(&m_worldToViewMatrix), XMLoadFloat4x4(&m_viewToProjectionMatrix), XMLoadFloat4(&m_topDownViewPositionWS), XMLoadFloat4(&m_viewDirectionWS) );
pDC->RSSetViewports(NumViewports, &vp);
pDC->OMSetRenderTargetsAndUnorderedAccessViews( 1, &pRenderTarget, pDepthBuffer, 0, 0, NULL, NULL );
@@ -287,5 +288,5 @@ float DistanceField::FindNearestPixel( float* pTextureData, const int cx, const
void DistanceField::GetWorldToTopDownTextureMatrix( XMMATRIX worldToTopDownMatrix )
{
- worldToTopDownMatrix = m_worldToViewMatrix * m_viewToProjectionMatrix;
+ worldToTopDownMatrix = XMLoadFloat4x4(&m_worldToViewMatrix) * XMLoadFloat4x4(&m_viewToProjectionMatrix);
} \ No newline at end of file