Browse Source

fix dynamic lightning for blocks that were not cubes

Kolja Strohm 6 tháng trước cách đây
mục cha
commit
5441b3b61f

+ 14 - 0
FactoryCraft/Block.cpp

@@ -126,6 +126,20 @@ void Block::setLightData(Direction dir, unsigned char* data, Chunk* zC)
     else
         sideVisible[getDirectionIndex(dir)] = 0;
     if (zC) zC->setLightChanged(partOfModel);
+    int sum1 = 0;
+    int sum2 = 0;
+    int sum3 = 0;
+    for (int i = 0; i < 6; i++)
+    {
+        sum1 += *(lightData + i * 6 + 3);
+        sum2 += *(lightData + i * 6 + 4);
+        sum3 += *(lightData + i * 6 + 5);
+    }
+    unsigned char average[3];
+    average[0] = (unsigned char)(sum1 / 6);
+    average[1] = (unsigned char)(sum2 / 6);
+    average[2] = (unsigned char)(sum3 / 6);
+    setAverageLight(average);
 }
 
 void Block::setPartOfModel(int type, bool part)

+ 716 - 716
FactoryCraft/CustomUIDX11PixelShader.h

@@ -298,16 +298,16 @@ if_nz r0.w
 #line 131
   endif 
 
-#line 132
+#line 134
 else 
 
-#line 141
+#line 143
   mov r3.yzw, l(0,1.000000,1.000000,1.000000)  // r3.y <- diffuseLight.x; r3.z <- diffuseLight.y; r3.w <- diffuseLight.z
 
-#line 159
+#line 161
 endif 
 
-#line 162
+#line 164
 mul r1.xyz, r1.xyzx, cb1[0].xxxx
 mul r2.xyz, r3.yzwy, cb1[0].yyyy
 add r1.xyz, r1.xyzx, r2.xyzx
@@ -316,10 +316,10 @@ add r0.xyz, r0.xyzx, r1.xyzx
 max r0.xyz, r0.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
 min r0.xyz, r0.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)  // r0.x <- textureColor.x; r0.y <- textureColor.y; r0.z <- textureColor.z
 
-#line 163
+#line 165
 mov r1.w, r1.w  // r1.w <- textureColor.w
 
-#line 164
+#line 166
 mul r0.w, r3.y, cb1[0].y
 ne r0.w, r0.w, r0.w
 if_nz r0.w
@@ -329,24 +329,24 @@ if_nz r0.w
   discard_nz r0.w
 endif 
 
-#line 166
+#line 168
 ine r0.w, l(0, 0, 0, 0), cb3[0].x
 itof r1.x, l(0)
 eq r1.x, r1.x, cb3[0].y
 and r0.w, r0.w, r1.x
 if_nz r0.w
 
-#line 168
+#line 170
   mov r0.w, l(-0.500000)
   add r0.w, r0.w, r1.w
   lt r0.w, r0.w, l(0.000000)
   and r0.w, r0.w, l(-1)
   discard_nz r0.w
 
-#line 170
+#line 172
 endif 
 
-#line 171
+#line 173
 mov o0.xyz, r0.xyzx
 mov o0.w, r1.w
 ret 
