Exemplo n.º 1
0
    public override void Render(CB_WorkerGroupBase group)
    {
        CB_Shadow shadow = (CB_Shadow)group;

        var cb = lightCB.buf;

        mat.SetMatrix("_vp", group.camManager.GetMatrixVP());
        mat.SetMatrix("_v", group.camManager.GetMatrixV());

        cb.Clear();
        Matrix4x4 ma = Matrix4x4.TRS(root.position, root.rotation, root.lossyScale);

        cb.SetGlobalTexture("_ShadowMapTexture", BuiltinRenderTextureType.CurrentActive);
        cb.SetRenderTarget(shadow.rt);
        if (clear)
        {
            cb.ClearRenderTarget(false, true, new Color(0, 0, 0, 0));
        }
        mat.EnableKeyword("SHADOWS_CUBE");
        mat.EnableKeyword("SHADOWS_CUBE_IN_DEPTH_TEX");
        mat.SetVector("_LPos", lightCB.ml.transform.position);
        cb.DrawMesh(group.mesh, ma, mat);
    }
Exemplo n.º 2
0
 public virtual void Render(CB_WorkerGroupBase group)
 {
 }
 public override void OnInspectorGUI()
 {
     base.OnInspectorGUI();
     worker = (CB_WorkerGroupBase)target;
     CB_WorkerBaseInspector.ShowParams("模糊参数", worker.matParamsOther[0], worker.mat_2_blur, worker);
 }