I am writing a shader for unity3d and I want to specify the properties of the shader in i.e like -
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
}
But these properties are for color, range, float etc but I want to input a boolean value how can i do it i tried something like-
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
but this doesnt work I am not able to get the boolean property "_isBending" and I get a Error instead in the line
_isBending("is Bending",bool) = true
[MaterialToggle] _isBending("is Bending", Float) = 0
or
[Toggle] _isBending("is Bending", Float) = 0
At least you will have a visual toggle button.