Opengl场景中加光照包含几个步骤,各个步骤实现用的函数是啥?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Opengl场景中加光照包含几个步骤,各个步骤实现用的函数是啥?相关的知识,希望对你有一定的参考价值。

Opengl场景中加光照包含几个步骤,各个步骤实现用的函数是什么?这两个问题回答清楚就行了,不用说别的。粘贴的一律无视。

主要分三步:设置光源参数 、开启光照、设置法线信息。
  1.设置光源参数。通过多次调用带有不同参数的glLightfv()函数来实现。一般会设置环境光(Ambient)、漫射光(Diffuse)、光照位置(Position)等。通常在初始化时完成。
  2.开启光照。glEnable(GL_LIGHTING) 和 glEnable(GL_LIGHT1)。前者相当于是光照的总开关。后者则开启相应号数的光源(OGL中可开启8个光源,分别对应数字0--7)。通常在初始化时完成(需要在程序运行中交互的开关灯光,可以在按键程序中进行开关的控制)。
 3.法线。光照方程的计算或者说要使模型能表现出光照效果,需要对模型的面片提供法线信息。一般在绘制模型时指定。
参考技术A 主要分三步:设置光源参数 、开启光照、设置法线信息。  1.设置光源参数。通过多次调用带有不同参数的glLightfv()函数来实现。一般会设置环境光(Ambient)、漫射光(Diffuse)、光照位置(Position)等。通常在初始化时完成。  2.开启光照。glEnable(GL_LIGHTING) 和 glEnable(GL_LIGHT1)。前者相当于是光照的总开关。后者则开启相应号数的光源(OGL中可开启8个光源,分别对应数字0--7)。通常在初始化时完成(需要在程序运行中交互的开关灯光,可以在按键程序中进行开关的控制)。  3.法线。光照方程的计算或者说要使模型能表现出光照效果,需要对模型的面片提供法线信息。一般在绘制模型时指定。  具体可参考红宝书(OpenGL编程指南)NEHE教程第6课( http://www.owlei.com/DancingWind/index.htm)

以上是关于Opengl场景中加光照包含几个步骤,各个步骤实现用的函数是啥?的主要内容,如果未能解决你的问题,请参考以下文章

RGBA HSB opengl光照模型

✠OpenGL-7-光照

Linux OpenGL 实践篇-6 光照

OpenGL中的光照问题

openGL学习----光照

OpenGL ES之基础光照模型的实现