diff --git a/Assets/Manifest_Experimental.asset b/Assets/Manifest_Experimental.asset index 96b5d8072e..ebaa10ad3c 100644 --- a/Assets/Manifest_Experimental.asset +++ b/Assets/Manifest_Experimental.asset @@ -66,6 +66,8 @@ MonoBehaviour: - {fileID: 11400000, guid: 2ac14128061517f47a61f3c85ce26dfa, type: 2} - {fileID: 11400000, guid: 95219c84db13d7c49b0bae92b5f8dc9c, type: 2} - {fileID: 11400000, guid: b9280b7e789abdd49bd5d85c5554afd3, type: 2} + - {fileID: 11400000, guid: d25091db0e878ba458b54227b23cad57, type: 2} Environments: - {fileID: 11400000, guid: c4b465a813a79c044874468d6e60f26c, type: 2} + Locales: [] CompatibilityBrushes: [] diff --git a/Assets/Resources/X/Brushes/PassthroughHull.meta b/Assets/Resources/X/Brushes/PassthroughHull.meta new file mode 100644 index 0000000000..15d4af7ade --- /dev/null +++ b/Assets/Resources/X/Brushes/PassthroughHull.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 20885a1974fccc44da64652851779c05 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/X/Brushes/PassthroughHull/HullPrefabPassthrough.prefab b/Assets/Resources/X/Brushes/PassthroughHull/HullPrefabPassthrough.prefab new file mode 100644 index 0000000000..02c23f8d31 --- /dev/null +++ b/Assets/Resources/X/Brushes/PassthroughHull/HullPrefabPassthrough.prefab @@ -0,0 +1,103 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &100000 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 400000} + - component: {fileID: 114000011676573980} + - component: {fileID: 2300000} + - component: {fileID: 3300000} + m_Layer: 0 + m_Name: HullPrefabPassthrough + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &400000 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &114000011676573980 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 05481b74b9f47ad45a3f71a4890c7f63, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Faceted: 1 + m_TrackInterior: 1 + m_KnotConversion: 2 + m_Simplification_PS: 0.001 + m_SimplifyMode: 0 +--- !u!23 &2300000 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: ce8b2be5f7b63f344ae603ba6f4b4aec, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &3300000 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100000} + m_Mesh: {fileID: 0} diff --git a/Assets/Resources/X/Brushes/PassthroughHull/HullPrefabPassthrough.prefab.meta b/Assets/Resources/X/Brushes/PassthroughHull/HullPrefabPassthrough.prefab.meta new file mode 100644 index 0000000000..46fbd278fa --- /dev/null +++ b/Assets/Resources/X/Brushes/PassthroughHull/HullPrefabPassthrough.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f04947adf1f654f4081f1f32deb5f6d4 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/X/Brushes/PassthroughHull/PassthroughHull.asset b/Assets/Resources/X/Brushes/PassthroughHull/PassthroughHull.asset new file mode 100644 index 0000000000..5cd62f4cb4 --- /dev/null +++ b/Assets/Resources/X/Brushes/PassthroughHull/PassthroughHull.asset @@ -0,0 +1,90 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c71b2ac88638c5c41a0a0681f70d2512, type: 3} + m_Name: PassthroughHull + m_EditorClassIdentifier: + m_Guid: + m_storage: cc131ff8-0d17-4677-93e0-d7cd19fea9ac + m_DurableName: PassthroughHull + m_CreationVersion: + m_ShaderVersion: 10.0 + m_BrushPrefab: {fileID: 100000, guid: f04947adf1f654f4081f1f32deb5f6d4, type: 3} + m_Tags: + - experimental + - hull + - passthrough + m_Nondeterministic: 0 + m_Supersedes: {fileID: 0} + m_LooksIdentical: 0 + m_ButtonTexture: {fileID: 2800000, guid: 3206c9396267b1b4784c2c545300582c, type: 3} + m_LocalizedDescription: + m_TableReference: + m_TableCollectionName: GUID:c84355079ab3f3e4f8f3812258805f86 + m_TableEntryReference: + m_KeyId: 176764812224364544 + m_Key: + m_FallbackState: 0 + m_WaitForCompletion: 0 + m_LocalVariables: [] + m_DescriptionExtra: + m_BrushAudioLayers: + - {fileID: 8300000, guid: 15b5f6d2886398349b2f6221289deef0, type: 3} + - {fileID: 8300000, guid: 7f3c17c51669e2d48b29fd4056b713a4, type: 3} + - {fileID: 8300000, guid: 80f7380fb57f05b49bf3407ca40404fd, type: 3} + m_BrushAudioBasePitch: 1 + m_BrushAudioMaxPitchShift: 0 + m_BrushAudioMaxVolume: 1 + m_BrushVolumeUpSpeed: 1.2 + m_BrushVolumeDownSpeed: 1.2 + m_VolumeVelocityRangeMultiplier: 1.5 + m_AudioReactive: 0 + m_ButtonAudio: {fileID: 0} + m_Material: {fileID: 2100000, guid: ce8b2be5f7b63f344ae603ba6f4b4aec, type: 2} + m_TextureAtlasV: 1 + m_TileRate: 0.01 + m_UseBloomSwatchOnColorPicker: 0 + m_BrushSizeRange: {x: 0.005, y: 1} + m_PressureSizeRange: {x: 0.1, y: 1} + m_SizeVariance: 0 + m_PreviewPressureSizeMin: 0.001 + m_Opacity: 1 + m_PressureOpacityRange: {x: 1, y: 1} + m_ColorLuminanceMin: 0 + m_ColorSaturationMax: 1 + m_ParticleSpeed: 0 + m_ParticleRate: 1 + m_ParticleInitialRotationRange: 0 + m_RandomizeAlpha: 0 + m_SprayRateMultiplier: 1 + m_RotationVariance: 360 + m_PositionVariance: 0 + m_SizeRatio: {x: 1, y: 1} + m_M11Compatibility: 1 + m_SolidMinLengthMeters_PS: 0.002 + m_TubeStoreRadiusInTexcoord0Z: 0 + m_RenderBackfaces: 0 + m_BackIsInvisible: 0 + m_BackfaceHueShift: 0 + m_BoundsPadding: 0 + m_PlayBackAtStrokeGranularity: 1 + m_BlendMode: 0 + m_EmissiveFactor: 0 + m_AllowExport: 1 + m_SupportsSimplification: 0 + m_HeadMinPoints: 1 + m_HeadPointStep: 1 + m_TailMinPoints: 1 + m_TailPointStep: 1 + m_MiddlePointStep: 0 + references: + version: 2 + RefIds: [] diff --git a/Assets/Resources/X/Brushes/PassthroughHull/PassthroughHull.asset.meta b/Assets/Resources/X/Brushes/PassthroughHull/PassthroughHull.asset.meta new file mode 100644 index 0000000000..11abfef360 --- /dev/null +++ b/Assets/Resources/X/Brushes/PassthroughHull/PassthroughHull.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d25091db0e878ba458b54227b23cad57 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/X/Brushes/PassthroughHull/PassthroughHull.mat b/Assets/Resources/X/Brushes/PassthroughHull/PassthroughHull.mat new file mode 100644 index 0000000000..f6b1272b61 --- /dev/null +++ b/Assets/Resources/X/Brushes/PassthroughHull/PassthroughHull.mat @@ -0,0 +1,98 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: PassthroughHull + m_Shader: {fileID: 4800000, guid: 2e1da1285b95b584383074c95b23dc2e, type: 3} + m_ValidKeywords: [] + m_InvalidKeywords: + - _EMISSION + m_LightmapFlags: 1 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _Bottom: + m_Texture: {fileID: 2800000, guid: 36752f6114447a844a013406d30a3c29, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _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: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _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} + - _Side: + m_Texture: {fileID: 2800000, guid: 31a0dba64c25fa442a02171bc2131ccc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Top: + m_Texture: {fileID: 2800000, guid: 36752f6114447a844a013406d30a3c29, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _BottomScale: 0.3 + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _Shininess: 0.574 + - _SideScale: 5.21 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _TopScale: 0.3 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecColor: {r: 0.29411763, g: 0.29411763, b: 0.29411763, a: 0} + m_BuildTextureStacks: [] diff --git a/Assets/Resources/X/Brushes/PassthroughHull/PassthroughHull.mat.meta b/Assets/Resources/X/Brushes/PassthroughHull/PassthroughHull.mat.meta new file mode 100644 index 0000000000..f5dc8426c9 --- /dev/null +++ b/Assets/Resources/X/Brushes/PassthroughHull/PassthroughHull.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ce8b2be5f7b63f344ae603ba6f4b4aec +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/X/Brushes/PassthroughHull/buttonimage.png b/Assets/Resources/X/Brushes/PassthroughHull/buttonimage.png new file mode 100644 index 0000000000..823ccb8a31 Binary files /dev/null and b/Assets/Resources/X/Brushes/PassthroughHull/buttonimage.png differ diff --git a/Assets/Resources/X/Brushes/PassthroughHull/buttonimage.png.meta b/Assets/Resources/X/Brushes/PassthroughHull/buttonimage.png.meta new file mode 100644 index 0000000000..2649e29d07 --- /dev/null +++ b/Assets/Resources/X/Brushes/PassthroughHull/buttonimage.png.meta @@ -0,0 +1,121 @@ +fileFormatVersion: 2 +guid: 2139e29b288b6fb4c85d41b6c0d8a722 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 1 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: -1 + wrapV: -1 + wrapW: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Android + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: 51 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 128 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/BrushCatalog.cs b/Assets/Scripts/BrushCatalog.cs index 7a21c122f5..86a44c4a2e 100644 --- a/Assets/Scripts/BrushCatalog.cs +++ b/Assets/Scripts/BrushCatalog.cs @@ -12,6 +12,10 @@ // See the License for the specific language governing permissions and // limitations under the License. +#if OCULUS_SUPPORTED || ZAPBOX_SUPPORTED +#define PASSTHROUGH_SUPPORTED +#endif + using System; using System.Collections.Generic; using System.Linq; @@ -196,14 +200,18 @@ public void BeginReload() public Brush[] GetTagFilteredBrushList() { - string[] includeTags = App.UserConfig.Brushes.IncludeTags; - string[] excludeTags = App.UserConfig.Brushes.ExcludeTags; + List includeTags = App.UserConfig.Brushes.IncludeTags.ToList(); + List excludeTags = App.UserConfig.Brushes.ExcludeTags.ToList(); - if (includeTags == null) + if (includeTags == null || includeTags.Count == 0) { Debug.LogError("There will be no brushes because there are no 'include' tags."); } +#if !PASSTHROUGH_SUPPORTED + excludeTags.Add("passthrough"); +#endif + // Filter m_GuiBrushList down to those that are both 'included' and not 'excluded' Brush[] filteredList = m_GuiBrushList.Where((brush) => { diff --git a/Assets/Scripts/VrSdk.cs b/Assets/Scripts/VrSdk.cs index cce18a50c7..4bae5df9fa 100644 --- a/Assets/Scripts/VrSdk.cs +++ b/Assets/Scripts/VrSdk.cs @@ -11,6 +11,11 @@ // 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. + +#if OCULUS_SUPPORTED || ZAPBOX_SUPPORTED +#define PASSTHROUGH_SUPPORTED +#endif + using System; using System.Collections.Generic; using System.Linq; @@ -225,6 +230,9 @@ void Awake() var unused = msg.Data.AgeCategory; }); } +#if PASSTHROUGH_SUPPORTED + OVRManager.eyeFovPremultipliedAlphaModeEnabled = false; +#endif #endif // OCULUS_SUPPORTED diff --git a/Assets/Settings/Localization/Strings/Strings Shared Data.asset b/Assets/Settings/Localization/Strings/Strings Shared Data.asset index 0f6941eddc..82bf2e5130 100644 --- a/Assets/Settings/Localization/Strings/Strings Shared Data.asset +++ b/Assets/Settings/Localization/Strings/Strings Shared Data.asset @@ -3279,6 +3279,10 @@ MonoBehaviour: m_Key: CONTROLLER_HINT_THUMBPAD_BRUSHSIZE m_Metadata: m_Items: [] + - m_Id: 176764812224364544 + m_Key: BRUSH_PASSTHROUGHHULL + m_Metadata: + m_Items: [] - m_Id: 188791089062830080 m_Key: ENVIRONMENT_PANEL_RESET_CANVAS m_Metadata: diff --git a/Assets/Settings/Localization/Strings/Strings_en.asset b/Assets/Settings/Localization/Strings/Strings_en.asset index b88ce33e14..f85b1273b4 100644 --- a/Assets/Settings/Localization/Strings/Strings_en.asset +++ b/Assets/Settings/Localization/Strings/Strings_en.asset @@ -3504,6 +3504,10 @@ MonoBehaviour: m_Localized: More info on using Open Brush without VR m_Metadata: m_Items: [] + - m_Id: 176764812224364544 + m_Localized: Passthrough Hull + m_Metadata: + m_Items: [] - m_Id: 224363142209691648 m_Localized: Pick a Subfolder m_Metadata: diff --git a/Assets/Shaders/Passthrough.shader b/Assets/Shaders/Passthrough.shader new file mode 100644 index 0000000000..37d77bc592 --- /dev/null +++ b/Assets/Shaders/Passthrough.shader @@ -0,0 +1,55 @@ +Shader "Special/Passthrough" +{ + Properties + { + _MainTex ("Texture", 2D) = "white" {} + } + SubShader + { + Tags { "RenderType"="Opaque" } + LOD 100 + Cull Off + + Pass + { + BlendOp RevSub + Blend One Zero, Zero Zero + + CGPROGRAM + + #pragma vertex vert + #pragma fragment frag + + #include "UnityCG.cginc" + + struct appdata + { + float4 vertex : POSITION; + float2 uv : TEXCOORD0; + }; + + struct v2f + { + float2 uv : TEXCOORD0; + float4 vertex : SV_POSITION; + }; + + sampler2D _MainTex; + float4 _MainTex_ST; + + v2f vert (appdata v) + { + v2f o; + o.vertex = UnityObjectToClipPos(v.vertex); + o.uv = TRANSFORM_TEX(v.uv, _MainTex); + return o; + } + + fixed4 frag (v2f i) : SV_Target + { + return float4(0, 0, 0, 0); + } + ENDCG + } + } +} \ No newline at end of file diff --git a/Assets/Shaders/Passthrough.shader.meta b/Assets/Shaders/Passthrough.shader.meta new file mode 100644 index 0000000000..9401106440 --- /dev/null +++ b/Assets/Shaders/Passthrough.shader.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 2e1da1285b95b584383074c95b23dc2e +ShaderImporter: + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] + preprocessorOverride: 0 + userData: + assetBundleName: + assetBundleVariant: