Quantcast
Channel: Questions in topic: "post processing"
Viewing all articles
Browse latest Browse all 713

Postprocessing effect in Oculus GO

$
0
0
Hi , I want to make PostProcessingEffect(Bloom) in Oculus GO , but it's difficullt. So I want someone's help. My environment => Unity2019.1 + SinglePathStereoRendering + ForwardRendering I tried to make it by self using Graphics.Blit() or CommandBuffer.Blit() ,however the one was broken drawing and another was no change in Oculus GO( on PC ,it's changing). I found some bug reports about Graphics.Blit(). I don't know the reason why no change using CommandBuffer.Blit() in Oculus Go. I show the easy test code of CommandBuffer (this code is same status)here , so please help. ---------- P.S I find this , but my problem happens on 2019.2.5f https://issuetracker.unity3d.com/issues/oculus-go-postprocessing-effects-are-not-applied-to-built-applications?page=1#comments ---------- C# using UnityEngine; using UnityEngine.Rendering; [RequireComponent(typeof(Camera))] public class CommandBufferPostEffect : MonoBehaviour { [SerializeField] private Shader _shader; private void Awake() { Initialize(); } private void Initialize() { var camera = GetComponent(); var material = new Material(_shader); var commandBuffer = new CommandBuffer(); int tempTextureIdentifier = Shader.PropertyToID("_PostEffectTempTexture"); commandBuffer.GetTemporaryRT(tempTextureIdentifier, -1, -1); commandBuffer.Blit(BuiltinRenderTextureType.CurrentActive, tempTextureIdentifier); commandBuffer.Blit(tempTextureIdentifier, BuiltinRenderTextureType.CurrentActive, material); commandBuffer.ReleaseTemporaryRT(tempTextureIdentifier); camera.AddCommandBuffer(CameraEvent.AfterEverything, commandBuffer); } } Shader Shader "Unlit/Bloomtest" {Properties { _MainTex("Texture", 2D) = "white" {} } SubShader { Cull Off ZWrite Off ZTest Always CGINCLUDE #include "UnityCG.cginc" struct appdata { float4 vertex : POSITION; float2 uv : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID //挿入 }; //v2f 出力構造体 struct v2f { float2 uv : TEXCOORD0; float4 vertex : SV_POSITION; UNITY_VERTEX_OUTPUT_STEREO //挿入 }; v2f vert(appdata v) { v2f o; UNITY_SETUP_INSTANCE_ID(v); //挿入 UNITY_INITIALIZE_OUTPUT(v2f, o); //挿入 UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); //挿入 o.vertex = UnityObjectToClipPos(v.vertex); o.uv = v.uv; return o; } UNITY_DECLARE_SCREENSPACE_TEXTURE(_MainTex); //挿入 fixed4 frag(v2f i) : SV_Target { UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(i); //挿入 fixed4 col = UNITY_SAMPLE_SCREENSPACE_TEXTURE(_MainTex, i.uv); //挿入 //fixed4 col = tex2D(_MainTex, UnityStereoScreenSpaceUVAdjust(i.uv, _MainTex_ST)); col = 1 - col; return col; } ENDCG Pass { CGPROGRAM #pragma vertex vert #pragma fragment frag ENDCG } } }

Viewing all articles
Browse latest Browse all 713

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>