Пример #1
0
void CGameObject::Render(ID3D11DeviceContext *pd3dDeviceContext)
{
	OnPrepareRender();
	CShader::UpdateShaderVariable(pd3dDeviceContext, &m_d3dxmtxWorld);

	if (m_pTexture) m_pTexture->UpdateShaderVariable(pd3dDeviceContext);
	if (m_pMesh) m_pMesh->Render(pd3dDeviceContext);
}
Пример #2
0
void CMesh::Render(ID3D11DeviceContext * pd3dDeviceContext)
{
	OnPrepareRender(pd3dDeviceContext);

	if (m_pIndexBuffer)
		pd3dDeviceContext->DrawIndexed(	  static_cast<UINT>(m_vIndies.size())
										, m_nStartIndex
										, m_nBaseVertex
		);
	else
		pd3dDeviceContext->Draw(	  m_nVertices
									, m_nStartVertex
		);
}
Пример #3
0
void CMesh::RenderInstanced(ID3D11DeviceContext * pd3dDeviceContext, int nInstances, int nStartInstance)
{
	OnPrepareRender(pd3dDeviceContext);

	//객체들의 인스턴스들을 렌더링한다. 
	if (m_pIndexBuffer)
		pd3dDeviceContext->DrawIndexedInstanced(	  static_cast<UINT>(m_vIndies.size())
													, nInstances
													, m_nStartIndex
													, m_nBaseVertex
													, nStartInstance
		);
	else
		pd3dDeviceContext->DrawInstanced(	  m_nVertices
											, nInstances
											, m_nStartVertex
											, nStartInstance
		);

}