纳金网

标题: unity3d中创建双面材质 [打印本页]

作者: 会飞的鱼    时间: 2012-2-3 11:03
标题: unity3d中创建双面材质
在其它三维软件中设置好的双面材质导入到unity3d中就失去了效果,不过我们可以通过自定义材质来在unity3d中实现双面材质的效果。步骤如下:

1、在资源库中新建一新shader;代码如下:
Shader "Nature/Vegitation Vertex Lit" {
Properties {

_Color ("Main Color", Color) = (1,1,1,1)

_SpecColor ("Spec Color", Color) = (1,1,1,0)

_Emission ("Emmisive Color", Color) = (0,0,0,0)

_Shininess ("Shininess", Range (0.1, 1)) = 0.7

_MainTex ("Base (RGB) Trans. (Alpha)", 2D) = "white" { }

}
Category {

ZWrite Off

Cull Off

Alphatest Greater 0

Tags {Queue=Transparent}

Blend SrcAlpha OneMinusSrcAlpha

SubShader {

Material {

Diffuse [_Color]

Ambient [_Color]

Shininess [_Shininess]

Specular [_SpecColor]

Emission [_Emission]

}

Pass {

Lighting On

SeperateSpecular On

SetTexture [_MainTex] {

constantColor [_Color]

Combine texture * primary DOUBLE, texture * constant

}

}

}

}

}
然后在模型材质中更改shader为上面新建的Nature/Vegitation Vertex Lit这个shader即可实现双面效果。
作者: nts    时间: 2013-10-17 11:05
这个刚才我好像看到一个版本
作者: 艾西格亚    时间: 2013-12-17 22:25
最主要是多了 Cull Off 才能实现




欢迎光临 纳金网 (http://old.narkii.com/club/) Powered by Discuz! X2.5