2013-09-24 20 views
6

Ben Unity3D için bir gölgelendirici yazıyorum ve ben shader özelliklerini belirtmek istediğiniz yani böyle -unity3d CGprogram gölgelendiricide boolean özelliği nasıl ayarlanır?

Ama bu özellikler renk, aralık içindir
Shader "GraphicsQuality/MediumScan" { 
Properties { 
    _Color ("Main Color", Color) = (1,1,1,1) 
    _SpecColor ("Specular Color", Color) = (0.5,0.5,0.5,1) 
    _Shininess ("Shininess", Range (0.01, 1)) = 0.078125 
    _MainTex ("Base (RGB) RefStrGloss (A)", 2D) = "white" {} 
    _BumpMap ("Normalmap", 2D) = "bump" {} 
    _RimColor ("Rim Color", Color) = (0.48,0.78,1.0,0.0) 
    _RimPower ("Rim Power", Range(0,8.0)) = 3.0 
} 

, vb yüzer ama girişine bir boolean değeri nasıl istiyorum ben ben

Properties{ 
    _MainTex ("Particle Texture", 2D) = "white" { 
    _isBending("is Bending",bool) = true 
} 
SubShader{ 
     Pass{ 
      CGPROGRAM 

       #pragma vertex vert 
       #pragma fragment frag 

       sampler2D _MainTex; 
       bool _isBending; 
.......continuing 

gibi- bir şey denedim yapmak ama bu çalışmıyor ben boole özelliği "_isBending" elde edemedi ve ben doğrultusunda yerine hata alabilirsiniz

_isBending("is Bending",bool) = true 

cevap

11
[MaterialToggle] _isBending("is Bending", Float) = 0 

veya

[Toggle] _isBending("is Bending", Float) = 0 

En azından görsel bir geçiş düğmesi bulunur.