void UpdateRenderer() { if (_renderer == null) { _renderer = new RendererAdapter(gameObject, _defaultMaterial); } // Update the custom property block. #if UNITY_EDITOR_WIN || UNITY_STANDALONE var block = GetComponent <Renderer>().material; #else var block = _renderer.propertyBlock; #endif block.SetTexture("_PreviousPositionBuffer", _kernel.GetWorkingBuffer(Buffers.Position)); block.SetTexture("_PreviousVelocityBuffer", _kernel.GetWorkingBuffer(Buffers.Velocity)); block.SetTexture("_PreviousOrthnormBuffer", _kernel.GetWorkingBuffer(Buffers.Orthnorm)); block.SetTexture("_PositionBuffer", _kernel.GetLastBuffer(Buffers.Position)); block.SetTexture("_VelocityBuffer", _kernel.GetLastBuffer(Buffers.Velocity)); block.SetTexture("_OrthnormBuffer", _kernel.GetLastBuffer(Buffers.Orthnorm)); block.SetVector("_LineWidth", new Vector3(_maxWidth, _cutoffSpeed, _speedToWidth / _maxWidth)); block.SetFloat("_RandomSeed", _randomSeed); _renderer.Update(_template.mesh); #if UNITY_EDITOR_WIN || UNITY_STANDALONE block.SetPass(0); #endif }
void UpdateRenderer() { if (_renderer == null) { _renderer = new RendererAdapter(gameObject, _defaultMaterial); } // Update the custom property block. #if UNITY_EDITOR_WIN || UNITY_STANDALONE var block = GetComponent <Renderer>().material; #else var block = _renderer.propertyBlock; #endif block.SetTexture("_PositionBuffer", _kernel.GetLastBuffer(Buffers.Position)); block.SetFloat("_EdgeThreshold", _edgeThreshold); block.SetFloat("_AreaThreshold", _areaThreshold); block.SetFloat("_RandomSeed", _randomSeed); block.SetFloat("_BufferOffset", Time.frameCount); _renderer.Update(_template.mesh); #if UNITY_EDITOR_WIN || UNITY_STANDALONE block.SetPass(0); #endif }
void UpdateRenderer() { if (_renderer == null) { _renderer = new RendererAdapter(gameObject, _defaultMaterial); } // Update the custom property block. var block = _renderer.propertyBlock; block.SetTexture("_PositionBuffer", _kernel.GetLastBuffer(Buffers.Position)); block.SetFloat("_EdgeThreshold", _edgeThreshold); block.SetFloat("_AreaThreshold", _areaThreshold); block.SetFloat("_RandomSeed", _randomSeed); block.SetFloat("_BufferOffset", Time.frameCount); _renderer.Update(_template.mesh); }
void UpdateRenderer() { if (_renderer == null) { _renderer = new RendererAdapter(gameObject, _defaultMaterial); } // Update the custom property block. var block = _renderer.propertyBlock; block.SetTexture("_PreviousPositionBuffer", _kernel.GetWorkingBuffer(Buffers.Position)); block.SetTexture("_PreviousRotationBuffer", _kernel.GetWorkingBuffer(Buffers.Rotation)); block.SetTexture("_PositionBuffer", _kernel.GetLastBuffer(Buffers.Position)); block.SetTexture("_VelocityBuffer", _kernel.GetLastBuffer(Buffers.Velocity)); block.SetTexture("_RotationBuffer", _kernel.GetLastBuffer(Buffers.Rotation)); block.SetVector("_Scale", new Vector2(_maxScale, _speedToScale)); block.SetFloat("_RandomSeed", _randomSeed); _renderer.Update(_template.mesh); }
void UpdateRenderer() { if (_renderer == null) { _renderer = new RendererAdapter(gameObject, _defaultMaterial); } // Update the custom property block. var block = _renderer.propertyBlock; block.SetTexture("_PreviousPositionBuffer", _kernel.GetWorkingBuffer(Buffers.Position)); block.SetTexture("_PreviousVelocityBuffer", _kernel.GetWorkingBuffer(Buffers.Velocity)); block.SetTexture("_PreviousOrthnormBuffer", _kernel.GetWorkingBuffer(Buffers.Orthnorm)); block.SetTexture("_PositionBuffer", _kernel.GetLastBuffer(Buffers.Position)); block.SetTexture("_VelocityBuffer", _kernel.GetLastBuffer(Buffers.Velocity)); block.SetTexture("_OrthnormBuffer", _kernel.GetLastBuffer(Buffers.Orthnorm)); block.SetVector("_LineWidth", new Vector3(_maxWidth, _cutoffSpeed, _speedToWidth / _maxWidth)); block.SetFloat("_RandomSeed", _randomSeed); _renderer.Update(_template.mesh); }
private void UpdateRenderer() { if (_renderer == null) { _renderer = new RendererAdapter(gameObject, _defaultMaterial); } // Update the custom property block. // DONE :: Q :: What kind of shader it's using here? Maybe TrailSurface.cginc. // → SetPropertyBlockでDefaultMaterialを付加している var block = _renderer.propertyBlock; block.SetTexture("_PreviousPositionBuffer", _kernel.GetWorkingBuffer(Buffers.Position)); // Q :: There is no "_PreviousVelocityBuffer" in TrailSurface.cginc file. block.SetTexture("_PreviousVelocityBuffer", _kernel.GetWorkingBuffer(Buffers.Velocity)); block.SetTexture("_PreviousOrthnormBuffer", _kernel.GetWorkingBuffer(Buffers.Orthnorm)); block.SetTexture("_PositionBuffer", _kernel.GetLastBuffer(Buffers.Position)); block.SetTexture("_VelocityBuffer", _kernel.GetLastBuffer(Buffers.Velocity)); block.SetTexture("_OrthnormBuffer", _kernel.GetLastBuffer(Buffers.Orthnorm)); block.SetVector("_LineWidth", new Vector3(_maxWidth, _cutoffSpeed, _speedToWidth / _maxWidth)); block.SetFloat("_RandomSeed", _randomSeed); _renderer.Update(_template.mesh); }