1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'
- // Copyright 2016 Nibiru. All rights reserved.
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
- // You may obtain a copy of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License is distributed on an "AS IS" BASIS,
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- // See the License for the specific language governing permissions and
- // limitations under the License.
- Shader "NAR/Reticle" {
- Properties {
- _Color ("Color", Color) = ( 1, 1, 1, 1 )
- _InnerDiameter ("InnerDiameter", Range(0, 10.0)) = 1.5
- _OuterDiameter ("OuterDiameter", Range(0.00872665, 10.0)) = 2.0
- _DistanceInMeters ("DistanceInMeters", Range(0.0, 100.0)) = 2.0
- }
- SubShader {
- Tags { "Queue"="Overlay" "IgnoreProjector"="True" "RenderType"="Transparent" }
- Pass {
- Blend SrcAlpha OneMinusSrcAlpha
- AlphaTest Off
- Cull Back
- Lighting Off
- ZWrite Off
- ZTest Always
- Fog { Mode Off }
- CGPROGRAM
- #pragma vertex vert
- #pragma fragment frag
- #include "UnityCG.cginc"
- uniform float4 _Color;
- uniform float _InnerDiameter;
- uniform float _OuterDiameter;
- uniform float _DistanceInMeters;
- struct vertexInput {
- float4 vertex : POSITION;
- };
- struct fragmentInput{
- float4 position : SV_POSITION;
- };
- fragmentInput vert(vertexInput i) {
- float scale = lerp(_OuterDiameter, _InnerDiameter, i.vertex.z);
- float4 vert_out = float4(i.vertex.x * scale, i.vertex.y * scale, _DistanceInMeters, 1.0);
- fragmentInput o;
- o.position = UnityObjectToClipPos (vert_out);
- return o;
- }
- fixed4 frag(fragmentInput i) : SV_Target {
- fixed4 ret = _Color;
- return ret;
- }
- ENDCG
- }
- }
- }
|