OSG osg遇到的另乙個問題

2021-10-09 16:40:11 字數 1203 閱讀 5250

在用自己的筆記本寫osg程式時,發現乙個鍵盤響應事件出現異常的問題。

先來一段最簡單的例項**:

#include

#include

#include

#include

#include

#include

#include

intmain

(int argc,

char

**ar**)

此前在win10上出現沒有響應的情況時,基本就是因為輸入法的原因。必須在執行osg程式時,先按一下shift按鈕來切掉中文輸入法,才能執行鍵盤響應事件。

但現在在win7上執行時,雖然沒有了輸入法的困擾,但是卻遇到了新的問題:

按下「w」或「t」等響應事件時(「w」的功能為讓模型顯示為網格狀,而「t」的功能為去掉貼圖只顯示模型),是沒有問題的。但當按下「s」的時候(「s」為顯示幀率、顯示模型屬性等),卻直接卡死並出現了異常。

下圖為表示按下w與t,響應事件都會執行

而按下s想要顯示幀率等資訊時,卻觸發了如下的異常:

這個異常網上查也沒有什麼結果,這些**貌似與opengl的著色器函式有關。而且注釋後都沒有取消掉這個異常,除錯也沒有任何有價值的資訊。

搜尋很久,終於看到了乙個類似的問題:

nvidia顯示卡設定導致osg顯示模糊不全問題

按照此方法試了一下,終於解決了這個異常!

方法:由於一般筆記本都是雙顯示卡,在桌面右擊都會有乙個「nvidia控制面板」的設定,在「管理3d設定」裡,它的「首選圖形處理器」一般會預設為「自動選擇」,而我們在這裡把這個「自動選擇」修改為「高效能 nvidia 處理器」,osg的幀率顯示就會正常顯示了。

(但如果固定為「高效能 nvidia 處理器」的話,可能會導致一些比較老的程式或遊戲無法執行,記著改回去就可以了)

另乙個自己

人們常說 人貴有自知之明 可是話說回來,又有幾人能真正的了解自己呢?我覺得我就是乙個很沒有自知之明的人。生於89年的我,到了今年的生日就28周歲了。都說三十而立,正所謂成家立業,可以回過頭發現自己可以稱得上 一無是處,一無所有 曾幾何時,還是鄰居家叔叔阿姨教育孩子的榜樣 曾幾何時父母因為自己考個好大...

GCC靜態庫的另乙個問題

對於c 生成的靜態庫,按照一般的想法去鏈結,會出現所有的符號都無法找到的錯誤。這裡所謂的一般的想法就是把原始檔放在最後邊,如 g o test.exe l l t test.cpp,那麼得到的錯誤資訊為 test.cpp text 0x31 undefined reference to t test...

另乙個猴子吃桃子的問題

群友提出另外乙個猴子吃桃子的問題 乙個猴子第一天吃掉一半桃子,第二天吃掉前一天剩下的一半零兩個,第三天吃掉剩下的一半零兩個,第十天只剩下乙個桃子,求第一天一共吃掉多少個桃子?這道題我沒有求第一天吃掉多少桃子,我算的是某一天有多少桃子,只要拿那時候的桃子數量除以2減去2即可。如下 num 10 sta...