@@ -355,10 +355,10 @@ ret
 
 const BYTE CustomUIDX11PixelShader[] =
 {
-     68,  88,  66,  67, 155, 206, 
-     91,  98, 231, 222, 233, 147, 
-    113, 100,  56, 108, 120, 219, 
-    159, 183,   1,   0,   0,   0, 
+     68,  88,  66,  67, 247,  35, 
+    249, 200,  25,   0, 221,  97, 
+    152, 213, 208,  84, 166,  24, 
+    190, 229,   1,   0,   0,   0, 
     192, 137,   0,   0,   6,   0, 
       0,   0,  56,   0,   0,   0, 
     252,   4,   0,   0, 188,   5, 
@@ -1625,10 +1625,10 @@ const BYTE CustomUIDX11PixelShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0, 148,  46,  49,   1, 
-    236,  10,   6, 104,   1,   0, 
-      0,   0, 146, 253, 218, 124, 
-    208,  64, 246,  70, 165, 163, 
-    135, 202,  56, 161,  91, 101, 
+    240,  12,  42, 104,   1,   0, 
+      0,   0, 109,   1, 145, 176, 
+    104,  29,  81,  79, 133, 153, 
+    216, 246, 251, 241, 152, 231, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   1,   0,   0,   0, 
       1,   0,   0,   0,   0,   0, 
@@ -2679,351 +2679,351 @@ const BYTE CustomUIDX11PixelShader[] =
     105, 103, 104, 116,  50,  46, 
     122,  59,  13,  10,  32,  32, 
      32,  32,  32,  32,  32,  32, 
-    125,  13,  10,   9, 125,  13, 
-     10,   9, 101, 108, 115, 101, 
-     13,  10,   9, 123,  13,  10, 
-      9,   9, 102, 111, 114,  32, 
-     40, 105, 110, 116,  32, 106, 
-     32,  61,  32,  48,  59,  32, 
-    106,  32,  60,  32, 100, 105, 
-    102, 102, 117, 115, 101,  76, 
-    105, 103, 104, 116,  67, 111, 
-    117, 110, 116,  59,  32, 106, 
-     43,  43,  41,  13,  10,   9, 
-      9, 123,  13,  10,   9,   9, 
-      9, 105, 102,  32,  40, 100, 
-    111, 116,  40, 105, 110, 112, 
-    117, 116,  46, 110, 111, 114, 
-    109,  97, 108,  44,  32,  45, 
-    100, 105, 102, 117, 115, 101, 
-     76, 105, 103, 104, 116, 115, 
-     91, 106,  93,  46, 100, 105, 
-    114, 101,  99, 116, 105, 111, 
-    110,  41,  32,  60,  32,  48, 
-     41,  13,  10,   9,   9,   9, 
-      9,  99, 111, 110, 116, 105, 
-    110, 117, 101,  59,  13,  10, 
-      9,   9,   9, 100, 105, 102, 
-    102, 117, 115, 101,  76, 105, 
-    103, 104, 116,  32,  43,  61, 
-     32, 100, 105, 102, 117, 115, 
+    125,  13,  10,   9,   9,  47, 
+     47,  32, 117, 115, 101,  32, 
+    116, 104, 105, 115,  32, 114, 
+    101, 116, 117, 114, 110,  32, 
+    116, 111,  32, 100, 101,  98, 
+    117, 103,  32, 100, 121, 110, 
+     97, 109, 105,  99,  32, 108, 
+    105, 103, 104, 116, 110, 105, 
+    110, 103,  13,  10,   9,   9, 
+     47,  47, 114, 101, 116, 117, 
+    114, 110,  32, 102, 108, 111, 
+     97, 116,  52,  40, 105, 110, 
+    112, 117, 116,  46, 108, 105, 
+    103, 104, 116,  50,  46, 120, 
+     44,  32, 105, 110, 112, 117, 
+    116,  46, 108, 105, 103, 104, 
+    116,  50,  46, 121,  44,  32, 
+    105, 110, 112, 117, 116,  46, 
+    108, 105, 103, 104, 116,  50, 
+     46, 122,  44,  32,  49,  46, 
+     48,  41,  59,  13,  10,   9, 
+    125,  13,  10,   9, 101, 108, 
+    115, 101,  13,  10,   9, 123, 
+     13,  10,   9,   9, 102, 111, 
+    114,  32,  40, 105, 110, 116, 
+     32, 106,  32,  61,  32,  48, 
+     59,  32, 106,  32,  60,  32, 
+    100, 105, 102, 102, 117, 115, 
     101,  76, 105, 103, 104, 116, 
-    115,  91, 106,  93,  46,  99, 
-    111, 108, 111, 114,  32,  42, 
-     32, 100, 111, 116,  40, 105, 
+     67, 111, 117, 110, 116,  59, 
+     32, 106,  43,  43,  41,  13, 
+     10,   9,   9, 123,  13,  10, 
+      9,   9,   9, 105, 102,  32, 
+     40, 100, 111, 116,  40, 105, 
     110, 112, 117, 116,  46, 110, 
     111, 114, 109,  97, 108,  44, 
      32,  45, 100, 105, 102, 117, 
     115, 101,  76, 105, 103, 104, 
     116, 115,  91, 106,  93,  46, 
     100, 105, 114, 101,  99, 116, 
-    105, 111, 110,  41,  59,  13, 
-     10,   9,   9, 125,  13,  10, 
-     32,  32,  32,  32,  32,  32, 
-     32,  32, 100, 105, 102, 102, 
+    105, 111, 110,  41,  32,  60, 
+     32,  48,  41,  13,  10,   9, 
+      9,   9,   9,  99, 111, 110, 
+    116, 105, 110, 117, 101,  59, 
+     13,  10,   9,   9,   9, 100, 
+    105, 102, 102, 117, 115, 101, 
+     76, 105, 103, 104, 116,  32, 
+     43,  61,  32, 100, 105, 102, 
     117, 115, 101,  76, 105, 103, 
-    104, 116,  32,  61,  32, 102, 
-    108, 111,  97, 116,  51,  40, 
-     49,  46,  48,  44,  32,  49, 
-     46,  48,  44,  32,  49,  46, 
-     48,  41,  59,  13,  10,   9, 
-      9,  47,  42, 102, 111, 114, 
-     32,  40, 105, 110, 116,  32, 
-    105,  32,  61,  32,  48,  59, 
-     32, 105,  32,  60,  32, 112, 
-    111, 105, 110, 116,  76, 105, 
-    103, 104, 116,  67, 111, 117, 
-    110, 116,  59,  32, 105,  43, 
-     43,  41,  13,  10,   9,   9, 
-    123,  13,  10,   9,   9,   9, 
-    102, 108, 111,  97, 116,  51, 
-     32, 108, 105, 103, 104, 116, 
-     68, 105, 114,  32,  61,  32, 
-    112, 111, 105, 110, 116,  76, 
-    105, 103, 104, 116, 115,  91, 
-    105,  93,  46, 112, 111, 115, 
-    105, 116, 105, 111, 110,  32, 
-     45,  32, 105, 110, 112, 117, 
-    116,  46, 119, 111, 114, 108, 
-    100,  80, 111, 115,  46, 120, 
-    121, 122,  59,  13,  10,   9, 
+    104, 116, 115,  91, 106,  93, 
+     46,  99, 111, 108, 111, 114, 
+     32,  42,  32, 100, 111, 116, 
+     40, 105, 110, 112, 117, 116, 
+     46, 110, 111, 114, 109,  97, 
+    108,  44,  32,  45, 100, 105, 
+    102, 117, 115, 101,  76, 105, 
+    103, 104, 116, 115,  91, 106, 
+     93,  46, 100, 105, 114, 101, 
+     99, 116, 105, 111, 110,  41, 
+     59,  13,  10,   9,   9, 125, 
+     13,  10,  32,  32,  32,  32, 
+     32,  32,  32,  32, 100, 105, 
+    102, 102, 117, 115, 101,  76, 
+    105, 103, 104, 116,  32,  61, 
+     32, 102, 108, 111,  97, 116, 
+     51,  40,  49,  46,  48,  44, 
+     32,  49,  46,  48,  44,  32, 
+     49,  46,  48,  41,  59,  13, 
+     10,   9,   9,  47,  42, 102, 
+    111, 114,  32,  40, 105, 110, 
+    116,  32, 105,  32,  61,  32, 
+     48,  59,  32, 105,  32,  60, 
+     32, 112, 111, 105, 110, 116, 
+     76, 105, 103, 104, 116,  67, 
+    111, 117, 110, 116,  59,  32, 
+    105,  43,  43,  41,  13,  10, 
+      9,   9, 123,  13,  10,   9, 
       9,   9, 102, 108, 111,  97, 
-    116,  32, 102,  97,  99, 116, 
-    111, 114,  59,  13,  10,   9, 
-      9,   9, 105, 102,  32,  40, 
-    108, 101, 110, 103, 116, 104, 
-     40, 108, 105, 103, 104, 116, 
-     68, 105, 114,  41,  32,  60, 
-     32,  49,  41,  13,  10,   9, 
-      9,   9,   9, 102,  97,  99, 
-    116, 111, 114,  32,  61,  32, 
-     49,  59,  13,  10,   9,   9, 
-      9, 101, 108, 115, 101,  13, 
-     10,   9,   9,   9,   9, 102, 
-     97,  99, 116, 111, 114,  32, 
+    116,  51,  32, 108, 105, 103, 
+    104, 116,  68, 105, 114,  32, 
      61,  32, 112, 111, 105, 110, 
     116,  76, 105, 103, 104, 116, 
-    115,  91, 105,  93,  46, 114, 
-     97, 100, 105, 117, 115,  32, 
-     47,  32, 108, 101, 110, 103, 
+    115,  91, 105,  93,  46, 112, 
+    111, 115, 105, 116, 105, 111, 
+    110,  32,  45,  32, 105, 110, 
+    112, 117, 116,  46, 119, 111, 
+    114, 108, 100,  80, 111, 115, 
+     46, 120, 121, 122,  59,  13, 
+     10,   9,   9,   9, 102, 108, 
+    111,  97, 116,  32, 102,  97, 
+     99, 116, 111, 114,  59,  13, 
+     10,   9,   9,   9, 105, 102, 
+     32,  40, 108, 101, 110, 103, 
     116, 104,  40, 108, 105, 103, 
     104, 116,  68, 105, 114,  41, 
-     59,  13,  10,   9,   9,   9, 
-    102, 108, 111,  97, 116,  32, 
-    102,  32,  61,  32, 100, 111, 
-    116,  40, 105, 110, 112, 117, 
-    116,  46, 110, 111, 114, 109, 
-     97, 108,  44,  32, 110, 111, 
-    114, 109,  97, 108, 105, 122, 
-    101,  40, 108, 105, 103, 104, 
-    116,  68, 105, 114,  41,  41, 
-     59,  13,  10,   9,   9,   9, 
-    105, 102,  32,  40, 102,  32, 
-     62,  32,  48,  41,  13,  10, 
-      9,   9,   9, 123,  13,  10, 
-      9,   9,   9,   9, 100, 105, 
-    102, 102, 117, 115, 101,  76, 
-    105, 103, 104, 116,  32,  43, 
-     61,  32, 112, 111, 105, 110, 
-    116,  76, 105, 103, 104, 116, 
-    115,  91, 105,  93,  46,  99, 
-    111, 108, 111, 114,  32,  42, 
-     32, 102,  32,  42,  32, 102, 
-     97,  99, 116, 111, 114,  59, 
-     13,  10,   9,   9,   9,   9, 
-    102,  32,  61,  32, 100, 111, 
-    116,  40, 110, 111, 114, 109, 
-     97, 108, 105, 122, 101,  40, 
-    114, 101, 102, 108, 101,  99, 
-    116,  40, 110, 111, 114, 109, 
-     97, 108, 105, 122, 101,  40, 
-     45, 108, 105, 103, 104, 116, 
-     68, 105, 114,  41,  44,  32, 
-    105, 110, 112, 117, 116,  46, 
+     32,  60,  32,  49,  41,  13, 
+     10,   9,   9,   9,   9, 102, 
+     97,  99, 116, 111, 114,  32, 
+     61,  32,  49,  59,  13,  10, 
+      9,   9,   9, 101, 108, 115, 
+    101,  13,  10,   9,   9,   9, 
+      9, 102,  97,  99, 116, 111, 
+    114,  32,  61,  32, 112, 111, 
+    105, 110, 116,  76, 105, 103, 
+    104, 116, 115,  91, 105,  93, 
+     46, 114,  97, 100, 105, 117, 
+    115,  32,  47,  32, 108, 101, 
+    110, 103, 116, 104,  40, 108, 
+    105, 103, 104, 116,  68, 105, 
+    114,  41,  59,  13,  10,   9, 
+      9,   9, 102, 108, 111,  97, 
+    116,  32, 102,  32,  61,  32, 
+    100, 111, 116,  40, 105, 110, 
+    112, 117, 116,  46, 110, 111, 
+    114, 109,  97, 108,  44,  32, 
     110, 111, 114, 109,  97, 108, 
-     41,  41,  44,  32, 110, 111, 
-    114, 109,  97, 108, 105, 122, 
-    101,  40, 107,  80, 111, 115, 
-    105, 116, 105, 111, 110,  46, 
-    120, 121, 122,  32,  45,  32, 
-    105, 110, 112, 117, 116,  46, 
-    119, 111, 114, 108, 100,  80, 
-    111, 115,  46, 120, 121, 122, 
+    105, 122, 101,  40, 108, 105, 
+    103, 104, 116,  68, 105, 114, 
      41,  41,  59,  13,  10,   9, 
-      9,   9,   9, 105, 102,  32, 
-     40, 102,  32,  62,  32,  48, 
-     41,  13,  10,   9,   9,   9, 
-      9,   9, 115, 112, 101,  99, 
-    117, 108,  97, 114,  76, 105, 
-    103, 104, 116,  32,  43,  61, 
-     32, 112, 111, 105, 110, 116, 
-     76, 105, 103, 104, 116, 115, 
-     91, 105,  93,  46,  99, 111, 
-    108, 111, 114,  32,  42,  32, 
-    102,  32,  42,  32, 102,  97, 
-     99, 116, 111, 114,  59,  13, 
-     10,   9,   9,   9, 125,  13, 
-     10,   9,   9, 125,  42,  47, 
-     13,  10,   9, 125,  13,  10, 
-      9,  47,  47, 105, 102,  32, 
-     40,  33,  40, 100, 105, 102, 
-    102, 117, 115, 101,  76, 105, 
-    103, 104, 116,  46, 120,  32, 
-     62,  61,  32,  48,  32,  38, 
-     38,  32, 100, 105, 102, 102, 
-    117, 115, 101,  76, 105, 103, 
-    104, 116,  46, 120,  32,  60, 
-     61,  32,  49,  41,  41,  13, 
-     10,   9,  47,  47,   9, 100, 
+      9,   9, 105, 102,  32,  40, 
+    102,  32,  62,  32,  48,  41, 
+     13,  10,   9,   9,   9, 123, 
+     13,  10,   9,   9,   9,   9, 
+    100, 105, 102, 102, 117, 115, 
+    101,  76, 105, 103, 104, 116, 
+     32,  43,  61,  32, 112, 111, 
+    105, 110, 116,  76, 105, 103, 
+    104, 116, 115,  91, 105,  93, 
+     46,  99, 111, 108, 111, 114, 
+     32,  42,  32, 102,  32,  42, 
+     32, 102,  97,  99, 116, 111, 
+    114,  59,  13,  10,   9,   9, 
+      9,   9, 102,  32,  61,  32, 
+    100, 111, 116,  40, 110, 111, 
+    114, 109,  97, 108, 105, 122, 
+    101,  40, 114, 101, 102, 108, 
+    101,  99, 116,  40, 110, 111, 
+    114, 109,  97, 108, 105, 122, 
+    101,  40,  45, 108, 105, 103, 
+    104, 116,  68, 105, 114,  41, 
+     44,  32, 105, 110, 112, 117, 
+    116,  46, 110, 111, 114, 109, 
+     97, 108,  41,  41,  44,  32, 
+    110, 111, 114, 109,  97, 108, 
+    105, 122, 101,  40, 107,  80, 
+    111, 115, 105, 116, 105, 111, 
+    110,  46, 120, 121, 122,  32, 
+     45,  32, 105, 110, 112, 117, 
+    116,  46, 119, 111, 114, 108, 
+    100,  80, 111, 115,  46, 120, 
+    121, 122,  41,  41,  59,  13, 
+     10,   9,   9,   9,   9, 105, 
+    102,  32,  40, 102,  32,  62, 
+     32,  48,  41,  13,  10,   9, 
+      9,   9,   9,   9, 115, 112, 
+    101,  99, 117, 108,  97, 114, 
+     76, 105, 103, 104, 116,  32, 
+     43,  61,  32, 112, 111, 105, 
+    110, 116,  76, 105, 103, 104, 
+    116, 115,  91, 105,  93,  46, 
+     99, 111, 108, 111, 114,  32, 
+     42,  32, 102,  32,  42,  32, 
+    102,  97,  99, 116, 111, 114, 
+     59,  13,  10,   9,   9,   9, 
+    125,  13,  10,   9,   9, 125, 
+     42,  47,  13,  10,   9, 125, 
+     13,  10,   9,  47,  47, 105, 
+    102,  32,  40,  33,  40, 100, 
     105, 102, 102, 117, 115, 101, 
      76, 105, 103, 104, 116,  46, 
-    120,  32,  61,  32,  48,  59, 
-     13,  10,   9, 102, 108, 111, 
-     97, 116,  52,  32, 116, 101, 
-    120, 116, 117, 114, 101,  67, 
-    111, 108, 111, 114,  32,  61, 
-     32, 115,  97, 116, 117, 114, 
-     97, 116, 101,  40,  40, 109, 
-     97, 116, 101, 114, 105,  97, 
-    108,  67, 111, 108, 111, 114, 
-     32,  42,  32,  97, 109,  98, 
-    105, 101, 110, 116,  70,  97, 
-     99, 116, 111, 114,  41,  32, 
-     43,  32,  40, 102, 108, 111, 
-     97, 116,  52,  40, 100, 105, 
+    120,  32,  62,  61,  32,  48, 
+     32,  38,  38,  32, 100, 105, 
     102, 102, 117, 115, 101,  76, 
     105, 103, 104, 116,  46, 120, 
-     44,  32, 100, 105, 102, 102, 
-    117, 115, 101,  76, 105, 103, 
-    104, 116,  46, 121,  44,  32, 
+     32,  60,  61,  32,  49,  41, 
+     41,  13,  10,   9,  47,  47, 
+      9, 100, 105, 102, 102, 117, 
+    115, 101,  76, 105, 103, 104, 
+    116,  46, 120,  32,  61,  32, 
+     48,  59,  13,  10,   9, 102, 
+    108, 111,  97, 116,  52,  32, 
+    116, 101, 120, 116, 117, 114, 
+    101,  67, 111, 108, 111, 114, 
+     32,  61,  32, 115,  97, 116, 
+    117, 114,  97, 116, 101,  40, 
+     40, 109,  97, 116, 101, 114, 
+    105,  97, 108,  67, 111, 108, 
+    111, 114,  32,  42,  32,  97, 
+    109,  98, 105, 101, 110, 116, 
+     70,  97,  99, 116, 111, 114, 
+     41,  32,  43,  32,  40, 102, 
+    108, 111,  97, 116,  52,  40, 
     100, 105, 102, 102, 117, 115, 
     101,  76, 105, 103, 104, 116, 
-     46, 122,  44,  32,  48,  41, 
-     32,  42,  32, 100, 105, 102, 
-    102, 117, 115,  70,  97,  99, 
-    116, 111, 114,  41,  32,  43, 
-     32,  40, 102, 108, 111,  97, 
-    116,  52,  40, 115, 112, 101, 
-     99, 117, 108,  97, 114,  76, 
-    105, 103, 104, 116,  46, 120, 
-     44,  32, 115, 112, 101,  99, 
-    117, 108,  97, 114,  76, 105, 
-    103, 104, 116,  46, 121,  44, 
-     32, 115, 112, 101,  99, 117, 
-    108,  97, 114,  76, 105, 103, 
+     46, 120,  44,  32, 100, 105, 
+    102, 102, 117, 115, 101,  76, 
+    105, 103, 104, 116,  46, 121, 
+     44,  32, 100, 105, 102, 102, 
+    117, 115, 101,  76, 105, 103, 
     104, 116,  46, 122,  44,  32, 
-     48,  41,  32,  42,  32, 115, 
+     48,  41,  32,  42,  32, 100, 
+    105, 102, 102, 117, 115,  70, 
+     97,  99, 116, 111, 114,  41, 
+     32,  43,  32,  40, 102, 108, 
+    111,  97, 116,  52,  40, 115, 
     112, 101,  99, 117, 108,  97, 
-    114,  70,  97,  99, 116, 111, 
-    114,  41,  41,  59,  13,  10, 
-      9, 116, 101, 120, 116, 117, 
-    114, 101,  67, 111, 108, 111, 
-    114,  46,  97,  32,  61,  32, 
+    114,  76, 105, 103, 104, 116, 
+     46, 120,  44,  32, 115, 112, 
+    101,  99, 117, 108,  97, 114, 
+     76, 105, 103, 104, 116,  46, 
+    121,  44,  32, 115, 112, 101, 
+     99, 117, 108,  97, 114,  76, 
+    105, 103, 104, 116,  46, 122, 
+     44,  32,  48,  41,  32,  42, 
+     32, 115, 112, 101,  99, 117, 
+    108,  97, 114,  70,  97,  99, 
+    116, 111, 114,  41,  41,  59, 
+     13,  10,   9, 116, 101, 120, 
+    116, 117, 114, 101,  67, 111, 
+    108, 111, 114,  46,  97,  32, 
+     61,  32, 109,  97, 116, 101, 
+    114, 105,  97, 108,  67, 111, 
+    108, 111, 114,  46,  97,  59, 
+     13,  10,  32,  32,  32,  32, 
+    105, 102,  32,  40, 105, 115, 
+    110,  97, 110,  40, 100, 105, 
+    102, 102, 117, 115, 101,  76, 
+    105, 103, 104, 116,  46, 120, 
+     32,  42,  32, 100, 105, 102, 
+    102, 117, 115,  70,  97,  99, 
+    116, 111, 114,  41,  41,  32, 
+     99, 108, 105, 112,  40,  45, 
+     49,  41,  59,  13,  10,   9, 
+     47,  47,   9, 116, 101, 120, 
+    116, 117, 114, 101,  67, 111, 
+    108, 111, 114,  32,  61,  32, 
     109,  97, 116, 101, 114, 105, 
      97, 108,  67, 111, 108, 111, 
-    114,  46,  97,  59,  13,  10, 
-     32,  32,  32,  32, 105, 102, 
-     32,  40, 105, 115, 110,  97, 
-    110,  40, 100, 105, 102, 102, 
-    117, 115, 101,  76, 105, 103, 
-    104, 116,  46, 120,  32,  42, 
-     32, 100, 105, 102, 102, 117, 
-    115,  70,  97,  99, 116, 111, 
-    114,  41,  41,  32,  99, 108, 
-    105, 112,  40,  45,  49,  41, 
-     59,  13,  10,   9,  47,  47, 
-      9, 116, 101, 120, 116, 117, 
+    114,  59,  13,  10,  32,  32, 
+     32,  32, 105, 102,  32,  40, 
+    101, 102, 102, 101,  99, 116, 
+     69, 110,  97,  98, 108, 101, 
+    100,  32,  38,  38,  32, 101, 
+    102, 102, 101,  99, 116,  80, 
+    101, 114,  99, 101, 110, 116, 
+     97, 103, 101,  32,  61,  61, 
+     32,  48,  41,  13,  10,   9, 
+    123,  13,  10,  32,  32,  32, 
+     32,  32,  32,  32,  32,  99, 
+    108, 105, 112,  40, 116, 101, 
+    120, 116, 117, 114, 101,  67, 
+    111, 108, 111, 114,  46,  97, 
+     32,  45,  32,  48,  46,  53, 
+     41,  59,  13,  10,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     47,  47, 116, 101, 120, 116, 
+    117, 114, 101,  67, 111, 108, 
+    111, 114,  46,  97,  32,  61, 
+     32,  49,  46,  48,  59,  13, 
+     10,   9, 125,  13,  10,   9, 
+    114, 101, 116, 117, 114, 110, 
+     32, 116, 101, 120, 116, 117, 
     114, 101,  67, 111, 108, 111, 
-    114,  32,  61,  32, 109,  97, 
-    116, 101, 114, 105,  97, 108, 
-     67, 111, 108, 111, 114,  59, 
-     13,  10,  32,  32,  32,  32, 
-    105, 102,  32,  40, 101, 102, 
-    102, 101,  99, 116,  69, 110, 
-     97,  98, 108, 101, 100,  32, 
-     38,  38,  32, 101, 102, 102, 
-    101,  99, 116,  80, 101, 114, 
-     99, 101, 110, 116,  97, 103, 
-    101,  32,  61,  61,  32,  48, 
-     41,  13,  10,   9, 123,  13, 
-     10,  32,  32,  32,  32,  32, 
-     32,  32,  32,  99, 108, 105, 
-    112,  40, 116, 101, 120, 116, 
+    114,  59,  13,  10,   9,  47, 
+     47, 114, 101, 116, 117, 114, 
+    110,  32, 116, 101, 120, 116, 
     117, 114, 101,  67, 111, 108, 
-    111, 114,  46,  97,  32,  45, 
-     32,  48,  46,  53,  41,  59, 
-     13,  10,  32,  32,  32,  32, 
-     32,  32,  32,  32,  47,  47, 
-    116, 101, 120, 116, 117, 114, 
-    101,  67, 111, 108, 111, 114, 
-     46,  97,  32,  61,  32,  49, 
-     46,  48,  59,  13,  10,   9, 
-    125,  13,  10,   9, 114, 101, 
-    116, 117, 114, 110,  32, 116, 
-    101, 120, 116, 117, 114, 101, 
-     67, 111, 108, 111, 114,  59, 
-     13,  10,   9,  47,  47, 114, 
-    101, 116, 117, 114, 110,  32, 
-    116, 101, 120, 116, 117, 114, 
-    101,  67, 111, 108, 111, 114, 
-     59,  13,  10,   9,  47,  47, 
-    105, 102,  32,  40, 100, 105, 
-    102, 102, 117, 115,  70,  97, 
-     99, 116, 111, 114,  32,  61, 
-     61,  32,  48,  41,  13,  10, 
-      9,  47,  47,   9, 114, 101, 
-    116, 117, 114, 110,  32, 102, 
-    108, 111,  97, 116,  52,  40, 
-     49,  44,  32,  49,  44,  32, 
-     48,  44,  32,  49,  41,  59, 
-     13,  10,   9,  47,  42, 105, 
-    102,  32,  40, 105, 115, 110, 
-     97, 110,  40, 100, 105, 102, 
-    102, 117, 115, 101,  76, 105, 
-    103, 104, 116,  46, 120,  41, 
-     32, 124, 124,  32, 105, 115, 
-    110,  97, 110,  40, 100, 105, 
-    102, 102, 117, 115,  70,  97, 
-     99, 116, 111, 114,  41,  32, 
-    124, 124,  32, 105, 115, 105, 
-    110, 102,  40, 100, 105, 102, 
-    102, 117, 115, 101,  76, 105, 
-    103, 104, 116,  46, 120,  41, 
-     32, 124, 124,  32, 105, 115, 
-    105, 110, 102,  40,  45, 100, 
+    111, 114,  59,  13,  10,   9, 
+     47,  47, 105, 102,  32,  40, 
+    100, 105, 102, 102, 117, 115, 
+     70,  97,  99, 116, 111, 114, 
+     32,  61,  61,  32,  48,  41, 
+     13,  10,   9,  47,  47,   9, 
+    114, 101, 116, 117, 114, 110, 
+     32, 102, 108, 111,  97, 116, 
+     52,  40,  49,  44,  32,  49, 
+     44,  32,  48,  44,  32,  49, 
+     41,  59,  13,  10,   9,  47, 
+     42, 105, 102,  32,  40, 105, 
+    115, 110,  97, 110,  40, 100, 
     105, 102, 102, 117, 115, 101, 
      76, 105, 103, 104, 116,  46, 
-    120,  41,  41,  13,  10,   9, 
-      9, 114, 101, 116, 117, 114, 
-    110,  32, 102, 108, 111,  97, 
-    116,  52,  40,  48,  44,  32, 
-     49,  44,  32,  49,  44,  32, 
-     49,  41,  59,  13,  10,   9, 
-    105, 102,  32,  40, 105, 115, 
-    110,  97, 110,  40, 100, 105, 
-    102, 102, 117, 115, 101,  76, 
-    105, 103, 104, 116,  46, 120, 
-     32,  45,  32, 100, 105, 102, 
-    102, 117, 115, 101,  76, 105, 
-    103, 104, 116,  46, 120,  41, 
-     32,  38,  38,  32, 105, 115, 
-    110,  97, 110,  40, 100, 105, 
+    120,  41,  32, 124, 124,  32, 
+    105, 115, 110,  97, 110,  40, 
+    100, 105, 102, 102, 117, 115, 
+     70,  97,  99, 116, 111, 114, 
+     41,  32, 124, 124,  32, 105, 
+    115, 105, 110, 102,  40, 100, 
+    105, 102, 102, 117, 115, 101, 
+     76, 105, 103, 104, 116,  46, 
+    120,  41,  32, 124, 124,  32, 
+    105, 115, 105, 110, 102,  40, 
+     45, 100, 105, 102, 102, 117, 
+    115, 101,  76, 105, 103, 104, 
+    116,  46, 120,  41,  41,  13, 
+     10,   9,   9, 114, 101, 116, 
+    117, 114, 110,  32, 102, 108, 
+    111,  97, 116,  52,  40,  48, 
+     44,  32,  49,  44,  32,  49, 
+     44,  32,  49,  41,  59,  13, 
+     10,   9, 105, 102,  32,  40, 
+    105, 115, 110,  97, 110,  40, 
+    100, 105, 102, 102, 117, 115, 
+    101,  76, 105, 103, 104, 116, 
+     46, 120,  32,  45,  32, 100, 
+    105, 102, 102, 117, 115, 101, 
+     76, 105, 103, 104, 116,  46, 
+    120,  41,  32,  38,  38,  32, 
+    105, 115, 110,  97, 110,  40, 
+    100, 105, 102, 102, 117, 115, 
+    101,  76, 105, 103, 104, 116, 
+     46, 120,  32,  42,  32, 100, 
+    105, 102, 102, 117, 115,  70, 
+     97,  99, 116, 111, 114,  41, 
+     32,  41,  13,  10,   9,   9, 
+    114, 101, 116, 117, 114, 110, 
+     32, 102, 108, 111,  97, 116, 
+     52,  40,  49,  44,  32,  49, 
+     44,  32,  49,  44,  32,  49, 
+     41,  59,  13,  10,   9, 105, 
+    102,  32,  40,  40, 100, 105, 
     102, 102, 117, 115, 101,  76, 
     105, 103, 104, 116,  46, 120, 
      32,  42,  32, 100, 105, 102, 
     102, 117, 115,  70,  97,  99, 
-    116, 111, 114,  41,  32,  41, 
-     13,  10,   9,   9, 114, 101, 
-    116, 117, 114, 110,  32, 102, 
-    108, 111,  97, 116,  52,  40, 
-     49,  44,  32,  49,  44,  32, 
-     49,  44,  32,  49,  41,  59, 
-     13,  10,   9, 105, 102,  32, 
-     40,  40, 100, 105, 102, 102, 
+    116, 111, 114,  41,  32,  33, 
+     61,  32,  48,  32,  38,  38, 
+     32,  40, 100, 105, 102, 102, 
     117, 115, 101,  76, 105, 103, 
     104, 116,  46, 120,  32,  42, 
      32, 100, 105, 102, 102, 117, 
     115,  70,  97,  99, 116, 111, 
     114,  41,  32,  33,  61,  32, 
-     48,  32,  38,  38,  32,  40, 
-    100, 105, 102, 102, 117, 115, 
-    101,  76, 105, 103, 104, 116, 
-     46, 120,  32,  42,  32, 100, 
-    105, 102, 102, 117, 115,  70, 
-     97,  99, 116, 111, 114,  41, 
-     32,  33,  61,  32,  45,  48, 
-     41,  13,  10,   9,   9, 114, 
-    101, 116, 117, 114, 110,  32, 
-    102, 108, 111,  97, 116,  52, 
-     40,  48,  44,  32,  48,  44, 
-     32,  49,  44,  32,  49,  41, 
-     59,  13,  10,   9, 114, 101, 
-    116, 117, 114, 110,  32, 102, 
-    108, 111,  97, 116,  52,  40, 
+     45,  48,  41,  13,  10,   9, 
+      9, 114, 101, 116, 117, 114, 
+    110,  32, 102, 108, 111,  97, 
+    116,  52,  40,  48,  44,  32, 
      48,  44,  32,  49,  44,  32, 
-     48,  44,  32,  49,  41,  59, 
-     42,  47,  13,  10, 125,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
+     49,  41,  59,  13,  10,   9, 
+    114, 101, 116, 117, 114, 110, 
+     32, 102, 108, 111,  97, 116, 
+     52,  40,  48,  44,  32,  49, 
+     44,  32,  48,  44,  32,  49, 
+     41,  59,  42,  47,  13,  10, 
+    125,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -3076,7 +3076,7 @@ const BYTE CustomUIDX11PixelShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
     254, 239, 254, 239,   1,   0, 
-      0,   0,  84,  25,   0,   0, 
+      0,   0, 206,  25,   0,   0, 
       0,  67,  58,  92,  85, 115, 
     101, 114, 115,  92, 107, 111, 
     108, 106,  97,  92,  68, 101, 
@@ -3161,8 +3161,8 @@ const BYTE CustomUIDX11PixelShader[] =
      32,  32,  32,  32,  32,  32, 
      32,  32,  32,  32,  32,  32, 
      32,  32,  27, 226,  48,   1, 
-    128,   0,   0,   0, 214,  81, 
-     85, 223, 156, 178, 219,   1, 
+    128,   0,   0,   0,   5,  36, 
+    179,  60,  19, 200, 219,   1, 
       1,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -3176,8 +3176,8 @@ const BYTE CustomUIDX11PixelShader[] =
       2,   0,   0,   0,   0,   0, 
       0,   0, 131,   0,   0,   0, 
      40,   0,   0,   0,  27, 226, 
-     48,   1, 210, 152, 144,  21, 
-     79,  24,   0,   0,   1,   0, 
+     48,   1, 251, 138,  20, 122, 
+    201,  24,   0,   0,   1,   0, 
       0,   0, 130,   0,   0,   0, 
     131,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -3646,10 +3646,10 @@ const BYTE CustomUIDX11PixelShader[] =
      12,   0,   0,   0,   2,   0, 
       6,   0, 244,   0,   0,   0, 
      24,   0,   0,   0,   1,   0, 
-      0,   0,  16,   1,  97,  34, 
-    134,  51,  39, 136, 209,  78, 
-    141, 210, 224, 164, 114,  76, 
-     53, 241,   0,   0, 242,   0, 
+      0,   0,  16,   1, 248, 123, 
+    232, 248, 116,  27,   9,  22, 
+    223,  33,  26, 139,  37, 197, 
+     81, 185,   0,   0, 242,   0, 
       0,   0, 104,  13,   0,   0, 
       0,   0,   0,   0,   1,   0, 
       1,   0,  36,  13,   0,   0, 
@@ -3946,94 +3946,94 @@ const BYTE CustomUIDX11PixelShader[] =
      44,  10,   0,   0, 131,   0, 
       0, 128,  44,  10,   0,   0, 
     131,   0,   0,   0,  48,  10, 
-      0,   0, 132,   0,   0, 128, 
-     48,  10,   0,   0, 132,   0, 
+      0,   0, 134,   0,   0, 128, 
+     48,  10,   0,   0, 134,   0, 
       0,   0,  52,  10,   0,   0, 
-    141,   0,   0, 128,  52,  10, 
-      0,   0, 141,   0,   0,   0, 
-     84,  10,   0,   0, 159,   0, 
+    143,   0,   0, 128,  52,  10, 
+      0,   0, 143,   0,   0,   0, 
+     84,  10,   0,   0, 161,   0, 
       0, 128,  84,  10,   0,   0, 
-    159,   0,   0,   0,  88,  10, 
-      0,   0, 162,   0,   0, 128, 
-     88,  10,   0,   0, 162,   0, 
+    161,   0,   0,   0,  88,  10, 
+      0,   0, 164,   0,   0, 128, 
+     88,  10,   0,   0, 164,   0, 
       0,   0, 120,  10,   0,   0, 
-    162,   0,   0, 128, 120,  10, 
-      0,   0, 162,   0,   0,   0, 
-    152,  10,   0,   0, 162,   0, 
+    164,   0,   0, 128, 120,  10, 
+      0,   0, 164,   0,   0,   0, 
+    152,  10,   0,   0, 164,   0, 
       0, 128, 152,  10,   0,   0, 
-    162,   0,   0,   0, 180,  10, 
-      0,   0, 162,   0,   0, 128, 
-    180,  10,   0,   0, 162,   0, 
+    164,   0,   0,   0, 180,  10, 
+      0,   0, 164,   0,   0, 128, 
+    180,  10,   0,   0, 164,   0, 
       0,   0, 212,  10,   0,   0, 
-    162,   0,   0, 128, 212,  10, 
-      0,   0, 162,   0,   0,   0, 
-    240,  10,   0,   0, 162,   0, 
+    164,   0,   0, 128, 212,  10, 
+      0,   0, 164,   0,   0,   0, 
+    240,  10,   0,   0, 164,   0, 
       0, 128, 240,  10,   0,   0, 
-    162,   0,   0,   0,  24,  11, 
-      0,   0, 162,   0,   0, 128, 
-     24,  11,   0,   0, 162,   0, 
+    164,   0,   0,   0,  24,  11, 
+      0,   0, 164,   0,   0, 128, 
+     24,  11,   0,   0, 164,   0, 
       0,   0,  64,  11,   0,   0, 
-    163,   0,   0, 128,  64,  11, 
-      0,   0, 163,   0,   0,   0, 
-     84,  11,   0,   0, 164,   0, 
+    165,   0,   0, 128,  64,  11, 
+      0,   0, 165,   0,   0,   0, 
+     84,  11,   0,   0, 166,   0, 
       0, 128,  84,  11,   0,   0, 
-    164,   0,   0,   0, 116,  11, 
-      0,   0, 164,   0,   0, 128, 
-    116,  11,   0,   0, 164,   0, 
+    166,   0,   0,   0, 116,  11, 
+      0,   0, 166,   0,   0, 128, 
+    116,  11,   0,   0, 166,   0, 
       0,   0, 144,  11,   0,   0, 
-    164,   0,   0, 128, 144,  11, 
-      0,   0, 164,   0,   0,   0, 
-    156,  11,   0,   0, 164,   0, 
+    166,   0,   0, 128, 144,  11, 
+      0,   0, 166,   0,   0,   0, 
+    156,  11,   0,   0, 166,   0, 
       0, 128, 156,  11,   0,   0, 
-    164,   0,   0,   0, 176,  11, 
-      0,   0, 164,   0,   0, 128, 
-    176,  11,   0,   0, 164,   0, 
+    166,   0,   0,   0, 176,  11, 
+      0,   0, 166,   0,   0, 128, 
+    176,  11,   0,   0, 166,   0, 
       0,   0, 204,  11,   0,   0, 
-    164,   0,   0, 128, 204,  11, 
-      0,   0, 164,   0,   0,   0, 
-    232,  11,   0,   0, 164,   0, 
+    166,   0,   0, 128, 204,  11, 
+      0,   0, 166,   0,   0,   0, 
+    232,  11,   0,   0, 166,   0, 
       0, 128, 232,  11,   0,   0, 
-    164,   0,   0,   0, 244,  11, 
-      0,   0, 164,   0,   0, 128, 
-    244,  11,   0,   0, 164,   0, 
+    166,   0,   0,   0, 244,  11, 
+      0,   0, 166,   0,   0, 128, 
+    244,  11,   0,   0, 166,   0, 
       0,   0, 248,  11,   0,   0, 
-    166,   0,   0, 128, 248,  11, 
-      0,   0, 166,   0,   0,   0, 
-     36,  12,   0,   0, 166,   0, 
+    168,   0,   0, 128, 248,  11, 
+      0,   0, 168,   0,   0,   0, 
+     36,  12,   0,   0, 168,   0, 
       0, 128,  36,  12,   0,   0, 
-    166,   0,   0,   0,  56,  12, 
-      0,   0, 166,   0,   0, 128, 
-     56,  12,   0,   0, 166,   0, 
+    168,   0,   0,   0,  56,  12, 
+      0,   0, 168,   0,   0, 128, 
+     56,  12,   0,   0, 168,   0, 
       0,   0,  88,  12,   0,   0, 
-    166,   0,   0, 128,  88,  12, 
-      0,   0, 166,   0,   0,   0, 
-    116,  12,   0,   0, 166,   0, 
+    168,   0,   0, 128,  88,  12, 
+      0,   0, 168,   0,   0,   0, 
+    116,  12,   0,   0, 168,   0, 
       0, 128, 116,  12,   0,   0, 
-    166,   0,   0,   0, 128,  12, 
-      0,   0, 168,   0,   0, 128, 
-    128,  12,   0,   0, 168,   0, 
+    168,   0,   0,   0, 128,  12, 
+      0,   0, 170,   0,   0, 128, 
+    128,  12,   0,   0, 170,   0, 
       0,   0, 148,  12,   0,   0, 
-    168,   0,   0, 128, 148,  12, 
-      0,   0, 168,   0,   0,   0, 
-    176,  12,   0,   0, 168,   0, 
+    170,   0,   0, 128, 148,  12, 
+      0,   0, 170,   0,   0,   0, 
+    176,  12,   0,   0, 170,   0, 
       0, 128, 176,  12,   0,   0, 
-    168,   0,   0,   0, 204,  12, 
-      0,   0, 168,   0,   0, 128, 
-    204,  12,   0,   0, 168,   0, 
+    170,   0,   0,   0, 204,  12, 
+      0,   0, 170,   0,   0, 128, 
+    204,  12,   0,   0, 170,   0, 
       0,   0, 232,  12,   0,   0, 
-    168,   0,   0, 128, 232,  12, 
-      0,   0, 168,   0,   0,   0, 
-    244,  12,   0,   0, 170,   0, 
+    170,   0,   0, 128, 232,  12, 
+      0,   0, 170,   0,   0,   0, 
+    244,  12,   0,   0, 172,   0, 
       0, 128, 244,  12,   0,   0, 
-    170,   0,   0,   0, 248,  12, 
-      0,   0, 171,   0,   0, 128, 
-    248,  12,   0,   0, 171,   0, 
+    172,   0,   0,   0, 248,  12, 
+      0,   0, 173,   0,   0, 128, 
+    248,  12,   0,   0, 173,   0, 
       0,   0,  12,  13,   0,   0, 
-    171,   0,   0, 128,  12,  13, 
-      0,   0, 171,   0,   0,   0, 
-     32,  13,   0,   0, 171,   0, 
+    173,   0,   0, 128,  12,  13, 
+      0,   0, 173,   0,   0,   0, 
+     32,  13,   0,   0, 173,   0, 
       0, 128,  32,  13,   0,   0, 
-    171,   0,   0,   0,   2,   0, 
+    173,   0,   0,   0,   2,   0, 
      40,   0,  25,   0,  39,   0, 
       2,   0,  68,   0,  25,   0, 
      67,   0,   2,   0,  19,   0, 
@@ -5114,37 +5114,39 @@ const BYTE CustomUIDX11PixelShader[] =
     104, 116,  50,  46, 122,  59, 
      13,  10,  32,  32,  32,  32, 
      32,  32,  32,  32, 125,  13, 
-     10,   9, 125,  13,  10,   9, 
-    101, 108, 115, 101,  13,  10, 
+     10,   9,   9,  47,  47,  32, 
+    117, 115, 101,  32, 116, 104, 
+    105, 115,  32, 114, 101, 116, 
+    117, 114, 110,  32, 116, 111, 
+     32, 100, 101,  98, 117, 103, 
+     32, 100, 121, 110,  97, 109, 
+    105,  99,  32, 108, 105, 103, 
+    104, 116, 110, 105, 110, 103, 
+     13,  10,   9,   9,  47,  47, 
+    114, 101, 116, 117, 114, 110, 
+     32, 102, 108, 111,  97, 116, 
+     52,  40, 105, 110, 112, 117, 
+    116,  46, 108, 105, 103, 104, 
+    116,  50,  46, 120,  44,  32, 
+    105, 110, 112, 117, 116,  46, 
+    108, 105, 103, 104, 116,  50, 
+     46, 121,  44,  32, 105, 110, 
+    112, 117, 116,  46, 108, 105, 
+    103, 104, 116,  50,  46, 122, 
+     44,  32,  49,  46,  48,  41, 
+     59,  13,  10,   9, 125,  13, 
+     10,   9, 101, 108, 115, 101, 
+     13,  10,   9, 123,  13,  10, 
+      9,   9, 102, 111, 114,  32, 
+     40, 105, 110, 116,  32, 106, 
+     32,  61,  32,  48,  59,  32, 
+    106,  32,  60,  32, 100, 105, 
+    102, 102, 117, 115, 101,  76, 
+    105, 103, 104, 116,  67, 111, 
+    117, 110, 116,  59,  32, 106, 
+     43,  43,  41,  13,  10,   9, 
       9, 123,  13,  10,   9,   9, 
-    102, 111, 114,  32,  40, 105, 
-    110, 116,  32, 106,  32,  61, 
-     32,  48,  59,  32, 106,  32, 
-     60,  32, 100, 105, 102, 102, 
-    117, 115, 101,  76, 105, 103, 
-    104, 116,  67, 111, 117, 110, 
-    116,  59,  32, 106,  43,  43, 
-     41,  13,  10,   9,   9, 123, 
-     13,  10,   9,   9,   9, 105, 
-    102,  32,  40, 100, 111, 116, 
-     40, 105, 110, 112, 117, 116, 
-     46, 110, 111, 114, 109,  97, 
-    108,  44,  32,  45, 100, 105, 
-    102, 117, 115, 101,  76, 105, 
-    103, 104, 116, 115,  91, 106, 
-     93,  46, 100, 105, 114, 101, 
-     99, 116, 105, 111, 110,  41, 
-     32,  60,  32,  48,  41,  13, 
-     10,   9,   9,   9,   9,  99, 
-    111, 110, 116, 105, 110, 117, 
-    101,  59,  13,  10,   9,   9, 
-      9, 100, 105, 102, 102, 117, 
-    115, 101,  76, 105, 103, 104, 
-    116,  32,  43,  61,  32, 100, 
-    105, 102, 117, 115, 101,  76, 
-    105, 103, 104, 116, 115,  91, 
-    106,  93,  46,  99, 111, 108, 
-    111, 114,  32,  42,  32, 100, 
+      9, 105, 102,  32,  40, 100, 
     111, 116,  40, 105, 110, 112, 
     117, 116,  46, 110, 111, 114, 
     109,  97, 108,  44,  32,  45, 
@@ -5152,318 +5154,316 @@ const BYTE CustomUIDX11PixelShader[] =
      76, 105, 103, 104, 116, 115, 
      91, 106,  93,  46, 100, 105, 
     114, 101,  99, 116, 105, 111, 
-    110,  41,  59,  13,  10,   9, 
-      9, 125,  13,  10,  32,  32, 
-     32,  32,  32,  32,  32,  32, 
-    100, 105, 102, 102, 117, 115, 
-    101,  76, 105, 103, 104, 116, 
-     32,  61,  32, 102, 108, 111, 
-     97, 116,  51,  40,  49,  46, 
-     48,  44,  32,  49,  46,  48, 
-     44,  32,  49,  46,  48,  41, 
-     59,  13,  10,   9,   9,  47, 
-     42, 102, 111, 114,  32,  40, 
-    105, 110, 116,  32, 105,  32, 
-     61,  32,  48,  59,  32, 105, 
-     32,  60,  32, 112, 111, 105, 
-    110, 116,  76, 105, 103, 104, 
-    116,  67, 111, 117, 110, 116, 
-     59,  32, 105,  43,  43,  41, 
-     13,  10,   9,   9, 123,  13, 
-     10,   9,   9,   9, 102, 108, 
-    111,  97, 116,  51,  32, 108, 
-    105, 103, 104, 116,  68, 105, 
-    114,  32,  61,  32, 112, 111, 
-    105, 110, 116,  76, 105, 103, 
-    104, 116, 115,  91, 105,  93, 
-     46, 112, 111, 115, 105, 116, 
-    105, 111, 110,  32,  45,  32, 
-    105, 110, 112, 117, 116,  46, 
-    119, 111, 114, 108, 100,  80, 
-    111, 115,  46, 120, 121, 122, 
-     59,  13,  10,   9,   9,   9, 
-    102, 108, 111,  97, 116,  32, 
-    102,  97,  99, 116, 111, 114, 
-     59,  13,  10,   9,   9,   9, 
-    105, 102,  32,  40, 108, 101, 
-    110, 103, 116, 104,  40, 108, 
-    105, 103, 104, 116,  68, 105, 
-    114,  41,  32,  60,  32,  49, 
+    110,  41,  32,  60,  32,  48, 
      41,  13,  10,   9,   9,   9, 
-      9, 102,  97,  99, 116, 111, 
-    114,  32,  61,  32,  49,  59, 
-     13,  10,   9,   9,   9, 101, 
-    108, 115, 101,  13,  10,   9, 
-      9,   9,   9, 102,  97,  99, 
-    116, 111, 114,  32,  61,  32, 
+      9,  99, 111, 110, 116, 105, 
+    110, 117, 101,  59,  13,  10, 
+      9,   9,   9, 100, 105, 102, 
+    102, 117, 115, 101,  76, 105, 
+    103, 104, 116,  32,  43,  61, 
+     32, 100, 105, 102, 117, 115, 
+    101,  76, 105, 103, 104, 116, 
+    115,  91, 106,  93,  46,  99, 
+    111, 108, 111, 114,  32,  42, 
+     32, 100, 111, 116,  40, 105, 
+    110, 112, 117, 116,  46, 110, 
+    111, 114, 109,  97, 108,  44, 
+     32,  45, 100, 105, 102, 117, 
+    115, 101,  76, 105, 103, 104, 
+    116, 115,  91, 106,  93,  46, 
+    100, 105, 114, 101,  99, 116, 
+    105, 111, 110,  41,  59,  13, 
+     10,   9,   9, 125,  13,  10, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32, 100, 105, 102, 102, 
+    117, 115, 101,  76, 105, 103, 
+    104, 116,  32,  61,  32, 102, 
+    108, 111,  97, 116,  51,  40, 
+     49,  46,  48,  44,  32,  49, 
+     46,  48,  44,  32,  49,  46, 
+     48,  41,  59,  13,  10,   9, 
+      9,  47,  42, 102, 111, 114, 
+     32,  40, 105, 110, 116,  32, 
+    105,  32,  61,  32,  48,  59, 
+     32, 105,  32,  60,  32, 112, 
+    111, 105, 110, 116,  76, 105, 
+    103, 104, 116,  67, 111, 117, 
+    110, 116,  59,  32, 105,  43, 
+     43,  41,  13,  10,   9,   9, 
+    123,  13,  10,   9,   9,   9, 
+    102, 108, 111,  97, 116,  51, 
+     32, 108, 105, 103, 104, 116, 
+     68, 105, 114,  32,  61,  32, 
     112, 111, 105, 110, 116,  76, 
     105, 103, 104, 116, 115,  91, 
-    105,  93,  46, 114,  97, 100, 
-    105, 117, 115,  32,  47,  32, 
+    105,  93,  46, 112, 111, 115, 
+    105, 116, 105, 111, 110,  32, 
+     45,  32, 105, 110, 112, 117, 
+    116,  46, 119, 111, 114, 108, 
+    100,  80, 111, 115,  46, 120, 
+    121, 122,  59,  13,  10,   9, 
+      9,   9, 102, 108, 111,  97, 
+    116,  32, 102,  97,  99, 116, 
+    111, 114,  59,  13,  10,   9, 
+      9,   9, 105, 102,  32,  40, 
     108, 101, 110, 103, 116, 104, 
      40, 108, 105, 103, 104, 116, 
-     68, 105, 114,  41,  59,  13, 
-     10,   9,   9,   9, 102, 108, 
-    111,  97, 116,  32, 102,  32, 
-     61,  32, 100, 111, 116,  40, 
-    105, 110, 112, 117, 116,  46, 
-    110, 111, 114, 109,  97, 108, 
-     44,  32, 110, 111, 114, 109, 
+     68, 105, 114,  41,  32,  60, 
+     32,  49,  41,  13,  10,   9, 
+      9,   9,   9, 102,  97,  99, 
+    116, 111, 114,  32,  61,  32, 
+     49,  59,  13,  10,   9,   9, 
+      9, 101, 108, 115, 101,  13, 
+     10,   9,   9,   9,   9, 102, 
+     97,  99, 116, 111, 114,  32, 
+     61,  32, 112, 111, 105, 110, 
+    116,  76, 105, 103, 104, 116, 
+    115,  91, 105,  93,  46, 114, 
+     97, 100, 105, 117, 115,  32, 
+     47,  32, 108, 101, 110, 103, 
+    116, 104,  40, 108, 105, 103, 
+    104, 116,  68, 105, 114,  41, 
+     59,  13,  10,   9,   9,   9, 
+    102, 108, 111,  97, 116,  32, 
+    102,  32,  61,  32, 100, 111, 
+    116,  40, 105, 110, 112, 117, 
+    116,  46, 110, 111, 114, 109, 
+     97, 108,  44,  32, 110, 111, 
+    114, 109,  97, 108, 105, 122, 
+    101,  40, 108, 105, 103, 104, 
+    116,  68, 105, 114,  41,  41, 
+     59,  13,  10,   9,   9,   9, 
+    105, 102,  32,  40, 102,  32, 
+     62,  32,  48,  41,  13,  10, 
+      9,   9,   9, 123,  13,  10, 
+      9,   9,   9,   9, 100, 105, 
+    102, 102, 117, 115, 101,  76, 
+    105, 103, 104, 116,  32,  43, 
+     61,  32, 112, 111, 105, 110, 
+    116,  76, 105, 103, 104, 116, 
+    115,  91, 105,  93,  46,  99, 
+    111, 108, 111, 114,  32,  42, 
+     32, 102,  32,  42,  32, 102, 
+     97,  99, 116, 111, 114,  59, 
+     13,  10,   9,   9,   9,   9, 
+    102,  32,  61,  32, 100, 111, 
+    116,  40, 110, 111, 114, 109, 
      97, 108, 105, 122, 101,  40, 
-    108, 105, 103, 104, 116,  68, 
-    105, 114,  41,  41,  59,  13, 
-     10,   9,   9,   9, 105, 102, 
-     32,  40, 102,  32,  62,  32, 
-     48,  41,  13,  10,   9,   9, 
-      9, 123,  13,  10,   9,   9, 
-      9,   9, 100, 105, 102, 102, 
-    117, 115, 101,  76, 105, 103, 
-    104, 116,  32,  43,  61,  32, 
-    112, 111, 105, 110, 116,  76, 
-    105, 103, 104, 116, 115,  91, 
-    105,  93,  46,  99, 111, 108, 
-    111, 114,  32,  42,  32, 102, 
-     32,  42,  32, 102,  97,  99, 
-    116, 111, 114,  59,  13,  10, 
-      9,   9,   9,   9, 102,  32, 
-     61,  32, 100, 111, 116,  40, 
-    110, 111, 114, 109,  97, 108, 
-    105, 122, 101,  40, 114, 101, 
-    102, 108, 101,  99, 116,  40, 
-    110, 111, 114, 109,  97, 108, 
-    105, 122, 101,  40,  45, 108, 
-    105, 103, 104, 116,  68, 105, 
-    114,  41,  44,  32, 105, 110, 
-    112, 117, 116,  46, 110, 111, 
-    114, 109,  97, 108,  41,  41, 
-     44,  32, 110, 111, 114, 109, 
+    114, 101, 102, 108, 101,  99, 
+    116,  40, 110, 111, 114, 109, 
      97, 108, 105, 122, 101,  40, 
-    107,  80, 111, 115, 105, 116, 
-    105, 111, 110,  46, 120, 121, 
-    122,  32,  45,  32, 105, 110, 
-    112, 117, 116,  46, 119, 111, 
-    114, 108, 100,  80, 111, 115, 
-     46, 120, 121, 122,  41,  41, 
-     59,  13,  10,   9,   9,   9, 
-      9, 105, 102,  32,  40, 102, 
-     32,  62,  32,  48,  41,  13, 
-     10,   9,   9,   9,   9,   9, 
-    115, 112, 101,  99, 117, 108, 
-     97, 114,  76, 105, 103, 104, 
-    116,  32,  43,  61,  32, 112, 
-    111, 105, 110, 116,  76, 105, 
-    103, 104, 116, 115,  91, 105, 
-     93,  46,  99, 111, 108, 111, 
-    114,  32,  42,  32, 102,  32, 
-     42,  32, 102,  97,  99, 116, 
-    111, 114,  59,  13,  10,   9, 
-      9,   9, 125,  13,  10,   9, 
-      9, 125,  42,  47,  13,  10, 
-      9, 125,  13,  10,   9,  47, 
-     47, 105, 102,  32,  40,  33, 
-     40, 100, 105, 102, 102, 117, 
-    115, 101,  76, 105, 103, 104, 
-    116,  46, 120,  32,  62,  61, 
-     32,  48,  32,  38,  38,  32, 
-    100, 105, 102, 102, 117, 115, 
-    101,  76, 105, 103, 104, 116, 
-     46, 120,  32,  60,  61,  32, 
-     49,  41,  41,  13,  10,   9, 
-     47,  47,   9, 100, 105, 102, 
+     45, 108, 105, 103, 104, 116, 
+     68, 105, 114,  41,  44,  32, 
+    105, 110, 112, 117, 116,  46, 
+    110, 111, 114, 109,  97, 108, 
+     41,  41,  44,  32, 110, 111, 
+    114, 109,  97, 108, 105, 122, 
+    101,  40, 107,  80, 111, 115, 
+    105, 116, 105, 111, 110,  46, 
+    120, 121, 122,  32,  45,  32, 
+    105, 110, 112, 117, 116,  46, 
+    119, 111, 114, 108, 100,  80, 
+    111, 115,  46, 120, 121, 122, 
+     41,  41,  59,  13,  10,   9, 
+      9,   9,   9, 105, 102,  32, 
+     40, 102,  32,  62,  32,  48, 
+     41,  13,  10,   9,   9,   9, 
+      9,   9, 115, 112, 101,  99, 
+    117, 108,  97, 114,  76, 105, 
+    103, 104, 116,  32,  43,  61, 
+     32, 112, 111, 105, 110, 116, 
+     76, 105, 103, 104, 116, 115, 
+     91, 105,  93,  46,  99, 111, 
+    108, 111, 114,  32,  42,  32, 
+    102,  32,  42,  32, 102,  97, 
+     99, 116, 111, 114,  59,  13, 
+     10,   9,   9,   9, 125,  13, 
+     10,   9,   9, 125,  42,  47, 
+     13,  10,   9, 125,  13,  10, 
+      9,  47,  47, 105, 102,  32, 
+     40,  33,  40, 100, 105, 102, 
     102, 117, 115, 101,  76, 105, 
     103, 104, 116,  46, 120,  32, 
-     61,  32,  48,  59,  13,  10, 
-      9, 102, 108, 111,  97, 116, 
-     52,  32, 116, 101, 120, 116, 
-    117, 114, 101,  67, 111, 108, 
-    111, 114,  32,  61,  32, 115, 
-     97, 116, 117, 114,  97, 116, 
-    101,  40,  40, 109,  97, 116, 
-    101, 114, 105,  97, 108,  67, 
-    111, 108, 111, 114,  32,  42, 
-     32,  97, 109,  98, 105, 101, 
-    110, 116,  70,  97,  99, 116, 
-    111, 114,  41,  32,  43,  32, 
-     40, 102, 108, 111,  97, 116, 
-     52,  40, 100, 105, 102, 102, 
+     62,  61,  32,  48,  32,  38, 
+     38,  32, 100, 105, 102, 102, 
     117, 115, 101,  76, 105, 103, 
-    104, 116,  46, 120,  44,  32, 
+    104, 116,  46, 120,  32,  60, 
+     61,  32,  49,  41,  41,  13, 
+     10,   9,  47,  47,   9, 100, 
+    105, 102, 102, 117, 115, 101, 
+     76, 105, 103, 104, 116,  46, 
+    120,  32,  61,  32,  48,  59, 
+     13,  10,   9, 102, 108, 111, 
+     97, 116,  52,  32, 116, 101, 
+    120, 116, 117, 114, 101,  67, 
+    111, 108, 111, 114,  32,  61, 
+     32, 115,  97, 116, 117, 114, 
+     97, 116, 101,  40,  40, 109, 
+     97, 116, 101, 114, 105,  97, 
+    108,  67, 111, 108, 111, 114, 
+     32,  42,  32,  97, 109,  98, 
+    105, 101, 110, 116,  70,  97, 
+     99, 116, 111, 114,  41,  32, 
+     43,  32,  40, 102, 108, 111, 
+     97, 116,  52,  40, 100, 105, 
+    102, 102, 117, 115, 101,  76, 
+    105, 103, 104, 116,  46, 120, 
+     44,  32, 100, 105, 102, 102, 
+    117, 115, 101,  76, 105, 103, 
+    104, 116,  46, 121,  44,  32, 
     100, 105, 102, 102, 117, 115, 
     101,  76, 105, 103, 104, 116, 
-     46, 121,  44,  32, 100, 105, 
-    102, 102, 117, 115, 101,  76, 
-    105, 103, 104, 116,  46, 122, 
-     44,  32,  48,  41,  32,  42, 
-     32, 100, 105, 102, 102, 117, 
-    115,  70,  97,  99, 116, 111, 
-    114,  41,  32,  43,  32,  40, 
-    102, 108, 111,  97, 116,  52, 
-     40, 115, 112, 101,  99, 117, 
+     46, 122,  44,  32,  48,  41, 
+     32,  42,  32, 100, 105, 102, 
+    102, 117, 115,  70,  97,  99, 
+    116, 111, 114,  41,  32,  43, 
+     32,  40, 102, 108, 111,  97, 
+    116,  52,  40, 115, 112, 101, 
+     99, 117, 108,  97, 114,  76, 
+    105, 103, 104, 116,  46, 120, 
+     44,  32, 115, 112, 101,  99, 
+    117, 108,  97, 114,  76, 105, 
+    103, 104, 116,  46, 121,  44, 
+     32, 115, 112, 101,  99, 117, 
     108,  97, 114,  76, 105, 103, 
-    104, 116,  46, 120,  44,  32, 
-    115, 112, 101,  99, 117, 108, 
-     97, 114,  76, 105, 103, 104, 
-    116,  46, 121,  44,  32, 115, 
+    104, 116,  46, 122,  44,  32, 
+     48,  41,  32,  42,  32, 115, 
     112, 101,  99, 117, 108,  97, 
-    114,  76, 105, 103, 104, 116, 
-     46, 122,  44,  32,  48,  41, 
-     32,  42,  32, 115, 112, 101, 
-     99, 117, 108,  97, 114,  70, 
-     97,  99, 116, 111, 114,  41, 
-     41,  59,  13,  10,   9, 116, 
-    101, 120, 116, 117, 114, 101, 
-     67, 111, 108, 111, 114,  46, 
-     97,  32,  61,  32, 109,  97, 
+    114,  70,  97,  99, 116, 111, 
+    114,  41,  41,  59,  13,  10, 
+      9, 116, 101, 120, 116, 117, 
+    114, 101,  67, 111, 108, 111, 
+    114,  46,  97,  32,  61,  32, 
+    109,  97, 116, 101, 114, 105, 
+     97, 108,  67, 111, 108, 111, 
+    114,  46,  97,  59,  13,  10, 
+     32,  32,  32,  32, 105, 102, 
+     32,  40, 105, 115, 110,  97, 
+    110,  40, 100, 105, 102, 102, 
+    117, 115, 101,  76, 105, 103, 
+    104, 116,  46, 120,  32,  42, 
+     32, 100, 105, 102, 102, 117, 
+    115,  70,  97,  99, 116, 111, 
+    114,  41,  41,  32,  99, 108, 
+    105, 112,  40,  45,  49,  41, 
+     59,  13,  10,   9,  47,  47, 
+      9, 116, 101, 120, 116, 117, 
+    114, 101,  67, 111, 108, 111, 
+    114,  32,  61,  32, 109,  97, 
     116, 101, 114, 105,  97, 108, 
-     67, 111, 108, 111, 114,  46, 
-     97,  59,  13,  10,  32,  32, 
-     32,  32, 105, 102,  32,  40, 
-    105, 115, 110,  97, 110,  40, 
-    100, 105, 102, 102, 117, 115, 
-    101,  76, 105, 103, 104, 116, 
-     46, 120,  32,  42,  32, 100, 
-    105, 102, 102, 117, 115,  70, 
-     97,  99, 116, 111, 114,  41, 
-     41,  32,  99, 108, 105, 112, 
-     40,  45,  49,  41,  59,  13, 
-     10,   9,  47,  47,   9, 116, 
+     67, 111, 108, 111, 114,  59, 
+     13,  10,  32,  32,  32,  32, 
+    105, 102,  32,  40, 101, 102, 
+    102, 101,  99, 116,  69, 110, 
+     97,  98, 108, 101, 100,  32, 
+     38,  38,  32, 101, 102, 102, 
+    101,  99, 116,  80, 101, 114, 
+     99, 101, 110, 116,  97, 103, 
+    101,  32,  61,  61,  32,  48, 
+     41,  13,  10,   9, 123,  13, 
+     10,  32,  32,  32,  32,  32, 
+     32,  32,  32,  99, 108, 105, 
+    112,  40, 116, 101, 120, 116, 
+    117, 114, 101,  67, 111, 108, 
+    111, 114,  46,  97,  32,  45, 
+     32,  48,  46,  53,  41,  59, 
+     13,  10,  32,  32,  32,  32, 
+     32,  32,  32,  32,  47,  47, 
+    116, 101, 120, 116, 117, 114, 
+    101,  67, 111, 108, 111, 114, 
+     46,  97,  32,  61,  32,  49, 
+     46,  48,  59,  13,  10,   9, 
+    125,  13,  10,   9, 114, 101, 
+    116, 117, 114, 110,  32, 116, 
     101, 120, 116, 117, 114, 101, 
-     67, 111, 108, 111, 114,  32, 
-     61,  32, 109,  97, 116, 101, 
-    114, 105,  97, 108,  67, 111, 
-    108, 111, 114,  59,  13,  10, 
-     32,  32,  32,  32, 105, 102, 
-     32,  40, 101, 102, 102, 101, 
-     99, 116,  69, 110,  97,  98, 
-    108, 101, 100,  32,  38,  38, 
-     32, 101, 102, 102, 101,  99, 
-    116,  80, 101, 114,  99, 101, 
-    110, 116,  97, 103, 101,  32, 
-     61,  61,  32,  48,  41,  13, 
-     10,   9, 123,  13,  10,  32, 
-     32,  32,  32,  32,  32,  32, 
-     32,  99, 108, 105, 112,  40, 
+     67, 111, 108, 111, 114,  59, 
+     13,  10,   9,  47,  47, 114, 
+    101, 116, 117, 114, 110,  32, 
     116, 101, 120, 116, 117, 114, 
     101,  67, 111, 108, 111, 114, 
-     46,  97,  32,  45,  32,  48, 
-     46,  53,  41,  59,  13,  10, 
-     32,  32,  32,  32,  32,  32, 
-     32,  32,  47,  47, 116, 101, 
-    120, 116, 117, 114, 101,  67, 
-    111, 108, 111, 114,  46,  97, 
-     32,  61,  32,  49,  46,  48, 
-     59,  13,  10,   9, 125,  13, 
-     10,   9, 114, 101, 116, 117, 
-    114, 110,  32, 116, 101, 120, 
-    116, 117, 114, 101,  67, 111, 
-    108, 111, 114,  59,  13,  10, 
-      9,  47,  47, 114, 101, 116, 
-    117, 114, 110,  32, 116, 101, 
-    120, 116, 117, 114, 101,  67, 
-    111, 108, 111, 114,  59,  13, 
-     10,   9,  47,  47, 105, 102, 
-     32,  40, 100, 105, 102, 102, 
-    117, 115,  70,  97,  99, 116, 
-    111, 114,  32,  61,  61,  32, 
-     48,  41,  13,  10,   9,  47, 
-     47,   9, 114, 101, 116, 117, 
-    114, 110,  32, 102, 108, 111, 
-     97, 116,  52,  40,  49,  44, 
-     32,  49,  44,  32,  48,  44, 
-     32,  49,  41,  59,  13,  10, 
-      9,  47,  42, 105, 102,  32, 
-     40, 105, 115, 110,  97, 110, 
-     40, 100, 105, 102, 102, 117, 
-    115, 101,  76, 105, 103, 104, 
-    116,  46, 120,  41,  32, 124, 
-    124,  32, 105, 115, 110,  97, 
-    110,  40, 100, 105, 102, 102, 
-    117, 115,  70,  97,  99, 116, 
-    111, 114,  41,  32, 124, 124, 
-     32, 105, 115, 105, 110, 102, 
-     40, 100, 105, 102, 102, 117, 
-    115, 101,  76, 105, 103, 104, 
-    116,  46, 120,  41,  32, 124, 
-    124,  32, 105, 115, 105, 110, 
-    102,  40,  45, 100, 105, 102, 
+     59,  13,  10,   9,  47,  47, 
+    105, 102,  32,  40, 100, 105, 
+    102, 102, 117, 115,  70,  97, 
+     99, 116, 111, 114,  32,  61, 
+     61,  32,  48,  41,  13,  10, 
+      9,  47,  47,   9, 114, 101, 
+    116, 117, 114, 110,  32, 102, 
+    108, 111,  97, 116,  52,  40, 
+     49,  44,  32,  49,  44,  32, 
+     48,  44,  32,  49,  41,  59, 
+     13,  10,   9,  47,  42, 105, 
+    102,  32,  40, 105, 115, 110, 
+     97, 110,  40, 100, 105, 102, 
     102, 117, 115, 101,  76, 105, 
     103, 104, 116,  46, 120,  41, 
-     41,  13,  10,   9,   9, 114, 
-    101, 116, 117, 114, 110,  32, 
-    102, 108, 111,  97, 116,  52, 
-     40,  48,  44,  32,  49,  44, 
-     32,  49,  44,  32,  49,  41, 
-     59,  13,  10,   9, 105, 102, 
-     32,  40, 105, 115, 110,  97, 
-    110,  40, 100, 105, 102, 102, 
-    117, 115, 101,  76, 105, 103, 
-    104, 116,  46, 120,  32,  45, 
-     32, 100, 105, 102, 102, 117, 
-    115, 101,  76, 105, 103, 104, 
-    116,  46, 120,  41,  32,  38, 
-     38,  32, 105, 115, 110,  97, 
-    110,  40, 100, 105, 102, 102, 
+     32, 124, 124,  32, 105, 115, 
+    110,  97, 110,  40, 100, 105, 
+    102, 102, 117, 115,  70,  97, 
+     99, 116, 111, 114,  41,  32, 
+    124, 124,  32, 105, 115, 105, 
+    110, 102,  40, 100, 105, 102, 
+    102, 117, 115, 101,  76, 105, 
+    103, 104, 116,  46, 120,  41, 
+     32, 124, 124,  32, 105, 115, 
+    105, 110, 102,  40,  45, 100, 
+    105, 102, 102, 117, 115, 101, 
+     76, 105, 103, 104, 116,  46, 
+    120,  41,  41,  13,  10,   9, 
+      9, 114, 101, 116, 117, 114, 
+    110,  32, 102, 108, 111,  97, 
+    116,  52,  40,  48,  44,  32, 
+     49,  44,  32,  49,  44,  32, 
+     49,  41,  59,  13,  10,   9, 
+    105, 102,  32,  40, 105, 115, 
+    110,  97, 110,  40, 100, 105, 
+    102, 102, 117, 115, 101,  76, 
+    105, 103, 104, 116,  46, 120, 
+     32,  45,  32, 100, 105, 102, 
+    102, 117, 115, 101,  76, 105, 
+    103, 104, 116,  46, 120,  41, 
+     32,  38,  38,  32, 105, 115, 
+    110,  97, 110,  40, 100, 105, 
+    102, 102, 117, 115, 101,  76, 
+    105, 103, 104, 116,  46, 120, 
+     32,  42,  32, 100, 105, 102, 
+    102, 117, 115,  70,  97,  99, 
+    116, 111, 114,  41,  32,  41, 
+     13,  10,   9,   9, 114, 101, 
+    116, 117, 114, 110,  32, 102, 
+    108, 111,  97, 116,  52,  40, 
+     49,  44,  32,  49,  44,  32, 
+     49,  44,  32,  49,  41,  59, 
+     13,  10,   9, 105, 102,  32, 
+     40,  40, 100, 105, 102, 102, 
     117, 115, 101,  76, 105, 103, 
     104, 116,  46, 120,  32,  42, 
      32, 100, 105, 102, 102, 117, 
     115,  70,  97,  99, 116, 111, 
-    114,  41,  32,  41,  13,  10, 
-      9,   9, 114, 101, 116, 117, 
-    114, 110,  32, 102, 108, 111, 
-     97, 116,  52,  40,  49,  44, 
-     32,  49,  44,  32,  49,  44, 
-     32,  49,  41,  59,  13,  10, 
-      9, 105, 102,  32,  40,  40, 
+    114,  41,  32,  33,  61,  32, 
+     48,  32,  38,  38,  32,  40, 
     100, 105, 102, 102, 117, 115, 
     101,  76, 105, 103, 104, 116, 
      46, 120,  32,  42,  32, 100, 
     105, 102, 102, 117, 115,  70, 
      97,  99, 116, 111, 114,  41, 
-     32,  33,  61,  32,  48,  32, 
-     38,  38,  32,  40, 100, 105, 
-    102, 102, 117, 115, 101,  76, 
-    105, 103, 104, 116,  46, 120, 
-     32,  42,  32, 100, 105, 102, 
-    102, 117, 115,  70,  97,  99, 
-    116, 111, 114,  41,  32,  33, 
-     61,  32,  45,  48,  41,  13, 
-     10,   9,   9, 114, 101, 116, 
-    117, 114, 110,  32, 102, 108, 
-    111,  97, 116,  52,  40,  48, 
-     44,  32,  48,  44,  32,  49, 
-     44,  32,  49,  41,  59,  13, 
-     10,   9, 114, 101, 116, 117, 
-    114, 110,  32, 102, 108, 111, 
-     97, 116,  52,  40,  48,  44, 
-     32,  49,  44,  32,  48,  44, 
-     32,  49,  41,  59,  42,  47, 
-     13,  10, 125,   0,   7,   0, 
-      0,   0,   0,   0,   0,   0, 
-    130,   0,   0,   0,   0,   0, 
-      0,   0,   4,   1,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0, 131,   0,   0,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
+     32,  33,  61,  32,  45,  48, 
+     41,  13,  10,   9,   9, 114, 
+    101, 116, 117, 114, 110,  32, 
+    102, 108, 111,  97, 116,  52, 
+     40,  48,  44,  32,  48,  44, 
+     32,  49,  44,  32,  49,  41, 
+     59,  13,  10,   9, 114, 101, 
+    116, 117, 114, 110,  32, 102, 
+    108, 111,  97, 116,  52,  40, 
+     48,  44,  32,  49,  44,  32, 
+     48,  44,  32,  49,  41,  59, 
+     42,  47,  13,  10, 125,   0, 
+      7,   0,   0,   0,   4,   1, 
+      0,   0, 130,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0, 131,   0, 
+      0,   0,   4,   0,   0,   0, 
       0,   0,  68,  51,  68,  83, 
      72,  68,  82,   0,  36,  13, 
       0,   0,   0,   0,   0,   0, 
@@ -5977,10 +5977,10 @@ const BYTE CustomUIDX11PixelShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0, 148,  46,  49,   1, 
-    236,  10,   6, 104,   1,   0, 
-      0,   0, 146, 253, 218, 124, 
-    208,  64, 246,  70, 165, 163, 
-    135, 202,  56, 161,  91, 101, 
+    240,  12,  42, 104,   1,   0, 
+      0,   0, 109,   1, 145, 176, 
+    104,  29,  81,  79, 133, 153, 
+    216, 246, 251, 241, 152, 231, 
     201,   0,   0,   0,  47,  76, 
     105, 110, 107,  73, 110, 102, 
     111,   0,  47,  84,  77,  67, 
@@ -6067,8 +6067,8 @@ const BYTE CustomUIDX11PixelShader[] =
       0,   0, 165,   1,   0,   0, 
      56,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-    132,  25,   0,   0, 128,   0, 
-      0,   0,  79,  24,   0,   0, 
+    254,  25,   0,   0, 128,   0, 
+      0,   0, 201,  24,   0,   0, 
      36,  23,   0,   0, 108,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,  40,   0, 

+ 1616 - 1583
FactoryCraft/CustomUIDX11VertexShader.h

@@ -213,7 +213,13 @@ else
 endif 
 
 #line 98
-ult r0.w, v4.x, cb2[0].x
+mov r0.w, l(0)
+ult r0.w, r0.w, cb2[0].x
+ult r2.z, v4.x, cb2[0].x
+mov r2.w, l(1)
+ieq r2.w, r2.w, cb2[0].x
+or r2.z, r2.w, r2.z
+and r0.w, r0.w, r2.z
 if_nz r0.w
 
 #line 100
@@ -276,20 +282,20 @@ mov o5.w, r5.w
 mov o3.xyz, r0.xyzx
 mov o2.xy, r2.xyxx
 ret 
-// Approximately 102 instruction slots used
+// Approximately 108 instruction slots used
 #endif
 
 const BYTE CustomUIDX11VertexShader[] =
 {
-     68,  88,  66,  67, 189,  61, 
-    247, 237, 115,  27, 162, 251, 
-     80,  59, 124, 236, 160, 251, 
-     74, 253,   1,   0,   0,   0, 
-    124, 111,   0,   0,   6,   0, 
+     68,  88,  66,  67, 145,   8, 
+    223, 126,  88,  24, 138,  82, 
+     13, 138, 208,  88, 252, 176, 
+    128, 140,   1,   0,   0,   0, 
+     28, 112,   0,   0,   6,   0, 
       0,   0,  56,   0,   0,   0, 
      76,   4,   0,   0,   4,   5, 
       0,   0, 196,   5,   0,   0, 
-    216,  16,   0,   0, 116,  17, 
+    120,  17,   0,   0,  20,  18, 
       0,   0,  82,  68,  69,  70, 
      12,   4,   0,   0,   4,   0, 
       0,   0, 236,   0,   0,   0, 
@@ -527,9 +533,9 @@ const BYTE CustomUIDX11VertexShader[] =
      83,  73,  84,  73,  79,  78, 
       0,  84,  69,  88,  67,  79, 
      79,  82,  68,   0, 171, 171, 
-     83,  72,  69,  88,  12,  11, 
+     83,  72,  69,  88, 172,  11, 
       0,   0,  80,   0,   1,   0, 
-    195,   2,   0,   0, 106, 136, 
+    235,   2,   0,   0, 106, 136, 
       0,   1,  89,   8,   0,   4, 
      70, 142,  32,   0,   0,   0, 
       0,   0,   0,   2,   0,   0, 
@@ -824,116 +830,122 @@ const BYTE CustomUIDX11VertexShader[] =
       6, 112,  16,   0,   0,   0, 
       0,   0,  21,   0,   0,   1, 
      21,   0,   0,   1,  21,   0, 
-      0,   1,  79,   0,   0,   8, 
+      0,   1,  54,   0,   0,   5, 
     130,   0,  16,   0,   0,   0, 
-      0,   0,  10,  16,  16,   0, 
-      4,   0,   0,   0,  10, 128, 
-     32,   0,   2,   0,   0,   0, 
-      0,   0,   0,   0,  31,   0, 
-      4,   3,  58,   0,  16,   0, 
-      0,   0,   0,   0,  54,   0, 
-      0,   5, 130,   0,  16,   0, 
-      0,   0,   0,   0,   1,  64, 
-      0,   0,  24,   0,   0,   0, 
-     85,   0,   0,   7, 130,   0, 
+      0,   0,   1,  64,   0,   0, 
+      0,   0,   0,   0,  79,   0, 
+      0,   8, 130,   0,  16,   0, 
+      0,   0,   0,   0,  58,   0, 
      16,   0,   0,   0,   0,   0, 
-     10,   0,  16,   0,   6,   0, 
-      0,   0,  58,   0,  16,   0, 
-      0,   0,   0,   0,   1,   0, 
+     10, 128,  32,   0,   2,   0, 
+      0,   0,   0,   0,   0,   0, 
+     79,   0,   0,   8,  66,   0, 
+     16,   0,   2,   0,   0,   0, 
+     10,  16,  16,   0,   4,   0, 
+      0,   0,  10, 128,  32,   0, 
+      2,   0,   0,   0,   0,   0, 
+      0,   0,  54,   0,   0,   5, 
+    130,   0,  16,   0,   2,   0, 
+      0,   0,   1,  64,   0,   0, 
+      1,   0,   0,   0,  32,   0, 
+      0,   8, 130,   0,  16,   0, 
+      2,   0,   0,   0,  58,   0, 
+     16,   0,   2,   0,   0,   0, 
+     10, 128,  32,   0,   2,   0, 
+      0,   0,   0,   0,   0,   0, 
+     60,   0,   0,   7,  66,   0, 
+     16,   0,   2,   0,   0,   0, 
+     58,   0,  16,   0,   2,   0, 
+      0,   0,  42,   0,  16,   0, 
+      2,   0,   0,   0,   1,   0, 
       0,   7, 130,   0,  16,   0, 
       0,   0,   0,   0,  58,   0, 
      16,   0,   0,   0,   0,   0, 
-      1,  64,   0,   0, 255,   0, 
-      0,   0,  86,   0,   0,   5, 
+     42,   0,  16,   0,   2,   0, 
+      0,   0,  31,   0,   4,   3, 
+     58,   0,  16,   0,   0,   0, 
+      0,   0,  54,   0,   0,   5, 
     130,   0,  16,   0,   0,   0, 
-      0,   0,  58,   0,  16,   0, 
-      0,   0,   0,   0,  14,   0, 
+      0,   0,   1,  64,   0,   0, 
+     24,   0,   0,   0,  85,   0, 
       0,   7, 130,   0,  16,   0, 
-      0,   0,   0,   0,  58,   0, 
-     16,   0,   0,   0,   0,   0, 
-      1,  64,   0,   0,   0,   0, 
-    127,  67,  56,   0,   0,   8, 
-     18,   0,  16,   0,   1,   0, 
+      0,   0,   0,   0,  10,   0, 
+     16,   0,   6,   0,   0,   0, 
+     58,   0,  16,   0,   0,   0, 
+      0,   0,   1,   0,   0,   7, 
+    130,   0,  16,   0,   0,   0, 
       0,   0,  58,   0,  16,   0, 
-      0,   0,   0,   0,  26, 128, 
-     32,   0,   2,   0,   0,   0, 
-      0,   0,   0,   0,  54,   0, 
-      0,   5, 130,   0,  16,   0, 
       0,   0,   0,   0,   1,  64, 
-      0,   0,  16,   0,   0,   0, 
-     85,   0,   0,   7, 130,   0, 
-     16,   0,   0,   0,   0,   0, 
-     10,   0,  16,   0,   6,   0, 
-      0,   0,  58,   0,  16,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   7, 130,   0,  16,   0, 
-      0,   0,   0,   0,  58,   0, 
+      0,   0, 255,   0,   0,   0, 
+     86,   0,   0,   5, 130,   0, 
      16,   0,   0,   0,   0,   0, 
-      1,  64,   0,   0, 255,   0, 
-      0,   0,  86,   0,   0,   5, 
+     58,   0,  16,   0,   0,   0, 
+      0,   0,  14,   0,   0,   7, 
     130,   0,  16,   0,   0,   0, 
       0,   0,  58,   0,  16,   0, 
-      0,   0,   0,   0,  14,   0, 
+      0,   0,   0,   0,   1,  64, 
+      0,   0,   0,   0, 127,  67, 
+     56,   0,   0,   8,  18,   0, 
+     16,   0,   1,   0,   0,   0, 
+     58,   0,  16,   0,   0,   0, 
+      0,   0,  26, 128,  32,   0, 
+      2,   0,   0,   0,   0,   0, 
+      0,   0,  54,   0,   0,   5, 
+    130,   0,  16,   0,   0,   0, 
+      0,   0,   1,  64,   0,   0, 
+     16,   0,   0,   0,  85,   0, 
       0,   7, 130,   0,  16,   0, 
-      0,   0,   0,   0,  58,   0, 
-     16,   0,   0,   0,   0,   0, 
-      1,  64,   0,   0,   0,   0, 
-    127,  67,  56,   0,   0,   8, 
-     34,   0,  16,   0,   1,   0, 
+      0,   0,   0,   0,  10,   0, 
+     16,   0,   6,   0,   0,   0, 
+     58,   0,  16,   0,   0,   0, 
+      0,   0,   1,   0,   0,   7, 
+    130,   0,  16,   0,   0,   0, 
       0,   0,  58,   0,  16,   0, 
-      0,   0,   0,   0,  26, 128, 
-     32,   0,   2,   0,   0,   0, 
-      0,   0,   0,   0,  54,   0, 
-      0,   5, 130,   0,  16,   0, 
       0,   0,   0,   0,   1,  64, 
-      0,   0,   8,   0,   0,   0, 
-     85,   0,   0,   7, 130,   0, 
-     16,   0,   0,   0,   0,   0, 
-     10,   0,  16,   0,   6,   0, 
-      0,   0,  58,   0,  16,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   7, 130,   0,  16,   0, 
-      0,   0,   0,   0,  58,   0, 
+      0,   0, 255,   0,   0,   0, 
+     86,   0,   0,   5, 130,   0, 
      16,   0,   0,   0,   0,   0, 
-      1,  64,   0,   0, 255,   0, 
-      0,   0,  86,   0,   0,   5, 
+     58,   0,  16,   0,   0,   0, 
+      0,   0,  14,   0,   0,   7, 
     130,   0,  16,   0,   0,   0, 
       0,   0,  58,   0,  16,   0, 
-      0,   0,   0,   0,  14,   0, 
+      0,   0,   0,   0,   1,  64, 
+      0,   0,   0,   0, 127,  67, 
+     56,   0,   0,   8,  34,   0, 
+     16,   0,   1,   0,   0,   0, 
+     58,   0,  16,   0,   0,   0, 
+      0,   0,  26, 128,  32,   0, 
+      2,   0,   0,   0,   0,   0, 
+      0,   0,  54,   0,   0,   5, 
+    130,   0,  16,   0,   0,   0, 
+      0,   0,   1,  64,   0,   0, 
+      8,   0,   0,   0,  85,   0, 
       0,   7, 130,   0,  16,   0, 
-      0,   0,   0,   0,  58,   0, 
-     16,   0,   0,   0,   0,   0, 
-      1,  64,   0,   0,   0,   0, 
-    127,  67,  56,   0,   0,   8, 
-     66,   0,  16,   0,   1,   0, 
+      0,   0,   0,   0,  10,   0, 
+     16,   0,   6,   0,   0,   0, 
+     58,   0,  16,   0,   0,   0, 
+      0,   0,   1,   0,   0,   7, 
+    130,   0,  16,   0,   0,   0, 
       0,   0,  58,   0,  16,   0, 
-      0,   0,   0,   0,  26, 128, 
-     32,   0,   2,   0,   0,   0, 
-      0,   0,   0,   0,  54,   0, 
-      0,   5, 130,   0,  16,   0, 
       0,   0,   0,   0,   1,  64, 
-      0,   0,  24,   0,   0,   0, 
-     85,   0,   0,   7, 130,   0, 
-     16,   0,   0,   0,   0,   0, 
-     26,   0,  16,   0,   6,   0, 
-      0,   0,  58,   0,  16,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   7, 130,   0,  16,   0, 
-      0,   0,   0,   0,  58,   0, 
+      0,   0, 255,   0,   0,   0, 
+     86,   0,   0,   5, 130,   0, 
      16,   0,   0,   0,   0,   0, 
-      1,  64,   0,   0, 255,   0, 
-      0,   0,  86,   0,   0,   5, 
+     58,   0,  16,   0,   0,   0, 
+      0,   0,  14,   0,   0,   7, 
     130,   0,  16,   0,   0,   0, 
       0,   0,  58,   0,  16,   0, 
-      0,   0,   0,   0,  14,   0, 
-      0,   7,  18,   0,  16,   0, 
-      5,   0,   0,   0,  58,   0, 
-     16,   0,   0,   0,   0,   0, 
-      1,  64,   0,   0,   0,   0, 
-    127,  67,  54,   0,   0,   5, 
+      0,   0,   0,   0,   1,  64, 
+      0,   0,   0,   0, 127,  67, 
+     56,   0,   0,   8,  66,   0, 
+     16,   0,   1,   0,   0,   0, 
+     58,   0,  16,   0,   0,   0, 
+      0,   0,  26, 128,  32,   0, 
+      2,   0,   0,   0,   0,   0, 
+      0,   0,  54,   0,   0,   5, 
     130,   0,  16,   0,   0,   0, 
       0,   0,   1,  64,   0,   0, 
-     16,   0,   0,   0,  85,   0, 
+     24,   0,   0,   0,  85,   0, 
       0,   7, 130,   0,  16,   0, 
       0,   0,   0,   0,  26,   0, 
      16,   0,   6,   0,   0,   0, 
@@ -947,13 +959,13 @@ const BYTE CustomUIDX11VertexShader[] =
      16,   0,   0,   0,   0,   0, 
      58,   0,  16,   0,   0,   0, 
       0,   0,  14,   0,   0,   7, 
-     34,   0,  16,   0,   5,   0, 
+     18,   0,  16,   0,   5,   0, 
       0,   0,  58,   0,  16,   0, 
       0,   0,   0,   0,   1,  64, 
       0,   0,   0,   0, 127,  67, 
      54,   0,   0,   5, 130,   0, 
      16,   0,   0,   0,   0,   0, 
-      1,  64,   0,   0,   8,   0, 
+      1,  64,   0,   0,  16,   0, 
       0,   0,  85,   0,   0,   7, 
     130,   0,  16,   0,   0,   0, 
       0,   0,  26,   0,  16,   0, 
@@ -967,55 +979,76 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   5, 130,   0,  16,   0, 
       0,   0,   0,   0,  58,   0, 
      16,   0,   0,   0,   0,   0, 
-     14,   0,   0,   7,  66,   0, 
+     14,   0,   0,   7,  34,   0, 
      16,   0,   5,   0,   0,   0, 
      58,   0,  16,   0,   0,   0, 
       0,   0,   1,  64,   0,   0, 
       0,   0, 127,  67,  54,   0, 
       0,   5, 130,   0,  16,   0, 
-      1,   0,   0,   0,   1,  64, 
-      0,   0,   0,   0, 128,  63, 
-     21,   0,   0,   1,  54,   0, 
+      0,   0,   0,   0,   1,  64, 
+      0,   0,   8,   0,   0,   0, 
+     85,   0,   0,   7, 130,   0, 
+     16,   0,   0,   0,   0,   0, 
+     26,   0,  16,   0,   6,   0, 
+      0,   0,  58,   0,  16,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   7, 130,   0,  16,   0, 
+      0,   0,   0,   0,  58,   0, 
+     16,   0,   0,   0,   0,   0, 
+      1,  64,   0,   0, 255,   0, 
+      0,   0,  86,   0,   0,   5, 
+    130,   0,  16,   0,   0,   0, 
+      0,   0,  58,   0,  16,   0, 
+      0,   0,   0,   0,  14,   0, 
+      0,   7,  66,   0,  16,   0, 
+      5,   0,   0,   0,  58,   0, 
+     16,   0,   0,   0,   0,   0, 
+      1,  64,   0,   0,   0,   0, 
+    127,  67,  54,   0,   0,   5, 
+    130,   0,  16,   0,   1,   0, 
+      0,   0,   1,  64,   0,   0, 
+      0,   0, 128,  63,  21,   0, 
+      0,   1,  54,   0,   0,   5, 
+    242,  32,  16,   0,   0,   0, 
+      0,   0,  70,  14,  16,   0, 
+      3,   0,   0,   0,  54,   0, 
       0,   5, 242,  32,  16,   0, 
-      0,   0,   0,   0,  70,  14, 
-     16,   0,   3,   0,   0,   0, 
+      1,   0,   0,   0,  70,  14, 
+     16,   0,   4,   0,   0,   0, 
      54,   0,   0,   5, 242,  32, 
-     16,   0,   1,   0,   0,   0, 
-     70,  14,  16,   0,   4,   0, 
+     16,   0,   4,   0,   0,   0, 
+     70,  14,  16,   0,   1,   0, 
       0,   0,  54,   0,   0,   5, 
-    242,  32,  16,   0,   4,   0, 
-      0,   0,  70,  14,  16,   0, 
-      1,   0,   0,   0,  54,   0, 
-      0,   5, 114,  32,  16,   0, 
-      5,   0,   0,   0,  70,   2, 
-     16,   0,   5,   0,   0,   0, 
-     54,   0,   0,   5, 130,  32, 
+    114,  32,  16,   0,   5,   0, 
+      0,   0,  70,   2,  16,   0, 
+      5,   0,   0,   0,  54,   0, 
+      0,   5, 130,  32,  16,   0, 
+      5,   0,   0,   0,  58,   0, 
      16,   0,   5,   0,   0,   0, 
-     58,   0,  16,   0,   5,   0, 
+     54,   0,   0,   5, 114,  32, 
+     16,   0,   3,   0,   0,   0, 
+     70,   2,  16,   0,   0,   0, 
       0,   0,  54,   0,   0,   5, 
-    114,  32,  16,   0,   3,   0, 
-      0,   0,  70,   2,  16,   0, 
-      0,   0,   0,   0,  54,   0, 
-      0,   5,  50,  32,  16,   0, 
-      2,   0,   0,   0,  70,   0, 
-     16,   0,   2,   0,   0,   0, 
-     62,   0,   0,   1,  83,  84, 
-     65,  84, 148,   0,   0,   0, 
-    102,   0,   0,   0,   7,   0, 
-      0,   0,   0,   0,   0,   0, 
-     11,   0,   0,   0,  27,   0, 
+     50,  32,  16,   0,   2,   0, 
+      0,   0,  70,   0,  16,   0, 
+      2,   0,   0,   0,  62,   0, 
+      0,   1,  83,  84,  65,  84, 
+    148,   0,   0,   0, 108,   0, 
+      0,   0,   7,   0,   0,   0, 
+      0,   0,   0,   0,  11,   0, 
+      0,   0,  27,   0,   0,   0, 
+      4,   0,   0,   0,  22,   0, 
       0,   0,   3,   0,   0,   0, 
-     19,   0,   0,   0,   3,   0, 
-      0,   0,   4,   0,   0,   0, 
+      4,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   6,   0, 
       0,   0,   0,   0,   0,   0, 
-      6,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,  30,   0, 
+      0,   0,  32,   0,   0,   0, 
+      0,   0,   0,   0,   6,   0, 
       0,   0,   0,   0,   0,   0, 
-      6,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -1025,17 +1058,17 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,  83,  80, 
-     68,  66,   0,  94,   0,   0, 
-     77, 105,  99, 114, 111, 115, 
-    111, 102, 116,  32,  67,  47, 
-     67,  43,  43,  32,  77,  83, 
-     70,  32,  55,  46,  48,  48, 
-     13,  10,  26,  68,  83,   0, 
-      0,   0,   0,   2,   0,   0, 
-      1,   0,   0,   0,  47,   0, 
-      0,   0, 220,   0,   0,   0, 
-      0,   0,   0,   0,  43,   0, 
+      0,   0,  83,  80,  68,  66, 
+      0,  94,   0,   0,  77, 105, 
+     99, 114, 111, 115, 111, 102, 
+    116,  32,  67,  47,  67,  43, 
+     43,  32,  77,  83,  70,  32, 
+     55,  46,  48,  48,  13,  10, 
+     26,  68,  83,   0,   0,   0, 
+      0,   2,   0,   0,   1,   0, 
+      0,   0,  47,   0,   0,   0, 
+    224,   0,   0,   0,   0,   0, 
+      0,   0,  44,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -1112,8 +1145,7 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-      0,   0, 224,   1,   0,   0, 
-      0, 240, 255, 255, 255, 255, 
+    224,   1,   0,   0,   0, 224, 
     255, 255, 255, 255, 255, 255, 
     255, 255, 255, 255, 255, 255, 
     255, 255, 255, 255, 255, 255, 
@@ -1197,8 +1229,8 @@ const BYTE CustomUIDX11VertexShader[] =
     255, 255, 255, 255, 255, 255, 
     255, 255, 255, 255, 255, 255, 
     255, 255, 255, 255, 255, 255, 
-    255, 255, 255, 255,  24, 254, 
     255, 255, 255, 255, 255, 255, 
+    255, 255,  24, 254, 255, 255, 
     255, 255, 255, 255, 255, 255, 
     255, 255, 255, 255, 255, 255, 
     255, 255, 255, 255, 255, 255, 
@@ -1283,109 +1315,109 @@ const BYTE CustomUIDX11VertexShader[] =
     255, 255, 255, 255, 255, 255, 
     255, 255, 255, 255, 255, 255, 
     255, 255, 255, 255, 255, 255, 
-     10,  99,  98, 117, 102, 102, 
-    101, 114,  32,  76, 105, 103, 
-    104, 116,  67, 111, 110, 116, 
-    114, 111, 108, 108, 101, 114, 
-     32,  58,  32, 114, 101, 103, 
-    105, 115, 116, 101, 114,  40, 
-     98,  50,  41,  13,  10, 123, 
-     13,  10,  32,  32,  32,  32, 
-    117, 105, 110, 116,  32, 108, 
-    105, 103, 104, 116,  76, 101, 
-    110, 103, 116, 104,  59,  13, 
-     10,  32,  32,  32,  32, 102, 
-    108, 111,  97, 116,  32, 100, 
-     97, 121,  76, 105, 103, 104, 
-    116,  70,  97,  99, 116, 111, 
-    114,  59,  13,  10, 125,  13, 
-     10,  13,  10,  47,  47,  32, 
-    115, 116, 111, 114, 101, 115, 
-     32, 116, 104, 101,  32, 108, 
-    105, 103, 104, 116,  32, 102, 
-    111, 114,  32, 116, 119, 111, 
-     32, 118, 101, 114, 116, 105, 
-     99, 105, 101, 115,  13,  10, 
-    115, 116, 114, 117,  99, 116, 
-     32,  86, 101, 114, 116, 101, 
-    120,  76, 105, 103, 104, 116, 
-     13,  10, 123,  13,  10,  32, 
-     32,  32,  32, 117, 105, 110, 
-    116,  32, 100,  97, 121,  76, 
-    105, 103, 104, 116,  49,  59, 
-     13,  10,  32,  32,  32,  32, 
-    117, 105, 110, 116,  32, 100, 
-    121, 110,  97, 109, 105,  99, 
-     76, 105, 103, 104, 116,  49, 
-     59,  13,  10,  32,  32,  32, 
+    255, 255, 255, 255,  10,  99, 
+     98, 117, 102, 102, 101, 114, 
+     32,  76, 105, 103, 104, 116, 
+     67, 111, 110, 116, 114, 111, 
+    108, 108, 101, 114,  32,  58, 
+     32, 114, 101, 103, 105, 115, 
+    116, 101, 114,  40,  98,  50, 
+     41,  13,  10, 123,  13,  10, 
+     32,  32,  32,  32, 117, 105, 
+    110, 116,  32, 108, 105, 103, 
+    104, 116,  76, 101, 110, 103, 
+    116, 104,  59,  13,  10,  32, 
+     32,  32,  32, 102, 108, 111, 
+     97, 116,  32, 100,  97, 121, 
+     76, 105, 103, 104, 116,  70, 
+     97,  99, 116, 111, 114,  59, 
+     13,  10, 125,  13,  10,  13, 
+     10,  47,  47,  32, 115, 116, 
+    111, 114, 101, 115,  32, 116, 
+    104, 101,  32, 108, 105, 103, 
+    104, 116,  32, 102, 111, 114, 
+     32, 116, 119, 111,  32, 118, 
+    101, 114, 116, 105,  99, 105, 
+    101, 115,  13,  10, 115, 116, 
+    114, 117,  99, 116,  32,  86, 
+    101, 114, 116, 101, 120,  76, 
+    105, 103, 104, 116,  13,  10, 
+    123,  13,  10,  32,  32,  32, 
      32, 117, 105, 110, 116,  32, 
     100,  97, 121,  76, 105, 103, 
-    104, 116,  50,  59,  13,  10, 
+    104, 116,  49,  59,  13,  10, 
      32,  32,  32,  32, 117, 105, 
     110, 116,  32, 100, 121, 110, 
      97, 109, 105,  99,  76, 105, 
-    103, 104, 116,  50,  59,  13, 
-     10, 125,  59,  13,  10,  13, 
-     10,  83, 116, 114, 117,  99, 
-    116, 117, 114, 101, 100,  66, 
-    117, 102, 102, 101, 114,  60, 
-     86, 101, 114, 116, 101, 120, 
-     76, 105, 103, 104, 116,  62, 
-     32, 108, 105, 103, 104, 116, 
-     66, 117, 102, 102, 101, 114, 
-     32,  58,  32, 114, 101, 103, 
-    105, 115, 116, 101, 114,  40, 
-    116,  48,  41,  59,  13,  10, 
-     13,  10,  47,  47,  47,  47, 
-     47,  47,  47,  47,  47,  47, 
-     47,  47,  47,  47,  13,  10, 
-     47,  47,  32,  84,  89,  80, 
-     69,  68,  69,  70,  83,  32, 
-     47,  47,  13,  10,  47,  47, 
-     47,  47,  47,  47,  47,  47, 
-     47,  47,  47,  47,  47,  47, 
-     13,  10, 115, 116, 114, 117, 
-     99, 116,  32,  86, 101, 114, 
-    116, 101, 120,  73, 110, 112, 
-    117, 116,  84, 121, 112, 101, 
-     13,  10, 123,  13,  10,  32, 
-     32,  32,  32, 102, 108, 111, 
-     97, 116,  52,  32, 112, 111, 
-    115, 105, 116, 105, 111, 110, 
-     32,  58,  32,  80,  79,  83, 
-     73,  84,  73,  79,  78,  59, 
-     13,  10,  32,  32,  32,  32, 
-    102, 108, 111,  97, 116,  50, 
-     32, 116, 101, 120,  32,  58, 
-     32,  84,  69,  88,  67,  79, 
-     79,  82,  68,  48,  59,  13, 
-     10,  32,  32,  32,  32, 102, 
-    108, 111,  97, 116,  51,  32, 
-    110, 111, 114, 109,  97, 108, 
-     32,  58,  32,  78,  79,  82, 
-     77,  65,  76,  59,  13,  10, 
-     32,  32,  32,  32, 117, 105, 
-    110, 116,  32, 107, 110, 111, 
-     99, 104, 101, 110,  32,  58, 
-     32,  75,  78,  79,  67,  72, 
-     69,  78,  14, 219,   3,   0, 
-    197,  74,   0,   0, 165, 207, 
-      1,   0,  81, 207,   1,   0, 
-    146, 183,   2,   0,  28,  19, 
-      2,   0, 139,  69,   0,   0, 
-     43, 236,   3,   0, 217,  42, 
-      2,   0,  38, 107,   0,   0, 
-    103, 159,   1,   0,  73,  20, 
-      1,   0, 208, 163,   2,   0, 
-     65, 185,   2,   0, 153, 189, 
-      3,   0, 214,   6,   3,   0, 
-    125, 218,   1,   0, 146, 230, 
-      3,   0, 202, 179,   0,   0, 
-    231,  86,   0,   0,  37, 255, 
-      1,   0, 160,  34,   1,   0, 
-    117,  14,   0,   0,  80, 185, 
-      1,   0,   0,  16,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
+    103, 104, 116,  49,  59,  13, 
+     10,  32,  32,  32,  32, 117, 
+    105, 110, 116,  32, 100,  97, 
+    121,  76, 105, 103, 104, 116, 
+     50,  59,  13,  10,  32,  32, 
+     32,  32, 117, 105, 110, 116, 
+     32, 100, 121, 110,  97, 109, 
+    105,  99,  76, 105, 103, 104, 
+    116,  50,  59,  13,  10, 125, 
+     59,  13,  10,  13,  10,  83, 
+    116, 114, 117,  99, 116, 117, 
+    114, 101, 100,  66, 117, 102, 
+    102, 101, 114,  60,  86, 101, 
+    114, 116, 101, 120,  76, 105, 
+    103, 104, 116,  62,  32, 108, 
+    105, 103, 104, 116,  66, 117, 
+    102, 102, 101, 114,  32,  58, 
+     32, 114, 101, 103, 105, 115, 
+    116, 101, 114,  40, 116,  48, 
+     41,  59,  13,  10,  13,  10, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  13,  10,  47,  47, 
+     32,  84,  89,  80,  69,  68, 
+     69,  70,  83,  32,  47,  47, 
+     13,  10,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  13,  10, 
+    115, 116, 114, 117,  99, 116, 
+     32,  86, 101, 114, 116, 101, 
+    120,  73, 110, 112, 117, 116, 
+     84, 121, 112, 101,  13,  10, 
+    123,  13,  10,  32,  32,  32, 
+     32, 102, 108, 111,  97, 116, 
+     52,  32, 112, 111, 115, 105, 
+    116, 105, 111, 110,  32,  58, 
+     32,  80,  79,  83,  73,  84, 
+     73,  79,  78,  59,  13,  10, 
+     32,  32,  32,  32, 102, 108, 
+    111,  97, 116,  50,  32, 116, 
+    101, 120,  32,  58,  32,  84, 
+     69,  88,  67,  79,  79,  82, 
+     68,  48,  59,  13,  10,  32, 
+     32,  32,  32, 102, 108, 111, 
+     97, 116,  51,  32, 110, 111, 
+    114, 109,  97, 108,  32,  58, 
+     32,  78,  79,  82,  77,  65, 
+     76,  59,  13,  10,  32,  32, 
+     32,  32, 117, 105, 110, 116, 
+     32, 107, 110, 111,  99, 104, 
+    101, 110,  32,  58,  32,  75, 
+     78,  79,  67,  72,  69,  78, 
+     14, 219,   3,   0, 197,  74, 
+      0,   0, 165, 207,   1,   0, 
+     81, 207,   1,   0, 146, 183, 
+      2,   0,  28,  19,   2,   0, 
+    139,  69,   0,   0,  43, 236, 
+      3,   0, 217,  42,   2,   0, 
+     38, 107,   0,   0, 103, 159, 
+      1,   0,  73,  20,   1,   0, 
+    208, 163,   2,   0,  65, 185, 
+      2,   0, 153, 189,   3,   0, 
+    214,   6,   3,   0, 125, 218, 
+      1,   0, 146, 230,   3,   0, 
+    202, 179,   0,   0, 231,  86, 
+      0,   0,  37, 255,   1,   0, 
+    160,  34,   1,   0, 117,  14, 
+      0,   0,  80, 185,   1,   0, 
+      0,  16,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -1453,18 +1485,18 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 148,  46, 
-     49,   1, 237,  10,   6, 104, 
-      1,   0,   0,   0, 252, 177, 
-    215, 149, 125,  23, 120,  68, 
-    141,  15,  69,  68, 121,  34, 
-    134, 151,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   1,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
+      0,   0, 148,  46,  49,   1, 
+    143,   8,  42, 104,   1,   0, 
+      0,   0, 249, 195, 199, 193, 
+    123,  58, 224,  71, 131,  29, 
+     68, 125, 127, 184,  97,  22, 
       0,   0,   0,   0,   0,   0, 
-    220,  81,  51,   1,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 220,  81, 
+     51,   1,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -1539,10 +1571,11 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-    255, 255, 255, 255, 119,   9, 
-     49,   1,   0,   0,   0,   0, 
-    255, 255,   0,   0, 255, 255, 
+      0,   0,   0,   0, 255, 255, 
+    255, 255, 119,   9,  49,   1, 
+      0,   0,   0,   0, 255, 255, 
       0,   0, 255, 255,   0,   0, 
+    255, 255,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -1624,14 +1657,13 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-      0,   0,   6,   0,   0,   0, 
-     32,   0,   0,   0,  60,   0, 
-      0,   0,   0,   0,   0,   0, 
-     64,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   0,   0,   5,   0, 
-      0,   0,   6,   0,   0,   0, 
+      6,   0,   0,   0,  32,   0, 
+      0,   0,  60,   0,   0,   0, 
+      0,   0,   0,   0,  64,   0, 
       0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   5,   0,   0,   0, 
+      6,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -1709,8 +1741,8 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   7,   0, 
       0,   0,   0,   0,   0,   0, 
+      0,   0,   7,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -1795,176 +1827,176 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  47,  47, 
      47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  13, 
+     10,  47,  47,  32,  71,  76, 
+     79,  66,  65,  76,  83,  32, 
+     47,  47,  13,  10,  47,  47, 
      47,  47,  47,  47,  47,  47, 
-     47,  13,  10,  47,  47,  32, 
-     71,  76,  79,  66,  65,  76, 
-     83,  32,  47,  47,  13,  10, 
-     47,  47,  47,  47,  47,  47, 
-     47,  47,  47,  47,  47,  47, 
-     47,  13,  10,  99,  98, 117, 
-    102, 102, 101, 114,  32,  77, 
-     97, 116, 114, 105, 120,  66, 
-    117, 102, 102, 101, 114,  32, 
-     58,  32, 114, 101, 103, 105, 
-    115, 116, 101, 114,  40,  98, 
-     48,  41,  13,  10, 123,  13, 
-     10,  32,  32,  32,  32, 109, 
-     97, 116, 114, 105, 120,  32, 
-    107, 110, 111,  99, 104, 101, 
-    110,  77,  97, 116, 114, 105, 
-    120,  91,  49,  50,  56,  93, 
-     59,  13,  10, 125,  59,  13, 
-     10,  13,  10,  47,  47,  32, 
-     84, 104, 101,  32, 112, 114, 
-    111, 106, 101,  99, 116, 105, 
-    111, 110,  32,  97, 110, 100, 
-     32, 118, 105, 101, 119,  32, 
-    109,  97, 116, 114, 105, 120, 
-     13,  10,  99,  98, 117, 102, 
-    102, 101, 114,  32,  75,  97, 
-    109, 101, 114,  97,  32,  58, 
-     32, 114, 101, 103, 105, 115, 
-    116, 101, 114,  40,  98,  49, 
-     41,  13,  10, 123,  13,  10, 
-     32,  32,  32,  32, 109,  97, 
-    116, 114, 105, 120,  32, 118, 
-    105, 101, 119,  59,  13,  10, 
-     32,  32,  32,  32, 109,  97, 
-    116, 114, 105, 120,  32, 112, 
-    114, 111, 106, 101,  99, 116, 
-    105, 111, 110,  59,  13,  10, 
-    125,  13,  10,  13,  10,  99, 
-     98, 117, 102, 102, 101, 114, 
-     32,  76, 105, 103, 104, 116, 
-     67, 111, 110, 116, 114, 111, 
-    108, 108, 101, 114,  32,  58, 
-     32, 114, 101, 103, 105, 115, 
-    116, 101, 114,  40,  98,  50, 
-     41,  13,  10, 123,  13,  10, 
-     32,  32,  32,  32, 117, 105, 
-    110, 116,  32, 108, 105, 103, 
-    104, 116,  76, 101, 110, 103, 
-    116, 104,  59,  13,  10,  32, 
-     32,  32,  32, 102, 108, 111, 
-     97, 116,  32, 100,  97, 121, 
-     76, 105, 103, 104, 116,  70, 
-     97,  99, 116, 111, 114,  59, 
-     13,  10, 125,  13,  10,  13, 
-     10,  47,  47,  32, 115, 116, 
-    111, 114, 101, 115,  32, 116, 
-    104, 101,  32, 108, 105, 103, 
-    104, 116,  32, 102, 111, 114, 
-     32, 116, 119, 111,  32, 118, 
-    101, 114, 116, 105,  99, 105, 
-    101, 115,  13,  10, 115, 116, 
-    114, 117,  99, 116,  32,  86, 
-    101, 114, 116, 101, 120,  76, 
-    105, 103, 104, 116,  13,  10, 
-    123,  13,  10,  32,  32,  32, 
-     32, 117, 105, 110, 116,  32, 
-    100,  97, 121,  76, 105, 103, 
-    104, 116,  49,  59,  13,  10, 
-     32,  32,  32,  32, 117, 105, 
-    110, 116,  32, 100, 121, 110, 
-     97, 109, 105,  99,  76, 105, 
-    103, 104, 116,  49,  59,  13, 
+     47,  47,  47,  47,  47,  13, 
+     10,  99,  98, 117, 102, 102, 
+    101, 114,  32,  77,  97, 116, 
+    114, 105, 120,  66, 117, 102, 
+    102, 101, 114,  32,  58,  32, 
+    114, 101, 103, 105, 115, 116, 
+    101, 114,  40,  98,  48,  41, 
+     13,  10, 123,  13,  10,  32, 
+     32,  32,  32, 109,  97, 116, 
+    114, 105, 120,  32, 107, 110, 
+    111,  99, 104, 101, 110,  77, 
+     97, 116, 114, 105, 120,  91, 
+     49,  50,  56,  93,  59,  13, 
+     10, 125,  59,  13,  10,  13, 
+     10,  47,  47,  32,  84, 104, 
+    101,  32, 112, 114, 111, 106, 
+    101,  99, 116, 105, 111, 110, 
+     32,  97, 110, 100,  32, 118, 
+    105, 101, 119,  32, 109,  97, 
+    116, 114, 105, 120,  13,  10, 
+     99,  98, 117, 102, 102, 101, 
+    114,  32,  75,  97, 109, 101, 
+    114,  97,  32,  58,  32, 114, 
+    101, 103, 105, 115, 116, 101, 
+    114,  40,  98,  49,  41,  13, 
+     10, 123,  13,  10,  32,  32, 
+     32,  32, 109,  97, 116, 114, 
+    105, 120,  32, 118, 105, 101, 
+    119,  59,  13,  10,  32,  32, 
+     32,  32, 109,  97, 116, 114, 
+    105, 120,  32, 112, 114, 111, 
+    106, 101,  99, 116, 105, 111, 
+    110,  59,  13,  10, 125,  13, 
+     10,  13,  10,  99,  98, 117, 
+    102, 102, 101, 114,  32,  76, 
+    105, 103, 104, 116,  67, 111, 
+    110, 116, 114, 111, 108, 108, 
+    101, 114,  32,  58,  32, 114, 
+    101, 103, 105, 115, 116, 101, 
+    114,  40,  98,  50,  41,  13, 
+     10, 123,  13,  10,  32,  32, 
+     32,  32, 117, 105, 110, 116, 
+     32, 108, 105, 103, 104, 116, 
+     76, 101, 110, 103, 116, 104, 
+     59,  13,  10,  32,  32,  32, 
+     32, 102, 108, 111,  97, 116, 
+     32, 100,  97, 121,  76, 105, 
+    103, 104, 116,  70,  97,  99, 
+    116, 111, 114,  59,  13,  10, 
+    125,  13,  10,  13,  10,  47, 
+     47,  32, 115, 116, 111, 114, 
+    101, 115,  32, 116, 104, 101, 
+     32, 108, 105, 103, 104, 116, 
+     32, 102, 111, 114,  32, 116, 
+    119, 111,  32, 118, 101, 114, 
+    116, 105,  99, 105, 101, 115, 
+     13,  10, 115, 116, 114, 117, 
+     99, 116,  32,  86, 101, 114, 
+    116, 101, 120,  76, 105, 103, 
+    104, 116,  13,  10, 123,  13, 
      10,  32,  32,  32,  32, 117, 
     105, 110, 116,  32, 100,  97, 
     121,  76, 105, 103, 104, 116, 
-     50,  59,  13,  10,  32,  32, 
+     49,  59,  13,  10,  32,  32, 
      32,  32, 117, 105, 110, 116, 
      32, 100, 121, 110,  97, 109, 
     105,  99,  76, 105, 103, 104, 
-    116,  50,  59,  13,  10, 125, 
-     59,  13,  10,  13,  10,  83, 
-    116, 114, 117,  99, 116, 117, 
-    114, 101, 100,  66, 117, 102, 
-    102, 101, 114,  60,  86, 101, 
-    114, 116, 101, 120,  76, 105, 
-    103, 104, 116,  62,  32, 108, 
-    105, 103, 104, 116,  66, 117, 
-    102, 102, 101, 114,  32,  58, 
-     32, 114, 101, 103, 105, 115, 
-    116, 101, 114,  40, 116,  48, 
-     41,  59,  13,  10,  13,  10, 
+    116,  49,  59,  13,  10,  32, 
+     32,  32,  32, 117, 105, 110, 
+    116,  32, 100,  97, 121,  76, 
+    105, 103, 104, 116,  50,  59, 
+     13,  10,  32,  32,  32,  32, 
+    117, 105, 110, 116,  32, 100, 
+    121, 110,  97, 109, 105,  99, 
+     76, 105, 103, 104, 116,  50, 
+     59,  13,  10, 125,  59,  13, 
+     10,  13,  10,  83, 116, 114, 
+    117,  99, 116, 117, 114, 101, 
+    100,  66, 117, 102, 102, 101, 
+    114,  60,  86, 101, 114, 116, 
+    101, 120,  76, 105, 103, 104, 
+    116,  62,  32, 108, 105, 103, 
+    104, 116,  66, 117, 102, 102, 
+    101, 114,  32,  58,  32, 114, 
+    101, 103, 105, 115, 116, 101, 
+    114,  40, 116,  48,  41,  59, 
+     13,  10,  13,  10,  47,  47, 
      47,  47,  47,  47,  47,  47, 
      47,  47,  47,  47,  47,  47, 
-     47,  47,  13,  10,  47,  47, 
-     32,  84,  89,  80,  69,  68, 
-     69,  70,  83,  32,  47,  47, 
-     13,  10,  47,  47,  47,  47, 
+     13,  10,  47,  47,  32,  84, 
+     89,  80,  69,  68,  69,  70, 
+     83,  32,  47,  47,  13,  10, 
      47,  47,  47,  47,  47,  47, 
-     47,  47,  47,  47,  13,  10, 
-    115, 116, 114, 117,  99, 116, 
-     32,  86, 101, 114, 116, 101, 
-    120,  73, 110, 112, 117, 116, 
-     84, 121, 112, 101,  13,  10, 
-    123,  13,  10,  32,  32,  32, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  13,  10, 115, 116, 
+    114, 117,  99, 116,  32,  86, 
+    101, 114, 116, 101, 120,  73, 
+    110, 112, 117, 116,  84, 121, 
+    112, 101,  13,  10, 123,  13, 
+     10,  32,  32,  32,  32, 102, 
+    108, 111,  97, 116,  52,  32, 
+    112, 111, 115, 105, 116, 105, 
+    111, 110,  32,  58,  32,  80, 
+     79,  83,  73,  84,  73,  79, 
+     78,  59,  13,  10,  32,  32, 
+     32,  32, 102, 108, 111,  97, 
+    116,  50,  32, 116, 101, 120, 
+     32,  58,  32,  84,  69,  88, 
+     67,  79,  79,  82,  68,  48, 
+     59,  13,  10,  32,  32,  32, 
      32, 102, 108, 111,  97, 116, 
-     52,  32, 112, 111, 115, 105, 
-    116, 105, 111, 110,  32,  58, 
-     32,  80,  79,  83,  73,  84, 
-     73,  79,  78,  59,  13,  10, 
-     32,  32,  32,  32, 102, 108, 
-    111,  97, 116,  50,  32, 116, 
-    101, 120,  32,  58,  32,  84, 
-     69,  88,  67,  79,  79,  82, 
+     51,  32, 110, 111, 114, 109, 
+     97, 108,  32,  58,  32,  78, 
+     79,  82,  77,  65,  76,  59, 
+     13,  10,  32,  32,  32,  32, 
+    117, 105, 110, 116,  32, 107, 
+    110, 111,  99, 104, 101, 110, 
+     32,  58,  32,  75,  78,  79, 
+     67,  72,  69,  78,  95,  73, 
      68,  48,  59,  13,  10,  32, 
-     32,  32,  32, 102, 108, 111, 
-     97, 116,  51,  32, 110, 111, 
-    114, 109,  97, 108,  32,  58, 
-     32,  78,  79,  82,  77,  65, 
-     76,  59,  13,  10,  32,  32, 
-     32,  32, 117, 105, 110, 116, 
-     32, 107, 110, 111,  99, 104, 
-    101, 110,  32,  58,  32,  75, 
-     78,  79,  67,  72,  69,  78, 
-     95,  73,  68,  48,  59,  13, 
-     10,  32,  32,  32,  32, 117, 
-    105, 110, 116,  32, 105, 100, 
-     32,  58,  32,  86,  69,  82, 
-     84,  69,  88,  95,  73,  68, 
-     48,  59,  13,  10, 125,  59, 
-     13,  10,  13,  10, 115, 116, 
-    114, 117,  99, 116,  32,  80, 
-    105, 120, 101, 108,  73, 110, 
-    112, 117, 116,  84, 121, 112, 
-    101,  13,  10, 123,  13,  10, 
+     32,  32,  32, 117, 105, 110, 
+    116,  32, 105, 100,  32,  58, 
+     32,  86,  69,  82,  84,  69, 
+     88,  95,  73,  68,  48,  59, 
+     13,  10, 125,  59,  13,  10, 
+     13,  10, 115, 116, 114, 117, 
+     99, 116,  32,  80, 105, 120, 
+    101, 108,  73, 110, 112, 117, 
+    116,  84, 121, 112, 101,  13, 
+     10, 123,  13,  10,  32,  32, 
+     32,  32, 102, 108, 111,  97, 
+    116,  52,  32, 119, 111, 114, 
+    108, 100,  80, 111, 115,  32, 
+     58,  32,  80,  79,  83,  73, 
+     84,  73,  79,  78,  59,  13, 
+     10,  32,  32,  32,  32, 102, 
+    108, 111,  97, 116,  52,  32, 
+    112, 111, 115, 105, 116, 105, 
+    111, 110,  32,  58,  32,  83, 
+     86,  95,  80,  79,  83,  73, 
+     84,  73,  79,  78,  59,  13, 
+     10,  32,  32,  32,  32, 102, 
+    108, 111,  97, 116,  50,  32, 
+    116, 101, 120,  32,  58,  32, 
+     84,  69,  88,  67,  79,  79, 
+     82,  68,  48,  59,  13,  10, 
      32,  32,  32,  32, 102, 108, 
-    111,  97, 116,  52,  32, 119, 
-    111, 114, 108, 100,  80, 111, 
-    115,  32,  58,  32,  80,  79, 
-     83,  73,  84,  73,  79,  78, 
-     59,  13,  10,  32,  32,  32, 
-     32, 102, 108, 111,  97, 116, 
-     52,  32, 112, 111, 115, 105, 
-    116, 105, 111, 110,  32,  58, 
-     32,  83,  86,  95,  80,  79, 
-     83,  73,  84,  73,  79,  78, 
-     59,  13,  10,  32,  32,  32, 
-     32, 102, 108, 111,  97, 116, 
-     50,  32, 116, 101, 120,  32, 
+    111,  97, 116,  51,  32, 110, 
+    111, 114, 109,  97, 108,  32, 
      58,  32,  84,  69,  88,  67, 
-     79,  79,  82,  68,  48,  59, 
+     79,  79,  82,  68,  49,  59, 
      13,  10,  32,  32,  32,  32, 
-    102, 108, 111,  97, 116,  51, 
-     32, 110, 111, 114, 109,  97, 
-    108,  32,  58,  32,  84,  69, 
+    102, 108, 111,  97, 116,  52, 
+     32, 108, 105, 103, 104, 116, 
+     49,  32,  58,  32,  84,  69, 
      88,  67,  79,  79,  82,  68, 
-     49,  59,  13,  10,  32,  32, 
+     50,  59,  13,  10,  32,  32, 
      32,  32, 102, 108, 111,  97, 
     116,  52,  32, 108, 105, 103, 
-    104, 116,  49,  32,  58,  32, 
+    104, 116,  50,  32,  58,  32, 
      84,  69,  88,  67,  79,  79, 
-     82,  68,  50,  59,  13,  10, 
-     32,  32,  32,  32, 102, 108, 
-    111,  97, 116,  52,  32, 108, 
-    105, 103, 104, 116,  50,  32, 
-     58,  32,  84,  69,  88,  67, 
-     79,  79,  82,  68,  51,  59, 
-     13,  10, 125,  59,  13,  10, 
-     13,  10,  47,  47,  47,  47, 
+     82,  68,  51,  59,  13,  10, 
+    125,  59,  13,  10,  13,  10, 
      47,  47,  47,  47,  47,  47, 
      47,  47,  47,  47,  47,  47, 
      47,  47,  47,  47,  47,  47, 
@@ -1977,11 +2009,11 @@ const BYTE CustomUIDX11VertexShader[] =
      47,  47,  47,  47,  47,  47, 
      47,  47,  47,  47,  47,  47, 
      47,  47,  47,  47,  47,  47, 
-     47,  47,  47,  47,  13,  10, 
-     47,  47,  32,  86, 101, 114, 
-    116, 101, 120,  32,  83, 104, 
-     97, 100, 101, 114,  13,  10, 
      47,  47,  47,  47,  47,  47, 
+     47,  47,  13,  10,  47,  47, 
+     32,  86, 101, 114, 116, 101, 
+    120,  32,  83, 104,  97, 100, 
+    101, 114,  13,  10,  47,  47, 
      47,  47,  47,  47,  47,  47, 
      47,  47,  47,  47,  47,  47, 
      47,  47,  47,  47,  47,  47, 
@@ -1994,214 +2026,187 @@ const BYTE CustomUIDX11VertexShader[] =
      47,  47,  47,  47,  47,  47, 
      47,  47,  47,  47,  47,  47, 
      47,  47,  47,  47,  47,  47, 
-     47,  47,  13,  10,  80, 105, 
-    120, 101, 108,  73, 110, 112, 
-    117, 116,  84, 121, 112, 101, 
-     32,  84, 101, 120, 116, 117, 
-    114, 101,  86, 101, 114, 116, 
-    101, 120,  83, 104,  97, 100, 
-    101, 114,  40,  86, 101, 114, 
-    116, 101, 120,  73, 110, 112, 
-    117, 116,  84, 121, 112, 101, 
-     32, 105, 110, 112, 117, 116, 
-     41,  13,  10, 123,  13,  10, 
-     32,  32,  32,  32,  47,  47, 
-     32, 114, 101, 116, 117, 114, 
-    110,  32, 105, 110, 112, 117, 
-    116,  59,  13,  10,  32,  32, 
-     32,  32,  80, 105, 120, 101, 
+     47,  47,  47,  47,  47,  47, 
+     13,  10,  80, 105, 120, 101, 
     108,  73, 110, 112, 117, 116, 
-     84, 121, 112, 101,  32, 111, 
-    117, 116, 112, 117, 116,  59, 
+     84, 121, 112, 101,  32,  84, 
+    101, 120, 116, 117, 114, 101, 
+     86, 101, 114, 116, 101, 120, 
+     83, 104,  97, 100, 101, 114, 
+     40,  86, 101, 114, 116, 101, 
+    120,  73, 110, 112, 117, 116, 
+     84, 121, 112, 101,  32, 105, 
+    110, 112, 117, 116,  41,  13, 
+     10, 123,  13,  10,  32,  32, 
+     32,  32,  47,  47,  32, 114, 
+    101, 116, 117, 114, 110,  32, 
+    105, 110, 112, 117, 116,  59, 
      13,  10,  32,  32,  32,  32, 
-    111, 117, 116, 112, 117, 116, 
+     80, 105, 120, 101, 108,  73, 
+    110, 112, 117, 116,  84, 121, 
+    112, 101,  32, 111, 117, 116, 
+    112, 117, 116,  59,  13,  10, 
+     32,  32,  32,  32, 111, 117, 
+    116, 112, 117, 116,  46, 110, 
+    111, 114, 109,  97, 108,  13, 
+     10,  32,  32,  32,  32,  32, 
+     32,  32,  32,  61,  32, 110, 
+    111, 114, 109,  97, 108, 105, 
+    122, 101,  40, 109, 117, 108, 
+     40, 105, 110, 112, 117, 116, 
      46, 110, 111, 114, 109,  97, 
-    108,  13,  10,  32,  32,  32, 
-     32,  32,  32,  32,  32,  61, 
-     32, 110, 111, 114, 109,  97, 
-    108, 105, 122, 101,  40, 109, 
-    117, 108,  40, 105, 110, 112, 
-    117, 116,  46, 110, 111, 114, 
-    109,  97, 108,  44,  32,  40, 
-    102, 108, 111,  97, 116,  51, 
-    120,  51,  41, 107, 110, 111, 
-     99, 104, 101, 110,  77,  97, 
-    116, 114, 105, 120,  91, 105, 
-    110, 112, 117, 116,  46, 107, 
-    110, 111,  99, 104, 101, 110, 
-     93,  41,  41,  59,  13,  10, 
-     13,  10,  32,  32,  32,  32, 
-     47,  47,  32,  67, 104,  97, 
-    110, 103, 101,  32, 116, 104, 
-    101,  32, 112, 111, 115, 105, 
-    116, 105, 111, 110,  32, 118, 
-    101,  99, 116, 111, 114,  32, 
-    116, 111,  32,  98, 101,  32, 
-     52,  32, 117, 110, 105, 116, 
-    115,  32, 102, 111, 114,  32, 
-    112, 114, 111, 112, 101, 114, 
-     32, 109,  97, 116, 114, 105, 
-    120,  32,  99,  97, 108,  99, 
-    117, 108,  97, 116, 105, 111, 
-    110, 115,  46,  13,  10,  32, 
-     32,  32,  32, 105, 110, 112, 
-    117, 116,  46, 112, 111, 115, 
-    105, 116, 105, 111, 110,  46, 
-    119,  32,  61,  32,  49,  46, 
-     48, 102,  59,  13,  10,  13, 
-     10,  32,  32,  32,  32,  47, 
-     47,  32,  83, 116, 111, 114, 
+    108,  44,  32,  40, 102, 108, 
+    111,  97, 116,  51, 120,  51, 
+     41, 107, 110, 111,  99, 104, 
+    101, 110,  77,  97, 116, 114, 
+    105, 120,  91, 105, 110, 112, 
+    117, 116,  46, 107, 110, 111, 
+     99, 104, 101, 110,  93,  41, 
+     41,  59,  13,  10,  13,  10, 
+     32,  32,  32,  32,  47,  47, 
+     32,  67, 104,  97, 110, 103, 
     101,  32, 116, 104, 101,  32, 
-    116, 101, 120, 116, 117, 114, 
-    101,  32,  99, 111, 111, 114, 
-    100, 105, 110,  97, 116, 101, 
-    115,  32, 102, 111, 114,  32, 
-    116, 104, 101,  32, 112, 105, 
-    120, 101, 108,  32, 115, 104, 
-     97, 100, 101, 114,  46,  13, 
-     10,  32,  32,  32,  32, 111, 
-    117, 116, 112, 117, 116,  46, 
-    116, 101, 120,  32,  61,  32, 
-    105, 110, 112, 117, 116,  46, 
-    116, 101, 120,  59,  13,  10, 
-     13,  10,  32,  32,  32,  32, 
-     47,  47,  32,  67,  97, 108, 
-     99, 117, 108,  97, 116, 101, 
-     32, 116, 104, 101,  32, 112, 
-    111, 115, 105, 116, 105, 111, 
-    110,  32, 111, 102,  32, 116, 
-    104, 101,  32, 118, 101, 114, 
-    116, 101, 120,  32,  97, 103, 
-     97, 105, 110, 115, 116,  32, 
-    116, 104, 101,  32, 119, 111, 
-    114, 108, 100,  44,  32, 118, 
-    105, 101, 119,  44,  32,  97, 
-    110, 100,  13,  10,  32,  32, 
-     32,  32,  47,  47,  32, 112, 
-    114, 111, 106, 101,  99, 116, 
-    105, 111, 110,  32, 109,  97, 
-    116, 114, 105,  99, 101, 115, 
+    112, 111, 115, 105, 116, 105, 
+    111, 110,  32, 118, 101,  99, 
+    116, 111, 114,  32, 116, 111, 
+     32,  98, 101,  32,  52,  32, 
+    117, 110, 105, 116, 115,  32, 
+    102, 111, 114,  32, 112, 114, 
+    111, 112, 101, 114,  32, 109, 
+     97, 116, 114, 105, 120,  32, 
+     99,  97, 108,  99, 117, 108, 
+     97, 116, 105, 111, 110, 115, 
      46,  13,  10,  32,  32,  32, 
-     32, 111, 117, 116, 112, 117, 
-    116,  46, 119, 111, 114, 108, 
-    100,  80, 111, 115,  32,  61, 
-     32, 109, 117, 108,  40, 105, 
-    110, 112, 117, 116,  46, 112, 
-    111, 115, 105, 116, 105, 111, 
-    110,  44,  32, 107, 110, 111, 
-     99, 104, 101, 110,  77,  97, 
-    116, 114, 105, 120,  91, 105, 
-    110, 112, 117, 116,  46, 107, 
-    110, 111,  99, 104, 101, 110, 
-     93,  41,  59,  13,  10,  32, 
+     32, 105, 110, 112, 117, 116, 
+     46, 112, 111, 115, 105, 116, 
+    105, 111, 110,  46, 119,  32, 
+     61,  32,  49,  46,  48, 102, 
+     59,  13,  10,  13,  10,  32, 
+     32,  32,  32,  47,  47,  32, 
+     83, 116, 111, 114, 101,  32, 
+    116, 104, 101,  32, 116, 101, 
+    120, 116, 117, 114, 101,  32, 
+     99, 111, 111, 114, 100, 105, 
+    110,  97, 116, 101, 115,  32, 
+    102, 111, 114,  32, 116, 104, 
+    101,  32, 112, 105, 120, 101, 
+    108,  32, 115, 104,  97, 100, 
+    101, 114,  46,  13,  10,  32, 
      32,  32,  32, 111, 117, 116, 
-    112, 117, 116,  46, 112, 111, 
-    115, 105, 116, 105, 111, 110, 
-     32,  61,  32, 109, 117, 108, 
-     40, 111, 117, 116, 112, 117, 
-    116,  46, 119, 111, 114, 108, 
-    100,  80, 111, 115,  44,  32, 
-    118, 105, 101, 119,  41,  59, 
+    112, 117, 116,  46, 116, 101, 
+    120,  32,  61,  32, 105, 110, 
+    112, 117, 116,  46, 116, 101, 
+    120,  59,  13,  10,  13,  10, 
+     32,  32,  32,  32,  47,  47, 
+     32,  67,  97, 108,  99, 117, 
+    108,  97, 116, 101,  32, 116, 
+    104, 101,  32, 112, 111, 115, 
+    105, 116, 105, 111, 110,  32, 
+    111, 102,  32, 116, 104, 101, 
+     32, 118, 101, 114, 116, 101, 
+    120,  32,  97, 103,  97, 105, 
+    110, 115, 116,  32, 116, 104, 
+    101,  32, 119, 111, 114, 108, 
+    100,  44,  32, 118, 105, 101, 
+    119,  44,  32,  97, 110, 100, 
      13,  10,  32,  32,  32,  32, 
-    111, 117, 116, 112, 117, 116, 
-     46, 112, 111, 115, 105, 116, 
-    105, 111, 110,  32,  61,  32, 
-    109, 117, 108,  40, 111, 117, 
+     47,  47,  32, 112, 114, 111, 
+    106, 101,  99, 116, 105, 111, 
+    110,  32, 109,  97, 116, 114, 
+    105,  99, 101, 115,  46,  13, 
+     10,  32,  32,  32,  32, 111, 
+    117, 116, 112, 117, 116,  46, 
+    119, 111, 114, 108, 100,  80, 
+    111, 115,  32,  61,  32, 109, 
+    117, 108,  40, 105, 110, 112, 
+    117, 116,  46, 112, 111, 115, 
+    105, 116, 105, 111, 110,  44, 
+     32, 107, 110, 111,  99, 104, 
+    101, 110,  77,  97, 116, 114, 
+    105, 120,  91, 105, 110, 112, 
+    117, 116,  46, 107, 110, 111, 
+     99, 104, 101, 110,  93,  41, 
+     59,  13,  10,  32,  32,  32, 
+     32, 111, 117, 116, 112, 117, 
+    116,  46, 112, 111, 115, 105, 
+    116, 105, 111, 110,  32,  61, 
+     32, 109, 117, 108,  40, 111, 
+    117, 116, 112, 117, 116,  46, 
+    119, 111, 114, 108, 100,  80, 
+    111, 115,  44,  32, 118, 105, 
+    101, 119,  41,  59,  13,  10, 
+     32,  32,  32,  32, 111, 117, 
     116, 112, 117, 116,  46, 112, 
     111, 115, 105, 116, 105, 111, 
-    110,  44,  32, 112, 114, 111, 
-    106, 101,  99, 116, 105, 111, 
-    110,  41,  59,  13,  10,  32, 
-     32,  32,  32, 111, 117, 116, 
-    112, 117, 116,  46, 108, 105, 
-    103, 104, 116,  49,  32,  61, 
-     32, 102, 108, 111,  97, 116, 
-     52,  40,  49,  46,  48, 102, 
-     44,  32,  49,  46,  48, 102, 
-     44,  32,  49,  46,  48, 102, 
-     44,  32,  48,  46, 102,  41, 
+    110,  32,  61,  32, 109, 117, 
+    108,  40, 111, 117, 116, 112, 
+    117, 116,  46, 112, 111, 115, 
+    105, 116, 105, 111, 110,  44, 
+     32, 112, 114, 111, 106, 101, 
+     99, 116, 105, 111, 110,  41, 
      59,  13,  10,  32,  32,  32, 
      32, 111, 117, 116, 112, 117, 
     116,  46, 108, 105, 103, 104, 
-    116,  50,  32,  61,  32, 102, 
+    116,  49,  32,  61,  32, 102, 
     108, 111,  97, 116,  52,  40, 
-     48,  46,  48, 102,  44,  32, 
-     48,  46,  48, 102,  44,  32, 
-     48,  46,  48, 102,  44,  32, 
+     49,  46,  48, 102,  44,  32, 
+     49,  46,  48, 102,  44,  32, 
+     49,  46,  48, 102,  44,  32, 
      48,  46, 102,  41,  59,  13, 
-     10,  32,  32,  32,  32, 117, 
-    105, 110, 116,  32, 100,  97, 
-    121,  76, 105, 103, 104, 116, 
-     32,  61,  32,  48,  59,  13, 
-     10,  32,  32,  32,  32, 117, 
-    105, 110, 116,  32, 100, 121, 
-    110,  97, 109, 105,  99,  76, 
+     10,  32,  32,  32,  32, 111, 
+    117, 116, 112, 117, 116,  46, 
+    108, 105, 103, 104, 116,  50, 
+     32,  61,  32, 102, 108, 111, 
+     97, 116,  52,  40,  48,  46, 
+     48, 102,  44,  32,  48,  46, 
+     48, 102,  44,  32,  48,  46, 
+     48, 102,  44,  32,  48,  46, 
+    102,  41,  59,  13,  10,  32, 
+     32,  32,  32, 117, 105, 110, 
+    116,  32, 100,  97, 121,  76, 
     105, 103, 104, 116,  32,  61, 
      32,  48,  59,  13,  10,  32, 
-     32,  32,  32, 105, 102,  32, 
-     40, 108, 105, 103, 104, 116, 
-     76, 101, 110, 103, 116, 104, 
-     32,  61,  61,  32,  49,  41, 
-     13,  10,  32,  32,  32,  32, 
-    123,  13,  10,  32,  32,  32, 
-     32,  32,  32,  32,  32, 100, 
+     32,  32,  32, 117, 105, 110, 
+    116,  32, 100, 121, 110,  97, 
+    109, 105,  99,  76, 105, 103, 
+    104, 116,  32,  61,  32,  48, 
+     59,  13,  10,  32,  32,  32, 
+     32, 105, 102,  32,  40, 108, 
+    105, 103, 104, 116,  76, 101, 
+    110, 103, 116, 104,  32,  61, 
+     61,  32,  49,  41,  13,  10, 
+     32,  32,  32,  32, 123,  13, 
+     10,  32,  32,  32,  32,  32, 
+     32,  32,  32, 100,  97, 121, 
+     76, 105, 103, 104, 116,  32, 
+     61,  32, 108, 105, 103, 104, 
+    116,  66, 117, 102, 102, 101, 
+    114,  91,  48,  93,  46, 100, 
      97, 121,  76, 105, 103, 104, 
+    116,  49,  59,  13,  10,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32, 100, 121, 110,  97, 109, 
+    105,  99,  76, 105, 103, 104, 
     116,  32,  61,  32, 108, 105, 
     103, 104, 116,  66, 117, 102, 
     102, 101, 114,  91,  48,  93, 
-     46, 100,  97, 121,  76, 105, 
-    103, 104, 116,  49,  59,  13, 
-     10,  32,  32,  32,  32,  32, 
-     32,  32,  32, 100, 121, 110, 
-     97, 109, 105,  99,  76, 105, 
-    103, 104, 116,  32,  61,  32, 
-    108, 105, 103, 104, 116,  66, 
-    117, 102, 102, 101, 114,  91, 
-     48,  93,  46, 100, 121, 110, 
-     97, 109, 105,  99,  76, 105, 
-    103, 104, 116,  49,  59,  13, 
-     10,  32,  32,  32,  32, 125, 
+     46, 100, 121, 110,  97, 109, 
+    105,  99,  76, 105, 103, 104, 
+    116,  49,  59,  13,  10,  32, 
+     32,  32,  32, 125,  13,  10, 
+     32,  32,  32,  32, 101, 108, 
+    115, 101,  32, 105, 102,  32, 
+     40, 105, 110, 112, 117, 116, 
+     46, 105, 100,  32,  60,  32, 
+    108, 105, 103, 104, 116,  76, 
+    101, 110, 103, 116, 104,  41, 
      13,  10,  32,  32,  32,  32, 
-    101, 108, 115, 101,  32, 105, 
+    123,  13,  10,  32,  32,  32, 
+     32,  32,  32,  32,  32, 105, 
     102,  32,  40, 105, 110, 112, 
     117, 116,  46, 105, 100,  32, 
-     60,  32, 108, 105, 103, 104, 
-    116,  76, 101, 110, 103, 116, 
-    104,  41,  13,  10,  32,  32, 
-     32,  32, 123,  13,  10,  32, 
-     32,  32,  32,  32,  32,  32, 
-     32, 105, 102,  32,  40, 105, 
-    110, 112, 117, 116,  46, 105, 
-    100,  32,  37,  32,  50,  32, 
-     61,  61,  32,  48,  41,  13, 
-     10,  32,  32,  32,  32,  32, 
-     32,  32,  32, 123,  13,  10, 
-     32,  32,  32,  32,  32,  32, 
-     32,  32,  32,  32,  32,  32, 
-    100,  97, 121,  76, 105, 103, 
-    104, 116,  32,  61,  32, 108, 
-    105, 103, 104, 116,  66, 117, 
-    102, 102, 101, 114,  91, 105, 
-    110, 112, 117, 116,  46, 105, 
-    100,  32,  47,  32,  50,  93, 
-     46, 100,  97, 121,  76, 105, 
-    103, 104, 116,  49,  59,  13, 
-     10,  32,  32,  32,  32,  32, 
-     32,  32,  32,  32,  32,  32, 
-     32, 100, 121, 110,  97, 109, 
-    105,  99,  76, 105, 103, 104, 
-    116,  32,  61,  32, 108, 105, 
-    103, 104, 116,  66, 117, 102, 
-    102, 101, 114,  91, 105, 110, 
-    112, 117, 116,  46, 105, 100, 
-     32,  47,  32,  50,  93,  46, 
-    100, 121, 110,  97, 109, 105, 
-     99,  76, 105, 103, 104, 116, 
-     49,  59,  13,  10,  32,  32, 
-     32,  32,  32,  32,  32,  32, 
-    125,  13,  10,  32,  32,  32, 
-     32,  32,  32,  32,  32, 101, 
-    108, 115, 101,  13,  10,  32, 
+     37,  32,  50,  32,  61,  61, 
+     32,  48,  41,  13,  10,  32, 
      32,  32,  32,  32,  32,  32, 
      32, 123,  13,  10,  32,  32, 
      32,  32,  32,  32,  32,  32, 
@@ -2213,7 +2218,7 @@ const BYTE CustomUIDX11VertexShader[] =
     117, 116,  46, 105, 100,  32, 
      47,  32,  50,  93,  46, 100, 
      97, 121,  76, 105, 103, 104, 
-    116,  50,  59,  13,  10,  32, 
+    116,  49,  59,  13,  10,  32, 
      32,  32,  32,  32,  32,  32, 
      32,  32,  32,  32,  32, 100, 
     121, 110,  97, 109, 105,  99, 
@@ -2224,117 +2229,135 @@ const BYTE CustomUIDX11VertexShader[] =
     116,  46, 105, 100,  32,  47, 
      32,  50,  93,  46, 100, 121, 
     110,  97, 109, 105,  99,  76, 
-    105, 103, 104, 116,  50,  59, 
+    105, 103, 104, 116,  49,  59, 
      13,  10,  32,  32,  32,  32, 
      32,  32,  32,  32, 125,  13, 
-     10,  32,  32,  32,  32, 125, 
-     13,  10,  32,  32,  32,  32, 
-    105, 102,  32,  40, 108, 105, 
-    103, 104, 116,  76, 101, 110, 
-    103, 116, 104,  32,  62,  32, 
-     48,  32,  38,  38,  32, 105, 
-    110, 112, 117, 116,  46, 105, 
-    100,  32,  60,  32, 108, 105, 
-    103, 104, 116,  76, 101, 110, 
-    103, 116, 104,  41,  13,  10, 
-     32,  32,  32,  32, 123,  13, 
      10,  32,  32,  32,  32,  32, 
-     32,  32,  32, 111, 117, 116, 
-    112, 117, 116,  46, 108, 105, 
-    103, 104, 116,  49,  46, 120, 
-     32,  61,  32,  40,  40,  40, 
-    100,  97, 121,  76, 105, 103, 
-    104, 116,  32,  62,  62,  32, 
-     50,  52,  41,  32,  38,  32, 
-     48, 120,  70,  70,  41,  32, 
-     47,  32,  50,  53,  53,  46, 
-    102,  41,  32,  42,  32, 100, 
-     97, 121,  76, 105, 103, 104, 
-    116,  70,  97,  99, 116, 111, 
-    114,  59,  13,  10,  32,  32, 
+     32,  32,  32, 101, 108, 115, 
+    101,  13,  10,  32,  32,  32, 
+     32,  32,  32,  32,  32, 123, 
+     13,  10,  32,  32,  32,  32, 
      32,  32,  32,  32,  32,  32, 
-    111, 117, 116, 112, 117, 116, 
-     46, 108, 105, 103, 104, 116, 
-     49,  46, 121,  32,  61,  32, 
-     40,  40,  40, 100,  97, 121, 
-     76, 105, 103, 104, 116,  32, 
-     62,  62,  32,  49,  54,  41, 
-     32,  38,  32,  48, 120,  70, 
-     70,  41,  32,  47,  32,  50, 
-     53,  53,  46, 102,  41,  32, 
-     42,  32, 100,  97, 121,  76, 
-    105, 103, 104, 116,  70,  97, 
-     99, 116, 111, 114,  59,  13, 
-     10,  32,  32,  32,  32,  32, 
-     32,  32,  32, 111, 117, 116, 
-    112, 117, 116,  46, 108, 105, 
-    103, 104, 116,  49,  46, 122, 
-     32,  61,  32,  40,  40,  40, 
-    100,  97, 121,  76, 105, 103, 
-    104, 116,  32,  62,  62,  32, 
-     56,  41,  32,  38,  32,  48, 
-    120,  70,  70,  41,  32,  47, 
-     32,  50,  53,  53,  46, 102, 
-     41,  32,  42,  32, 100,  97, 
-    121,  76, 105, 103, 104, 116, 
-     70,  97,  99, 116, 111, 114, 
+     32,  32, 100,  97, 121,  76, 
+    105, 103, 104, 116,  32,  61, 
+     32, 108, 105, 103, 104, 116, 
+     66, 117, 102, 102, 101, 114, 
+     91, 105, 110, 112, 117, 116, 
+     46, 105, 100,  32,  47,  32, 
+     50,  93,  46, 100,  97, 121, 
+     76, 105, 103, 104, 116,  50, 
      59,  13,  10,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32, 100, 121, 110, 
+     97, 109, 105,  99,  76, 105, 
+    103, 104, 116,  32,  61,  32, 
+    108, 105, 103, 104, 116,  66, 
+    117, 102, 102, 101, 114,  91, 
+    105, 110, 112, 117, 116,  46, 
+    105, 100,  32,  47,  32,  50, 
+     93,  46, 100, 121, 110,  97, 
+    109, 105,  99,  76, 105, 103, 
+    104, 116,  50,  59,  13,  10, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32, 125,  13,  10,  32, 
+     32,  32,  32, 125,  13,  10, 
+     32,  32,  32,  32, 105, 102, 
+     32,  40, 108, 105, 103, 104, 
+    116,  76, 101, 110, 103, 116, 
+    104,  32,  62,  32,  48,  32, 
+     38,  38,  32,  40, 105, 110, 
+    112, 117, 116,  46, 105, 100, 
+     32,  60,  32, 108, 105, 103, 
+    104, 116,  76, 101, 110, 103, 
+    116, 104,  32, 124, 124,  32, 
+    108, 105, 103, 104, 116,  76, 
+    101, 110, 103, 116, 104,  32, 
+     61,  61,  32,  49,  41,  41, 
+     13,  10,  32,  32,  32,  32, 
+    123,  13,  10,  32,  32,  32, 
      32,  32,  32,  32,  32, 111, 
     117, 116, 112, 117, 116,  46, 
-    108, 105, 103, 104, 116,  50, 
+    108, 105, 103, 104, 116,  49, 
      46, 120,  32,  61,  32,  40, 
-     40, 100, 121, 110,  97, 109, 
-    105,  99,  76, 105, 103, 104, 
-    116,  32,  62,  62,  32,  50, 
-     52,  41,  32,  38,  32,  48, 
-    120,  70,  70,  41,  32,  47, 
-     32,  50,  53,  53,  46, 102, 
-     59,  13,  10,  32,  32,  32, 
-     32,  32,  32,  32,  32, 111, 
-    117, 116, 112, 117, 116,  46, 
-    108, 105, 103, 104, 116,  50, 
-     46, 121,  32,  61,  32,  40, 
-     40, 100, 121, 110,  97, 109, 
-    105,  99,  76, 105, 103, 104, 
+     40,  40, 100,  97, 121,  76, 
+    105, 103, 104, 116,  32,  62, 
+     62,  32,  50,  52,  41,  32, 
+     38,  32,  48, 120,  70,  70, 
+     41,  32,  47,  32,  50,  53, 
+     53,  46, 102,  41,  32,  42, 
+     32, 100,  97, 121,  76, 105, 
+    103, 104, 116,  70,  97,  99, 
+    116, 111, 114,  59,  13,  10, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32, 111, 117, 116, 112, 
+    117, 116,  46, 108, 105, 103, 
+    104, 116,  49,  46, 121,  32, 
+     61,  32,  40,  40,  40, 100, 
+     97, 121,  76, 105, 103, 104, 
     116,  32,  62,  62,  32,  49, 
      54,  41,  32,  38,  32,  48, 
     120,  70,  70,  41,  32,  47, 
      32,  50,  53,  53,  46, 102, 
+     41,  32,  42,  32, 100,  97, 
+    121,  76, 105, 103, 104, 116, 
+     70,  97,  99, 116, 111, 114, 
      59,  13,  10,  32,  32,  32, 
      32,  32,  32,  32,  32, 111, 
     117, 116, 112, 117, 116,  46, 
-    108, 105, 103, 104, 116,  50, 
+    108, 105, 103, 104, 116,  49, 
      46, 122,  32,  61,  32,  40, 
-     40, 100, 121, 110,  97, 109, 
-    105,  99,  76, 105, 103, 104, 
-    116,  32,  62,  62,  32,  56, 
-     41,  32,  38,  32,  48, 120, 
-     70,  70,  41,  32,  47,  32, 
-     50,  53,  53,  46, 102,  59, 
-     13,  10,  32,  32,  32,  32, 
-     32,  32,  32,  32, 111, 117, 
-    116, 112, 117, 116,  46, 108, 
-    105, 103, 104, 116,  49,  46, 
-    119,  32,  61,  32,  49,  46, 
+     40,  40, 100,  97, 121,  76, 
+    105, 103, 104, 116,  32,  62, 
+     62,  32,  56,  41,  32,  38, 
+     32,  48, 120,  70,  70,  41, 
+     32,  47,  32,  50,  53,  53, 
+     46, 102,  41,  32,  42,  32, 
+    100,  97, 121,  76, 105, 103, 
+    104, 116,  70,  97,  99, 116, 
+    111, 114,  59,  13,  10,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32, 111, 117, 116, 112, 117, 
+    116,  46, 108, 105, 103, 104, 
+    116,  50,  46, 120,  32,  61, 
+     32,  40,  40, 100, 121, 110, 
+     97, 109, 105,  99,  76, 105, 
+    103, 104, 116,  32,  62,  62, 
+     32,  50,  52,  41,  32,  38, 
+     32,  48, 120,  70,  70,  41, 
+     32,  47,  32,  50,  53,  53, 
+     46, 102,  59,  13,  10,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32, 111, 117, 116, 112, 117, 
+    116,  46, 108, 105, 103, 104, 
+    116,  50,  46, 121,  32,  61, 
+     32,  40,  40, 100, 121, 110, 
+     97, 109, 105,  99,  76, 105, 
+    103, 104, 116,  32,  62,  62, 
+     32,  49,  54,  41,  32,  38, 
+     32,  48, 120,  70,  70,  41, 
+     32,  47,  32,  50,  53,  53, 
+     46, 102,  59,  13,  10,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32, 111, 117, 116, 112, 117, 
+    116,  46, 108, 105, 103, 104, 
+    116,  50,  46, 122,  32,  61, 
+     32,  40,  40, 100, 121, 110, 
+     97, 109, 105,  99,  76, 105, 
+    103, 104, 116,  32,  62,  62, 
+     32,  56,  41,  32,  38,  32, 
+     48, 120,  70,  70,  41,  32, 
+     47,  32,  50,  53,  53,  46, 
     102,  59,  13,  10,  32,  32, 
-     32,  32, 125,  13,  10,  13, 
-     10,  32,  32,  32,  32, 114, 
-    101, 116, 117, 114, 110,  32, 
+     32,  32,  32,  32,  32,  32, 
     111, 117, 116, 112, 117, 116, 
-     59,  13,  10, 125,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
+     46, 108, 105, 103, 104, 116, 
+     49,  46, 119,  32,  61,  32, 
+     49,  46, 102,  59,  13,  10, 
+     32,  32,  32,  32, 125,  13, 
+     10,  13,  10,  32,  32,  32, 
+     32, 114, 101, 116, 117, 114, 
+    110,  32, 111, 117, 116, 112, 
+    117, 116,  59,  13,  10, 125, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -2392,95 +2415,6 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-      0,   0, 254, 239, 254, 239, 
-      1,   0,   0,   0,  95,  13, 
-      0,   0,   0,  67,  58,  92, 
-     85, 115, 101, 114, 115,  92, 
-    107, 111, 108, 106,  97,  92, 
-     68, 101, 115, 107, 116, 111, 
-    112,  92,  75, 111, 108, 106, 
-     97,  45,  83, 116, 114, 111, 
-    104, 109,  45,  71,  97, 109, 
-    101, 115,  92,  83, 112, 105, 
-    101, 108, 101,  32,  80, 108, 
-     97, 116, 102, 111, 114, 109, 
-     92,  83, 116,  97, 110, 100, 
-     97, 108, 111, 119, 110,  92, 
-     75, 108, 105, 101, 110, 116, 
-     92,  70,  97,  99, 116, 111, 
-    114, 121,  67, 114,  97, 102, 
-    116,  92,  70,  97,  99, 116, 
-    111, 114, 121,  67, 114,  97, 
-    102, 116,  92,  68,  88,  49, 
-     49,  67, 117, 115, 116, 111, 
-    109,  86, 101, 114, 116, 101, 
-    120,  83, 104,  97, 100, 101, 
-    114,  46, 104, 108, 115, 108, 
-      0,   0,  99,  58,  92, 117, 
-    115, 101, 114, 115,  92, 107, 
-    111, 108, 106,  97,  92, 100, 
-    101, 115, 107, 116, 111, 112, 
-     92, 107, 111, 108, 106,  97, 
-     45, 115, 116, 114, 111, 104, 
-    109,  45, 103,  97, 109, 101, 
-    115,  92, 115, 112, 105, 101, 
-    108, 101,  32, 112, 108,  97, 
-    116, 102, 111, 114, 109,  92, 
-    115, 116,  97, 110, 100,  97, 
-    108, 111, 119, 110,  92, 107, 
-    108, 105, 101, 110, 116,  92, 
-    102,  97,  99, 116, 111, 114, 
-    121,  99, 114,  97, 102, 116, 
-     92, 102,  97,  99, 116, 111, 
-    114, 121,  99, 114,  97, 102, 
-    116,  92, 100, 120,  49,  49, 
-     99, 117, 115, 116, 111, 109, 
-    118, 101, 114, 116, 101, 120, 
-    115, 104,  97, 100, 101, 114, 
-     46, 104, 108, 115, 108,   0, 
-     47,  47,  47,  47,  47,  47, 
-     47,  47,  47,  47,  47,  47, 
-     47,  13,  10,  47,  47,  32, 
-     71,  76,  79,  66,  65,  76, 
-     83,  32,  47,  47,  13,  10, 
-     47,  47,  47,  47,  47,  47, 
-     47,  47,  47,  47,  47,  47, 
-     47,  13,  10,  99,  98, 117, 
-    102, 102, 101, 114,  32,  77, 
-     97, 116, 114, 105, 120,  66, 
-    117, 102, 102, 101, 114,  32, 
-     58,  32, 114, 101, 103, 105, 
-    115, 116, 101, 114,  40,  98, 
-     48,  41,  13,  10, 123,  13, 
-     10,  32,  32,  32,  32, 109, 
-     97, 116, 114, 105, 120,  32, 
-    107, 110, 111,  99, 104, 101, 
-    110,  77,  97, 116, 114, 105, 
-    120,  91,  49,  50,  56,  93, 
-     59,  13,  10, 125,  59,  13, 
-     10,  13,  10,  47,  47,  32, 
-     84, 104, 101,  32, 112, 114, 
-    111, 106, 101,  99, 116, 105, 
-    111, 110,  32,  97, 110, 100, 
-     32, 118, 105, 101, 119,  32, 
-    109,  97, 116, 114, 105, 120, 
-     13,  10,  99,  98, 117, 102, 
-    102, 101, 114,  32,  75,  97, 
-    109, 101, 114,  97,  32,  58, 
-     32, 114, 101, 103, 105, 115, 
-    116, 101, 114,  40,  98,  49, 
-     41,  13,  10, 123,  13,  10, 
-     32,  32,  32,  32, 109,  97, 
-    116, 114, 105, 120,  32, 118, 
-    105, 101, 119,  59,  13,  10, 
-     32,  32,  32,  32, 109,  97, 
-    116, 114, 105, 120,  32, 112, 
-    114, 111, 106, 101,  99, 116, 
-    105, 111, 110,  59,  13,  10, 
-    125,  13,  10,  13,  27, 226, 
-     48,   1, 128,   0,   0,   0, 
-    225, 170, 128, 223, 156, 178, 
-    219,   1,   1,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -2488,18 +2422,98 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      2,   0,   0,   0,   1,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0, 132,   0, 
-      0,   0,  40,   0,   0,   0, 
-     27, 226,  48,   1, 174, 136, 
-    194, 109,  88,  12,   0,   0, 
-      1,   0,   0,   0, 131,   0, 
-      0,   0, 132,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
+    254, 239, 254, 239,   1,   0, 
+      0,   0, 117,  13,   0,   0, 
+      0,  67,  58,  92,  85, 115, 
+    101, 114, 115,  92, 107, 111, 
+    108, 106,  97,  92,  68, 101, 
+    115, 107, 116, 111, 112,  92, 
+     75, 111, 108, 106,  97,  45, 
+     83, 116, 114, 111, 104, 109, 
+     45,  71,  97, 109, 101, 115, 
+     92,  83, 112, 105, 101, 108, 
+    101,  32,  80, 108,  97, 116, 
+    102, 111, 114, 109,  92,  83, 
+    116,  97, 110, 100,  97, 108, 
+    111, 119, 110,  92,  75, 108, 
+    105, 101, 110, 116,  92,  70, 
+     97,  99, 116, 111, 114, 121, 
+     67, 114,  97, 102, 116,  92, 
+     70,  97,  99, 116, 111, 114, 
+    121,  67, 114,  97, 102, 116, 
+     92,  68,  88,  49,  49,  67, 
+    117, 115, 116, 111, 109,  86, 
+    101, 114, 116, 101, 120,  83, 
+    104,  97, 100, 101, 114,  46, 
+    104, 108, 115, 108,   0,   0, 
+     99,  58,  92, 117, 115, 101, 
+    114, 115,  92, 107, 111, 108, 
+    106,  97,  92, 100, 101, 115, 
+    107, 116, 111, 112,  92, 107, 
+    111, 108, 106,  97,  45, 115, 
+    116, 114, 111, 104, 109,  45, 
+    103,  97, 109, 101, 115,  92, 
+    115, 112, 105, 101, 108, 101, 
+     32, 112, 108,  97, 116, 102, 
+    111, 114, 109,  92, 115, 116, 
+     97, 110, 100,  97, 108, 111, 
+    119, 110,  92, 107, 108, 105, 
+    101, 110, 116,  92, 102,  97, 
+     99, 116, 111, 114, 121,  99, 
+    114,  97, 102, 116,  92, 102, 
+     97,  99, 116, 111, 114, 121, 
+     99, 114,  97, 102, 116,  92, 
+    100, 120,  49,  49,  99, 117, 
+    115, 116, 111, 109, 118, 101, 
+    114, 116, 101, 120, 115, 104, 
+     97, 100, 101, 114,  46, 104, 
+    108, 115, 108,   0,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  13, 
+     10,  47,  47,  32,  71,  76, 
+     79,  66,  65,  76,  83,  32, 
+     47,  47,  13,  10,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  13, 
+     10,  99,  98, 117, 102, 102, 
+    101, 114,  32,  77,  97, 116, 
+    114, 105, 120,  66, 117, 102, 
+    102, 101, 114,  32,  58,  32, 
+    114, 101, 103, 105, 115, 116, 
+    101, 114,  40,  98,  48,  41, 
+     13,  10, 123,  13,  10,  32, 
+     32,  32,  32, 109,  97, 116, 
+    114, 105, 120,  32, 107, 110, 
+    111,  99, 104, 101, 110,  77, 
+     97, 116, 114, 105, 120,  91, 
+     49,  50,  56,  93,  59,  13, 
+     10, 125,  59,  13,  10,  13, 
+     10,  47,  47,  32,  84, 104, 
+    101,  32, 112, 114, 111, 106, 
+    101,  99, 116, 105, 111, 110, 
+     32,  97, 110, 100,  32, 118, 
+    105, 101, 119,  32, 109,  97, 
+    116, 114, 105, 120,  13,  10, 
+     99,  98, 117, 102, 102, 101, 
+    114,  32,  75,  97, 109, 101, 
+    114,  97,  32,  58,  32, 114, 
+    101, 103, 105, 115, 116, 101, 
+    114,  40,  98,  49,  41,  13, 
+     10, 123,  13,  10,  32,  32, 
+     32,  32, 109,  97, 116, 114, 
+    105, 120,  32, 118, 105, 101, 
+    119,  59,  13,  10,  32,  32, 
+     32,  32, 109,  97, 116, 114, 
+    105, 120,  32, 112, 114, 111, 
+    106, 101,  99, 116, 105, 111, 
+    110,  59,  13,  10, 125,  13, 
+     10,  13,  27, 226,  48,   1, 
+    128,   0,   0,   0,  20, 141, 
+     58, 160,  16, 200, 219,   1, 
+      1,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -2507,6 +2521,15 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   2,   0, 
+      0,   0,   1,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0, 132,   0,   0,   0, 
+     40,   0,   0,   0,  27, 226, 
+     48,   1, 183, 205, 125,  66, 
+    110,  12,   0,   0,   1,   0, 
+      0,   0, 131,   0,   0,   0, 
+    132,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -2563,319 +2586,316 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-      4,   0,   0,   0,  66,   0, 
-     60,  17,  16,   1,   0,   0, 
-      0,   1,  10,   0,   1,   0, 
-    150,   9, 244, 101,  10,   0, 
-      1,   0, 150,   9, 244, 101, 
-     77, 105,  99, 114, 111, 115, 
-    111, 102, 116,  32,  40,  82, 
-     41,  32,  72,  76,  83,  76, 
-     32,  83, 104,  97, 100, 101, 
-    114,  32,  67, 111, 109, 112, 
-    105, 108, 101, 114,  32,  49, 
-     48,  46,  49,   0,   0,   0, 
-     66,   0,  61,  17,   1, 104, 
-    108, 115, 108,  70, 108,  97, 
-    103, 115,   0,  48, 120,  53, 
-      0, 104, 108, 115, 108,  84, 
-     97, 114, 103, 101, 116,   0, 
-    118, 115,  95,  53,  95,  48, 
-      0, 104, 108, 115, 108,  69, 
-    110, 116, 114, 121,   0,  84, 
-    101, 120, 116, 117, 114, 101, 
-     86, 101, 114, 116, 101, 120, 
-     83, 104,  97, 100, 101, 114, 
-      0,   0,  58,   0,  16,  17, 
-      0,   0,   0,   0, 144,   7, 
       0,   0,   0,   0,   0,   0, 
-     48,  10,   0,   0,   0,   0, 
-      0,   0,  48,  10,   0,   0, 
-      9,  16,   0,   0, 220,   0, 
-      0,   0,   1,   0, 160,  84, 
-    101, 120, 116, 117, 114, 101, 
-     86, 101, 114, 116, 101, 120, 
-     83, 104,  97, 100, 101, 114, 
-      0,   0,  46,   0,  62,  17, 
-      4,  16,   0,   0,   9,   0, 
-    105, 110, 112, 117, 116,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-      0,   0,  22,   0,  80,  17, 
-      1,   0,   5,   0,   0,   0, 
-      4,   0, 220,   0,   0,   0, 
-      1,   0,  48,  10,   0,   0, 
-      0,   0,  22,   0,  80,  17, 
-      1,   0,   5,   0,   4,   0, 
-      4,   0, 220,   0,   0,   0, 
-      1,   0,  48,  10,   4,   0, 
-      0,   0,  22,   0,  80,  17, 
-      1,   0,   5,   0,   8,   0, 
-      4,   0, 220,   0,   0,   0, 
-      1,   0,  48,  10,   8,   0, 
-      0,   0,  22,   0,  80,  17, 
-      1,   0,   5,   0,  12,   0, 
-      4,   0, 220,   0,   0,   0, 
-      1,   0,  48,  10,  12,   0, 
-      0,   0,  22,   0,  80,  17, 
-      1,   0,   5,   0,  16,   0, 
-      4,   0, 220,   0,   0,   0, 
-      1,   0,  48,  10,  16,   0, 
-      0,   0,  22,   0,  80,  17, 
-      1,   0,   5,   0,  20,   0, 
-      4,   0, 220,   0,   0,   0, 
-      1,   0,  48,  10,  20,   0, 
-      0,   0,  22,   0,  80,  17, 
-      1,   0,   5,   0,  24,   0, 
-      4,   0, 220,   0,   0,   0, 
-      1,   0,  48,  10,  32,   0, 
-      0,   0,  22,   0,  80,  17, 
-      1,   0,   5,   0,  28,   0, 
-      4,   0, 220,   0,   0,   0, 
-      1,   0,  48,  10,  36,   0, 
-      0,   0,  22,   0,  80,  17, 
-      1,   0,   5,   0,  32,   0, 
-      4,   0, 220,   0,   0,   0, 
-      1,   0,  48,  10,  40,   0, 
-      0,   0,  22,   0,  80,  17, 
-      1,   0,   5,   0,  36,   0, 
-      4,   0, 220,   0,   0,   0, 
-      1,   0,  48,  10,  48,   0, 
-      0,   0,  22,   0,  80,  17, 
-      1,   0,   5,   0,  40,   0, 
-      4,   0, 220,   0,   0,   0, 
-      1,   0,  48,  10,  64,   0, 
-      0,   0,  22,   0,  80,  17, 
-      0,   0,   5,   0,  12,   0, 
-      4,   0, 208,   1,   0,   0, 
-      1,   0, 100,   1,  28,   0, 
-      0,   0,  22,   0,  80,  17, 
-      0,   0,   5,   0,  40,   0, 
-      4,   0,  32,   5,   0,   0, 
-      1,   0, 152,   1,  12,   0, 
-      0,   0,  74,   0,  62,  17, 
-      8,  16,   0,   0, 136,   0, 
-     60,  84, 101, 120, 116, 117, 
-    114, 101,  86, 101, 114, 116, 
-    101, 120,  83, 104,  97, 100, 
-    101, 114,  32, 114, 101, 116, 
-    117, 114, 110,  32, 118,  97, 
-    108, 117, 101,  62,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   4,   0, 
+      0,   0,  66,   0,  60,  17, 
+     16,   1,   0,   0,   0,   1, 
+     10,   0,   1,   0, 150,   9, 
+    244, 101,  10,   0,   1,   0, 
+    150,   9, 244, 101,  77, 105, 
+     99, 114, 111, 115, 111, 102, 
+    116,  32,  40,  82,  41,  32, 
+     72,  76,  83,  76,  32,  83, 
+    104,  97, 100, 101, 114,  32, 
+     67, 111, 109, 112, 105, 108, 
+    101, 114,  32,  49,  48,  46, 
+     49,   0,   0,   0,  66,   0, 
+     61,  17,   1, 104, 108, 115, 
+    108,  70, 108,  97, 103, 115, 
+      0,  48, 120,  53,   0, 104, 
+    108, 115, 108,  84,  97, 114, 
+    103, 101, 116,   0, 118, 115, 
+     95,  53,  95,  48,   0, 104, 
+    108, 115, 108,  69, 110, 116, 
+    114, 121,   0,  84, 101, 120, 
+    116, 117, 114, 101,  86, 101, 
+    114, 116, 101, 120,  83, 104, 
+     97, 100, 101, 114,   0,   0, 
+     58,   0,  16,  17,   0,   0, 
+      0,   0, 144,   7,   0,   0, 
+      0,   0,   0,   0, 208,  10, 
       0,   0,   0,   0,   0,   0, 
+    208,  10,   0,   0,   9,  16, 
+      0,   0, 220,   0,   0,   0, 
+      1,   0, 160,  84, 101, 120, 
+    116, 117, 114, 101,  86, 101, 
+    114, 116, 101, 120,  83, 104, 
+     97, 100, 101, 114,   0,   0, 
+     46,   0,  62,  17,   4,  16, 
+      0,   0,   9,   0, 105, 110, 
+    112, 117, 116,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  68,   0,   4,   0, 
-    220,   0,   0,   0,   1,   0, 
-     48,  10,  80,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  72,   0,   4,   0, 
-    220,   0,   0,   0,   1,   0, 
-     48,  10,  84,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  76,   0,   4,   0, 
-    220,   0,   0,   0,   1,   0, 
-     48,  10,  88,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  80,   0,   4,   0, 
-    220,   0,   0,   0,   1,   0, 
-     48,  10,  92,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  52,   0,   4,   0, 
-    220,   0,   0,   0,   1,   0, 
-     48,  10,  64,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  56,   0,   4,   0, 
-    220,   0,   0,   0,   1,   0, 
-     48,  10,  68,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  60,   0,   4,   0, 
-    220,   0,   0,   0,   1,   0, 
-     48,  10,  72,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  64,   0,   4,   0, 
-    220,   0,   0,   0,   1,   0, 
-     48,  10,  76,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  40,   0,   4,   0, 
-    220,   0,   0,   0,   1,   0, 
-     48,  10,  48,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  44,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     22,   0,  80,  17,   1,   0, 
+      5,   0,   0,   0,   4,   0, 
     220,   0,   0,   0,   1,   0, 
-     48,  10,  52,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  48,   0,   4,   0, 
+    208,  10,   0,   0,   0,   0, 
+     22,   0,  80,  17,   1,   0, 
+      5,   0,   4,   0,   4,   0, 
     220,   0,   0,   0,   1,   0, 
-     48,  10,  56,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  32,   0,   4,   0, 
+    208,  10,   4,   0,   0,   0, 
+     22,   0,  80,  17,   1,   0, 
+      5,   0,   8,   0,   4,   0, 
     220,   0,   0,   0,   1,   0, 
-     48,  10,  32,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,  36,   0,   4,   0, 
+    208,  10,   8,   0,   0,   0, 
+     22,   0,  80,  17,   1,   0, 
+      5,   0,  12,   0,   4,   0, 
     220,   0,   0,   0,   1,   0, 
-     48,  10,  36,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
+    208,  10,  12,   0,   0,   0, 
+     22,   0,  80,  17,   1,   0, 
       5,   0,  16,   0,   4,   0, 
     220,   0,   0,   0,   1,   0, 
-     48,  10,  16,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
+    208,  10,  16,   0,   0,   0, 
+     22,   0,  80,  17,   1,   0, 
       5,   0,  20,   0,   4,   0, 
     220,   0,   0,   0,   1,   0, 
-     48,  10,  20,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
+    208,  10,  20,   0,   0,   0, 
+     22,   0,  80,  17,   1,   0, 
       5,   0,  24,   0,   4,   0, 
     220,   0,   0,   0,   1,   0, 
-     48,  10,  24,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
+    208,  10,  32,   0,   0,   0, 
+     22,   0,  80,  17,   1,   0, 
       5,   0,  28,   0,   4,   0, 
     220,   0,   0,   0,   1,   0, 
-     48,  10,  28,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,   0,   0,   4,   0, 
+    208,  10,  36,   0,   0,   0, 
+     22,   0,  80,  17,   1,   0, 
+      5,   0,  32,   0,   4,   0, 
     220,   0,   0,   0,   1,   0, 
-     48,  10,   0,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,   4,   0,   4,   0, 
+    208,  10,  40,   0,   0,   0, 
+     22,   0,  80,  17,   1,   0, 
+      5,   0,  36,   0,   4,   0, 
     220,   0,   0,   0,   1,   0, 
-     48,  10,   4,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
-      5,   0,   8,   0,   4,   0, 
+    208,  10,  48,   0,   0,   0, 
+     22,   0,  80,  17,   1,   0, 
+      5,   0,  40,   0,   4,   0, 
     220,   0,   0,   0,   1,   0, 
-     48,  10,   8,   0,   0,   0, 
-     22,   0,  80,  17,   2,   0, 
+    208,  10,  64,   0,   0,   0, 
+     22,   0,  80,  17,   0,   0, 
       5,   0,  12,   0,   4,   0, 
-    220,   0,   0,   0,   1,   0, 
-     48,  10,  12,   0,   0,   0, 
-     46,   0,  62,  17,   7,  16, 
-      0,   0,   8,   0, 111, 117, 
-    116, 112, 117, 116,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
+    208,   1,   0,   0,   1,   0, 
+    100,   1,  28,   0,   0,   0, 
+     22,   0,  80,  17,   0,   0, 
+      5,   0,  40,   0,   4,   0, 
+     32,   5,   0,   0,   1,   0, 
+    152,   1,  12,   0,   0,   0, 
+     74,   0,  62,  17,   8,  16, 
+      0,   0, 136,   0,  60,  84, 
+    101, 120, 116, 117, 114, 101, 
+     86, 101, 114, 116, 101, 120, 
+     83, 104,  97, 100, 101, 114, 
+     32, 114, 101, 116, 117, 114, 
+    110,  32, 118,  97, 108, 117, 
+    101,  62,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  40,   0,   4,   0, 
-    188,   1,   0,   0,   1,   0, 
-     80,   9,   0,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  44,   0,   4,   0, 
-    188,   1,   0,   0,   1,   0, 
-     80,   9,   4,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  48,   0,   4,   0, 
-    188,   1,   0,   0,   1,   0, 
-     80,   9,   8,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  32,   0,   4,   0, 
-    228,   1,   0,   0,   1,   0, 
-     40,   9,  32,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  36,   0,   4,   0, 
-    228,   1,   0,   0,   1,   0, 
-     40,   9,  36,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,   0,   0,   4,   0, 
-     60,   2,   0,   0,   1,   0, 
-    208,   8,  48,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,   4,   0,   4,   0, 
-    100,   2,   0,   0,   1,   0, 
-    168,   8,  52,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,   8,   0,   4,   0, 
-    140,   2,   0,   0,   1,   0, 
-    128,   8,  56,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  12,   0,   4,   0, 
-    180,   2,   0,   0,   1,   0, 
-     88,   8,  60,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  16,   0,   4,   0, 
-    212,   2,   0,   0,   1,   0, 
-    128,   0,  16,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  20,   0,   4,   0, 
-    244,   2,   0,   0,   1,   0, 
-    128,   0,  20,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  24,   0,   4,   0, 
-     20,   3,   0,   0,   1,   0, 
-    128,   0,  24,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  28,   0,   4,   0, 
-     52,   3,   0,   0,   1,   0, 
-    128,   0,  28,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  16,   0,   4,   0, 
-     84,   3,   0,   0,   1,   0, 
-    184,   7,  64,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  20,   0,   4,   0, 
-    116,   3,   0,   0,   1,   0, 
-    152,   7,  68,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  24,   0,   4,   0, 
-    148,   3,   0,   0,   1,   0, 
-    120,   7,  72,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  28,   0,   4,   0, 
-    180,   3,   0,   0,   1,   0, 
-     88,   7,  76,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  52,   0,   4,   0, 
-    212,   3,   0,   0,   1,   0, 
-     56,   7,  16,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  56,   0,   4,   0, 
-    212,   3,   0,   0,   1,   0, 
-     56,   7,  20,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  60,   0,   4,   0, 
-    212,   3,   0,   0,   1,   0, 
-     56,   7,  24,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  64,   0,   4,   0, 
-    212,   3,   0,   0,   1,   0, 
-     56,   7,  28,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  68,   0,   4,   0, 
-    244,   3,   0,   0,   1,   0, 
-     24,   7,  80,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  72,   0,   4,   0, 
-    244,   3,   0,   0,   1,   0, 
-     24,   7,  84,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  76,   0,   4,   0, 
-    244,   3,   0,   0,   1,   0, 
-     24,   7,  88,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      5,   0,  80,   0,   4,   0, 
-    244,   3,   0,   0,   1,   0, 
-     24,   7,  92,   0,   0,   0, 
-     46,   0,  62,  17, 117,   0, 
-      0,   0,   0,   0, 100,  97, 
-    121,  76, 105, 103, 104, 116, 
       0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     68,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     80,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     72,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     84,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     76,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     88,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     80,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     92,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     52,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     64,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     56,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     68,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     60,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     72,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     64,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     76,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     40,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     48,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     44,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     52,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     48,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     56,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     32,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     32,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     36,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     36,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     16,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     16,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     20,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     20,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     24,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     24,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     28,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     28,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+      0,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+      0,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+      4,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+      4,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+      8,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+      8,   0,   0,   0,  22,   0, 
+     80,  17,   2,   0,   5,   0, 
+     12,   0,   4,   0, 220,   0, 
+      0,   0,   1,   0, 208,  10, 
+     12,   0,   0,   0,  46,   0, 
+     62,  17,   7,  16,   0,   0, 
+      8,   0, 111, 117, 116, 112, 
+    117, 116,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-     22,   0,  80,  17,   0,   0, 
-      1,   0,   0,   0,   4,   0, 
-      8,   4,   0,   0,   1,   0, 
-      4,   7,  96,   0,   0,   0, 
-     50,   0,  62,  17, 117,   0, 
-      0,   0,   0,   0, 100, 121, 
-    110,  97, 109, 105,  99,  76, 
+      0,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     40,   0,   4,   0, 188,   1, 
+      0,   0,   1,   0, 240,   9, 
+      0,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     44,   0,   4,   0, 188,   1, 
+      0,   0,   1,   0, 240,   9, 
+      4,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     48,   0,   4,   0, 188,   1, 
+      0,   0,   1,   0, 240,   9, 
+      8,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     32,   0,   4,   0, 228,   1, 
+      0,   0,   1,   0, 200,   9, 
+     32,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     36,   0,   4,   0, 228,   1, 
+      0,   0,   1,   0, 200,   9, 
+     36,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+      0,   0,   4,   0,  60,   2, 
+      0,   0,   1,   0, 112,   9, 
+     48,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+      4,   0,   4,   0, 100,   2, 
+      0,   0,   1,   0,  72,   9, 
+     52,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+      8,   0,   4,   0, 140,   2, 
+      0,   0,   1,   0,  32,   9, 
+     56,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     12,   0,   4,   0, 180,   2, 
+      0,   0,   1,   0, 248,   8, 
+     60,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     16,   0,   4,   0, 212,   2, 
+      0,   0,   1,   0, 128,   0, 
+     16,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     20,   0,   4,   0, 244,   2, 
+      0,   0,   1,   0, 128,   0, 
+     20,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     24,   0,   4,   0,  20,   3, 
+      0,   0,   1,   0, 128,   0, 
+     24,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     28,   0,   4,   0,  52,   3, 
+      0,   0,   1,   0, 128,   0, 
+     28,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     16,   0,   4,   0,  84,   3, 
+      0,   0,   1,   0,  88,   8, 
+     64,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     20,   0,   4,   0, 116,   3, 
+      0,   0,   1,   0,  56,   8, 
+     68,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     24,   0,   4,   0, 148,   3, 
+      0,   0,   1,   0,  24,   8, 
+     72,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     28,   0,   4,   0, 180,   3, 
+      0,   0,   1,   0, 248,   7, 
+     76,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     52,   0,   4,   0, 212,   3, 
+      0,   0,   1,   0, 216,   7, 
+     16,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     56,   0,   4,   0, 212,   3, 
+      0,   0,   1,   0, 216,   7, 
+     20,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     60,   0,   4,   0, 212,   3, 
+      0,   0,   1,   0, 216,   7, 
+     24,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     64,   0,   4,   0, 212,   3, 
+      0,   0,   1,   0, 216,   7, 
+     28,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     68,   0,   4,   0, 244,   3, 
+      0,   0,   1,   0, 184,   7, 
+     80,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     72,   0,   4,   0, 244,   3, 
+      0,   0,   1,   0, 184,   7, 
+     84,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     76,   0,   4,   0, 244,   3, 
+      0,   0,   1,   0, 184,   7, 
+     88,   0,   0,   0,  22,   0, 
+     80,  17,   0,   0,   5,   0, 
+     80,   0,   4,   0, 244,   3, 
+      0,   0,   1,   0, 184,   7, 
+     92,   0,   0,   0,  46,   0, 
+     62,  17, 117,   0,   0,   0, 
+      0,   0, 100,  97, 121,  76, 
     105, 103, 104, 116,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -2883,347 +2903,385 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,  22,   0, 
      80,  17,   0,   0,   1,   0, 
-      0,   0,   4,   0,  28,   4, 
-      0,   0,   1,   0, 240,   6, 
-    100,   0,   0,   0,   2,   0, 
-      6,   0, 244,   0,   0,   0, 
-     24,   0,   0,   0,   1,   0, 
-      0,   0,  16,   1,  26,  27, 
-    145,  61, 145,   8,  79, 156, 
-    164, 225,  46, 147, 231, 217, 
-    125,  37,   0,   0, 242,   0, 
-      0,   0, 168,   9,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      1,   0,  12,  11,   0,   0, 
-      0,   0,   0,   0, 204,   0, 
-      0,   0, 156,   9,   0,   0, 
-    220,   0,   0,   0,  62,   0, 
-      0, 129, 220,   0,   0,   0, 
-     63,   0,   0,   0, 252,   0, 
+      0,   0,   4,   0,   8,   4, 
+      0,   0,   1,   0, 164,   7, 
+     96,   0,   0,   0,  50,   0, 
+     62,  17, 117,   0,   0,   0, 
+      0,   0, 100, 121, 110,  97, 
+    109, 105,  99,  76, 105, 103, 
+    104, 116,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  22,   0,  80,  17, 
+      0,   0,   1,   0,   0,   0, 
+      4,   0,  28,   4,   0,   0, 
+      1,   0, 144,   7, 100,   0, 
+      0,   0,   2,   0,   6,   0, 
+    244,   0,   0,   0,  24,   0, 
+      0,   0,   1,   0,   0,   0, 
+     16,   1, 130, 215,  60,  61, 
+      2, 132, 239, 137, 175,  17, 
+     15,  53,  48, 211, 112, 218, 
+      0,   0, 242,   0,   0,   0, 
+     56,  10,   0,   0,   0,   0, 
+      0,   0,   1,   0,   1,   0, 
+    172,  11,   0,   0,   0,   0, 
+      0,   0, 216,   0,   0,   0, 
+     44,  10,   0,   0, 220,   0, 
       0,   0,  62,   0,   0, 129, 
-    252,   0,   0,   0,  63,   0, 
-      0,   0,  32,   1,   0,   0, 
-     62,   0,   0, 129,  32,   1, 
+    220,   0,   0,   0,  63,   0, 
+      0,   0, 252,   0,   0,   0, 
+     62,   0,   0, 129, 252,   0, 
       0,   0,  63,   0,   0,   0, 
-     72,   1,   0,   0,  62,   0, 
-      0, 129,  72,   1,   0,   0, 
-     63,   0,   0,   0, 112,   1, 
+     32,   1,   0,   0,  62,   0, 
+      0, 129,  32,   1,   0,   0, 
+     63,   0,   0,   0,  72,   1, 
       0,   0,  62,   0,   0, 129, 
-    112,   1,   0,   0,  63,   0, 
-      0,   0, 140,   1,   0,   0, 
-     62,   0,   0, 129, 140,   1, 
+     72,   1,   0,   0,  63,   0, 
+      0,   0, 112,   1,   0,   0, 
+     62,   0,   0, 129, 112,   1, 
       0,   0,  63,   0,   0,   0, 
-    160,   1,   0,   0,  62,   0, 
-      0, 129, 160,   1,   0,   0, 
-     63,   0,   0,   0, 188,   1, 
-      0,   0,  66,   0,   0, 128, 
-    188,   1,   0,   0,  66,   0, 
-      0,   0, 208,   1,   0,   0, 
-     69,   0,   0, 128, 208,   1, 
-      0,   0,  69,   0,   0,   0, 
-    228,   1,   0,   0,  73,   0, 
-      0, 128, 228,   1,   0,   0, 
-     73,   0,   0,   0,   4,   2, 
+    140,   1,   0,   0,  62,   0, 
+      0, 129, 140,   1,   0,   0, 
+     63,   0,   0,   0, 160,   1, 
+      0,   0,  62,   0,   0, 129, 
+    160,   1,   0,   0,  63,   0, 
+      0,   0, 188,   1,   0,   0, 
+     66,   0,   0, 128, 188,   1, 
+      0,   0,  66,   0,   0,   0, 
+    208,   1,   0,   0,  69,   0, 
+      0, 128, 208,   1,   0,   0, 
+     69,   0,   0,   0, 228,   1, 
       0,   0,  73,   0,   0, 128, 
-      4,   2,   0,   0,  73,   0, 
-      0,   0,  24,   2,   0,   0, 
-     73,   0,   0, 128,  24,   2, 
+    228,   1,   0,   0,  73,   0, 
+      0,   0,   4,   2,   0,   0, 
+     73,   0,   0, 128,   4,   2, 
       0,   0,  73,   0,   0,   0, 
-     60,   2,   0,   0,  73,   0, 
-      0, 128,  60,   2,   0,   0, 
-     73,   0,   0,   0, 100,   2, 
+     24,   2,   0,   0,  73,   0, 
+      0, 128,  24,   2,   0,   0, 
+     73,   0,   0,   0,  60,   2, 
       0,   0,  73,   0,   0, 128, 
-    100,   2,   0,   0,  73,   0, 
-      0,   0, 140,   2,   0,   0, 
-     73,   0,   0, 128, 140,   2, 
+     60,   2,   0,   0,  73,   0, 
+      0,   0, 100,   2,   0,   0, 
+     73,   0,   0, 128, 100,   2, 
       0,   0,  73,   0,   0,   0, 
-    180,   2,   0,   0,  74,   0, 
-      0, 128, 180,   2,   0,   0, 
-     74,   0,   0,   0, 212,   2, 
+    140,   2,   0,   0,  73,   0, 
+      0, 128, 140,   2,   0,   0, 
+     73,   0,   0,   0, 180,   2, 
       0,   0,  74,   0,   0, 128, 
-    212,   2,   0,   0,  74,   0, 
-      0,   0, 244,   2,   0,   0, 
-     74,   0,   0, 128, 244,   2, 
+    180,   2,   0,   0,  74,   0, 
+      0,   0, 212,   2,   0,   0, 
+     74,   0,   0, 128, 212,   2, 
       0,   0,  74,   0,   0,   0, 
+    244,   2,   0,   0,  74,   0, 
+      0, 128, 244,   2,   0,   0, 
+     74,   0,   0,   0,  20,   3, 
+      0,   0,  74,   0,   0, 128, 
      20,   3,   0,   0,  74,   0, 
-      0, 128,  20,   3,   0,   0, 
-     74,   0,   0,   0,  52,   3, 
-      0,   0,  75,   0,   0, 128, 
-     52,   3,   0,   0,  75,   0, 
-      0,   0,  84,   3,   0,   0, 
-     75,   0,   0, 128,  84,   3, 
+      0,   0,  52,   3,   0,   0, 
+     75,   0,   0, 128,  52,   3, 
       0,   0,  75,   0,   0,   0, 
-    116,   3,   0,   0,  75,   0, 
-      0, 128, 116,   3,   0,   0, 
-     75,   0,   0,   0, 148,   3, 
+     84,   3,   0,   0,  75,   0, 
+      0, 128,  84,   3,   0,   0, 
+     75,   0,   0,   0, 116,   3, 
       0,   0,  75,   0,   0, 128, 
-    148,   3,   0,   0,  75,   0, 
-      0,   0, 180,   3,   0,   0, 
-     76,   0,   0, 128, 180,   3, 
-      0,   0,  76,   0,   0,   0, 
+    116,   3,   0,   0,  75,   0, 
+      0,   0, 148,   3,   0,   0, 
+     75,   0,   0, 128, 148,   3, 
+      0,   0,  75,   0,   0,   0, 
+    180,   3,   0,   0,  76,   0, 
+      0, 128, 180,   3,   0,   0, 
+     76,   0,   0,   0, 212,   3, 
+      0,   0,  77,   0,   0, 128, 
     212,   3,   0,   0,  77,   0, 
-      0, 128, 212,   3,   0,   0, 
-     77,   0,   0,   0, 244,   3, 
-      0,   0,  78,   0,   0, 128, 
-    244,   3,   0,   0,  78,   0, 
-      0,   0,   8,   4,   0,   0, 
-     79,   0,   0, 128,   8,   4, 
-      0,   0,  79,   0,   0,   0, 
-     28,   4,   0,   0,  80,   0, 
-      0, 128,  28,   4,   0,   0, 
-     80,   0,   0,   0,  48,   4, 
+      0,   0, 244,   3,   0,   0, 
+     78,   0,   0, 128, 244,   3, 
+      0,   0,  78,   0,   0,   0, 
+      8,   4,   0,   0,  79,   0, 
+      0, 128,   8,   4,   0,   0, 
+     79,   0,   0,   0,  28,   4, 
       0,   0,  80,   0,   0, 128, 
-     48,   4,   0,   0,  80,   0, 
-      0,   0,  80,   4,   0,   0, 
-     80,   0,   0, 128,  80,   4, 
+     28,   4,   0,   0,  80,   0, 
+      0,   0,  48,   4,   0,   0, 
+     80,   0,   0, 128,  48,   4, 
       0,   0,  80,   0,   0,   0, 
-     92,   4,   0,   0,  82,   0, 
-      0, 128,  92,   4,   0,   0, 
-     82,   0,   0,   0, 112,   4, 
+     80,   4,   0,   0,  80,   0, 
+      0, 128,  80,   4,   0,   0, 
+     80,   0,   0,   0,  92,   4, 
       0,   0,  82,   0,   0, 128, 
-    112,   4,   0,   0,  82,   0, 
-      0,   0, 156,   4,   0,   0, 
-     83,   0,   0, 128, 156,   4, 
-      0,   0,  83,   0,   0,   0, 
+     92,   4,   0,   0,  82,   0, 
+      0,   0, 112,   4,   0,   0, 
+     82,   0,   0, 128, 112,   4, 
+      0,   0,  82,   0,   0,   0, 
+    156,   4,   0,   0,  83,   0, 
+      0, 128, 156,   4,   0,   0, 
+     83,   0,   0,   0, 176,   4, 
+      0,   0,  83,   0,   0, 128, 
     176,   4,   0,   0,  83,   0, 
-      0, 128, 176,   4,   0,   0, 
-     83,   0,   0,   0, 220,   4, 
-      0,   0,  84,   0,   0, 128, 
-    220,   4,   0,   0,  84,   0, 
-      0,   0, 224,   4,   0,   0, 
-     85,   0,   0, 128, 224,   4, 
-      0,   0,  85,   0,   0,   0, 
-      0,   5,   0,   0,  85,   0, 
-      0, 128,   0,   5,   0,   0, 
-     85,   0,   0,   0,  12,   5, 
+      0,   0, 220,   4,   0,   0, 
+     84,   0,   0, 128, 220,   4, 
+      0,   0,  84,   0,   0,   0, 
+    224,   4,   0,   0,  85,   0, 
+      0, 128, 224,   4,   0,   0, 
+     85,   0,   0,   0,   0,   5, 
       0,   0,  85,   0,   0, 128, 
-     12,   5,   0,   0,  85,   0, 
-      0,   0,  32,   5,   0,   0, 
-     87,   0,   0, 128,  32,   5, 
-      0,   0,  87,   0,   0,   0, 
-     52,   5,   0,   0,  87,   0, 
-      0, 128,  52,   5,   0,   0, 
-     87,   0,   0,   0,  84,   5, 
+      0,   5,   0,   0,  85,   0, 
+      0,   0,  12,   5,   0,   0, 
+     85,   0,   0, 128,  12,   5, 
+      0,   0,  85,   0,   0,   0, 
+     32,   5,   0,   0,  87,   0, 
+      0, 128,  32,   5,   0,   0, 
+     87,   0,   0,   0,  52,   5, 
       0,   0,  87,   0,   0, 128, 
-     84,   5,   0,   0,  87,   0, 
-      0,   0,  96,   5,   0,   0, 
-     89,   0,   0, 128,  96,   5, 
-      0,   0,  89,   0,   0,   0, 
-    116,   5,   0,   0,  89,   0, 
-      0, 128, 116,   5,   0,   0, 
-     89,   0,   0,   0, 148,   5, 
+     52,   5,   0,   0,  87,   0, 
+      0,   0,  84,   5,   0,   0, 
+     87,   0,   0, 128,  84,   5, 
+      0,   0,  87,   0,   0,   0, 
+     96,   5,   0,   0,  89,   0, 
+      0, 128,  96,   5,   0,   0, 
+     89,   0,   0,   0, 116,   5, 
       0,   0,  89,   0,   0, 128, 
-    148,   5,   0,   0,  89,   0, 
-      0,   0, 192,   5,   0,   0, 
-     90,   0,   0, 128, 192,   5, 
-      0,   0,  90,   0,   0,   0, 
-    212,   5,   0,   0,  90,   0, 
-      0, 128, 212,   5,   0,   0, 
-     90,   0,   0,   0, 244,   5, 
+    116,   5,   0,   0,  89,   0, 
+      0,   0, 148,   5,   0,   0, 
+     89,   0,   0, 128, 148,   5, 
+      0,   0,  89,   0,   0,   0, 
+    192,   5,   0,   0,  90,   0, 
+      0, 128, 192,   5,   0,   0, 
+     90,   0,   0,   0, 212,   5, 
       0,   0,  90,   0,   0, 128, 
-    244,   5,   0,   0,  90,   0, 
-      0,   0,  32,   6,   0,   0, 
-     91,   0,   0, 128,  32,   6, 
-      0,   0,  91,   0,   0,   0, 
-     36,   6,   0,   0,  94,   0, 
-      0, 128,  36,   6,   0,   0, 
-     94,   0,   0,   0,  56,   6, 
+    212,   5,   0,   0,  90,   0, 
+      0,   0, 244,   5,   0,   0, 
+     90,   0,   0, 128, 244,   5, 
+      0,   0,  90,   0,   0,   0, 
+     32,   6,   0,   0,  91,   0, 
+      0, 128,  32,   6,   0,   0, 
+     91,   0,   0,   0,  36,   6, 
       0,   0,  94,   0,   0, 128, 
-     56,   6,   0,   0,  94,   0, 
-      0,   0,  88,   6,   0,   0, 
-     94,   0,   0, 128,  88,   6, 
+     36,   6,   0,   0,  94,   0, 
+      0,   0,  56,   6,   0,   0, 
+     94,   0,   0, 128,  56,   6, 
       0,   0,  94,   0,   0,   0, 
-    132,   6,   0,   0,  95,   0, 
-      0, 128, 132,   6,   0,   0, 
-     95,   0,   0,   0, 152,   6, 
+     88,   6,   0,   0,  94,   0, 
+      0, 128,  88,   6,   0,   0, 
+     94,   0,   0,   0, 132,   6, 
       0,   0,  95,   0,   0, 128, 
-    152,   6,   0,   0,  95,   0, 
-      0,   0, 184,   6,   0,   0, 
-     95,   0,   0, 128, 184,   6, 
+    132,   6,   0,   0,  95,   0, 
+      0,   0, 152,   6,   0,   0, 
+     95,   0,   0, 128, 152,   6, 
       0,   0,  95,   0,   0,   0, 
+    184,   6,   0,   0,  95,   0, 
+      0, 128, 184,   6,   0,   0, 
+     95,   0,   0,   0, 228,   6, 
+      0,   0,  96,   0,   0, 128, 
     228,   6,   0,   0,  96,   0, 
-      0, 128, 228,   6,   0,   0, 
-     96,   0,   0,   0, 232,   6, 
-      0,   0,  97,   0,   0, 128, 
-    232,   6,   0,   0,  97,   0, 
-      0,   0, 236,   6,   0,   0, 
-     97,   0,   0, 128, 236,   6, 
+      0,   0, 232,   6,   0,   0, 
+     97,   0,   0, 128, 232,   6, 
       0,   0,  97,   0,   0,   0, 
+    236,   6,   0,   0,  97,   0, 
+      0, 128, 236,   6,   0,   0, 
+     97,   0,   0,   0, 240,   6, 
+      0,   0,  98,   0,   0, 128, 
     240,   6,   0,   0,  98,   0, 
-      0, 128, 240,   6,   0,   0, 
-     98,   0,   0,   0,  16,   7, 
+      0,   0,   4,   7,   0,   0, 
+     98,   0,   0, 128,   4,   7, 
+      0,   0,  98,   0,   0,   0, 
+     36,   7,   0,   0,  98,   0, 
+      0, 128,  36,   7,   0,   0, 
+     98,   0,   0,   0,  68,   7, 
       0,   0,  98,   0,   0, 128, 
-     16,   7,   0,   0,  98,   0, 
-      0,   0,  28,   7,   0,   0, 
-    100,   0,   0, 128,  28,   7, 
-      0,   0, 100,   0,   0,   0, 
-     48,   7,   0,   0, 100,   0, 
-      0, 128,  48,   7,   0,   0, 
-    100,   0,   0,   0,  76,   7, 
+     68,   7,   0,   0,  98,   0, 
+      0,   0,  88,   7,   0,   0, 
+     98,   0,   0, 128,  88,   7, 
+      0,   0,  98,   0,   0,   0, 
+    120,   7,   0,   0,  98,   0, 
+      0, 128, 120,   7,   0,   0, 
+     98,   0,   0,   0, 148,   7, 
+      0,   0,  98,   0,   0, 128, 
+    148,   7,   0,   0,  98,   0, 
+      0,   0, 176,   7,   0,   0, 
+     98,   0,   0, 128, 176,   7, 
+      0,   0,  98,   0,   0,   0, 
+    188,   7,   0,   0, 100,   0, 
+      0, 128, 188,   7,   0,   0, 
+    100,   0,   0,   0, 208,   7, 
       0,   0, 100,   0,   0, 128, 
-     76,   7,   0,   0, 100,   0, 
-      0,   0, 104,   7,   0,   0, 
-    100,   0,   0, 128, 104,   7, 
+    208,   7,   0,   0, 100,   0, 
+      0,   0, 236,   7,   0,   0, 
+    100,   0,   0, 128, 236,   7, 
       0,   0, 100,   0,   0,   0, 
-    124,   7,   0,   0, 100,   0, 
-      0, 128, 124,   7,   0,   0, 
-    100,   0,   0,   0, 152,   7, 
+      8,   8,   0,   0, 100,   0, 
+      0, 128,   8,   8,   0,   0, 
+    100,   0,   0,   0,  28,   8, 
       0,   0, 100,   0,   0, 128, 
-    152,   7,   0,   0, 100,   0, 
-      0,   0, 184,   7,   0,   0, 
-    101,   0,   0, 128, 184,   7, 
-      0,   0, 101,   0,   0,   0, 
-    204,   7,   0,   0, 101,   0, 
-      0, 128, 204,   7,   0,   0, 
-    101,   0,   0,   0, 232,   7, 
+     28,   8,   0,   0, 100,   0, 
+      0,   0,  56,   8,   0,   0, 
+    100,   0,   0, 128,  56,   8, 
+      0,   0, 100,   0,   0,   0, 
+     88,   8,   0,   0, 101,   0, 
+      0, 128,  88,   8,   0,   0, 
+    101,   0,   0,   0, 108,   8, 
       0,   0, 101,   0,   0, 128, 
-    232,   7,   0,   0, 101,   0, 
-      0,   0,   4,   8,   0,   0, 
-    101,   0,   0, 128,   4,   8, 
+    108,   8,   0,   0, 101,   0, 
+      0,   0, 136,   8,   0,   0, 
+    101,   0,   0, 128, 136,   8, 
       0,   0, 101,   0,   0,   0, 
-     24,   8,   0,   0, 101,   0, 
-      0, 128,  24,   8,   0,   0, 
-    101,   0,   0,   0,  52,   8, 
+    164,   8,   0,   0, 101,   0, 
+      0, 128, 164,   8,   0,   0, 
+    101,   0,   0,   0, 184,   8, 
       0,   0, 101,   0,   0, 128, 
-     52,   8,   0,   0, 101,   0, 
-      0,   0,  84,   8,   0,   0, 
-    102,   0,   0, 128,  84,   8, 
-      0,   0, 102,   0,   0,   0, 
-    104,   8,   0,   0, 102,   0, 
-      0, 128, 104,   8,   0,   0, 
-    102,   0,   0,   0, 132,   8, 
+    184,   8,   0,   0, 101,   0, 
+      0,   0, 212,   8,   0,   0, 
+    101,   0,   0, 128, 212,   8, 
+      0,   0, 101,   0,   0,   0, 
+    244,   8,   0,   0, 102,   0, 
+      0, 128, 244,   8,   0,   0, 
+    102,   0,   0,   0,   8,   9, 
       0,   0, 102,   0,   0, 128, 
-    132,   8,   0,   0, 102,   0, 
-      0,   0, 160,   8,   0,   0, 
-    102,   0,   0, 128, 160,   8, 
+      8,   9,   0,   0, 102,   0, 
+      0,   0,  36,   9,   0,   0, 
+    102,   0,   0, 128,  36,   9, 
       0,   0, 102,   0,   0,   0, 
-    180,   8,   0,   0, 102,   0, 
-      0, 128, 180,   8,   0,   0, 
-    102,   0,   0,   0, 208,   8, 
+     64,   9,   0,   0, 102,   0, 
+      0, 128,  64,   9,   0,   0, 
+    102,   0,   0,   0,  84,   9, 
       0,   0, 102,   0,   0, 128, 
-    208,   8,   0,   0, 102,   0, 
-      0,   0, 240,   8,   0,   0, 
-    103,   0,   0, 128, 240,   8, 
-      0,   0, 103,   0,   0,   0, 
-      4,   9,   0,   0, 103,   0, 
-      0, 128,   4,   9,   0,   0, 
-    103,   0,   0,   0,  32,   9, 
+     84,   9,   0,   0, 102,   0, 
+      0,   0, 112,   9,   0,   0, 
+    102,   0,   0, 128, 112,   9, 
+      0,   0, 102,   0,   0,   0, 
+    144,   9,   0,   0, 103,   0, 
+      0, 128, 144,   9,   0,   0, 
+    103,   0,   0,   0, 164,   9, 
       0,   0, 103,   0,   0, 128, 
-     32,   9,   0,   0, 103,   0, 
-      0,   0,  60,   9,   0,   0, 
-    103,   0,   0, 128,  60,   9, 
+    164,   9,   0,   0, 103,   0, 
+      0,   0, 192,   9,   0,   0, 
+    103,   0,   0, 128, 192,   9, 
       0,   0, 103,   0,   0,   0, 
-     80,   9,   0,   0, 103,   0, 
-      0, 128,  80,   9,   0,   0, 
-    103,   0,   0,   0, 108,   9, 
-      0,   0, 104,   0,   0, 128, 
-    108,   9,   0,   0, 104,   0, 
-      0,   0, 128,   9,   0,   0, 
-    104,   0,   0, 128, 128,   9, 
+    220,   9,   0,   0, 103,   0, 
+      0, 128, 220,   9,   0,   0, 
+    103,   0,   0,   0, 240,   9, 
+      0,   0, 103,   0,   0, 128, 
+    240,   9,   0,   0, 103,   0, 
+      0,   0,  12,  10,   0,   0, 
+    104,   0,   0, 128,  12,  10, 
       0,   0, 104,   0,   0,   0, 
-    156,   9,   0,   0, 104,   0, 
-      0, 128, 156,   9,   0,   0, 
-    104,   0,   0,   0, 184,   9, 
+     32,  10,   0,   0, 104,   0, 
+      0, 128,  32,  10,   0,   0, 
+    104,   0,   0,   0,  60,  10, 
       0,   0, 104,   0,   0, 128, 
-    184,   9,   0,   0, 104,   0, 
-      0,   0, 204,   9,   0,   0, 
-    104,   0,   0, 128, 204,   9, 
+     60,  10,   0,   0, 104,   0, 
+      0,   0,  88,  10,   0,   0, 
+    104,   0,   0, 128,  88,  10, 
       0,   0, 104,   0,   0,   0, 
-    232,   9,   0,   0, 105,   0, 
-      0, 128, 232,   9,   0,   0, 
-    105,   0,   0,   0, 252,   9, 
+    108,  10,   0,   0, 104,   0, 
+      0, 128, 108,  10,   0,   0, 
+    104,   0,   0,   0, 136,  10, 
       0,   0, 105,   0,   0, 128, 
-    252,   9,   0,   0, 105,   0, 
-      0,   0,  24,  10,   0,   0, 
-    105,   0,   0, 128,  24,  10, 
+    136,  10,   0,   0, 105,   0, 
+      0,   0, 156,  10,   0,   0, 
+    105,   0,   0, 128, 156,  10, 
       0,   0, 105,   0,   0,   0, 
-     52,  10,   0,   0, 105,   0, 
-      0, 128,  52,  10,   0,   0, 
-    105,   0,   0,   0,  72,  10, 
+    184,  10,   0,   0, 105,   0, 
+      0, 128, 184,  10,   0,   0, 
+    105,   0,   0,   0, 212,  10, 
       0,   0, 105,   0,   0, 128, 
-     72,  10,   0,   0, 105,   0, 
-      0,   0, 100,  10,   0,   0, 
-    106,   0,   0, 128, 100,  10, 
-      0,   0, 106,   0,   0,   0, 
-    120,  10,   0,   0, 107,   0, 
-      0, 128, 120,  10,   0,   0, 
-    107,   0,   0,   0, 124,  10, 
-      0,   0, 109,   0,   0, 128, 
-    124,  10,   0,   0, 109,   0, 
-      0,   0, 144,  10,   0,   0, 
-    109,   0,   0, 128, 144,  10, 
+    212,  10,   0,   0, 105,   0, 
+      0,   0, 232,  10,   0,   0, 
+    105,   0,   0, 128, 232,  10, 
+      0,   0, 105,   0,   0,   0, 
+      4,  11,   0,   0, 106,   0, 
+      0, 128,   4,  11,   0,   0, 
+    106,   0,   0,   0,  24,  11, 
+      0,   0, 107,   0,   0, 128, 
+     24,  11,   0,   0, 107,   0, 
+      0,   0,  28,  11,   0,   0, 
+    109,   0,   0, 128,  28,  11, 
       0,   0, 109,   0,   0,   0, 
-    164,  10,   0,   0, 109,   0, 
-      0, 128, 164,  10,   0,   0, 
-    109,   0,   0,   0, 184,  10, 
+     48,  11,   0,   0, 109,   0, 
+      0, 128,  48,  11,   0,   0, 
+    109,   0,   0,   0,  68,  11, 
       0,   0, 109,   0,   0, 128, 
-    184,  10,   0,   0, 109,   0, 
-      0,   0, 204,  10,   0,   0, 
-    109,   0,   0, 128, 204,  10, 
+     68,  11,   0,   0, 109,   0, 
+      0,   0,  88,  11,   0,   0, 
+    109,   0,   0, 128,  88,  11, 
       0,   0, 109,   0,   0,   0, 
-    224,  10,   0,   0, 109,   0, 
-      0, 128, 224,  10,   0,   0, 
-    109,   0,   0,   0, 244,  10, 
+    108,  11,   0,   0, 109,   0, 
+      0, 128, 108,  11,   0,   0, 
+    109,   0,   0,   0, 128,  11, 
       0,   0, 109,   0,   0, 128, 
-    244,  10,   0,   0, 109,   0, 
-      0,   0,   8,  11,   0,   0, 
-    109,   0,   0, 128,   8,  11, 
+    128,  11,   0,   0, 109,   0, 
+      0,   0, 148,  11,   0,   0, 
+    109,   0,   0, 128, 148,  11, 
       0,   0, 109,   0,   0,   0, 
-      5,   0,  79,   0,  49,   0, 
-     76,   0,   5,   0,  79,   0, 
-     21,   0,  77,   0,   5,   0, 
-     79,   0,  21,   0,  77,   0, 
+    168,  11,   0,   0, 109,   0, 
+      0, 128, 168,  11,   0,   0, 
+    109,   0,   0,   0,   5,   0, 
+     79,   0,  49,   0,  76,   0, 
       5,   0,  79,   0,  21,   0, 
      77,   0,   5,   0,  79,   0, 
+     21,   0,  77,   0,   5,   0, 
+     79,   0,  21,   0,  77,   0, 
+      5,   0,  79,   0,  11,   0, 
+     78,   0,   5,   0,  79,   0, 
      11,   0,  78,   0,   5,   0, 
      79,   0,  11,   0,  78,   0, 
-      5,   0,  79,   0,  11,   0, 
-     78,   0,   5,   0,  28,   0, 
-      5,   0,  27,   0,   5,   0, 
-     27,   0,   5,   0,  26,   0, 
-      5,   0,  72,   0,  43,   0, 
-     70,   0,   5,   0,  72,   0, 
+      5,   0,  28,   0,   5,   0, 
+     27,   0,   5,   0,  27,   0, 
+      5,   0,  26,   0,   5,   0, 
+     72,   0,  43,   0,  70,   0, 
+      5,   0,  72,   0,  23,   0, 
+     71,   0,   5,   0,  72,   0, 
      23,   0,  71,   0,   5,   0, 
      72,   0,  23,   0,  71,   0, 
       5,   0,  72,   0,  23,   0, 
      71,   0,   5,   0,  72,   0, 
      23,   0,  71,   0,   5,   0, 
-     72,   0,  23,   0,  71,   0, 
+     49,   0,  23,   0,  48,   0, 
       5,   0,  49,   0,  23,   0, 
      48,   0,   5,   0,  49,   0, 
      23,   0,  48,   0,   5,   0, 
      49,   0,  23,   0,  48,   0, 
-      5,   0,  49,   0,  23,   0, 
-     48,   0,   5,   0,  55,   0, 
-     23,   0,  54,   0,   5,   0, 
-     55,   0,  23,   0,  54,   0, 
       5,   0,  55,   0,  23,   0, 
      54,   0,   5,   0,  55,   0, 
      23,   0,  54,   0,   5,   0, 
+     55,   0,  23,   0,  54,   0, 
+      5,   0,  55,   0,  23,   0, 
+     54,   0,   5,   0,  50,   0, 
+      5,   0,  49,   0,   5,   0, 
      50,   0,   5,   0,  49,   0, 
-      5,   0,  50,   0,   5,   0, 
-     49,   0,   5,   0,  22,   0, 
-     10,   0,  21,   0,   5,   0, 
-     26,   0,  10,   0,  25,   0, 
+      5,   0,  22,   0,  10,   0, 
+     21,   0,   5,   0,  26,   0, 
+     10,   0,  25,   0,   5,   0, 
+     25,   0,   9,   0,  24,   0, 
       5,   0,  25,   0,   9,   0, 
      24,   0,   5,   0,  25,   0, 
-      9,   0,  24,   0,   5,   0, 
-     25,   0,   5,   0,  25,   0, 
+      5,   0,  25,   0,   9,   0, 
+     44,   0,  20,   0,  33,   0, 
       9,   0,  44,   0,  20,   0, 
-     33,   0,   9,   0,  44,   0, 
-     20,   0,  33,   0,   9,   0, 
+     33,   0,   9,   0,  52,   0, 
+     24,   0,  37,   0,   9,   0, 
      52,   0,  24,   0,  37,   0, 
-      9,   0,  52,   0,  24,   0, 
-     37,   0,   5,   0,   5,   0, 
-      5,   0,   5,   0,  10,   0, 
-     36,   0,  14,   0,  35,   0, 
-     10,   0,  36,   0,  10,   0, 
+      5,   0,   5,   0,   5,   0, 
+      5,   0,  10,   0,  36,   0, 
+     14,   0,  35,   0,  10,   0, 
      36,   0,  10,   0,  36,   0, 
-     10,   0,  36,   0,   9,   0, 
+     10,   0,  36,   0,  10,   0, 
+     36,   0,   9,   0,  30,   0, 
+     13,   0,  24,   0,   9,   0, 
      30,   0,  13,   0,  24,   0, 
-      9,   0,  30,   0,  13,   0, 
-     24,   0,   9,   0,  30,   0, 
-      9,   0,  30,   0,  13,   0, 
+      9,   0,  30,   0,   9,   0, 
+     30,   0,  13,   0,  59,   0, 
+     36,   0,  47,   0,  13,   0, 
+     59,   0,  36,   0,  47,   0, 
+     13,   0,  59,   0,  24,   0, 
+     48,   0,  13,   0,  67,   0, 
+     40,   0,  51,   0,  13,   0, 
+     67,   0,  40,   0,  51,   0, 
+     13,   0,  67,   0,  28,   0, 
+     52,   0,   9,   0,   9,   0, 
+      9,   0,   9,   0,  13,   0, 
      59,   0,  36,   0,  47,   0, 
      13,   0,  59,   0,  36,   0, 
      47,   0,  13,   0,  59,   0, 
@@ -3233,68 +3291,66 @@ const BYTE CustomUIDX11VertexShader[] =
      51,   0,  13,   0,  67,   0, 
      28,   0,  52,   0,   9,   0, 
       9,   0,   9,   0,   9,   0, 
-     13,   0,  59,   0,  36,   0, 
-     47,   0,  13,   0,  59,   0, 
-     36,   0,  47,   0,  13,   0, 
-     59,   0,  24,   0,  48,   0, 
-     13,   0,  67,   0,  40,   0, 
-     51,   0,  13,   0,  67,   0, 
-     40,   0,  51,   0,  13,   0, 
-     67,   0,  28,   0,  52,   0, 
-      9,   0,   9,   0,   9,   0, 
-      9,   0,   5,   0,   5,   0, 
       5,   0,   5,   0,   5,   0, 
       5,   0,   5,   0,   5,   0, 
-      5,   0,  50,   0,   5,   0, 
-     50,   0,   5,   0,  50,   0, 
-      5,   0,  50,   0,   9,   0, 
+      5,   0,   5,   0,   5,   0, 
+     72,   0,   9,   0,  23,   0, 
+      5,   0,  72,   0,   9,   0, 
+     23,   0,   5,   0,  72,   0, 
+     29,   0,  50,   0,   5,   0, 
+     72,   0,  55,   0,  70,   0, 
+      5,   0,  72,   0,  55,   0, 
+     70,   0,   5,   0,  72,   0, 
+     29,   0,  70,   0,   5,   0, 
+     72,   0,   9,   0,  71,   0, 
+      5,   0,  72,   0,   5,   0, 
+     72,   0,   9,   0,  79,   0, 
+     30,   0,  43,   0,   9,   0, 
      79,   0,  30,   0,  43,   0, 
-      9,   0,  79,   0,  30,   0, 
-     43,   0,   9,   0,  79,   0, 
-     29,   0,  51,   0,   9,   0, 
+      9,   0,  79,   0,  29,   0, 
+     51,   0,   9,   0,  79,   0, 
+     28,   0,  60,   0,   9,   0, 
      79,   0,  28,   0,  60,   0, 
-      9,   0,  79,   0,  28,   0, 
-     60,   0,   9,   0,  79,   0, 
-     27,   0,  78,   0,   9,   0, 
+      9,   0,  79,   0,  27,   0, 
+     78,   0,   9,   0,  79,   0, 
+     30,   0,  43,   0,   9,   0, 
      79,   0,  30,   0,  43,   0, 
-      9,   0,  79,   0,  30,   0, 
-     43,   0,   9,   0,  79,   0, 
-     29,   0,  51,   0,   9,   0, 
+      9,   0,  79,   0,  29,   0, 
+     51,   0,   9,   0,  79,   0, 
+     28,   0,  60,   0,   9,   0, 
      79,   0,  28,   0,  60,   0, 
-      9,   0,  79,   0,  28,   0, 
-     60,   0,   9,   0,  79,   0, 
-     27,   0,  78,   0,   9,   0, 
-     78,   0,  30,   0,  42,   0, 
-      9,   0,  78,   0,  30,   0, 
-     42,   0,   9,   0,  78,   0, 
-     29,   0,  50,   0,   9,   0, 
-     78,   0,  28,   0,  59,   0, 
-      9,   0,  78,   0,  28,   0, 
-     59,   0,   9,   0,  78,   0, 
-     27,   0,  77,   0,   9,   0, 
-     64,   0,  29,   0,  46,   0, 
-      9,   0,  64,   0,  29,   0, 
-     46,   0,   9,   0,  64,   0, 
-     28,   0,  54,   0,   9,   0, 
-     64,   0,  27,   0,  63,   0, 
-      9,   0,  64,   0,  27,   0, 
-     63,   0,   9,   0,  64,   0, 
+      9,   0,  79,   0,  27,   0, 
+     78,   0,   9,   0,  78,   0, 
+     30,   0,  42,   0,   9,   0, 
+     78,   0,  30,   0,  42,   0, 
+      9,   0,  78,   0,  29,   0, 
+     50,   0,   9,   0,  78,   0, 
+     28,   0,  59,   0,   9,   0, 
+     78,   0,  28,   0,  59,   0, 
+      9,   0,  78,   0,  27,   0, 
+     77,   0,   9,   0,  64,   0, 
      29,   0,  46,   0,   9,   0, 
      64,   0,  29,   0,  46,   0, 
       9,   0,  64,   0,  28,   0, 
      54,   0,   9,   0,  64,   0, 
      27,   0,  63,   0,   9,   0, 
      64,   0,  27,   0,  63,   0, 
+      9,   0,  64,   0,  29,   0, 
+     46,   0,   9,   0,  64,   0, 
+     29,   0,  46,   0,   9,   0, 
+     64,   0,  28,   0,  54,   0, 
+      9,   0,  64,   0,  27,   0, 
+     63,   0,   9,   0,  64,   0, 
+     27,   0,  63,   0,   9,   0, 
+     63,   0,  29,   0,  45,   0, 
       9,   0,  63,   0,  29,   0, 
      45,   0,   9,   0,  63,   0, 
-     29,   0,  45,   0,   9,   0, 
-     63,   0,  28,   0,  53,   0, 
+     28,   0,  53,   0,   9,   0, 
+     63,   0,  27,   0,  62,   0, 
       9,   0,  63,   0,  27,   0, 
-     62,   0,   9,   0,  63,   0, 
-     27,   0,  62,   0,   9,   0, 
-     30,   0,   9,   0,  29,   0, 
+     62,   0,   9,   0,  30,   0, 
+      9,   0,  29,   0,   5,   0, 
       5,   0,   5,   0,   5,   0, 
-      5,   0,   5,   0,  18,   0, 
       5,   0,  18,   0,   5,   0, 
      18,   0,   5,   0,  18,   0, 
       5,   0,  18,   0,   5,   0, 
@@ -3305,13 +3361,75 @@ const BYTE CustomUIDX11VertexShader[] =
      18,   0,   5,   0,  18,   0, 
       5,   0,  18,   0,   5,   0, 
      18,   0,   5,   0,  18,   0, 
-    246,   0,   0,   0,   4,   0, 
+      5,   0,  18,   0, 246,   0, 
+      0,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,  28,   0, 
+      0,   0,   0,   0,   0,   0, 
+     36,   0,   0,   0,  72,   0, 
+      0,   0, 100,   0,   0,   0, 
+    132,   0,   0,   0, 164,   0, 
+      0,   0, 200,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-     28,   0,   0,   0,   0,   0, 
-      0,   0,  36,   0,   0,   0, 
-     72,   0,   0,   0, 100,   0, 
-      0,   0, 132,   0,   0,   0, 
-    164,   0,   0,   0, 200,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -3899,33 +4017,50 @@ const BYTE CustomUIDX11VertexShader[] =
     105, 102,  32,  40, 108, 105, 
     103, 104, 116,  76, 101, 110, 
     103, 116, 104,  32,  62,  32, 
-     48,  32,  38,  38,  32, 105, 
-    110, 112, 117, 116,  46, 105, 
-    100,  32,  60,  32, 108, 105, 
-    103, 104, 116,  76, 101, 110, 
-    103, 116, 104,  41,  13,  10, 
-     32,  32,  32,  32, 123,  13, 
-     10,  32,  32,  32,  32,  32, 
-     32,  32,  32, 111, 117, 116, 
-    112, 117, 116,  46, 108, 105, 
-    103, 104, 116,  49,  46, 120, 
-     32,  61,  32,  40,  40,  40, 
+     48,  32,  38,  38,  32,  40, 
+    105, 110, 112, 117, 116,  46, 
+    105, 100,  32,  60,  32, 108, 
+    105, 103, 104, 116,  76, 101, 
+    110, 103, 116, 104,  32, 124, 
+    124,  32, 108, 105, 103, 104, 
+    116,  76, 101, 110, 103, 116, 
+    104,  32,  61,  61,  32,  49, 
+     41,  41,  13,  10,  32,  32, 
+     32,  32, 123,  13,  10,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32, 111, 117, 116, 112, 117, 
+    116,  46, 108, 105, 103, 104, 
+    116,  49,  46, 120,  32,  61, 
+     32,  40,  40,  40, 100,  97, 
+    121,  76, 105, 103, 104, 116, 
+     32,  62,  62,  32,  50,  52, 
+     41,  32,  38,  32,  48, 120, 
+     70,  70,  41,  32,  47,  32, 
+     50,  53,  53,  46, 102,  41, 
+     32,  42,  32, 100,  97, 121, 
+     76, 105, 103, 104, 116,  70, 
+     97,  99, 116, 111, 114,  59, 
+     13,  10,  32,  32,  32,  32, 
+     32,  32,  32,  32, 111, 117, 
+    116, 112, 117, 116,  46, 108, 
+    105, 103, 104, 116,  49,  46, 
+    121,  32,  61,  32,  40,  40, 
+     40, 100,  97, 121,  76, 105, 
+    103, 104, 116,  32,  62,  62, 
+     32,  49,  54,  41,  32,  38, 
+     32,  48, 120,  70,  70,  41, 
+     32,  47,  32,  50,  53,  53, 
+     46, 102,  41,  32,  42,  32, 
     100,  97, 121,  76, 105, 103, 
-    104, 116,  32,  62,  62,  32, 
-     50,  52,  41,  32,  38,  32, 
-     48, 120,  70,  70,  41,  32, 
-     47,  32,  50,  53,  53,  46, 
-    102,  41,  32,  42,  32, 100, 
-     97, 121,  76, 105, 103, 104, 
-    116,  70,  97,  99, 116, 111, 
-    114,  59,  13,  10,  32,  32, 
+    104, 116,  70,  97,  99, 116, 
+    111, 114,  59,  13,  10,  32, 
      32,  32,  32,  32,  32,  32, 
-    111, 117, 116, 112, 117, 116, 
-     46, 108, 105, 103, 104, 116, 
-     49,  46, 121,  32,  61,  32, 
-     40,  40,  40, 100,  97, 121, 
-     76, 105, 103, 104, 116,  32, 
-     62,  62,  32,  49,  54,  41, 
+     32, 111, 117, 116, 112, 117, 
+    116,  46, 108, 105, 103, 104, 
+    116,  49,  46, 122,  32,  61, 
+     32,  40,  40,  40, 100,  97, 
+    121,  76, 105, 103, 104, 116, 
+     32,  62,  62,  32,  56,  41, 
      32,  38,  32,  48, 120,  70, 
      70,  41,  32,  47,  32,  50, 
      53,  53,  46, 102,  41,  32, 
@@ -3935,69 +4070,52 @@ const BYTE CustomUIDX11VertexShader[] =
      10,  32,  32,  32,  32,  32, 
      32,  32,  32, 111, 117, 116, 
     112, 117, 116,  46, 108, 105, 
-    103, 104, 116,  49,  46, 122, 
-     32,  61,  32,  40,  40,  40, 
-    100,  97, 121,  76, 105, 103, 
-    104, 116,  32,  62,  62,  32, 
-     56,  41,  32,  38,  32,  48, 
-    120,  70,  70,  41,  32,  47, 
-     32,  50,  53,  53,  46, 102, 
-     41,  32,  42,  32, 100,  97, 
-    121,  76, 105, 103, 104, 116, 
-     70,  97,  99, 116, 111, 114, 
-     59,  13,  10,  32,  32,  32, 
-     32,  32,  32,  32,  32, 111, 
-    117, 116, 112, 117, 116,  46, 
-    108, 105, 103, 104, 116,  50, 
-     46, 120,  32,  61,  32,  40, 
-     40, 100, 121, 110,  97, 109, 
-    105,  99,  76, 105, 103, 104, 
-    116,  32,  62,  62,  32,  50, 
-     52,  41,  32,  38,  32,  48, 
-    120,  70,  70,  41,  32,  47, 
-     32,  50,  53,  53,  46, 102, 
-     59,  13,  10,  32,  32,  32, 
-     32,  32,  32,  32,  32, 111, 
-    117, 116, 112, 117, 116,  46, 
-    108, 105, 103, 104, 116,  50, 
-     46, 121,  32,  61,  32,  40, 
-     40, 100, 121, 110,  97, 109, 
-    105,  99,  76, 105, 103, 104, 
-    116,  32,  62,  62,  32,  49, 
-     54,  41,  32,  38,  32,  48, 
-    120,  70,  70,  41,  32,  47, 
-     32,  50,  53,  53,  46, 102, 
-     59,  13,  10,  32,  32,  32, 
-     32,  32,  32,  32,  32, 111, 
-    117, 116, 112, 117, 116,  46, 
-    108, 105, 103, 104, 116,  50, 
-     46, 122,  32,  61,  32,  40, 
-     40, 100, 121, 110,  97, 109, 
-    105,  99,  76, 105, 103, 104, 
-    116,  32,  62,  62,  32,  56, 
-     41,  32,  38,  32,  48, 120, 
-     70,  70,  41,  32,  47,  32, 
-     50,  53,  53,  46, 102,  59, 
+    103, 104, 116,  50,  46, 120, 
+     32,  61,  32,  40,  40, 100, 
+    121, 110,  97, 109, 105,  99, 
+     76, 105, 103, 104, 116,  32, 
+     62,  62,  32,  50,  52,  41, 
+     32,  38,  32,  48, 120,  70, 
+     70,  41,  32,  47,  32,  50, 
+     53,  53,  46, 102,  59,  13, 
+     10,  32,  32,  32,  32,  32, 
+     32,  32,  32, 111, 117, 116, 
+    112, 117, 116,  46, 108, 105, 
+    103, 104, 116,  50,  46, 121, 
+     32,  61,  32,  40,  40, 100, 
+    121, 110,  97, 109, 105,  99, 
+     76, 105, 103, 104, 116,  32, 
+     62,  62,  32,  49,  54,  41, 
+     32,  38,  32,  48, 120,  70, 
+     70,  41,  32,  47,  32,  50, 
+     53,  53,  46, 102,  59,  13, 
+     10,  32,  32,  32,  32,  32, 
+     32,  32,  32, 111, 117, 116, 
+    112, 117, 116,  46, 108, 105, 
+    103, 104, 116,  50,  46, 122, 
+     32,  61,  32,  40,  40, 100, 
+    121, 110,  97, 109, 105,  99, 
+     76, 105, 103, 104, 116,  32, 
+     62,  62,  32,  56,  41,  32, 
+     38,  32,  48, 120,  70,  70, 
+     41,  32,  47,  32,  50,  53, 
+     53,  46, 102,  59,  13,  10, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32, 111, 117, 116, 112, 
+    117, 116,  46, 108, 105, 103, 
+    104, 116,  49,  46, 119,  32, 
+     61,  32,  49,  46, 102,  59, 
      13,  10,  32,  32,  32,  32, 
-     32,  32,  32,  32, 111, 117, 
-    116, 112, 117, 116,  46, 108, 
-    105, 103, 104, 116,  49,  46, 
-    119,  32,  61,  32,  49,  46, 
-    102,  59,  13,  10,  32,  32, 
-     32,  32, 125,  13,  10,  13, 
-     10,  32,  32,  32,  32, 114, 
-    101, 116, 117, 114, 110,  32, 
-    111, 117, 116, 112, 117, 116, 
-     59,  13,  10, 125,   0,   7, 
-      0,   0,   0,   0,   0,   0, 
-      0, 131,   0,   0,   0, 132, 
-      0,   0,   0,   1,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   6,   1,   0, 
-      0,   4,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
+    125,  13,  10,  13,  10,  32, 
+     32,  32,  32, 114, 101, 116, 
+    117, 114, 110,  32, 111, 117, 
+    116, 112, 117, 116,  59,  13, 
+     10, 125,   0,   7,   0,   0, 
+      0,   6,   1,   0,   0, 131, 
+      0,   0,   0, 132,   0,   0, 
+      0,   1,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   4, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -4015,7 +4133,7 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,  68,  51, 
      68,  83,  72,  68,  82,   0, 
-     12,  11,   0,   0,   0,   0, 
+    172,  11,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -4453,12 +4571,12 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   1,   0, 
       0,   0,   0,   0,   0,   0, 
-     12,  11,   0,   0,  32,   0, 
+    172,  11,   0,   0,  32,   0, 
       0,  96,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   2,   0,  10,   0, 
     148,   7,   0,   0,   0,   0, 
-      0,   0, 220,   9,   0,   0, 
+      0,   0, 108,  10,   0,   0, 
       1,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,  84, 101, 
@@ -4468,14 +4586,14 @@ const BYTE CustomUIDX11VertexShader[] =
     110, 111, 110, 101,   0,   0, 
       0,   0,  45, 186,  46, 241, 
       1,   0,   0,   0,   0,   0, 
-      0,   0,  12,  11,   0,   0, 
+      0,   0, 172,  11,   0,   0, 
      32,   0,   0,  96,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   2,   0, 
       2,   0,   7,   0,   0,   0, 
       0,   0,   1,   0, 255, 255, 
     255, 255,   0,   0,   0,   0, 
-     12,  11,   0,   0,   8,   2, 
+    172,  11,   0,   0,   8,   2, 
       0,   0,   0,   0,   0,   0, 
     255, 255, 255, 255,   0,   0, 
       0,   0, 255, 255, 255, 255, 
@@ -4526,11 +4644,11 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0, 148,  46, 
-     49,   1, 237,  10,   6, 104, 
-      1,   0,   0,   0, 252, 177, 
-    215, 149, 125,  23, 120,  68, 
-    141,  15,  69,  68, 121,  34, 
-    134, 151, 202,   0,   0,   0, 
+     49,   1, 143,   8,  42, 104, 
+      1,   0,   0,   0, 249, 195, 
+    199, 193, 123,  58, 224,  71, 
+    131,  29,  68, 125, 127, 184, 
+     97,  22, 202,   0,   0,   0, 
      47,  76, 105, 110, 107,  73, 
     110, 102, 111,   0,  47,  84, 
      77,  67,  97,  99, 104, 101, 
@@ -4616,22 +4734,22 @@ const BYTE CustomUIDX11VertexShader[] =
     237,   2,   0,   0, 169,   1, 
       0,   0,  56,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-      0,   0, 143,  13,   0,   0, 
-    128,   0,   0,   0,  88,  12, 
-      0,   0, 144,  17,   0,   0, 
+      0,   0, 165,  13,   0,   0, 
+    128,   0,   0,   0, 110,  12, 
+      0,   0,  32,  18,   0,   0, 
     104,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
      40,   0,   0,   0, 104,   2, 
       0,   0,  44,   0,   0,   0, 
     232,   0,   0,   0,   7,   0, 
+      0,   0,  42,   0,   0,   0, 
+     29,   0,   0,   0,  28,   0, 
       0,   0,  41,   0,   0,   0, 
-     28,   0,   0,   0,  27,   0, 
-      0,   0,  40,   0,   0,   0, 
-     29,   0,   0,   0,  16,   0, 
+     30,   0,   0,   0,  16,   0, 
       0,   0,   3,   0,   0,   0, 
-     30,   0,   0,   0,  31,   0, 
-      0,   0,  32,   0,   0,   0, 
-     33,   0,   0,   0,  34,   0, 
+     31,   0,   0,   0,  32,   0, 
+      0,   0,  33,   0,   0,   0, 
+     34,   0,   0,   0,  35,   0, 
       0,   0,  17,   0,   0,   0, 
       9,   0,   0,   0,  10,   0, 
       0,   0,  11,   0,   0,   0, 
@@ -4643,97 +4761,11 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,  22,   0,   0,   0, 
      23,   0,   0,   0,  24,   0, 
       0,   0,  25,   0,   0,   0, 
-     26,   0,   0,   0,   4,   0, 
-      0,   0,  35,   0,   0,   0, 
+     26,   0,   0,   0,  27,   0, 
+      0,   0,   4,   0,   0,   0, 
      36,   0,   0,   0,  37,   0, 
-      0,   0,  39,   0,   0,   0, 
-     38,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,  42,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
+      0,   0,  38,   0,   0,   0, 
+     40,   0,   0,   0,  39,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -4782,6 +4814,7 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
+      0,   0,  43,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
@@ -5037,5 +5070,5 @@ const BYTE CustomUIDX11VertexShader[] =
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
       0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0
+      0,   0
 };

+ 2 - 0
FactoryCraft/DX11CustomPixelShader.hlsl

@@ -129,6 +129,8 @@ float4 TexturePixelShader(PixelInputType input) : SV_TARGET
         {
             diffuseLight.z = diffuseLight2.z;
         }
+		// use this return to debug dynamic lightning
+		//return float4(input.light2.x, input.light2.y, input.light2.z, 1.0);
 	}
 	else
 	{

+ 1 - 1
FactoryCraft/DX11CustomVertexShader.hlsl

@@ -95,7 +95,7 @@ PixelInputType TextureVertexShader(VertexInputType input)
             dynamicLight = lightBuffer[input.id / 2].dynamicLight2;
         }
     }
