От зайшов я на сторінки з референсами (юніті3д), і захтів переглянути, які там built-in параметри є. Натрапив на параметр
_ScreenParams.  З його назви зрозуміло, що то якісь параметри екрану, наприклад, ширина и висота. А опис тут такий
x is the current render target width in pixels, y is the current render target height in pixels, z is 1.0 + 1.0/width and w is 1.0 + 1.0/height.
І тут я поламався. Що таке current render target? Це те, що рендерять, чи те, куди рендерять?
Чесно кажучи, спершу я подумав, що це ширина і висота об'єкту, котрий обробляється, але як виявилось, це ширина саме віконця, в котре рендериться об'єкт. Мається на увазі не весь ваш екран, а саме віконце, котре ми можемо зменшувати або збільшувати. Я то дізнався експерементальним шляхом.
Маємо такий код
CGPROGRAM
            #pragma vertex vert
            #pragma fragment frag
            #include "UnityCG.cginc"
            struct vertOut {
                float4 pos:SV_POSITION;
                float4 scrPos;
            };
            vertOut vert(appdata_base v) : POSITION {
                vertOut o;
                o.pos = mul (UNITY_MATRIX_MVP, v.vertex);
                o.scrPos = ComputeScreenPos(o.pos);
                return o;
            }
            fixed4 frag(vertOut i : vertOut) : COLOR {
                float wcoord = _ScreenParams.y/900;
                fixed4 color;
 
                 color = fixed4(wcoord,0,0,1);
                
                return color;
            }
            ENDCG
У вершинному шейдері коїться усіляка фігня, котра нам не цікава. А от у фрагментному я беру _ScreenParams.y, тобто висоту, і ділю на 900, а 900 - це висота мого екранчика. Ну і там має вийти 1, я гадав. 
Тоді колір має бути червоним, бо колір задається від 0 до 1.
Але колір був якийсь не дуже червоний, а от такий
Ну я спробував те віконце потаскати в плані розмірів і виявилось, що при меншому розмірі той прямокутник ще темніший стає
А при більшому вже червонішає
Ось так я і роздуплився, що оті параметри містять в собі :3