Beispiel #1
0
        private static Shader _shader; //TODO better way

        public override AVolumePreview <SDFData> CreatePreview()
        {
            _shader = Shader.Find(useRayDirVertShader ? _sdfPreviewShaderVaryingRayName : _sdfPreviewShaderStandardName);

            // if (_shader == null) _shader = Shader.Find( _sdfPreviewShaderStandardName);

            AVolumePreview <SDFData> sdf = new SDFPreview(sdfData, _shader, transform);

            if (debugTex3D != null)
            {
                (sdf as SDFPreview).debugTex3D = debugTex3D;
            }

            return(sdf);
        }
Beispiel #2
0
        private static Shader _shader;         //TODO better way

        public override AVolumePreview <SDFData> CreatePreview()
        {
            if (_shader == null)
            {
                _shader = Shader.Find(_sdfPreviewShaderName);
            }

            AVolumePreview <SDFData> sdf = new SDFPreview(sdfData, _shader, transform);

            if (debugTex3D != null)
            {
                (sdf as SDFPreview).debugTex3D = debugTex3D;
            }

            return(sdf);
        }
Beispiel #3
0
        /// <summary>
        /// renders a procedural quad
        /// TODO fit the bounds of the SDF Volume
        /// </summary>
        private void OnRenderObject()
        {
            if (!IsPreviewing)
            {
                return;
            }

            //try to get active camera...
            Camera cam = Camera.main;

            if (UnityEditor.SceneView.lastActiveSceneView != null)
            {
                cam = UnityEditor.SceneView.lastActiveSceneView.camera;
            }
            SDFPreview preview = _aPreview as SDFPreview;

            preview?.Draw(cam, sdfFlip, previewEpsilon, previewNormalDelta);
        }
Beispiel #4
0
        /// <summary>
        /// renders a procedural quad
        /// TODO fit the bounds of the SDF Volume
        /// </summary>
        private void OnRenderObject()
        {
            if (!IsPreviewing)
            {
                return;
            }

            //try to get active camera...
            Camera cam = Camera.main;

            // lastActiveSceneView
            if (SceneView.currentDrawingSceneView != null)
            {
                cam = SceneView.currentDrawingSceneView.camera;
            }

            SDFPreview preview = _aPreview as SDFPreview;

            preview?.Draw(cam, sdfFlip, previewEpsilon, previewNormalDelta, useRayDirVertShader);
        }