-    if (lightLength > 0 && input.id < lightLength)
+    if (lightLength > 0 && (input.id < lightLength || lightLength == 1))
     {
         output.light1.x = (((dayLight >> 24) & 0xFF) / 255.f) * dayLightFactor;
         output.light1.y = (((dayLight >> 16) & 0xFF) / 255.f) * dayLightFactor;

+ 14 - 4
FactoryCraft/FactoryCraftModel.cpp

@@ -18,6 +18,7 @@ FactoryCraftModel::FactoryCraftModel()
         = uiFactory.initParam.bildschirm->zGraphicsApi()->createOrGetTextur(
             "blocks.ltdb/crack.png", 0);
     effectAlpha = 0;
+    memset(averageLight, 0, 8);
 }
 
 FactoryCraftModel::~FactoryCraftModel()
@@ -33,7 +34,6 @@ struct TexturEffect
     float percentage;
 };
 
-
 void FactoryCraftModel::beforeRender(Framework::GraphicsApi* api,
     Framework::Shader* zVertexShader,
     Framework::Shader* zPixelShader)
@@ -54,14 +54,17 @@ void FactoryCraftModel::beforeRender(Framework::GraphicsApi* api,
         }
         else
         {
+            World::INSTANCE->zFallbackVertexLightBuffer()->setData(
+                averageLight);
+            World::INSTANCE->zFallbackVertexLightBuffer()->setChanged();
+            World::INSTANCE->zFallbackVertexLightBuffer()->copieren(8);
             cApi->setVertexLightBuffer(
                 World::INSTANCE->zFallbackVertexLightBuffer());
         }
         if (destroyedState > 0 && effectAlpha)
         {
             TexturEffect e = {1, 1.f + destroyedState};
-            zPixelShader->füllConstBuffer(
-                (char*)&e, 3, sizeof(TexturEffect));
+            zPixelShader->füllConstBuffer((char*)&e, 3, sizeof(TexturEffect));
         }
     }
 }
