1.摸索了安裝軟件,配置OpenGL,關(guān)鍵在glu的幾個文件分別放在哪里,新建工程怎樣設(shè)置鏈接庫。2.試著運(yùn)行上課的代碼在這個過程中遇見幾個問題:發(fā)現(xiàn)一個建立c/c++文件需要選擇#include<iostream>和#include<stdio.h>,另一個是頭文件#include <GL/gl.h>、#include <GL/glut.h>需要替換#include <GL/ogl.h> 。對OpenGL的頭文件不夠了解。3.遇見的錯誤總結(jié):1.error:assignment of read-only variable 'S_width'2.error:initializer element is not constant問題描述:編譯時出現(xiàn) initializer element is not constant 錯誤。問題原因:全局變量的值不能在編譯時確定,要在執(zhí)行時確定(編譯原理),也就是說,全局變量在函數(shù)外部應(yīng)只是聲明,賦值的操作應(yīng)該在函數(shù)中進(jìn)行。解決方案:在外部聲明變量名稱,在函數(shù)中進(jìn)行賦值。3.codeblocks上warning:ignoring #pragma comment {-Wunknown-pragmas}問題原因:看網(wǎng)上是 mingw使用msvc的方式 會發(fā)出 warning: ignoring #pragma comment [-Wunknown-pragmas]原因是,GCC下沒有和#pragma comment (lib,"ws2_32")對等的預(yù)處理語句。解決方案:工具欄-->Project-->build options,選Linker settings,Add所需靜態(tài)鏈接庫文件就OK了4.opengl32.lib標(biāo)紅,隨之就是某文件 undefined reference to __某OpenGL函數(shù)名異常。看網(wǎng)上總結(jié)原因有很多,我是沒有把庫鏈接好。5.codeblocks的使用之建立頭文件。可以參考這篇https://blog.csdn.net/qq_40741513/article/details/80858910點(diǎn)擊File>>New>>Build target>>Files>>C/C++header >>go進(jìn)入codeblocks,file->addfile,把創(chuàng)建的.h文件添加進(jìn)去。在包含頭文件的時候要用"",例如:"header.h"。因?yàn)?lt;>是用來包含編譯器自帶的頭文件的,""是用來包含自己寫的頭文件的。建議在頭文件開頭加上:#ifndef HEADER.H#define HEADER.H ........#endif 防止重復(fù)定義,當(dāng)然如果不會多次使用這個頭文件也可以不加。 “HEADER.H”一般用“頭文件的大寫名稱6.還有exit was not declared in this scope、undefined reference to WinMain@16' collect2.exe: error: ld returned 1 exit這些問題試著實(shí)驗(yàn)網(wǎng)上的代碼,經(jīng)過調(diào)試在電腦上運(yùn)行起來,感到很開心。學(xué)習(xí)[ ] codeblocks中dll是什么文件夾(https://blog.csdn.net/kld1412/article/details/51628424)[ ] codeblocks中cpb是什么文件。了解codeblocks工程cbp文件: .cbp(codeblocksProject)codeBlocks工程文件[ ] opengl配置文件資源下載。這個比較全但是積分不夠(https://download.csdn.net/download/blink31/4376444)[ ] 在AutoCAD和3DMax等交互式造型環(huán)境中, 用戶可以利用鼠 標(biāo)拖動形體在計(jì)算機(jī)屏幕上做三維任意自由度的旋轉(zhuǎn), 使用戶 可以觀察形體各個不同側(cè)面的幾何圖形特征. 這種對用戶來說 十分方便的技術(shù)就是----鼠標(biāo)跟蹤球(Trackball)技術(shù).實(shí)例問題記錄:1.繪制教室里地球儀:F:\test\earth\src\earth.cpp|84|error: no matching function for call to 'std::basic_ifstream<wchar_t>::basic_ifstream(const wchar_t*&)'| 待解決2 Code::Blocks : undefined reference to xxxxxx@4'原因:缺少lib庫。 解決辦法:添加lib庫。3.關(guān)于控制臺文件stdafx.h。參考這篇博客解決辦法就是把這堆代碼復(fù)制一下到自己新建的“stdafx.h”里面,之后放在和你的源文件一個目錄下面就行啦。4.編譯時出現(xiàn) initializer element is not constant 錯誤 翻譯錯誤是初始化元素不是常量。用這里介紹的方法更改為#define,可是出現(xiàn)上面錯誤2。so該問題沒找到解決方法。5.glaux的使用學(xué)習(xí)資源:1.OpenGL模擬太陽系運(yùn)行2.OpenGL繪制旋轉(zhuǎn)茶壺3.用openGL做一個時鐘動畫4.用OpenGL實(shí)現(xiàn)跳躍的立體小球學(xué)習(xí)網(wǎng)站https://learnopengl-cn./
|