Ubuntu 16.04 安裝OpenGL

最近忙於paper,就沒有寫博客;然後開始和華爲合作一個項目,學習如何使用openGL
轉自:https://blog.csdn.net/huangkangying/article/details/82022177

使用 apt 安裝 OpenGL 和開發包

sudo apt-get install build-essential libgl1-mesa-dev
sudo apt-get install freeglut3-dev
sudo apt-get install libglew-dev libsdl2-dev libsdl2-image-dev libglm-dev libfreetype6-dev

在 Visual Studio Code 中撰寫一段測試程序

// test.c
/* light.c
此程序利用GLUT繪製一個OpenGL窗口,並顯示一個加以光照的球。
*/
/* 由於頭文件glut.h中已經包含了頭文件gl.h和glu.h,所以只需要include 此文件*/
# include <GL/glut.h>
# include <stdlib.h>
    
/* 初始化材料屬性、光源屬性、光照模型,打開深度緩衝區 */
void init ( void )
{
    GLfloat mat_specular [ ] = { 1.0, 1.0, 1.0, 1.0 };
    GLfloat mat_shininess [ ] = { 50.0 };
    GLfloat light_position [ ] = { 1.0, 1.0, 1.0, 0.0 };
    glClearColor ( 0.0, 0.0, 0.0, 0.0 );
    glShadeModel ( GL_SMOOTH );
    glMaterialfv ( GL_FRONT, GL_SPECULAR, mat_specular);
    glMaterialfv ( GL_FRONT, GL_SHININESS, mat_shininess);
    glLightfv ( GL_LIGHT0, GL_POSITION, light_position);
    glEnable (GL_LIGHTING);
    glEnable (GL_LIGHT0);
    glEnable (GL_DEPTH_TEST);
}
/*調用GLUT函數,繪製一個球*/
void display ( void )
{
    glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glutSolidSphere (1.0, 40, 50);
    glFlush ();
}
    
int main(int argc, char** argv)
{
    /* GLUT環境初始化*/
    glutInit (&argc, argv);
    /* 顯示模式初始化 */
    glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB | GLUT_DEPTH);
    /* 定義窗口大小 */
    glutInitWindowSize (300, 300);
    /* 定義窗口位置 */
    glutInitWindowPosition (100, 100);
    /* 顯示窗口,窗口標題爲執行函數名 */
    glutCreateWindow ( argv [ 0 ] );
    /* 調用OpenGL初始化函數 */
    init ( );
    /* 註冊OpenGL繪圖函數 */
    glutDisplayFunc ( display );
    // /* 進入GLUT消息循環,開始執行程序 */
    glutMainLoop( );
    return 0;
} 

編譯運行

cc test.c -o test -lGL -lglut
./test

如果能正確看到如下的球體,證明配置成功。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章