在OpenGL中给场景添加光照

这篇博客详细介绍了如何在OpenGL场景中添加光照,包括环境光的应用、材料属性的设置以及颜色追踪技术,帮助读者理解并实现更逼真的3D渲染效果。
摘要由CSDN通过智能技术生成
在OpenGL中给场景添加光照

     为了在OpenGL中使用光照计算,我们需要调用glEnable方法,并用GL_LIGHTING作为参数。这个调用告诉OpenGL在确定场景中每个顶点的颜色时使用光照参数和材料属性。当然,如果我们没有指定任何光照参数和材料属性,那么物体仍将会保持为黑暗的无光照状态。

     // 启用光照
     glEnable(GL_LIGHTING);

     一、设置环境光
     OpenGL提供了一个全局光源,它只发射环境光。这种光源很有用,它可以照射没有被其它光源直接照射的物体的背面,并且如果场景看上去太暗,可以调节这种全局环境光,以达到自己所需要的亮度。设置全局环境光的代码如下所示:

     // 指定环境光的RGBA强度值
     GLfloat ambientLight[] = {1.0f, 1.0f, 1.0f, 1.0f};
     // 设置光照模型,将ambientLight所指定的RGBA强度值应用到环境光
     glLightModelfv(GL_LIGHT_MODEL_AMBIENT, ambientLight);

     glLightModel方法使用指定的参数来设置光照模型。它的第一个参数是需要设置的光照模型,在这里我们指定的是环境光(ambient);接下来的一个参数包含了组成光源的RGBA强度值,也就是我们设置的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值