平行移動が上手く行えず移動した瞬間画面から消えてしまいます。これは何をしたのでしょうか?単純な質問ですが行列計算が悪いのでしょうか?順序でしょうか?色々組み換えましたがわかりません。
cpp
1//ワールド行列を計算 2void Game::CreateWorldMatrix() 3{ 4 //glm::mat4x4 t = glm::make_mat4(move) * glm::make_mat4(rotate) * glm::make_mat4(scale); 5 glm::mat4x4 t = glm::make_mat4(scale) * glm::make_mat4(move) * glm::make_mat4(rotate); 6 7 8 memcpy(wordlMatrix,glm::value_ptr(t),sizeof(float) * 16); 9} 10
cpp
1//平行移動行列を設定 2void Game::Set_move(float x, float y, float z) 3{ 4 move[0] = 1; 5 move[1] = 0; 6 move[2] = 0; 7 move[3] = 0; 8 9 move[4] = 0; 10 move[5] = 1; 11 move[6] = 0; 12 move[7] = 0; 13 14 move[8] = 0; 15 move[9] = 0; 16 move[10] = 1; 17 move[11] = 0; 18 19 20 move[12] = x; 21 move[13] = y; 22 move[14] = z; 23 move[15] = 1; 24} 25
あなたの回答
tips
プレビュー