初步了解panda3d灯光

场景中采用灯光效果需要2个步骤:
    创建灯,定位于场景的某个地方;
    声明需要被照亮的对象;

Panda3D引擎有四种类型的灯:点光源,定向灯,环境光,聚光灯。

环境灯;根据手册,

AmbientLight
    from panda3d.core import AmbientLight
    Bases: LightNode
    AmbientLight类包含在panda3d.core命名空间,基类是LightNode;

A light source that seems to illuminate all points in space at once. This kind of light need not actually be part of the scene graph, since it has no meaningful position.
一个光源,好像照射在空间的所有点。这类光不需要是场景图的一部分,因为它没有固定位置。


环境灯,Ambient Lights,在物体的阴暗侧填充阴影,使它看起来不会完全呈现黑色。
环境灯均匀地分布在整个场景,位置和方向都无关紧要。
只使用环境灯照亮的物体着色完全平面化。

在载入模型的基本代码中加入3句;

        ambientLight = AmbientLight("ambientLight")
        ambientLight.setColor((.55, .01, .01, 1))
        self.environ.setLight(self.render.attachNewNode(ambientLight))

定义一个环境光,设置光的颜色,把光加入场景;

看到的模型如下;

如果出现类似下述错误;

File "test4.py", line 13
SyntaxError: Non-UTF-8 code starting with '\xbd' in file test4.py on line 13, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

则把.py文件存为UTF-8编码;

使用pview载入自带模型;

 

按l键切换灯光效果;

 

 逐步再看其他类型的灯;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值