Ejemplo n.º 1
0
    private void SetupComputeShaderKernelUniforfms(int kernel, ComputeBuffer quadGenerationConstantsBuffer, ComputeBuffer preOutDataBuffer, ComputeBuffer preOutDataSubBuffer, ComputeBuffer outDataBuffer)
    {
        if (CoreShader == null)
        {
            return;
        }

        CoreShader.SetBuffer(kernel, "quadGenerationConstants", quadGenerationConstantsBuffer);
        CoreShader.SetBuffer(kernel, "patchPreOutput", preOutDataBuffer);
        CoreShader.SetBuffer(kernel, "patchPreOutputSub", preOutDataSubBuffer);
        CoreShader.SetBuffer(kernel, "patchOutput", outDataBuffer);

        CoreShader.SetTexture(kernel, "Height", HeightTexture);
        CoreShader.SetTexture(kernel, "Normal", NormalTexture);

        if (Planetoid.NPS != null)
        {
            Planetoid.NPS.UpdateUniforms(QuadMaterial, CoreShader, kernel);
        }
    }