分享到plurk 分享到twitter 分享到facebook

版本 81b1eaaece4d2ffd75d74012267867f7dcc9eea0

GLTrain/Lab1

Changes from 81b1eaaece4d2ffd75d74012267867f7dcc9eea0 to e316e05180f51f7501b556a095693441d3631148

目標
------
* 學會使用 git
* 學會安裝 glfw
* 學會看 manual 和 tutorial
* 使用 opengl 1.x 函數

預先準備
------

1. 安裝 git

for Ubuntu 13.10:

.. code-block:: prettyprint
   
    sudo apt-get install git

for Windows: 請搜尋 git for windows

設定好 PATH 環境變數,使得你能在 cmd 直接執行 git 而不用指定目錄,順便設定一下 mingwgcc 吧。 HOW TO DO IT? => google


2. 安裝 glfw: 假設上面的 git 安裝成功

for linux:

.. code-block:: prettyprint
   
    git clone https://github.com/glfw/glfw.git
or(學校有時 wifi 正常使用 https)
    git clone git@github.com:glfw/glfw.git

for windows:

請到官網下載 pre-built 版本的 glfw3,64 位元或 32 位元請依你的 mingw 編譯器做選擇

http://www.glfw.org/download.html

將 include 裡面的 GLFW 資料夾放到 mingw 安裝資料夾內的 include

lib 放 mingw 的 lib,dll 檔案請保留 (也可以丟掉...通常 glfw project 都是用 static link)

3. 下載 GLTrain 教材

.. code-block:: prettyprint

    git clone https://github.com/tim37021/GLTrain.git
or

.. code-block:: prettyprint

    git clone git@github.com:tim37021/GLTrain.git

編譯 glfw3
--------

安裝必要套件 cmake, xorg-dev, libglu1-mesa-dev,如果想產生官方說明文件的話請安裝 Doxygen (檔案頗大)

.. code-block:: prettyprint

    apt-get install cmake xorg-dev libglu1-mesa-dev

.. code-block:: prettyprint

    cd glfw
    mkdir build
    cd build
    cmake ..
    make
    sudo make install

完成 GLTrain1 ~ GLTrain3
-----------------------------
Windows 使用者必須修改 Makefile

.. code-block:: prettyprint

    LFLAGS=-lglfw3 -lopengl32 -lglu32 -lgdi32

1. 編譯 GLTrain

linux:

.. code-block:: prettyprint

    make

windows: (如果你的 gcc 不是環境變數會失敗)

.. code-block:: prettyprint

    mingw32-make

2. 切換到 answer 可以看答案

.. code-block:: prettyprint

    git checkout answer


閱讀文章
------
* http://www.glfw.org/docs/latest/quick.html
* http://www.songho.ca/opengl/gl_transform.html


延伸閱讀
------
* SongHo 網站: http://www.songho.ca/opengl/
* Shader Toy (搜尋 water 或 ray): https://www.shadertoy.com/
*  一位大學教授Jeffrey Chastine所錄製的tutorial。英聽有困難可以直接用youtube自動產生的字幕(滿準的,他口齒很清晰): https://www.youtube.com/watch?v=0CQP8huwLCg

題外話
------
Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。Linux寫程式比較快喔,請愛用Linux。