@@ -145,4 +148,11 @@ Textur* FactoryCraftModel::zEffectTextur()
 float FactoryCraftModel::getEffectPercentage()
 {
     return destroyedState;
-}
+}
+
+void FactoryCraftModel::setAverageLight(unsigned char light[3])
+{
+    *(averageLight + 5) = light[2];
+    *(averageLight + 6) = light[1];
+    *(averageLight + 7) = light[0];
+}

+ 2 - 0
FactoryCraft/FactoryCraftModel.h

@@ -15,6 +15,7 @@ private:
     float destroyedState;
     Framework::Textur* breakTextur;
     bool effectAlpha;
+    unsigned char averageLight[8];
 
 protected:
     void beforeRender(Framework::GraphicsApi* api,
@@ -36,4 +37,5 @@ public:
     bool needRenderPolygon(int index) override;
     Framework::Textur* zEffectTextur() override;
     float getEffectPercentage() override;
+    void setAverageLight(unsigned char light[3]);
 };

+ 2 - 0
FactoryCraft/World.cpp

@@ -50,6 +50,8 @@ World::World(Bildschirm3D* zScreen, FactoryClient* client)
     selectionModel->setModelDaten(zScreen->zGraphicsApi()->getModel("cube"));
     selectionModel->setSize(1.005f);
     selectionModel->setVisible(0);
+    unsigned char light[3] = {0xff, 0xff, 0xff};
+    selectionModel->setAverageLight(light);
     selectionModel->setModelTextur(new Model3DTextur());
     for (int i = 0; i < 6; i++)
     {