 			{
 				half4 viewPos : SV_POSITION;
 				half  pulse : COLOR;
+				UNITY_VERTEX_INPUT_INSTANCE_ID
 			};
 
 			v2g vert(appdata_base v)
 			{
 				v2g o;
+				UNITY_SETUP_INSTANCE_ID(v);
+				UNITY_TRANSFER_INSTANCE_ID(v, o);
 
 				o.viewPos = UnityObjectToClipPos(v.vertex);
 


			half4 frag(g2f i) : COLOR
			{
				half3 result = i.pulse * _PulseColor;

				if (!_UseWireframe)

				[unroll]
				for (uint idx = 0; idx < 3; ++idx)
				{
					UNITY_SETUP_INSTANCE_ID(i[idx]);
					UNITY_TRANSFER_INSTANCE_ID(i[idx], o);
					UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
					o.viewPos = i[idx].viewPos;
					o.bary = barys[idx];
					o.pulse = i[idx].pulse;
