summaryrefslogtreecommitdiff
path: root/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer.meta8
-rw-r--r--VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Panosphere.shader79
-rw-r--r--VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Panosphere.shader.meta10
-rw-r--r--VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Sphere.mat73
-rw-r--r--VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Sphere.mat.meta8
5 files changed, 178 insertions, 0 deletions
diff --git a/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer.meta b/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer.meta
new file mode 100644
index 00000000..3575cb8f
--- /dev/null
+++ b/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 44674fef3fabd274b89a9aaac2e4f61f
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Panosphere.shader b/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Panosphere.shader
new file mode 100644
index 00000000..2721e6bc
--- /dev/null
+++ b/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Panosphere.shader
@@ -0,0 +1,79 @@
+// Shader created with Shader Forge v1.37
+// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/
+// Note: Manually altering this data may prevent you from opening it in Shader Forge
+/*SF_DATA;ver:1.37;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:0,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:0,bsrc:0,bdst:1,dpts:2,wrdp:True,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:False,aust:True,igpj:False,qofs:0,qpre:1,rntp:1,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.9918864,fgcg:0.9632353,fgcb:1,fgca:1,fgde:0.002,fgrn:0,fgrf:300,stcl:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:3138,x:33050,y:32223,varname:node_3138,prsc:2|emission-857-RGB;n:type:ShaderForge.SFN_ViewVector,id:9763,x:31317,y:32321,varname:node_9763,prsc:2;n:type:ShaderForge.SFN_Multiply,id:6020,x:31491,y:32321,varname:node_6020,prsc:2|A-9763-OUT,B-9888-OUT;n:type:ShaderForge.SFN_Vector1,id:9888,x:31317,y:32452,varname:node_9888,prsc:2,v1:-1;n:type:ShaderForge.SFN_Tex2d,id:857,x:32869,y:32321,ptovrint:False,ptlb:MainTex,ptin:_MainTex,varname:node_857,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False|UVIN-803-OUT;n:type:ShaderForge.SFN_Code,id:778,x:31696,y:32515,varname:node_778,prsc:2,code:ZgBsAG8AYQB0ADMAIABuAG8AcgBtAGEAbABpAHoAZQBkAEMAbwBvAHIAZABzACAAPQAgAG4AbwByAG0AYQBsAGkAegBlACgAYwBvAG8AcgBkAHMAKQA7AA0ACgBmAGwAbwBhAHQAIABsAGEAdABpAHQAdQBkAGUAIAA9ACAAYQBjAG8AcwAoAG4AbwByAG0AYQBsAGkAegBlAGQAQwBvAG8AcgBkAHMALgB5ACkAOwANAAoAZgBsAG8AYQB0ACAAbABvAG4AZwBpAHQAdQBkAGUAIAA9ACAAYQB0AGEAbgAyACgAbgBvAHIAbQBhAGwAaQB6AGUAZABDAG8AbwByAGQAcwAuAHoALAAgAG4AbwByAG0AYQBsAGkAegBlAGQAQwBvAG8AcgBkAHMALgB4ACkAOwANAAoAZgBsAG8AYQB0ADIAIABzAHAAaABlAHIAZQBDAG8AbwByAGQAcwAgAD0AIABmAGwAbwBhAHQAMgAoAGwAbwBuAGcAaQB0AHUAZABlACwAIABsAGEAdABpAHQAdQBkAGUAKQAgACoAIABmAGwAbwBhAHQAMgAoADAALgA1AC8AVQBOAEkAVABZAF8AUABJACwAIAAxAC4AMAAvAFUATgBJAFQAWQBfAFAASQApADsADQAKAHMAcABoAGUAcgBlAEMAbwBvAHIAZABzACAAPQAgAGYAbABvAGEAdAAyACgAMAAuADUALAAxAC4AMAApACAALQAgAHMAcABoAGUAcgBlAEMAbwBvAHIAZABzADsACgByAGUAdAB1AHIAbgAgACgAcwBwAGgAZQByAGUAQwBvAG8AcgBkAHMAIAArACAAZgBsAG8AYQB0ADQAKAAwACwAIAAxAC0AdQBuAGkAdAB5AF8AUwB0AGUAcgBlAG8ARQB5AGUASQBuAGQAZQB4ACwAMQAsADAALgA1ACkALgB4AHkAKQAgACoAIABmAGwAbwBhAHQANAAoADAALAAgADEALQB1AG4AaQB0AHkAXwBTAHQAZQByAGUAbwBFAHkAZQBJAG4AZABlAHgALAAxACwAMAAuADUAKQAuAHoAdwA7AA==,output:1,fname:StereoPanoProjection,width:891,height:132,input:2,input_1_label:coords|A-6020-OUT;n:type:ShaderForge.SFN_Code,id:7754,x:31695,y:32321,varname:node_7754,prsc:2,code:ZgBsAG8AYQB0ADMAIABuAG8AcgBtAGEAbABpAHoAZQBkAEMAbwBvAHIAZABzACAAPQAgAG4AbwByAG0AYQBsAGkAegBlACgAYwBvAG8AcgBkAHMAKQA7AA0ACgBmAGwAbwBhAHQAIABsAGEAdABpAHQAdQBkAGUAIAA9ACAAYQBjAG8AcwAoAG4AbwByAG0AYQBsAGkAegBlAGQAQwBvAG8AcgBkAHMALgB5ACkAOwANAAoAZgBsAG8AYQB0ACAAbABvAG4AZwBpAHQAdQBkAGUAIAA9ACAAYQB0AGEAbgAyACgAbgBvAHIAbQBhAGwAaQB6AGUAZABDAG8AbwByAGQAcwAuAHoALAAgAG4AbwByAG0AYQBsAGkAegBlAGQAQwBvAG8AcgBkAHMALgB4ACkAOwANAAoAZgBsAG8AYQB0ADIAIABzAHAAaABlAHIAZQBDAG8AbwByAGQAcwAgAD0AIABmAGwAbwBhAHQAMgAoAGwAbwBuAGcAaQB0AHUAZABlACwAIABsAGEAdABpAHQAdQBkAGUAKQAgACoAIABmAGwAbwBhAHQAMgAoADEALgAwAC8AVQBOAEkAVABZAF8AUABJACwAIAAxAC4AMAAvAFUATgBJAFQAWQBfAFAASQApADsADQAKAHMAcABoAGUAcgBlAEMAbwBvAHIAZABzACAAPQAgAGYAbABvAGEAdAAyACgAMQAuADAALAAxAC4AMAApACAALQAgAHMAcABoAGUAcgBlAEMAbwBvAHIAZABzADsACgByAGUAdAB1AHIAbgAgACgAcwBwAGgAZQByAGUAQwBvAG8AcgBkAHMAIAArACAAZgBsAG8AYQB0ADQAKAAwACwAIAAxAC0AdQBuAGkAdAB5AF8AUwB0AGUAcgBlAG8ARQB5AGUASQBuAGQAZQB4ACwAMQAsADEALgAwACkALgB4AHkAKQAgACoAIABmAGwAbwBhAHQANAAoADAALAAgADEALQB1AG4AaQB0AHkAXwBTAHQAZQByAGUAbwBFAHkAZQBJAG4AZABlAHgALAAxACwAMQAuADAAKQAuAHoAdwA7AA==,output:1,fname:MonoPanoProjection,width:892,height:132,input:2,input_1_label:coords|A-6020-OUT;n:type:ShaderForge.SFN_SwitchProperty,id:803,x:32667,y:32321,ptovrint:False,ptlb:Stereo Enabled,ptin:_StereoEnabled,varname:node_803,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,on:True|A-7754-OUT,B-778-OUT;proporder:857-803;pass:END;sub:END;*/
+
+Shader "VRChat/Panosphere" {
+ Properties {
+ _MainTex ("MainTex", 2D) = "white" {}
+ [MaterialToggle] _StereoEnabled ("Stereo Enabled", Float ) = 0
+ }
+ SubShader {
+ Tags {
+ "RenderType"="Opaque"
+ }
+ Pass {
+ Name "FORWARD"
+ Tags {
+ "LightMode"="ForwardBase"
+ }
+
+
+ CGPROGRAM
+ #pragma vertex vert
+ #pragma fragment frag
+ #define UNITY_PASS_FORWARDBASE
+ #include "UnityCG.cginc"
+ #pragma multi_compile_fwdbase_fullshadows
+ #pragma only_renderers d3d9 d3d11 glcore gles n3ds wiiu
+ #pragma target 3.0
+ uniform sampler2D _MainTex; uniform float4 _MainTex_ST;
+ float2 StereoPanoProjection( float3 coords ){
+ float3 normalizedCoords = normalize(coords);
+ float latitude = acos(normalizedCoords.y);
+ float longitude = atan2(normalizedCoords.z, normalizedCoords.x);
+ float2 sphereCoords = float2(longitude, latitude) * float2(0.5/UNITY_PI, 1.0/UNITY_PI);
+ sphereCoords = float2(0.5,1.0) - sphereCoords;
+ return (sphereCoords + float4(0, 1-unity_StereoEyeIndex,1,0.5).xy) * float4(0, 1-unity_StereoEyeIndex,1,0.5).zw;
+ }
+
+ float2 MonoPanoProjection( float3 coords ){
+ float3 normalizedCoords = normalize(coords);
+ float latitude = acos(normalizedCoords.y);
+ float longitude = atan2(normalizedCoords.z, normalizedCoords.x);
+ float2 sphereCoords = float2(longitude, latitude) * float2(1.0/UNITY_PI, 1.0/UNITY_PI);
+ sphereCoords = float2(1.0,1.0) - sphereCoords;
+ return (sphereCoords + float4(0, 1-unity_StereoEyeIndex,1,1.0).xy) * float4(0, 1-unity_StereoEyeIndex,1,1.0).zw;
+ }
+
+ uniform fixed _StereoEnabled;
+ struct VertexInput {
+ float4 vertex : POSITION;
+ };
+ struct VertexOutput {
+ float4 pos : SV_POSITION;
+ float4 posWorld : TEXCOORD0;
+ };
+ VertexOutput vert (VertexInput v) {
+ VertexOutput o = (VertexOutput)0;
+ o.posWorld = mul(unity_ObjectToWorld, v.vertex);
+ o.pos = UnityObjectToClipPos( v.vertex );
+ return o;
+ }
+ float4 frag(VertexOutput i) : COLOR {
+ float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz);
+////// Lighting:
+////// Emissive:
+ float3 node_6020 = (viewDirection*(-1.0));
+ float2 _StereoEnabled_var = lerp( MonoPanoProjection( node_6020 ), StereoPanoProjection( node_6020 ), _StereoEnabled );
+ float4 _MainTex_var = tex2D(_MainTex,TRANSFORM_TEX(_StereoEnabled_var, _MainTex));
+ float3 emissive = _MainTex_var.rgb;
+ float3 finalColor = emissive;
+ return fixed4(finalColor,1);
+ }
+ ENDCG
+ }
+ }
+ FallBack "Diffuse"
+ CustomEditor "ShaderForgeMaterialInspector"
+}
diff --git a/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Panosphere.shader.meta b/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Panosphere.shader.meta
new file mode 100644
index 00000000..2c6ef22a
--- /dev/null
+++ b/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Panosphere.shader.meta
@@ -0,0 +1,10 @@
+fileFormatVersion: 2
+guid: 1278163a2a3ba2b4cad540a862292784
+timeCreated: 1442362198
+licenseType: Free
+ShaderImporter:
+ defaultTextures:
+ - _MainTex: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Sphere.mat b/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Sphere.mat
new file mode 100644
index 00000000..e7976077
--- /dev/null
+++ b/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Sphere.mat
@@ -0,0 +1,73 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+ serializedVersion: 6
+ m_ObjectHideFlags: 0
+ m_PrefabParentObject: {fileID: 0}
+ m_PrefabInternal: {fileID: 0}
+ m_Name: Sphere
+ m_Shader: {fileID: 4800000, guid: 1278163a2a3ba2b4cad540a862292784, type: 3}
+ m_ShaderKeywords:
+ m_LightmapFlags: 5
+ m_EnableInstancingVariants: 0
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: 2000
+ stringTagMap: {}
+ disabledShaderPasses: []
+ m_SavedProperties:
+ serializedVersion: 3
+ m_TexEnvs:
+ - _BumpMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DetailAlbedoMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DetailMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DetailNormalMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainTex:
+ m_Texture: {fileID: 2800000, guid: b8e8dcca0b0b74a43acb6c803b119ea1, type: 3}
+ m_Scale: {x: 1, y: 0.5}
+ m_Offset: {x: 0, y: 0.5}
+ - _MetallicGlossMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _OcclusionMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Floats:
+ - _BumpScale: 1
+ - _Cutoff: 0.5
+ - _DetailNormalMapScale: 1
+ - _DstBlend: 0
+ - _Glossiness: 0.5
+ - _Metallic: 0
+ - _Mode: 0
+ - _OcclusionStrength: 1
+ - _Parallax: 0.02
+ - _SrcBlend: 1
+ - _StereoEnabled: 0
+ - _UVSec: 0
+ - _ZWrite: 1
+ m_Colors:
+ - _Color: {r: 1, g: 1, b: 1, a: 1}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
diff --git a/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Sphere.mat.meta b/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Sphere.mat.meta
new file mode 100644
index 00000000..af5bdb46
--- /dev/null
+++ b/VRCSDK3Worlds/Assets/VRCSDK/Sample Assets/PanoViewer/Sphere.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 26803b57669325843a97b0ae43031082
+timeCreated: 1442361178
+licenseType: Free
+NativeFormatImporter:
+ userData:
+ assetBundleName:
+ assetBundleVariant: