HRESULT CALLBACK OnD3D11DeviceCreated(_In_ ID3D11Device* pd3dDevice, _In_ const DXGI_SURFACE_DESC* pBackBufferSurfaceDesc, _In_opt_ void* pUserContext) { HRESULT hr = S_OK; // 초기화 코드 작성... CompileShader::Create(&g_shader, L"Shaders\\lightShader.fx"); hr = g_shader->CreateTextureFromFile(L"Textures\\grass.jpg"); LoaderObj loader; //g_mesh = loader.BuildCube(); g_mesh = loader.BuildMeshFromFile(L"Models\\ground.obj"); g_meshLight = loader.BuildMeshFromFile(L"Models\\ground.obj"); XMMATRIX mscale = XMMatrixScaling(1.0f, 1.0f, 1.0f); XMMATRIX mtrans = XMMatrixTranslation(0.0f, 0.0f, 0.0f); XMMATRIX world = mscale * mtrans; XMFLOAT4X4 fworld; //1. XMMATRIX -> FLOAT4X4 XMStoreFloat4x4(&fworld, world); //2. FLOAT4X4 -> XMMATRIX //world = XMLoadFloat4x4(&fworld); g_mesh->setWorld(fworld); return S_OK; }
HRESULT CALLBACK OnD3D11DeviceCreated(_In_ ID3D11Device* pd3dDevice, _In_ const DXGI_SURFACE_DESC* pBackBufferSurfaceDesc, _In_opt_ void* pUserContext) { HRESULT hr = S_OK; // 초기화 코드 작성... CompileShader::Create(&g_shader, L"Shaders\\lightShader.fx"); LoaderObj loaderobj; g_ground = loaderobj.BuildMeshFromFile(L"Models\\ground.obj", L"Textures\\grass.jpg"); LoaderMd5 loadermd5; g_marine = loadermd5.BuildMeshFromFile(L"Models\\zealot.md5mesh"); g_marineClone = g_marine->Clone(); /*XMMATRIX mscale = XMMatrixScaling(1.0f, 1.0f, 1.0f); XMMATRIX mtrans = XMMatrixTranslation(0.0f, 0.0f, 0.0f); XMMATRIX world = mscale * mtrans; XMFLOAT4X4 fworld; XMStoreFloat4x4(&fworld, world); g_ground->setWorld(fworld); g_marine->setWorld(fworld);*/ /*XMMATRIX mtrans2 = XMMatrixTranslation(2.0f, 0.0f, 0.0f); world = mscale * mtrans2; XMFLOAT4X4 fworld2; XMStoreFloat4x4(&fworld2, world); g_marineClone->setWorld(fworld2);*/ return S_OK; }