zoukankan      html  css  js  c++  java
  • Ogre材质脚本关健字说明(转)

    http://blog.csdn.net/w1635610/archive/2010/04/06/5454365.aspx

    材质脚本关健字说明

    ambient设置材质的环境光反射属性

    格式: ambient <red> <green> <blue>
    正确的参数在0.0和1.0之间取值。直接影响物体材质对环境光反射能力。默认值为白色(1.0 1.0 1.0)。

    diffuse设置材质的漫反射属性

    格式: diffuse <red> <green> <blue>
    正确的参数在0.0和1.0之间取值。直接影响物体材质对漫射光的反射属性。默认值为白色(1.0 1.0 1.0)。

    specular设置材质的镜面反射属性

    格式: specular <red> <green> <blue> <shininess>
    正确的颜色参数在0.0和1.0之间取值,shininess属性可以是任何正数。直接影响物体材质的镜面反射属性。默认值为无镜面反射(0.0 0.0 0.0 0.0)。

    emissive设置材质本身的发光程度

    格式: emissive <red> <green> <blue>
    正确的颜色参数在0.0和1.0之间取值。 如果一个物体自发光,它将不需要外界的照明,但是,值得注意的是这不表明这个物体将会成为一个光源:它只会照亮自己。默认是黑色(0.0 0.0 0.0)。

    scene_blend 设置与场景的混合方式,有两种形式

    格式1: scene_blend <add|modulate|alpha_blend>
    这个格式比较简单常用一些,参数意义如下:

    add

    渲染的结果将被以相加的方式加入场景之中,与scene_blend one one等价。对爆炸,火焰,光照,幽灵等效果比较好。

    Modulate

    渲染的结果与场景相乘。对烟、玻璃杯和单个的透明物效果较好。与scene_blend src_colour one_minus_src_colour等价。

    alpha_blend

    渲染结果中的Alpha成员将被用作遮罩。与scene_blend src_alpha one_minus_src_alpha等价。

    格式2: scene_blend <src_factor> <dest_factor>
    这个格式比较麻烦,但是比较完善。结果的计算公式为(texture * sourceFactor) + (scene_pixel * destFactor)其中sourceFactor 和destFactor如下:

    One

    常数1.0

    Zero

    常数0.0

    dest_colour

    当前点的颜色

    src_colour

    纹理对应点的颜色

    one_minus_dest_colour

    1 - (dest_colour)

    one_minus_src_colour

    1 - (src_colour)

    dest_alpha

    当前点的Alpha值

    src_alpha

    纹理对应点的Alpha值

    one_minus_dest_alpha

    1 - (dest_alpha)

    one_minus_src_alpha

    1 - (src_alpha)

    默认值: scene_blend one zero (不透明)

    depth_check是否开深度测试

    格式: depth_check <on|off>
    默认打开深度缓存。有助于判断两个点的遮挡关系和前后关系,体现三维立体感。

    depth_write是否允许对已经存在的深度缓存进行写操作

    格式: depth_write <on|off>

    默认允许,关掉的话,则被关的Material会一直浮动在所有物体前面。

    depth_func当深度缓存打开的时候,挑选一个比较函数

    格式: depth_func <func>

    always_fail

    从不比较

    always_pass

    总是用新的换掉旧的

    less

    新的比旧的小就换掉

    Less_equal

    新的小于等于旧的就换掉

    equal

    等于就换掉

    not_equal

    不等于就换掉

    greater_equal

    新的大于等于旧的就换掉

    greater

    新的比旧的大就换掉

    默认为:小于等于就换掉 depth_func less_equal

    cull_hardware设置硬件Cull模式

    格式: cull_hardware <clockwise|anitclockwise|none>

    默认顺时针Cull。这与OpenGL的默认是一样的,但和D3D的默认相反。(因为Ogre用的是OpenGL采用的右手坐标系)

    cull_software设置软件Cull模式

    格式: cull_software <back|front|none>

    默认背面。相当于硬件Cull模式的顺时针。

    lighting光照

    设置动态光照是否为此材质打开。如果关掉,将使材质本身的所有的ambient, diffuse, specular, emissive和shading属性无效,仅仅与外界的光照有关。

    格式: lighting <on|off>

    默认: lighting on

    shading阴影模式

    格式: shading <flat|gouraud|phong>

    Flat

    每个表面仅仅用一个颜色填充

    gouraud

    线性过渡表面颜色

    phong

    并非所有的硬件都支持,这种模式测定每一个顶点的颜色。

    默认: shading gouraud

    filtering设置纹理过滤方式

    格式: filtering <none|bilinear|trilinear>

    默认是双线性(bilinear)

    Texture Layer专用属性

    texture设置纹理要使用的图名

    格式: texture <texturename>

    无默认值,必须指定一个纹理名。

    anim_texture动画纹理

    设置动画纹理使用的图片文件名。

    格式1 (短的): anim_texture <base_name> <num_frames> <duration>

    指定一个图片名称,以这个名称后缀_1、_2一直到_num(由num_frames指定),duration指定间隔时间。

    格式2 (长的): anim_texture <frame1> <frame2> ... <duration>

    一个一个指定图片名称,duration指定间隔时间。

    无默认值

  • 相关阅读:
    android touch screen keyboard input移植记录
    共享内存示例代码如下:
    AF
    AF
    etc/fstab的内容是什么意思? 转载
    android 中如何添加新的键值,实现更多功能
    etc/fstab的内容是什么意思? 转载
    IPC框架分析 Binder,Service,Service manager
    共享内存示例代码如下:
    HDU 6125 Free from square (状压DP+分组背包)
  • 原文地址:https://www.cnblogs.com/Zephyroal/p/2067396.html
Copyright © 2011-2022 走看看