OpenGL入門學習

2021-07-25 17:40:06 字數 902 閱讀 7265

說起程式設計作圖,大概還有很多人想起tc的#include 吧?

但是各位是否想過,那些畫面絢麗的pc遊戲是如何編寫出來的?就靠tc那可憐的640*480解析度、16色來做嗎?顯然是不行的。

本帖的目的是讓大家放棄tc的老舊圖形介面,讓大家接觸一些新事物。

opengl作為當前主流的圖形api之一,它在一些場合具有比directx更優越的特性。

1、與c語言緊密結合。

opengl命令最初就是用c語言函式來進行描述的,對於學習過c語言的人來講,opengl是容易理解和學習的。如果你曾經接觸過tc的graphics.h,你會發現,使用opengl作圖甚至比tc更加簡單。

2、強大的可移植性。

微軟的direct3d雖然也是十分優秀的圖形api,但它只用於windows系統(現在還要加上乙個xbox遊戲機)。而opengl不僅用於 windows,還可以用於unix/linux等其它系統,它甚至在大型計算機、各種專業計算機(如:醫療用顯示裝置)上都有應用。並且,opengl 的基本命令都做到了硬體無關,甚至是平台無關。

3、高效能的圖形渲染。

opengl是乙個工業標準,它的技術緊跟時代,現今各個顯示卡廠家無一不對opengl提供強力支援,激烈的競爭中使得opengl效能一直領先。

總之,opengl是乙個很nb的圖形軟體介面。至於究竟有多nb,去看看doom3和quake4等專業遊戲就知道了。

也可以參考:如何vs2013中配置openggl的程式設計環境

第乙個opengl程式

乙個簡單的opengl程式如下:(注意,如果需要編譯並執行,需要正確安裝glut,安裝方法如上所述)

#include void mydisplay(void)

int main(int argc, char *argv)

reference:

OpenGL入門學習

include 太陽 地球和月亮 假設每個月都是30天 一年12個月,共是360天 static int day 200 day的變化 從0到359 void mydisplay void void myidle void int main int argc,char argv 3 關於垂直同步co...

OpenGL入門學習

說起程式設計作圖,大概還有很多人想起tc的 include 吧?但是各位是否想過,那些畫面絢麗的pc遊戲是如何編寫出來的?就靠tc那可憐的640 480解析度 16色來做嗎?顯然是不行的。本帖的目的是讓大家放棄tc的老舊圖形介面,讓大家接觸一些新事物。opengl作為當前主流的圖形api之一,它在一...

OpenGL入門學習(三)

在第二課中,我們學習了如何繪製幾何圖形,但大家如果多寫幾個程式,就會發現其實還是有些鬱悶之處。例如 點太小,難以看清楚 直線也太細,不舒服 或者想畫虛線,但不知道方法只能用許多短直線,甚至用點組合而成。這些問題將在本課中被解決。下面就點 直線 多邊形分別討論。1 關於點 點的大小預設為1個畫素,但也...