|
|
- /************************************************************************************
-
- Copyright (c) Facebook Technologies, LLC and its affiliates. All rights reserved.
-
- See SampleFramework license.txt for license terms. Unless required by applicable law
- or agreed to in writing, the sample code is provided “AS IS” WITHOUT WARRANTIES OR
- CONDITIONS OF ANY KIND, either express or implied. See the license for specific
- language governing permissions and limitations under the license.
-
- ************************************************************************************/
-
- // does baked lighting + one directional light + reflection probe
- Shader "Oculus Sample/Train Props Shader" {
- Properties {
- [PowerSlider(6.0)] _Shininess("Shininess", Range(0.02, 1)) = 0.03
- _MainTex("Base (RGB) Gloss (A)", 2D) = "white" {}
- _Color("Color", Color) = (0.5, 0.5, 0.5, 0.5)
- _BumpMap("Normal map", 2D) = "bump" {}
- _ReflectionMap("Reflection map", CUBE) = "" {}
- [MaterialToggle] _ReflectionMapEnabled("Enable Reflection map", Float) = 0
- }
- SubShader {
- Tags{"RenderType" = "Opaque"}
- LOD 300
-
- CGPROGRAM
- #include "UnityCG.cginc"
- // no deferred. support lightmaps and one light. use half vector instead of
- // view vector (less accurate but faster)
- #pragma surface surf BlinnPhong exclude_path:prepass noforwardadd halfasview
-
- sampler2D _MainTex;
-
- struct Input {
- float2 uv_MainTex;
- float3 worldRefl;
- float3 viewDir;
- INTERNAL_DATA
- };
-
- half _Shininess;
- fixed4 _Color;
- sampler2D _BumpMap;
- samplerCUBE _ReflectionMap;
- fixed _ReflectionMapEnabled;
-
- void surf(Input IN, inout SurfaceOutput o) {
- fixed4 albedo = tex2D(_MainTex, IN.uv_MainTex)*_Color;
- fixed gloss = albedo.a*_Shininess;
- fixed4 fakeReflec = texCUBE(_ReflectionMap, WorldReflectionVector(IN, o.Normal));
-
- o.Albedo = albedo.rgb;
- o.Gloss = gloss;
- o.Alpha = gloss;
- o.Specular = gloss;
- o.Normal = UnpackNormal(tex2D(_BumpMap, IN.uv_MainTex));
- o.Emission = _ReflectionMapEnabled * gloss * fakeReflec.rgb;
- }
- ENDCG
- }
-
- FallBack "Mobile/VertexLit"
- }
|