2010-09-08 53 views
2

我目前正在学习OpenGL 2和3之间的差异,并且我注意到很多函数如glVertex,glVertexPointer,glColor,glColorPointer等已经消失。Cg和OpenGL 3

我习惯使用Cg来处理着色器。比如我会写这个简单的顶点着色器:

void main(in inPos : POSITION, out outPos : POSITION) { 
    outPos = inPos; 
} 

然后我会使用两种glVertexglVertexPointer设置的inPos值。

但是由于这些函数在OpenGL 3中不再可用,你应该怎么做绑定?

回答

0

首先,我会建议你看一看the answer to this question: What's so different about OpenGL 3.x?

其次,诺伯特Nopper有很多的例子在使用OpenGL 3和GLSL here

最后这里有一个简单的GLSL example这表明你如何绑定顶点和片段着色器程序。

+0

但是如果我想使用Cg语法呢? : - /(不是因为我更喜欢它,而是因为它几乎与HLSL的语法相同) – Tomaka17 2010-09-09 14:13:49

+0

请看http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=47。另外这篇文章http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=267914在OpenGL论坛上。 – Tchami 2010-09-09 14:56:34

+0

谢谢,第二个链接正是我正在寻找的 – Tomaka17 2010-09-10 06:05:33