2012年11月25日 星期日

OpenGL - programmable Pipeline ,GLSL 學習(1)

官方toturial:
http://www.opengl-tutorial.org/beginners-tutorials/tutorial-3-matrices/

看完畫三角形的教學和老師給的code稍微搞懂

如果要用programmable opengl的話要重寫HW2

附檔裡面使用蠻多deprecated functions


然後他提供的textfile.cpp的用意是

因為之後要自己寫flat ground phong 三種shading

一個shading 法額外存一個GLSL external file (副檔名可為.txt or .glsl, 這不重要

而老師提供的那個就只是幫助我們把他read進來

純粹讀文字的檔案

-----(紀錄一下)

心得: 直接搬運toturial code比較快 =3=

--
待補~

---------------------------------

11/25

Homogeneous Coordinates
    [x,y,z,w]

  • If w == 1, then the vector (x,y,z,1) is a position in space. 
  • If w == 0, then the vector (x,y,z,0) is a direction.

移動 w=0 的direction 沒有意義。(EX: Translate Matrix : dx, dy, dz * w = 0, 等於沒乘)


1.Translation
//in c++ using GLM
glm::mat4 myMatrix = glm::translate(10,0,0);
//GLSL
vec4 transformedVector = myMatrix * myVector;

這個有基本GLSL介紹: 寫得還蠻易懂的
http://www.packtpub.com/article/tips-tricks-getting-started-with-opengl-glsl-4 


12/04 
Compile時候發現 fragment shader附檔名不能叫做.fs ,會跟F#檔案相衝突
(F#不吃Hard Tab) 

沒有留言:

張貼留言