我是openGL的初學者。我目前正在開發一個程序,用於輸入棋盤的寬度和長度。鑑於這些輸入,我想動態地定位我的相機,這樣我就可以看到整個主板。假設我的窗口大小爲1024x768。在3D視圖中動態渲染一個2D板
是否有任何數學公式來計算opengl函數glookat的不同參數使其成爲可能?
我想在董事會上的看法應該是這樣的。
它不一樣,如果董事會太大會讓事情看起來很小的事。這裏最重要的是定位相機的方式,使整個板上的視圖成爲可能
到目前爲止,我絕望地隨機更改我的glookat函數的參數,直到我碰到一個體面的X尺寸寬度和Y尺寸高度。
我gluperpective功能: gluPerspective(70 ,1024/768,1,1000)
我glooatfunction爲40 * 40板
gluLookAt(20, 20, 60, 20, -4, -20, 0, 1, 0);
我怎麼畫我的板(平面):
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(20, 20, 60, 20, -4, -20, 0, 1, 0);
glBindTexture(GL_TEXTURE_2D, texture_sol);
glBegin(GL_QUADS);
glTexCoord2i(0, 0); glVertex3i(width, 0, height);
glTexCoord2i(10, 0); glVertex3i(0, 0, height)
glTexCoord2i(10, 10); glVertex3i(0, 0, 0);
glTexCoord2i(0, 10); glVertex3i(width, 0, 0);
glEnd();
輸出如下如下:
my board output image http://i59.tinypic.com/51y2ic.png
你試過了什麼?嘗試某些東西時遇到的任何具體問題? – legends2k
到目前爲止,我已經能夠繪製一些東西,並把攝像頭放在上面。它看起來很體面。問題是在整個電路板上進行渲染,我絕望地隨機更改glookat參數,直到我碰到一些不錯的東西。讓我用我的一些工作更新我的問題。 – user1040986
[手冊](http://www.opengl.org/sdk/docs/man2/xhtml/gluLookAt.xml)顯示了每個參數。爲了確定價值觀,試着想象(例如,在一張紙上)「棋盤」所在的位置以及相機的位置。例如,將棋盤的中間部分傳送到'LookAt'作爲'center *',並將邊緣作爲'eye *' – Valerij