Esempio n. 1
0
    /// <summary>
    /// constructor.
    /// </summary>
    /// <param name="asset">the render pipeline asset.</param>
    public RayTracingRenderPipeline(RayTracingRenderPipelineAsset asset)
    {
        _asset = asset;
        _accelerationStructure = new RayTracingAccelerationStructure();

        _tutorial = _asset.tutorialAsset.CreateTutorial();
        if (_tutorial == null)
        {
            Debug.LogError("Can't create tutorial.");
            return;
        }

        if (_tutorial.Init(this) == false)
        {
            _tutorial = null;
            Debug.LogError("Initialize tutorial failed.");
            return;
        }
    }
    public RayTracingRenderPipeline(RayTracingRenderPipelineAsset vAsset)
    {
        _rayTracingRenderPipelineAsset   = vAsset;
        _rayTracingAccelerationStructure = new RayTracingAccelerationStructure();
        _rayTracingTutorial = _rayTracingRenderPipelineAsset._rayTracingTutorialAsset.CreateTutorial();

        if (null == _rayTracingTutorial)
        {
            Debug.LogError("Can't create tutorial.");
            return;
        }

        if (!_rayTracingTutorial.Init(this))
        {
            _rayTracingTutorial = null;
            Debug.LogError("Initialize tutorial failed.");
            return;
        }
    }