zoukankan      html  css  js  c++  java
  • 灯光

    环境光的使用比较简单,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;

    //

  • 相关阅读:
    OpenFace 调试记录
    Q-Q图和P-P图
    混沌理论(Chaos theory)和非线性系统
    vxlan 协议
    浮动IP地址(Float IP)与 ARP欺骗技术
    Huawei® ENSP & VRP CheatSheet
    多分类问题中查全率和查准率的理解
    urllib 报错 IOError: [Errno socket error] TLS/SSL connection has been closed (EOF) (_ssl.c:590)
    小世界网络
    表型数据(Phenotype Data)基本概念
  • 原文地址:https://www.cnblogs.com/flying_bat/p/923290.html
Copyright © 2011-2022 走看看