OGRE中实现Transparency

在.material文件,可以将参数scene_blend设置为add,modulate或alpha_blend.

(1) scene_blend add(是将渲染出的颜色和亮度一起叠加到渲染场景中)

你可以使用JPEG或PNG图像文件作为纹理。

图片的黑色部分将变成透明(即black = fully transparent)

通常用作爆炸、火焰、灯光等。

(2)scene_blend modulate(将渲染输出的颜色叠加到渲染场景中)

你可以使用JPEG或PNG图像文件作为纹理。纹理将和背景相乘(multiply)。通常,它将图片着色或变黑。图片的黑色部分将变成透明。

通常用作烟熏的玻璃、半透明物体等。

(3)scene_blend alpha_blend(将渲染输出的亮度叠加到渲染场景中)

你应该用PNG文件作为纹理。为了使你的PNG文件有透明效果,你应该在Photoshop中将背景层传给垃圾桶(trashcan),并在其他层中使用橡皮擦(eraser)。

被擦去的部分将变成透明的。

(4)scene_blend colour_blend(将渲染输出的alpha值进行遮罩缓和)

 

可以用如下的脚本来创建一个透明颜色的材质(参考):

 

 

其他常用的参数有(参考1参考2):

(1)colour_op 

简单的纹理混合方式,我们可以使用预定义的4项枚举:
Replace 不处理,用当前的纹理直接替换掉后面的所有颜色。覆盖式。
Add 将当前纹理色和后面的渲染颜色进行加法处理。
Modulate 将当前纹理色和后面的渲染颜色进行乘法处理。
Alpha_blend 将当前纹理和后面的纹理进行alpha颜色混合。
默认为 colour_op modulate 当前纹理色和后面颜色进行乘法混合。

(2)colour_op_ex 

高级的纹理混合模式,可以详细的指定混合系数和效果,但个人不推荐使用。效率消耗较大,且受不用的硬件限制性大,使用默认支持的4种混合模式可以了。

格式: colour_op_ex <operation> <source1> <source2> [<manual_factor>] [<manual_colour1>]

[<manual_colour2>]
示例: colour_op_ex add_signed src_manual src_current 0.5
默认: none (colour_op modulate)

 (3) alpha_op_ex 

同colour_op_ex,不推荐使用。

 (4)env_map 
设置环境映射效果。该项可以使用预定义的五个选项
Off 关闭环境映射反射。 默认即本项。
Spherical 开启球面环境映射。 它需要一个单独的纹理,该纹理进行周围反射的记录。
Cubic_reflection 开启平面环境映射。

(5)tex_address_mode 
纹理寻址模式。即当纹理UV值大于1.0时的纹理处理方法。参数有以下几种枚举选择:
Wrap 会将所有UV值大于1.0的值设置为0.0,纹理会被重复连续绘制。
Clamp 会将所有UV值大于1.0的值设置为1.0,超过1.0的其它地方的纹理,沿用最后像素的纹理。用于当叠加过滤时,需要从0.0

到1.0精确覆盖且没有模糊边界的纹理。 这样的话就相当于在模糊边界。
Mirror 会当UV值等于1.0的时候,将纹理反转后连续绘制。
Border 超过1.0的UV都会被设置为边界色,就是描边效果。此项可设置tex_border_colour属性。

 (6)cubic_texture 
创建一个立方体纹理。这个一般用于反射映射和天空盒中。其格式和动态纹理一样,有两种方式,一种是Ogre制定的规范,我们调用就更加简单,如下
Cubic_texture skybox.jpg combinedUVW
我们仅提供一个基础的纹理名,此时OGRE会默认的去查找skybox_fr.jpg, skybox_bk.jpg, skybox_up.jpg, skybox_dn.jpg, skybox_lf.jpg, skybox_rt.jpg这些纹理。
第二中方式则是按照“前后上下左右”的顺序将这些纹理罗列出来。
最后一个参数需要设置为combinedUVW或separateUV, combinedUVW会将纹理组合到一个立方体纹理映射中,带有UVW三维纹理坐标,适合做反射映射。而separateUV仅仅保存2D的UV坐标,适用于天空盒。

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值