Пример #1
0
        private void DrawStates()
        {
            FrameDebuggerBlendState  frameBlendState  = FrameDebuggerUtility.GetFrameBlendState();
            FrameDebuggerRasterState frameRasterState = FrameDebuggerUtility.GetFrameRasterState();
            FrameDebuggerDepthState  frameDepthState  = FrameDebuggerUtility.GetFrameDepthState();
            string str = string.Empty;

            if (frameBlendState.renderTargetWriteMask == 0)
            {
                str = "0";
            }
            else
            {
                if ((frameBlendState.renderTargetWriteMask & 2) != 0)
                {
                    str = str + "R";
                }
                if ((frameBlendState.renderTargetWriteMask & 4) != 0)
                {
                    str = str + "G";
                }
                if ((frameBlendState.renderTargetWriteMask & 8) != 0)
                {
                    str = str + "B";
                }
                if ((frameBlendState.renderTargetWriteMask & 1) != 0)
                {
                    str = str + "A";
                }
            }
            object[] args = new object[] { frameBlendState.srcBlend, frameBlendState.dstBlend, frameBlendState.srcBlendAlpha, frameBlendState.dstBlendAlpha, str };
            GUILayout.Label(string.Format("Blend {0} {1}, {2} {3} ColorMask {4}", args), EditorStyles.miniLabel, new GUILayoutOption[0]);
            object[] objArray2 = new object[] { frameDepthState.depthFunc, (frameDepthState.depthWrite != 0) ? "On" : "Off", frameRasterState.cullMode, frameRasterState.slopeScaledDepthBias, frameRasterState.depthBias };
            GUILayout.Label(string.Format("ZTest {0} ZWrite {1} Cull {2} Offset {3}, {4}", objArray2), EditorStyles.miniLabel, new GUILayoutOption[0]);
        }