0
我在opengl中創建了棋盤/棋盤,它有100個框。從邏輯上講,我代表董事會採用2D陣列(10乘10)。現在我想讓用戶點擊opengl窗口中的任何地方,我可以確定數組中的哪個索引,以便我可以進行一些處理。我怎麼能做到這一點?標準化的設備座標映射到2D數組索引
我正在使用LWJGL一個用於opengl的java包裝。我知道我必須獲得鼠標座標,並且我知道它們是以歸一化設備座標(範圍從1到-1)返回的。我如何將NDC映射到索引?我一直在尋找,但沒有找到太多。
我知道每個盒子的NDC範圍。那是因爲我通過給出頂點來繪製它們,所以我知道每個盒子在NDC中的開始和結束位置。但是以鍵值對的形式輸入範圍及其各自的索引會太麻煩。
目前我正在嘗試通過基本算術創建公式,以便它轉換NDC並給出索引。這可能嗎?或者還有其他可行的方法嗎?
對於那些正在考慮如何製作棋盤的人,我畫了-1到1的垂直線,距離爲0.2。類似的情況是水平的。
該死的男人,這似乎工作..沒有編寫它尚未剛纔檢查的公式。你能告訴我他們是如何派生的?我一直想自己推導出這些配方奶粉 –
只需一步一步思考。除以兩個等級,ndc在[-0.5,0.5]的範圍內。然後你加0.5,現在在[0,1]。剩下要做的就是用所需的大小乘以,並將分形部分轉換爲一個整數,然後將其分割。 – hailtothegrail