コード例 #1
0
    public override void SetShaderUserParameters(RenderTexture source)
    {
        base.SetShaderUserParameters(source);
        UserShader.SetTexture(0, "_ImageInput", source); // this is the surrounding unity scene

        UserShader.SetFloat("_Power", power);
        UserShader.SetFloat("_Epsilon", (epsilon / 5000.0f));
        UserShader.SetFloat("_MaxDistance", maxDistance);
        UserShader.SetFloat("_MaxSteps", maxSteps);
        UserShader.SetFloat("_Rim", rimLight);

        UserShader.SetVector("_LightDirection", sceneLight.transform.forward);
    }
コード例 #2
0
    public override void SetShaderUserParameters(RenderTexture source)
    {
        base.SetShaderUserParameters(source);
        // UserShader.SetTexture(0, "_ImageInput", source); // this is the surrounding unity scene

        UserShader.SetInt("_SceneMode", SceneMode);
        UserShader.SetFloat("_SurfaceThreshold", surfaceThreshold);

        UserShader.SetFloat("_ColorModifier", colorModifier);

        float[] fa = { objectAPosition.position.x, objectAPosition.position.y, objectAPosition.position.z };
        UserShader.SetFloats("_APosition", fa);

        float[] fb = { objectBPosition.position.x, objectBPosition.position.y, objectBPosition.position.z };
        UserShader.SetFloats("_BPosition", fb);

        float[] sa = { AScale, AScale, AScale };
        UserShader.SetFloats("_AScale", sa);

        float[] sb = { BScale, BScale, BScale };
        UserShader.SetFloats("_BScale", sb);

        //UserShader.SetVector("_LightDirection", sceneLight.transform.forward);
    }