2014-02-27 57 views
0

我已經在Windows窗體上創建了一個OpenGL視圖,如this,併成功將opengl嵌入到visual C++窗體中。因此我有2個文件 - rendering.h和opengl.h然後將GLUquadric對象作爲文本文件加載到opengl窗體中

這裏是我的原代碼....

好吧,我延長我的「OpenGL視圖,在Windows窗體」,並與訥河的教程合併爲「第27課 - SHADOWS」,並帶來了代碼沒有錯誤。但是我仍然有障礙!

鏈接出錯:

1>生成代碼...

1> PhotoRealisticRendering.obj:警告LNK4248:無法解析typeref令牌(0100002F)關於 'GLUquadric';圖像可能無法運行

1> OpenGL.obj:警告LNK4248:'GLUquadric'的無法解析的typeref標記(0100001B);圖像可能無法運行

下面是其他兩個重要文件 - shadow.h和3Dobject.h

回答

0

編輯:看你提供的代碼,它似乎有鍵數組和你ProcessKeyboard回調沒有關係。例如參見this answer

(原帖剪掉了,因爲在這種情況下不是一個很好的建議,如datenwolf說明)

- 提供了源代碼的摘錄總是有助於澄清/答題

+0

GLUT和其他框架(如Windows窗體)不能混用。你不能在另一個框架內使用GLUT。你的「建議」只會增加混淆。 – datenwolf

+0

由於最終確定OP實際使用的框架有點難,我完全同意你的看法。 – TallFurryMan

+0

他正在使用Windows窗體。看看OP鏈接的教程(託管C++中的Windows窗體),OP會明確提到它。 – datenwolf

2

你」讓GLUT和OpenGL混淆。 GLUT是一個用於創建窗口和簡單用戶交互的簡單應用程序框架。你根本不需要使用GLUT。

您正在使用Windows Forms,這意味着,是您的框架。那麼使用GLUT是沒有意義的。您必須使用Windows窗體的輸入事件處理方法。這裏有一篇關於如何在MSDN上執行的文章:http://msdn.microsoft.com/en-us/library/ms171538(v=vs.110).aspx?cs-save-lang=1&cs-lang=cpp#code-snippet-1

+0

謝謝先生!你的答案是有幫助的...我會嘗試實現Windows窗體的輸入事件處理方法。 – Venkat

+0

謝謝先生!鍵盤事件正在工作,當我嘗試Windows窗體的輸入事件處理! – Venkat

+0

先生!但Iam完全不知道如何表示方向鍵(向上箭頭,向下箭頭,向右箭頭,向左箭頭)。對於我剛剛使用的其他字母鍵.... if(e-> KeyChar =='D')... – Venkat