#pragma once #include "Direct3D.h" #include #include #include "Texture.h" #include "Transform.h" #include #include //#pragma comment(lib, "LibFbxSDK-MD.lib") #pragma comment(lib, "LibFbxSDK-MD.lib") #pragma comment(lib, "LibXml2-MD.lib") #pragma comment(lib, "zlib-MD.lib") class FBX { struct CONSTANT_BUFFER { XMMATRIX matWVP; //ワールドビュープロジェクション XMMATRIX matNormal; //法線ベクトルの変換用 }; //頂点情報 struct VERTEX { XMVECTOR position; //XMVECTOR uv; //XMVECTOR normal; //ノーマル追加(法線ベクトル) }; ID3D11Buffer* pVertexBuffer_; //頂点バッファ用メモリ ID3D11Buffer* pIndexBuffer_; //インデックスバッファ用メモリ ID3D11Buffer* pConstantBuffer_; //コンスタントバッファ用メモリ int vertexCount_; //頂点数 int polygonCount_; //ポリゴン数 void InitVertex(fbxsdk::FbxMesh* mesh); void InitIndex(fbxsdk::FbxMesh* mesh); void InitConstantBuffer(); public: FBX(); HRESULT Load(std::string fileName); void Draw(Transform& transform); void Release(); };