文档章节

灯光

rise-worlds
 rise-worlds
发布于 2016/06/20 13:35
字数 370
阅读 2
收藏 0

环境光的使用比较简单,Direct3D把它作为一个渲染状态,通过调用IDirect3DDevice9::SetRenderState进行设置,对应的状态常数为D3DRS_AMBIENT。

按光源划分,直射光可分为三种:

1)点光源

点光源(Point Light)从一个点向周围均匀地发射光线。点光源有颜色、位置、作用范围,光强随距离而衰减,没有方向。

clip_image001

屏幕剪辑的捕获时间: 2007-6-27, 18:29

2)平行光

平行光(Directional Light)由相互平行的光线组成。平行光只有颜色和方向,没有位置,也没有作用范围和衰减,因此不论实体位于场景的何处,所受到的光照都相同。

clip_image002

屏幕剪辑的捕获时间: 2007-6-27, 18:31

3)聚光灯(Spotlight)是三种直射光中最复杂的一种。它的光束是一个圆锥,分内、外核两部分:内核最亮,且亮度保持不变;外核较暗,沿径向有一个衰减。

clip_image003

屏幕剪辑的捕获时间: 2007-6-27, 18:34

如下图,其中夹角Theta和Phi定义了内、外核的大小。

clip_image004

屏幕剪辑的捕获时间: 2007-6-27, 18:35

聚光灯有颜色、位置、方向(即光束中心所指方向)、作用范围、衰减(沿光线方向)。

在Direct3D中,用结构D3DLIGHT9来描述直射光,它的定义如下:

typedef struct _D3DLIGHT9{

D3DLIGHTTYPE Type;

//类型:只能是点光源、平行光或聚光灯

D3DCOLORVALUE Diffuse;

//

本文转载自:http://www.cnblogs.com/flying_bat/archive/2007/10/13/923290.html

上一篇: Sleep(0)
rise-worlds

rise-worlds

粉丝 3
博文 1760
码字总数 1380
作品 0
深圳
程序员
私信 提问
编辑器中灯光菜单及其子菜单的使用介绍

灯光 照亮物体和场景的灯光 新建 新建一个灯光,设置灯光的属性(名字,类型和颜色),类型可以选 直射光,点光源和点光源 删除 选中灯光可以删除灯光 直射光 直射光照射对象能产生明显阴影和...

X3D_CB
2012/01/14
99
0
【Unity3D技术文档翻译】第3.4.1篇 灯光类型

上一章:【Unity3D技术文档翻译】第3.4篇 灯光资源概述(Light sources) 本章原文所在章节:【Unity Manual】→【Graphics】→【Graphics Overview】→【Lighting】→【Types of light】 灯...

何三思
2018/07/04
0
0
【Unity3D技术文档翻译】第3.4.3篇 使用灯光

上一章:【Unity3D技术文档翻译】第3.4.2篇 灯光检查器(The Light Inspector) 本章原文所在章节:【Unity Manual】→【Graphics】→【Graphics Overview】→【Lighting】→【Light sources...

何三思
2018/07/08
0
0
【Unity3D技术文档翻译】第3.4.2篇 灯光检查器(The Light Inspector)

上一章:【Unity3D技术文档翻译】第3.4.1篇 灯光类型 本章原文所在章节:【Unity Manual】→【Graphics】→【Graphics Overview】→【Lighting】→【Light sources】→【The Light Inspector...

何三思
2018/07/08
0
0
iOS-OpenGL ES入门教程(四)光照

前言 前面的基础文章列表 iOS-零基础学习OpenGL ES入门教程(一) iOS-OpenGL ES入门教程(二)最简单的纹理Demo iOS-OpenGL ES入门教程(三)纹理取样,混合,多重纹理 下面来讲一下光照 光...

安东_Ace
2018/06/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何有效地计算JavaScript中对象的键/属性数量?

计算对象的键/属性数的最快方法是什么? 是否可以在不迭代对象的情况下执行此操作? 即不做 var count = 0;for (k in myobj) if (myobj.hasOwnProperty(k)) count++; (Firefox确实提供了一...

技术盛宴
19分钟前
2
0
百度网址安全中心拦截解除的办法分享

临近2019年底,客户的公司网站被百度网址安全中心拦截了,公司网站彻底打不开了,影响范围很大,于是通过朋友介绍找到我们SINE安全公司寻求帮忙解封,关于如何解除百度的安全拦截提示,下面就...

网站安全
30分钟前
3
0
Tomcat8源码分析-启动流程-start方法

上一篇:Tomcat8源码分析-启动流程-load方法 前面讲了启动流程中的Catalina.load,进一步调用绝大部分组建的init操作,主要完成对server.xml解析,并根据解析的结果结合设置的Rule(规则)构造...

特拉仔
39分钟前
6
0
Xamarin.FormsShell基础教程(7)Shell项目关于页面的介绍

Xamarin.FormsShell基础教程(7)Shell项目关于页面的介绍 轻拍标签栏中的About标签,进入关于页面,如图1.8和图1.9所示。它是对应用程序介绍的页面。 该页面源自Views文件夹中的AboutPage.x...

大学霸
45分钟前
3
0
一步一步理解Impala query profile(一)

很多Impala用户不知道如何阅读Impala query profile来了解一个查询背后正在执行的操作,从而在此基础上对查询进行调优以充分发挥查询的性能。因此我想写一篇简单的文章来分享我的经验,并希望...

九州暮云
46分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部