1. 程式人生 > >CryEngine5.5用程式碼讀出模型的各個資料(頂點、UV、法線等)

CryEngine5.5用程式碼讀出模型的各個資料(頂點、UV、法線等)

IRenderNode** pTestRenderNode = nullptr;
uint32 count = gEnv->p3DEngine->GetObjectsByType(EERType::eERType_Brush, pTestRenderNode);
if (count != 0)
{
	IStatObj* pObj = pTestRenderNode[0]->GetEntityStatObj();
	IRenderMesh* pRM = pStatObj->GetRenderMesh();

	if (pRM)
	{
		IIndexedMesh* pIM =
pRM->GetIndexedMesh(); CMesh* pMesh = pIM->GetMesh(); //讀出模型資訊 Vec3* pVertices0 = pMesh->GetStreamPtr<Vec3>(CMesh::POSITIONS); vtx_idx* pIndices0 = pMesh->GetStreamPtr<vtx_idx>(CMesh::INDICES); SMeshTexCoord* pTexCoords0 = pMesh->GetStreamPtr<SMeshTexCoord>(CMesh:
:TEXCOORDS); SMeshTangents* pTangents = pMesh->GetStreamPtr<SMeshTangents>(CMesh::TANGENTS); SMeshColor* pColor0 = pMesh->GetStreamPtr<SMeshColor>(CMesh::COLORS_0); SMeshColor* pColor1 = pMesh->GetStreamPtr<SMeshColor>(CMesh::COLORS_1); } }