Witam. Napisałem sobie funkcję ładującą pliki *.x. Wszystko się kompiluje, tylko przy debugowaniu wyskakuje błąd. :-/

Treść błędu:

Unhandled exception at 0x77d4ed87 in GE_3D.exe: 0xC0000005: Access violation reading location 0x000001b0.

Call stack:

GE_3D.exe!InitMeshes() Line 22 + 0x14 bytes C++

Funkcja (kod):

HRESULT InitMeshes()
{
	//Tworzenie bufora dla siatki
	LPD3DXBUFFER g_MeshBuffer;

    //Ładowanie siatki modelu
	if(FAILED(D3DXLoadMeshFromX("gfx/beczka.x", D3DXMESH_SYSTEMMEM, g_myDevice, &g_MeshBuffer, NULL, NULL, &nMesh, &meshMesh)))
		return E_FAIL;


	//Tworzenie materiałów i tekstur dla modelu
	//{
	D3DXMATERIAL* dxMaterials = (D3DXMATERIAL*)g_MeshBuffer->GetBufferPointer();
	mMesh = new D3DMATERIAL9[nMesh];
	tMesh = new LPDIRECT3DTEXTURE9[nMesh];

	for(DWORD i = 0; i < nMesh; i += 1)
	{
		mMesh[i] = dxMaterials[i].MatD3D;
		mMesh[i].Ambient = mMesh[i].Diffuse;

		if(FAILED(D3DXCreateTextureFromFile(g_myDevice, dxMaterials[i].pTextureFilename, &tMesh[i])))  //tutaj wyskakuje błąd
			tMesh[i] = NULL;
	}
	//}
	
	//Zwalnianie bufora siatki
	g_MeshBuffer->Release();


	return S_OK;
}