コード例 #1
0
    // Refresh Methods
    public void RefreshReflection(bool timeSlice = false)
    {
#if ENVIRO_HDRP
        if (hdprobe != null && !paused)
        {
            hdprobe.RequestRenderNextUpdate();
        }
#else
        if (customRendering)
        {
            if (rendering == true || paused)
            {
                return;
            }

            CreateTexturesAndMaterial();

            if (renderCam == null)
            {
                CreateRenderCamera();
            }

            UpdateCameraSettings();

            renderCam.transform.position = transform.position;
            renderCam.targetTexture      = renderTexture;

            if (!timeSlice)
            {
                refreshing = StartCoroutine(RefreshInstant(renderTexture, mirrorTexture));
            }
            else
            {
                refreshing = StartCoroutine(RefreshOvertime(renderTexture, mirrorTexture));
            }
        }
        else if (!paused)
        {
            myProbe.RenderProbe();
        }
#endif
    }
コード例 #2
0
    ////////
    void OnEnable()
    {
        myProbe = GetComponent <ReflectionProbe>();

#if ENVIRO_HDRP
        if (EnviroSkyMgr.instance != null)
        {
            hdprobe = GetComponent <HDProbe>();

            if (!standalone && myProbe != null)
            {
                myProbe.enabled = true;
            }

            if (customRendering)
            {
                if (hdprobe != null)
                {
                    hdprobe.mode = ProbeSettings.Mode.Custom;
                    CreateCubemap();
                    CreateTexturesAndMaterial();
                    CreateRenderCamera();
                    currentRes = myProbe.resolution;
                    rendering  = false;
                    StartCoroutine(RefreshFirstTime());
                }
            }
            else
            {
                if (hdprobe != null)
                {
                    hdprobe.mode         = ProbeSettings.Mode.Realtime;
                    hdprobe.realtimeMode = ProbeSettings.RealtimeMode.OnDemand;
                    hdprobe.RequestRenderNextUpdate();
                }
            }
        }
#else
        if (!standalone && myProbe != null)
        {
            myProbe.enabled = true;
        }


        if (customRendering)
        {
            myProbe.mode        = ReflectionProbeMode.Custom;
            myProbe.refreshMode = ReflectionProbeRefreshMode.ViaScripting;
            CreateCubemap();
            CreateTexturesAndMaterial();
            CreateRenderCamera();
            currentRes = myProbe.resolution;
            rendering  = false;
            StartCoroutine(RefreshFirstTime());
        }
        else
        {
            myProbe.mode        = ReflectionProbeMode.Realtime;
            myProbe.refreshMode = ReflectionProbeRefreshMode.ViaScripting;
            myProbe.RenderProbe();
        }
#endif
    }
コード例 #3
0
 public void StartTest()
 {
     m_Counter = MATERIAL_COUNT - 1;
     probe.RequestRenderNextUpdate();
 }