我正在製作應用程序,我正在渲染360圖像,並且我想在相機前面添加一個對象或十字線(廣告牌概念)。如何將對象放在相機前面總是
所以我已經厭倦了堆棧溢出本身的很多事情,但我沒有得到任何想法我可以做到的下面是我的代碼,我正在嘗試做。
Vector3 position;
float[] newPosition4 = new float[4];
position = obj.getPosition();
float[] posVec4 = {0, 0, -8, 0.0f};
float[] HeadViewMatrix_inv = new float[16];
Matrix4 HeadViewMatrix4 = new Matrix4();
HeadViewMatrix4.setAll(getCurrentCamera().getViewMatrix());
HeadViewMatrix4 = HeadViewMatrix4.inverse();
//Copy matrix to HeadViewMatrix array,
HeadViewMatrix4.toFloatArray(HeadViewMatrix_inv);
//Translation of viewMatrix
Matrix.multiplyMV(newPosition4, 0, HeadViewMatrix_inv, 0, posVec4, 0);
obj.setPosition(newPosition4[0], newPosition4[1], newPosition4[2]);
所以任何人都可以幫助我。
謝謝!!我是gettting視圖矩陣,其中我可以看到一個世界矩陣,這是我的360圖像,我想添加一個覆蓋在該圖像,如果我將刪除當前矩陣,所以我如何獲得圖像的視圖..如果你可以自由交談,可以談談Skype或Gmail。 –
您好馬蒂奇你能幫我在這 –
你想在屏幕空間的廣告牌,所以你不需要一個視圖轉換,或投影矩陣來在屏幕空間中呈現。使用Matic建議的座標和非常小的z值,以便在虛擬凸輪前呈現。 (即,x和y將在標準化的設備座標=屏幕空間座標中,並且z是區間[近平面,遠平面]的比特範圍中的非線性深度值 – StarShine