8720{
8725 {
8729 };
8731 {
8736 };
8738 {
8743 };
8745 {
8749 };
8751 {
8755 };
8757 {
8761 };
8763 {
8767 };
8769 {
8773 };
8775 {
8779 };
8781 {
8785 };
8787 {
8791 };
8793 {
8797 };
8799 {
8803 };
8805 {
8809 };
8811 {
8815 };
8817 {
8821 };
8823 {
8827 };
8829 {
8833 };
8835 {
8839 };
8841 {
8846 };
8847 const unsigned int VERTS_PER_FACE = 3;
8850 struct vertex_pn
8851 {
8854 };
8855 struct vertex_pntc
8856 {
8860 };
8861 struct vertex_ptcn
8862 {
8866 };
8867 struct vertex_ptc
8868 {
8871 };
8872 struct vertex_ptc_float16_2
8873 {
8876 };
8877 struct vertex_ptc_float16_4
8878 {
8881 };
8882 struct vertex_ptc_float1
8883 {
8886 };
8887 struct vertex_ptc_float3
8888 {
8891 };
8892 struct vertex_ptc_float4
8893 {
8896 };
8897 struct vertex_ptc_d3dcolor
8898 {
8901 };
8902 struct vertex_ptc_ubyte4
8903 {
8906 };
8907 struct vertex_ptc_ubyte4n
8908 {
8911 };
8912 struct vertex_ptc_short2
8913 {
8916 };
8917 struct vertex_ptc_short4
8918 {
8921 };
8922 struct vertex_ptc_ushort2n
8923 {
8926 };
8927 struct vertex_ptc_ushort4n
8928 {
8931 };
8932 struct vertex_ptc_udec3
8933 {
8936 };
8937 struct vertex_ptc_dec3n
8938 {
8941 };
8944
8945
8946
8947
8948
8949
8950
8951
8952 const struct vertex_pn vertices0[] =
8953 {
8954 {{ 0.0f, 3.0f, 0.f},
up},
8955 {{ 2.0f, 3.0f, 0.f},
up},
8956 {{ 0.0f, 0.0f, 0.f},
up},
8957
8958 {{ 3.0f, 3.0f, 0.f},
up},
8959 {{ 3.0f, 0.0f, 0.f},
up},
8960 {{ 1.0f, 0.0f, 0.f},
up},
8961 };
8964 const UINT vertex_size0 =
sizeof(*vertices0);
8965
8967
8968
8969
8970 const struct vertex_pntc exp_vertices2[] =
8971 {
8972 {{ 0.0f, 3.0f, 0.f},
up, zero_vec2},
8973 {{ 2.0f, 3.0f, 0.f},
up, zero_vec2},
8974 {{ 0.0f, 0.0f, 0.f},
up, zero_vec2},
8975
8976 {{ 3.0f, 3.0f, 0.f},
up, zero_vec2},
8977 {{ 3.0f, 0.0f, 0.f},
up, zero_vec2},
8978 {{ 1.0f, 0.0f, 0.f},
up, zero_vec2},
8979 };
8980 const UINT exp_vertex_size2 =
sizeof(*exp_vertices2);
8981
8982
8983
8984
8985 const struct vertex_ptcn exp_vertices3[] =
8986 {
8987 {{ 0.0f, 3.0f, 0.f}, zero_vec2,
up},
8988 {{ 2.0f, 3.0f, 0.f}, zero_vec2,
up},
8989 {{ 0.0f, 0.0f, 0.f}, zero_vec2,
up},
8990
8991 {{ 3.0f, 3.0f, 0.f}, zero_vec2,
up},
8992 {{ 3.0f, 0.0f, 0.f}, zero_vec2,
up},
8993 {{ 1.0f, 0.0f, 0.f}, zero_vec2,
up},
8994 };
8995 const UINT exp_vertex_size3 =
sizeof(*exp_vertices3);
8996
8997 const struct vertex_ptc vertices4[] =
8998 {
8999 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
9000 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
9001 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f}},
9002
9003 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
9004 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f}},
9005 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f}},
9006 };
9009 const UINT vertex_size4 =
sizeof(*vertices4);
9010 const struct vertex_ptc_float16_2 exp_vertices4[] =
9011 {
9012 {{ 0.0f, 3.0f, 0.f}, {0x3c00, 0x3c00}},
9013 {{ 2.0f, 3.0f, 0.f}, {0x3800, 0x399a}},
9014 {{ 0.0f, 0.0f, 0.f}, {0xb266, 0xb4cd}},
9015
9016 {{ 3.0f, 3.0f, 0.f}, {0x3266, 0x34cd}},
9017 {{ 3.0f, 0.0f, 0.f}, {0x3c00, 0x3c00}},
9018 {{ 1.0f, 0.0f, 0.f}, {0x2e66, 0x3266}},
9019 };
9020 const UINT exp_vertex_size4 =
sizeof(*exp_vertices4);
9021
9022 const struct vertex_ptc vertices5[] =
9023 {
9024 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
9025 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
9026 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f}},
9027
9028 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
9029 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f}},
9030 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f}},
9031 };
9034 const UINT vertex_size5 =
sizeof(*vertices5);
9035 const struct vertex_ptc_float16_4 exp_vertices5[] =
9036 {
9037 {{ 0.0f, 3.0f, 0.f}, {0x3c00, 0x3c00, 0, 0x3c00}},
9038 {{ 2.0f, 3.0f, 0.f}, {0x3800, 0x399a, 0, 0x3c00}},
9039 {{ 0.0f, 0.0f, 0.f}, {0xb266, 0xb4cd, 0, 0x3c00}},
9040
9041 {{ 3.0f, 3.0f, 0.f}, {0x3266, 0x34cd, 0, 0x3c00}},
9042 {{ 3.0f, 0.0f, 0.f}, {0x3c00, 0x3c00, 0, 0x3c00}},
9043 {{ 1.0f, 0.0f, 0.f}, {0x2e66, 0x3266, 0, 0x3c00}},
9044 };
9045 const UINT exp_vertex_size5 =
sizeof(*exp_vertices5);
9046
9047 const struct vertex_ptc vertices6[] =
9048 {
9049 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
9050 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
9051 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f}},
9052
9053 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
9054 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f}},
9055 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f}},
9056 };
9059 const UINT vertex_size6 =
sizeof(*vertices6);
9060 const struct vertex_ptc_float1 exp_vertices6[] =
9061 {
9062 {{ 0.0f, 3.0f, 0.f}, 1.0f},
9063 {{ 2.0f, 3.0f, 0.f}, 0.5f},
9064 {{ 0.0f, 0.0f, 0.f}, -0.2f},
9065
9066 {{ 3.0f, 3.0f, 0.f}, 0.2f},
9067 {{ 3.0f, 0.0f, 0.f}, 1.0f},
9068 {{ 1.0f, 0.0f, 0.f}, 0.1f},
9069 };
9070 const UINT exp_vertex_size6 =
sizeof(*exp_vertices6);
9071
9072 const struct vertex_ptc vertices7[] =
9073 {
9074 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
9075 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
9076 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f}},
9077
9078 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
9079 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f}},
9080 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f}},
9081 };
9084 const UINT vertex_size7 =
sizeof(*vertices7);
9085 const struct vertex_ptc_float3 exp_vertices7[] =
9086 {
9087 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f, 0.0f}},
9088 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f, 0.0f}},
9089 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f, 0.0f}},
9090
9091 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f, 0.0f}},
9092 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f, 0.0f}},
9093 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f, 0.0f}},
9094 };
9095 const UINT exp_vertex_size7 =
sizeof(*exp_vertices7);
9096
9097 const struct vertex_ptc vertices8[] =
9098 {
9099 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
9100 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
9101 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f}},
9102
9103 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
9104 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f}},
9105 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f}},
9106 };
9109 const UINT vertex_size8 =
sizeof(*vertices8);
9110 const struct vertex_ptc_float4 exp_vertices8[] =
9111 {
9112 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f, 0.0f, 1.0f}},
9113 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f, 0.0f, 1.0f}},
9114 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f, 0.0f, 1.0f}},
9115
9116 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f, 0.0f, 1.0f}},
9117 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f, 0.0f, 1.0f}},
9118 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f, 0.0f, 1.0f}},
9119 };
9120 const UINT exp_vertex_size8 =
sizeof(*exp_vertices8);
9121
9122 const struct vertex_ptc vertices9[] =
9123 {
9124 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
9125 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
9126 {{ 0.0f, 0.0f, 0.f}, {-0.4f, -0.6f}},
9127
9128 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
9129 {{ 3.0f, 0.0f, 0.f}, { 2.0f, 256.0f}},
9130 {{ 1.0f, 0.0f, 0.f}, { 0.11f, 0.2f}},
9131 };
9134 const UINT vertex_size9 =
sizeof(*vertices9);
9135 const struct vertex_ptc_d3dcolor exp_vertices9[] =
9136 {
9137 {{ 0.0f, 3.0f, 0.f}, {0, 255, 255, 255}},
9138 {{ 2.0f, 3.0f, 0.f}, {0, 179, 128, 255}},
9139 {{ 0.0f, 0.0f, 0.f}, {0, 0, 0, 255}},
9140
9141 {{ 3.0f, 3.0f, 0.f}, {0, 77, 51, 255}},
9142 {{ 3.0f, 0.0f, 0.f}, {0, 255, 255, 255}},
9143 {{ 1.0f, 0.0f, 0.f}, {0, 51, 28, 255}},
9144 };
9145 const UINT exp_vertex_size9 =
sizeof(*exp_vertices9);
9146
9147 const struct vertex_ptc vertices10[] =
9148 {
9149 {{ 0.0f, 3.0f, 0.f}, { 0.0f, 1.0f}},
9150 {{ 2.0f, 3.0f, 0.f}, { 2.0f, 3.0f}},
9151 {{ 0.0f, 0.0f, 0.f}, { 254.0f, 255.0f}},
9152
9153 {{ 3.0f, 3.0f, 0.f}, { 256.0f, 257.0f}},
9154 {{ 3.0f, 0.0f, 0.f}, { 1.4f, 1.5f}},
9155 {{ 1.0f, 0.0f, 0.f}, {-4.0f, -5.0f}},
9156 };
9158 const UINT num_faces10 =
ARRAY_SIZE(vertices10) / VERTS_PER_FACE;
9159 const UINT vertex_size10 =
sizeof(*vertices10);
9160 const struct vertex_ptc_ubyte4 exp_vertices10[] =
9161 {
9162 {{ 0.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9163 {{ 2.0f, 3.0f, 0.f}, {2, 3, 0, 1}},
9164 {{ 0.0f, 0.0f, 0.f}, {254, 255, 0, 1}},
9165
9166 {{ 3.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9167 {{ 3.0f, 0.0f, 0.f}, {1, 2, 0, 1}},
9168 {{ 1.0f, 0.0f, 0.f}, {0, 0, 0, 1}},
9169 };
9170 const UINT exp_vertex_size10 =
sizeof(*exp_vertices10);
9171
9172 const struct vertex_ptc vertices11[] =
9173 {
9174 {{ 0.0f, 3.0f, 0.f}, { 1.0f, -1.0f}},
9175 {{ 2.0f, 3.0f, 0.f}, { 0.4f, 0.5f}},
9176 {{ 0.0f, 0.0f, 0.f}, {-0.5f, -5.0f}},
9177
9181
9185 };
9187 const UINT num_faces11 =
ARRAY_SIZE(vertices11) / VERTS_PER_FACE;
9188 const UINT vertex_size11 =
sizeof(*vertices11);
9189 const struct vertex_ptc_short2 exp_vertices11[] =
9190 {
9191 {{ 0.0f, 3.0f, 0.f}, {1, 0}},
9192 {{ 2.0f, 3.0f, 0.f}, {0, 1}},
9193 {{ 0.0f, 0.0f, 0.f}, {0, -4}},
9194
9198
9199 {{ 4.0f, 3.0f, 0.f}, {-2, 1}},
9200 {{ 6.0f, 0.0f, 0.f}, {32765, -32767}},
9201 {{ 4.0f, 0.0f, 0.f}, {-4, 1}},
9202 };
9203 const UINT exp_vertex_size11 =
sizeof(*exp_vertices11);
9204
9205 const struct vertex_ptc vertices12[] =
9206 {
9207 {{ 0.0f, 3.0f, 0.f}, { 1.0f, -1.0f}},
9208 {{ 2.0f, 3.0f, 0.f}, { 0.4f, 0.5f}},
9209 {{ 0.0f, 0.0f, 0.f}, {-0.5f, -5.0f}},
9210
9214
9218 };
9220 const UINT num_faces12 =
ARRAY_SIZE(vertices12) / VERTS_PER_FACE;
9221 const UINT vertex_size12 =
sizeof(*vertices12);
9222 const struct vertex_ptc_short4 exp_vertices12[] =
9223 {
9224 {{ 0.0f, 3.0f, 0.f}, {1, 0, 0, 1}},
9225 {{ 2.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9226 {{ 0.0f, 0.0f, 0.f}, {0, -4, 0, 1}},
9227
9231
9232 {{ 4.0f, 3.0f, 0.f}, {-2, 1, 0, 1}},
9233 {{ 6.0f, 0.0f, 0.f}, {32765, -32767, 0, 1}},
9234 {{ 4.0f, 0.0f, 0.f}, {-4, 1, 0, 1}},
9235 };
9236 const UINT exp_vertex_size12 =
sizeof(*exp_vertices12);
9237
9238 const struct vertex_ptc vertices13[] =
9239 {
9240 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 2.0f}},
9241 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
9242 {{ 0.0f, 0.0f, 0.f}, {-0.4f, -0.5f}},
9243
9244 {{ 3.0f, 3.0f, 0.f}, {-0.6f, -1.0f}},
9247 };
9249 const UINT num_faces13 =
ARRAY_SIZE(vertices13) / VERTS_PER_FACE;
9250 const UINT vertex_size13 =
sizeof(*vertices13);
9251 const struct vertex_ptc_ubyte4n exp_vertices13[] =
9252 {
9253 {{ 0.0f, 3.0f, 0.f}, {255, 255, 0, 255}},
9254 {{ 2.0f, 3.0f, 0.f}, {128, 179, 0, 255}},
9255 {{ 0.0f, 0.0f, 0.f}, {0, 0, 0, 255}},
9256
9257 {{ 3.0f, 3.0f, 0.f}, {0, 0, 0, 255}},
9258 {{ 3.0f, 0.0f, 0.f}, {255, 255, 0, 255}},
9259 {{ 1.0f, 0.0f, 0.f}, {255, 0, 0, 255}},
9260 };
9261 const UINT exp_vertex_size13 =
sizeof(*exp_vertices13);
9262
9263 const struct vertex_ptc vertices14[] =
9264 {
9265 {{ 0.0f, 3.0f, 0.f}, {1.0f, 2.0f}},
9266 {{ 2.0f, 3.0f, 0.f}, {0.4f, 0.5f}},
9267 {{ 0.0f, 0.0f, 0.f}, {0.6f, -1.0f}},
9268
9269 {{ 3.0f, 3.0f, 0.f}, {-0.4f, -0.5f}},
9270 {{ 3.0f, 0.0f, 0.f}, {-0.9f, -0.99997}},
9272 };
9274 const UINT num_faces14 =
ARRAY_SIZE(vertices14) / VERTS_PER_FACE;
9275 const UINT vertex_size14 =
sizeof(*vertices14);
9276 const struct vertex_ptc_short2 exp_vertices14[] =
9277 {
9279 {{ 2.0f, 3.0f, 0.f}, {13107, 16384}},
9280 {{ 0.0f, 0.0f, 0.f}, {19660,
SHRT_MIN + 2}},
9281
9282 {{ 3.0f, 3.0f, 0.f}, {-13106, -16383}},
9283 {{ 3.0f, 0.0f, 0.f}, {-29489,
SHRT_MIN + 3}},
9285 };
9286 const UINT exp_vertex_size14 =
sizeof(*exp_vertices14);
9287
9288 const struct vertex_ptc vertices15[] =
9289 {
9290 {{ 0.0f, 3.0f, 0.f}, {1.0f, 2.0f}},
9291 {{ 2.0f, 3.0f, 0.f}, {0.4f, 0.5f}},
9292 {{ 0.0f, 0.0f, 0.f}, {0.6f, -1.0f}},
9293
9294 {{ 3.0f, 3.0f, 0.f}, {-0.4f, -0.5f}},
9295 {{ 3.0f, 0.0f, 0.f}, {-0.9f, -0.99997}},
9297 };
9299 const UINT num_faces15 =
ARRAY_SIZE(vertices15) / VERTS_PER_FACE;
9300 const UINT vertex_size15 =
sizeof(*vertices15);
9301 const struct vertex_ptc_short4 exp_vertices15[] =
9302 {
9304 {{ 2.0f, 3.0f, 0.f}, {13107, 16384, 0,
SHRT_MAX}},
9306
9307 {{ 3.0f, 3.0f, 0.f}, {-13106, -16383, 0,
SHRT_MAX}},
9310 };
9311 const UINT exp_vertex_size15 =
sizeof(*exp_vertices15);
9312
9313 const struct vertex_ptc vertices16[] =
9314 {
9315 {{ 0.0f, 3.0f, 0.f}, {1.0f, 2.0f}},
9316 {{ 2.0f, 3.0f, 0.f}, {0.4f, 0.5f}},
9317 {{ 0.0f, 0.0f, 0.f}, {0.6f, -1.0f}},
9318
9319 {{ 3.0f, 3.0f, 0.f}, {-0.4f, -0.5f}},
9320 {{ 3.0f, 0.0f, 0.f}, {-0.9f, 0.99998f}},
9321 {{ 1.0f, 0.0f, 0.f}, {
USHRT_MAX, 0.0f}},
9322 };
9324 const UINT num_faces16 =
ARRAY_SIZE(vertices16) / VERTS_PER_FACE;
9325 const UINT vertex_size16 =
sizeof(*vertices16);
9326 const struct vertex_ptc_ushort2n exp_vertices16[] =
9327 {
9329 {{ 2.0f, 3.0f, 0.f}, {26214, 32768}},
9330 {{ 0.0f, 0.0f, 0.f}, {39321, 0}},
9331
9332 {{ 3.0f, 3.0f, 0.f}, {0, 0}},
9333 {{ 3.0f, 0.0f, 0.f}, {0,
USHRT_MAX - 1}},
9335 };
9336 const UINT exp_vertex_size16 =
sizeof(*exp_vertices16);
9337
9338 const struct vertex_ptc vertices17[] =
9339 {
9340 {{ 0.0f, 3.0f, 0.f}, {1.0f, 2.0f}},
9341 {{ 2.0f, 3.0f, 0.f}, {0.4f, 0.5f}},
9342 {{ 0.0f, 0.0f, 0.f}, {0.6f, -1.0f}},
9343
9344 {{ 3.0f, 3.0f, 0.f}, {-0.4f, -0.5f}},
9345 {{ 3.0f, 0.0f, 0.f}, {-0.9f, 0.99998f}},
9346 {{ 1.0f, 0.0f, 0.f}, {
USHRT_MAX, 0.0f}},
9347 };
9349 const UINT num_faces17 =
ARRAY_SIZE(vertices17) / VERTS_PER_FACE;
9350 const UINT vertex_size17 =
sizeof(*vertices17);
9351 const struct vertex_ptc_ushort4n exp_vertices17[] =
9352 {
9354 {{ 2.0f, 3.0f, 0.f}, {26214, 32768, 0,
USHRT_MAX}},
9355 {{ 0.0f, 0.0f, 0.f}, {39321, 0, 0,
USHRT_MAX}},
9356
9357 {{ 3.0f, 3.0f, 0.f}, {0, 0, 0,
USHRT_MAX}},
9360 };
9361 const UINT exp_vertex_size17 =
sizeof(*exp_vertices17);
9362
9363
9364
9365 const struct vertex_ptc vertices18[] =
9366 {
9367 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
9368 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
9369 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f}},
9370
9371 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
9372 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f}},
9373 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f}},
9374 };
9376 const UINT num_faces18 =
ARRAY_SIZE(vertices18) / VERTS_PER_FACE;
9377 const UINT vertex_size18 =
sizeof(*vertices18);
9378 const struct vertex_ptc_float16_2 exp_vertices18[] =
9379 {
9380 {{ 0.0f, 3.0f, 0.f}, {0x3c00, 0x3c00}},
9381 {{ 2.0f, 3.0f, 0.f}, {0x3800, 0x399a}},
9382 {{ 0.0f, 0.0f, 0.f}, {0xb266, 0xb4cd}},
9383
9384 {{ 3.0f, 3.0f, 0.f}, {0x3266, 0x34cd}},
9385 {{ 3.0f, 0.0f, 0.f}, {0x3c00, 0x3c00}},
9386 {{ 1.0f, 0.0f, 0.f}, {0x2e66, 0x3266}},
9387 };
9388 const UINT exp_vertex_size18 =
sizeof(*exp_vertices18);
9389
9390
9391 const struct vertex_pntc vertices19[] =
9392 {
9393 {{ 0.0f, 3.0f, 0.f},
up, { 1.0f, 1.0f}},
9394 {{ 2.0f, 3.0f, 0.f},
up, { 0.5f, 0.7f}},
9395 {{ 0.0f, 0.0f, 0.f},
up, {-0.2f, -0.3f}},
9396
9397 {{ 3.0f, 3.0f, 0.f},
up, { 0.2f, 0.3f}},
9398 {{ 3.0f, 0.0f, 0.f},
up, { 1.0f, 1.0f}},
9399 {{ 1.0f, 0.0f, 0.f},
up, { 0.1f, 0.2f}},
9400 };
9402 const UINT num_faces19 =
ARRAY_SIZE(vertices19) / VERTS_PER_FACE;
9403 const UINT vertex_size19 =
sizeof(*vertices19);
9404 const struct vertex_pntc exp_vertices19[] =
9405 {
9406 {{ 0.0f, 3.0f, 0.f},
up, zero_vec2},
9407 {{ 2.0f, 3.0f, 0.f},
up, zero_vec2},
9408 {{ 0.0f, 0.0f, 0.f},
up, zero_vec2},
9409
9410 {{ 3.0f, 3.0f, 0.f},
up, zero_vec2},
9411 {{ 3.0f, 0.0f, 0.f},
up, zero_vec2},
9412 {{ 1.0f, 0.0f, 0.f},
up, zero_vec2},
9413 };
9414 const UINT exp_vertex_size19 =
sizeof(*exp_vertices19);
9415
9416
9417 const struct vertex_pntc vertices20[] =
9418 {
9419 {{ 0.0f, 3.0f, 0.f},
up, { 1.0f, 1.0f}},
9420 {{ 2.0f, 3.0f, 0.f},
up, { 0.5f, 0.7f}},
9421 {{ 0.0f, 0.0f, 0.f},
up, {-0.2f, -0.3f}},
9422
9423 {{ 3.0f, 3.0f, 0.f},
up, { 0.2f, 0.3f}},
9424 {{ 3.0f, 0.0f, 0.f},
up, { 1.0f, 1.0f}},
9425 {{ 1.0f, 0.0f, 0.f},
up, { 0.1f, 0.2f}},
9426 };
9428 const UINT num_faces20 =
ARRAY_SIZE(vertices20) / VERTS_PER_FACE;
9429 const UINT vertex_size20 =
sizeof(*vertices20);
9430 const struct vertex_pntc exp_vertices20[] =
9431 {
9432 {{ 0.0f, 3.0f, 0.f},
up, zero_vec2},
9433 {{ 2.0f, 3.0f, 0.f},
up, zero_vec2},
9434 {{ 0.0f, 0.0f, 0.f},
up, zero_vec2},
9435
9436 {{ 3.0f, 3.0f, 0.f},
up, zero_vec2},
9437 {{ 3.0f, 0.0f, 0.f},
up, zero_vec2},
9438 {{ 1.0f, 0.0f, 0.f},
up, zero_vec2},
9439 };
9440 const UINT exp_vertex_size20 =
sizeof(*exp_vertices20);
9441
9442 const struct vertex_ptc_float1 vertices21[] =
9443 {
9444 {{ 0.0f, 3.0f, 0.f}, 1.0f},
9445 {{ 2.0f, 3.0f, 0.f}, 0.5f},
9446 {{ 0.0f, 0.0f, 0.f}, -0.2f},
9447
9448 {{ 3.0f, 3.0f, 0.f}, 0.2f},
9449 {{ 3.0f, 0.0f, 0.f}, 1.0f},
9450 {{ 1.0f, 0.0f, 0.f}, 0.1f},
9451 };
9453 const UINT num_faces21 =
ARRAY_SIZE(vertices21) / VERTS_PER_FACE;
9454 const UINT vertex_size21 =
sizeof(*vertices21);
9455 const struct vertex_ptc exp_vertices21[] =
9456 {
9457 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 0.0f}},
9458 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.0f}},
9459 {{ 0.0f, 0.0f, 0.f}, {-0.2f, 0.0f}},
9460
9461 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.0f}},
9462 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 0.0f}},
9463 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.0f}},
9464 };
9465 const UINT exp_vertex_size21 =
sizeof(*exp_vertices21);
9466
9467 const struct vertex_ptc_float1 vertices22[] =
9468 {
9469 {{ 0.0f, 3.0f, 0.f}, 1.0f},
9470 {{ 2.0f, 3.0f, 0.f}, 0.5f},
9471 {{ 0.0f, 0.0f, 0.f}, -0.2f},
9472
9473 {{ 3.0f, 3.0f, 0.f}, 0.2f},
9474 {{ 3.0f, 0.0f, 0.f}, 1.0f},
9475 {{ 1.0f, 0.0f, 0.f}, 0.1f},
9476 };
9478 const UINT num_faces22 =
ARRAY_SIZE(vertices22) / VERTS_PER_FACE;
9479 const UINT vertex_size22 =
sizeof(*vertices22);
9480 const struct vertex_ptc_float3 exp_vertices22[] =
9481 {
9482 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 0.0f, 0.0f}},
9483 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.0f, 0.0f}},
9484 {{ 0.0f, 0.0f, 0.f}, {-0.2f, 0.0f, 0.0f}},
9485
9486 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.0f, 0.0f}},
9487 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 0.0f, 0.0f}},
9488 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.0f, 0.0f}},
9489 };
9490 const UINT exp_vertex_size22 =
sizeof(*exp_vertices22);
9491
9492 const struct vertex_ptc_float1 vertices23[] =
9493 {
9494 {{ 0.0f, 3.0f, 0.f}, 1.0f},
9495 {{ 2.0f, 3.0f, 0.f}, 0.5f},
9496 {{ 0.0f, 0.0f, 0.f}, -0.2f},
9497
9498 {{ 3.0f, 3.0f, 0.f}, 0.2f},
9499 {{ 3.0f, 0.0f, 0.f}, 1.0f},
9500 {{ 1.0f, 0.0f, 0.f}, 0.1f},
9501 };
9503 const UINT num_faces23 =
ARRAY_SIZE(vertices23) / VERTS_PER_FACE;
9504 const UINT vertex_size23 =
sizeof(*vertices23);
9505 const struct vertex_ptc_float4 exp_vertices23[] =
9506 {
9507 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 0.0f, 0.0f, 1.0f}},
9508 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.0f, 0.0f, 1.0f}},
9509 {{ 0.0f, 0.0f, 0.f}, {-0.2f, 0.0f, 0.0f, 1.0f}},
9510
9511 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.0f, 0.0f, 1.0f}},
9512 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 0.0f, 0.0f, 1.0f}},
9513 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.0f, 0.0f, 1.0f}},
9514 };
9515 const UINT exp_vertex_size23 =
sizeof(*exp_vertices23);
9516
9517 const struct vertex_ptc_float1 vertices24[] =
9518 {
9519 {{ 0.0f, 3.0f, 0.f}, 1.0f},
9520 {{ 2.0f, 3.0f, 0.f}, 0.5f},
9521 {{ 0.0f, 0.0f, 0.f}, -0.2f},
9522
9523 {{ 3.0f, 3.0f, 0.f}, 0.2f},
9524 {{ 3.0f, 0.0f, 0.f}, 1.0f},
9525 {{ 1.0f, 0.0f, 0.f}, 0.11f},
9526 };
9528 const UINT num_faces24 =
ARRAY_SIZE(vertices24) / VERTS_PER_FACE;
9529 const UINT vertex_size24 =
sizeof(*vertices24);
9530 const struct vertex_ptc_d3dcolor exp_vertices24[] =
9531 {
9532 {{ 0.0f, 3.0f, 0.f}, {0, 0, 255, 255}},
9533 {{ 2.0f, 3.0f, 0.f}, {0, 0, 128, 255}},
9534 {{ 0.0f, 0.0f, 0.f}, {0, 0, 0, 255}},
9535
9536 {{ 3.0f, 3.0f, 0.f}, {0, 0, 51, 255}},
9537 {{ 3.0f, 0.0f, 0.f}, {0, 0, 255, 255}},
9538 {{ 1.0f, 0.0f, 0.f}, {0, 0, 28, 255}},
9539 };
9540 const UINT exp_vertex_size24 =
sizeof(*exp_vertices24);
9541
9542 const struct vertex_ptc_float1 vertices25[] =
9543 {
9544 {{ 0.0f, 3.0f, 0.f}, 0.0f},
9545 {{ 2.0f, 3.0f, 0.f}, 1.4f},
9546 {{ 0.0f, 0.0f, 0.f}, 1.5f},
9547
9548 {{ 3.0f, 3.0f, 0.f}, 255.0f},
9549 {{ 3.0f, 0.0f, 0.f}, 256.0f},
9550 {{ 1.0f, 0.0f, 0.f}, -1.0f},
9551 };
9553 const UINT num_faces25 =
ARRAY_SIZE(vertices25) / VERTS_PER_FACE;
9554 const UINT vertex_size25 =
sizeof(*vertices25);
9555 const struct vertex_ptc_ubyte4 exp_vertices25[] =
9556 {
9557 {{ 0.0f, 3.0f, 0.f}, {0, 0, 0, 1}},
9558 {{ 2.0f, 3.0f, 0.f}, {1, 0, 0, 1}},
9559 {{ 0.0f, 0.0f, 0.f}, {2, 0, 0, 1}},
9560
9561 {{ 3.0f, 3.0f, 0.f}, {255, 0, 0, 1}},
9562 {{ 3.0f, 0.0f, 0.f}, {0, 0, 0, 1}},
9563 {{ 1.0f, 0.0f, 0.f}, {0, 0, 0, 1}},
9564 };
9565 const UINT exp_vertex_size25 =
sizeof(*exp_vertices25);
9566
9567 const struct vertex_ptc_float4 vertices26[] =
9568 {
9569 {{ 0.0f, 3.0f, 0.f}, {0.0f, 1.0f, 0.4f, 0.5f}},
9570 {{ 2.0f, 3.0f, 0.f}, {-0.4f, -0.5f, -1.0f, -2.0f}},
9571 {{ 0.0f, 0.0f, 0.f}, {254.0f, 255.0f, 256.0f, 257.0f}},
9572
9573 {{ 3.0f, 3.0f, 0.f}, {0.1f, 0.2f, 0.3f, 0.4f}},
9574 {{ 3.0f, 0.0f, 0.f}, {0.5f, 0.6f, 0.7f, 0.8f}},
9575 {{ 1.0f, 0.0f, 0.f}, {0.9f, 0.99f, 0.995f, 0.999f}},
9576 };
9578 const UINT num_faces26 =
ARRAY_SIZE(vertices26) / VERTS_PER_FACE;
9579 const UINT vertex_size26 =
sizeof(*vertices26);
9580 const struct vertex_ptc_d3dcolor exp_vertices26[] =
9581 {
9582 {{ 0.0f, 3.0f, 0.f}, {102, 255, 0, 128}},
9583 {{ 2.0f, 3.0f, 0.f}, {0, 0, 0, 0}},
9584 {{ 0.0f, 0.0f, 0.f}, {255, 255, 255, 255}},
9585
9586 {{ 3.0f, 3.0f, 0.f}, {77, 51, 26, 102}},
9587 {{ 3.0f, 0.0f, 0.f}, {179, 153, 128, 204}},
9588 {{ 1.0f, 0.0f, 0.f}, {254, 252, 230, 255}},
9589 };
9590 const UINT exp_vertex_size26 =
sizeof(*exp_vertices26);
9591
9592 const struct vertex_ptc_d3dcolor vertices27[] =
9593 {
9594 {{ 0.0f, 3.0f, 0.f}, {102, 255, 0, 128}},
9595 {{ 2.0f, 3.0f, 0.f}, {0, 0, 0, 0}},
9596 {{ 0.0f, 0.0f, 0.f}, {255, 255, 255, 255}},
9597
9598 {{ 3.0f, 3.0f, 0.f}, {77, 51, 26, 102}},
9599 {{ 3.0f, 0.0f, 0.f}, {179, 153, 128, 204}},
9600 {{ 1.0f, 0.0f, 0.f}, {254, 252, 230, 255}},
9601 };
9603 const UINT num_faces27 =
ARRAY_SIZE(vertices27) / VERTS_PER_FACE;
9604 const UINT vertex_size27 =
sizeof(*vertices27);
9605 const struct vertex_ptc_float4 exp_vertices27[] =
9606 {
9607 {{ 0.0f, 3.0f, 0.f}, {0.0f, 1.0f, 0.4f, 0.501961f}},
9608 {{ 2.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 0.0f}},
9609 {{ 0.0f, 0.0f, 0.f}, {1.0f, 1.0f, 1.0f, 1.0f}},
9610
9611 {{ 3.0f, 3.0f, 0.f}, {0.101961f, 0.2f, 0.301961f, 0.4f}},
9612 {{ 3.0f, 0.0f, 0.f}, {0.501961f, 0.6f, 0.701961f, 0.8f}},
9613 {{ 1.0f, 0.0f, 0.f}, {0.901961f, 0.988235f, 0.996078f, 1.0f}},
9614 };
9615 const UINT exp_vertex_size27 =
sizeof(*exp_vertices27);
9616
9617 const struct vertex_ptc_ubyte4 vertices28[] =
9618 {
9619 {{ 0.0f, 3.0f, 0.f}, {0, 0, 0, 0}},
9620 {{ 2.0f, 3.0f, 0.f}, {1, 1, 1, 1}},
9621 {{ 0.0f, 0.0f, 0.f}, {1, 0, 1, 0}},
9622
9623 {{ 3.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9624 {{ 3.0f, 0.0f, 0.f}, {10, 20, 30, 40}},
9625 {{ 1.0f, 0.0f, 0.f}, {50, 60, 127, 255}},
9626 };
9628 const UINT num_faces28 =
ARRAY_SIZE(vertices28) / VERTS_PER_FACE;
9629 const UINT vertex_size28 =
sizeof(*vertices28);
9630 const struct vertex_ptc_float4 exp_vertices28[] =
9631 {
9632 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 0.0f}},
9633 {{ 2.0f, 3.0f, 0.f}, {1.0f, 1.0f, 1.0f, 1.0f}},
9634 {{ 0.0f, 0.0f, 0.f}, {1.0f, 0.0f, 1.0f, 0.0f}},
9635
9636 {{ 3.0f, 3.0f, 0.f}, {0.0f, 1.0f, 0.0f, 1.0f}},
9637 {{ 3.0f, 0.0f, 0.f}, {10.0f, 20.0f, 30.0f, 40.0f}},
9638 {{ 1.0f, 0.0f, 0.f}, {50.0f, 60.0f, 127.0f, 255.0f}},
9639 };
9640 const UINT exp_vertex_size28 =
sizeof(*exp_vertices28);
9641
9642 const struct vertex_ptc_short2 vertices29[] =
9643 {
9644 {{ 0.0f, 3.0f, 0.f}, {0, 0}},
9645 {{ 2.0f, 3.0f, 0.f}, {0, 1}},
9646 {{ 0.0f, 0.0f, 0.f}, {1, 0}},
9647
9648 {{ 3.0f, 3.0f, 0.f}, {1, 1}},
9650 {{ 1.0f, 0.0f, 0.f}, {-42, 42}},
9651 };
9653 const UINT num_faces29 =
ARRAY_SIZE(vertices29) / VERTS_PER_FACE;
9654 const UINT vertex_size29 =
sizeof(*vertices29);
9655 const struct vertex_ptc_float4 exp_vertices29[] =
9656 {
9657 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 1.0f}},
9658 {{ 2.0f, 3.0f, 0.f}, {0.0f, 1.0f, 0.0f, 1.0f }},
9659 {{ 0.0f, 0.0f, 0.f}, {1.0f, 0.0f, 0.0f, 1.0f}},
9660
9661 {{ 3.0f, 3.0f, 0.f}, {1.0f, 1.0f, 0.0f, 1.0f}},
9663 {{ 1.0f, 0.0f, 0.f}, {-42.0f, 42.0f, 0.0f, 1.0f}},
9664 };
9665 const UINT exp_vertex_size29 =
sizeof(*exp_vertices29);
9666
9667 const struct vertex_ptc_short4 vertices30[] =
9668 {
9669 {{ 0.0f, 3.0f, 0.f}, {0, 0, 0, 0}},
9670 {{ 2.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9671 {{ 0.0f, 0.0f, 0.f}, {1, 0, 1, 0}},
9672
9673 {{ 3.0f, 3.0f, 0.f}, {1, 1, 1, 1}},
9676 };
9678 const UINT num_faces30 =
ARRAY_SIZE(vertices30) / VERTS_PER_FACE;
9679 const UINT vertex_size30 =
sizeof(*vertices30);
9680 const struct vertex_ptc_float4 exp_vertices30[] =
9681 {
9682 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 0.0f}},
9683 {{ 2.0f, 3.0f, 0.f}, {0.0f, 1.0f, 0.0f, 1.0f }},
9684 {{ 0.0f, 0.0f, 0.f}, {1.0f, 0.0f, 1.0f, 0.0f}},
9685
9686 {{ 3.0f, 3.0f, 0.f}, {1.0f, 1.0f, 1.0f, 1.0f}},
9689 };
9690 const UINT exp_vertex_size30 =
sizeof(*exp_vertices30);
9691
9692 const struct vertex_ptc_ubyte4n vertices31[] =
9693 {
9694 {{ 0.0f, 3.0f, 0.f}, {0, 0, 0, 0}},
9695 {{ 2.0f, 3.0f, 0.f}, {1, 1, 1, 1}},
9696 {{ 0.0f, 0.0f, 0.f}, {1, 0, 1, 0}},
9697
9698 {{ 3.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9699 {{ 3.0f, 0.0f, 0.f}, {10, 20, 30, 40}},
9700 {{ 1.0f, 0.0f, 0.f}, {50, 60, 70,
UCHAR_MAX}},
9701 };
9703 const UINT num_faces31 =
ARRAY_SIZE(vertices31) / VERTS_PER_FACE;
9704 const UINT vertex_size31 =
sizeof(*vertices31);
9705 const struct vertex_ptc_float4 exp_vertices31[] =
9706 {
9707 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 0.0f}},
9710
9714 };
9715 const UINT exp_vertex_size31 =
sizeof(*exp_vertices31);
9716
9717 const struct vertex_ptc_short2 vertices32[] =
9718 {
9719 {{ 0.0f, 3.0f, 0.f}, {0, 0}},
9720 {{ 2.0f, 3.0f, 0.f}, {0, 1}},
9721 {{ 0.0f, 0.0f, 0.f}, {1, 0}},
9722
9723 {{ 3.0f, 3.0f, 0.f}, {1, 1}},
9725 {{ 1.0f, 0.0f, 0.f}, {-42, 42}},
9726 };
9728 const UINT num_faces32 =
ARRAY_SIZE(vertices32) / VERTS_PER_FACE;
9729 const UINT vertex_size32 =
sizeof(*vertices32);
9730 const struct vertex_ptc_float4 exp_vertices32[] =
9731 {
9732 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 1.0f}},
9733 {{ 2.0f, 3.0f, 0.f}, {0.0f, 1.0f/
SHRT_MAX, 0.0f, 1.0f}},
9734 {{ 0.0f, 0.0f, 0.f}, {1.0f/
SHRT_MAX, 0.0f, 0.0f, 1.0f}},
9735
9737 {{ 3.0f, 0.0f, 0.f}, {-1.0f, 1.0f, 0.0f, 1.0f}},
9739 };
9740 const UINT exp_vertex_size32 =
sizeof(*exp_vertices32);
9741
9742 const struct vertex_ptc_short4 vertices33[] =
9743 {
9744 {{ 0.0f, 3.0f, 0.f}, {0, 0, 0, 0}},
9745 {{ 2.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9746 {{ 0.0f, 0.0f, 0.f}, {1, 0, 1, 0}},
9747
9748 {{ 3.0f, 3.0f, 0.f}, {1, 1, 1, 1}},
9750 {{ 1.0f, 0.0f, 0.f}, {-42, 42, 1, 1}},
9751 };
9753 const UINT num_faces33 =
ARRAY_SIZE(vertices33) / VERTS_PER_FACE;
9754 const UINT vertex_size33 =
sizeof(*vertices33);
9755 const struct vertex_ptc_float4 exp_vertices33[] =
9756 {
9757 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 0.0f}},
9760
9762 {{ 3.0f, 0.0f, 0.f}, {-1.0f, 1.0f, -1.0f, 1.0f}},
9764 };
9765 const UINT exp_vertex_size33 =
sizeof(*exp_vertices33);
9766
9767 const struct vertex_ptc_float16_2 vertices34[] =
9768 {
9769 {{ 0.0f, 3.0f, 0.f}, {0x3c00, 0x3c00}},
9770 {{ 2.0f, 3.0f, 0.f}, {0x3800, 0x399a}},
9771 {{ 0.0f, 0.0f, 0.f}, {0xb266, 0xb4cd}},
9772
9773 {{ 3.0f, 3.0f, 0.f}, {0x3266, 0x34cd}},
9774 {{ 3.0f, 0.0f, 0.f}, {0x3c00, 0x3c00}},
9775 {{ 1.0f, 0.0f, 0.f}, {0x2e66, 0x3266}},
9776 };
9778 const UINT num_faces34 =
ARRAY_SIZE(vertices34) / VERTS_PER_FACE;
9779 const UINT vertex_size34 =
sizeof(*vertices34);
9780 const struct vertex_ptc_float4 exp_vertices34[] =
9781 {
9782 {{ 0.0f, 3.0f, 0.f}, {1.0f, 1.0f, 0.0f, 1.0f}},
9783 {{ 2.0f, 3.0f, 0.f}, {0.5f, 0.700195f, 0.0f, 1.0f}},
9784 {{ 0.0f, 0.0f, 0.f}, {-0.199951f, -0.300049f, 0.0f, 1.0f}},
9785
9786 {{ 3.0f, 3.0f, 0.f}, {0.199951f, 0.300049f, 0.0f, 1.0f}},
9787 {{ 3.0f, 0.0f, 0.f}, {1.0f, 1.0f, 0.0f, 1.0f}},
9788 {{ 1.0f, 0.0f, 0.f}, {0.099976f, 0.199951f, 0.0f, 1.0f}},
9789 };
9790 const UINT exp_vertex_size34 =
sizeof(*exp_vertices34);
9791
9792 const struct vertex_ptc_float16_4 vertices35[] =
9793 {
9794 {{ 0.0f, 3.0f, 0.f}, {0x0000, 0x0000, 0x0000, 0x0000}},
9795 {{ 2.0f, 3.0f, 0.f}, {0x3c00, 0x3c00, 0x3c00, 0x3c00}},
9796 {{ 0.0f, 0.0f, 0.f}, {0x3c00, 0x0000, 0x3c00, 0x0000}},
9797
9798 {{ 3.0f, 3.0f, 0.f}, {0x0000, 0x3c00, 0x0000, 0x3c00}},
9799 {{ 3.0f, 0.0f, 0.f}, {0x3800, 0x399a, 0xb266, 0xb4cd}},
9800 {{ 1.0f, 0.0f, 0.f}, {0x2e66, 0x3266, 0x2e66, 0x3266}},
9801 };
9803 const UINT num_faces35 =
ARRAY_SIZE(vertices35) / VERTS_PER_FACE;
9804 const UINT vertex_size35 =
sizeof(*vertices35);
9805 const struct vertex_ptc_float4 exp_vertices35[] =
9806 {
9807 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 0.0f}},
9808 {{ 2.0f, 3.0f, 0.f}, {1.0f, 1.0f, 1.0f, 1.0f}},
9809 {{ 0.0f, 0.0f, 0.f}, {1.0f, 0.0f, 1.0f, 0.0f}},
9810
9811 {{ 3.0f, 3.0f, 0.f}, {0.0f, 1.0f, 0.0f, 1.0f}},
9812 {{ 3.0f, 0.0f, 0.f}, {0.5f, 0.700195f, -0.199951f, -0.300049f}},
9813 {{ 1.0f, 0.0f, 0.f}, {0.099976f, 0.199951f, 0.099976f, 0.199951f}},
9814 };
9815 const UINT exp_vertex_size35 =
sizeof(*exp_vertices35);
9816
9817 const struct vertex_pn vertices36[] =
9818 {
9819 {{ 0.0f, 3.0f, 0.f},
up},
9820 {{ 2.0f, 3.0f, 0.f},
up},
9821 {{ 0.0f, 0.0f, 0.f},
up},
9822 };
9824 const UINT num_faces36 =
ARRAY_SIZE(vertices36) / VERTS_PER_FACE;
9825 const UINT vertex_size36 =
sizeof(*vertices36);
9827
9829 ID3DXMesh *mesh_clone =
NULL;
9830 struct
9831 {
9832 const BYTE *vertices;
9835 const UINT num_vertices;
9836 const UINT num_faces;
9837 const UINT vertex_size;
9838 const DWORD create_options;
9839 const DWORD clone_options;
9842 const BYTE *exp_vertices;
9843 const UINT exp_vertex_size;
9844 }
9846 {
9847 {
9851 num_vertices0,
9852 num_faces0,
9853 vertex_size0,
9856 declaration_pn,
9857 declaration_pn,
9859 vertex_size0
9860 },
9861 {
9865 num_vertices0,
9866 num_faces0,
9867 vertex_size0,
9868 options_16bit,
9869 options_16bit,
9870 declaration_pn,
9871 declaration_pn,
9873 vertex_size0
9874 },
9875 {
9879 num_vertices0,
9880 num_faces0,
9881 vertex_size0,
9884 declaration_pn,
9885 declaration_pntc,
9886 (
BYTE*)exp_vertices2,
9887 exp_vertex_size2
9888 },
9889 {
9893 num_vertices0,
9894 num_faces0,
9895 vertex_size0,
9898 declaration_pn,
9899 declaration_ptcn,
9900 (
BYTE*)exp_vertices3,
9901 exp_vertex_size3
9902 },
9903 {
9907 num_vertices4,
9908 num_faces4,
9909 vertex_size4,
9912 declaration_ptc,
9913 declaration_ptc_float16_2,
9914 (
BYTE*)exp_vertices4,
9915 exp_vertex_size4
9916 },
9917 {
9921 num_vertices5,
9922 num_faces5,
9923 vertex_size5,
9926 declaration_ptc,
9927 declaration_ptc_float16_4,
9928 (
BYTE*)exp_vertices5,
9929 exp_vertex_size5
9930 },
9931 {
9935 num_vertices6,
9936 num_faces6,
9937 vertex_size6,
9940 declaration_ptc,
9941 declaration_ptc_float1,
9942 (
BYTE*)exp_vertices6,
9943 exp_vertex_size6
9944 },
9945 {
9949 num_vertices7,
9950 num_faces7,
9951 vertex_size7,
9954 declaration_ptc,
9955 declaration_ptc_float3,
9956 (
BYTE*)exp_vertices7,
9957 exp_vertex_size7
9958 },
9959 {
9963 num_vertices8,
9964 num_faces8,
9965 vertex_size8,
9968 declaration_ptc,
9969 declaration_ptc_float4,
9970 (
BYTE*)exp_vertices8,
9971 exp_vertex_size8
9972 },
9973 {
9977 num_vertices9,
9978 num_faces9,
9979 vertex_size9,
9982 declaration_ptc,
9983 declaration_ptc_d3dcolor,
9984 (
BYTE*)exp_vertices9,
9985 exp_vertex_size9
9986 },
9987 {
9991 num_vertices10,
9992 num_faces10,
9993 vertex_size10,
9996 declaration_ptc,
9997 declaration_ptc_ubyte4,
9998 (
BYTE*)exp_vertices10,
9999 exp_vertex_size10
10000 },
10001 {
10005 num_vertices11,
10006 num_faces11,
10007 vertex_size11,
10010 declaration_ptc,
10011 declaration_ptc_short2,
10012 (
BYTE*)exp_vertices11,
10013 exp_vertex_size11
10014 },
10015 {
10019 num_vertices12,
10020 num_faces12,
10021 vertex_size12,
10024 declaration_ptc,
10025 declaration_ptc_short4,
10026 (
BYTE*)exp_vertices12,
10027 exp_vertex_size12
10028 },
10029 {
10033 num_vertices13,
10034 num_faces13,
10035 vertex_size13,
10038 declaration_ptc,
10039 declaration_ptc_ubyte4n,
10040 (
BYTE*)exp_vertices13,
10041 exp_vertex_size13
10042 },
10043 {
10047 num_vertices14,
10048 num_faces14,
10049 vertex_size14,
10052 declaration_ptc,
10053 declaration_ptc_short2n,
10054 (
BYTE*)exp_vertices14,
10055 exp_vertex_size14
10056 },
10057 {
10061 num_vertices15,
10062 num_faces15,
10063 vertex_size15,
10066 declaration_ptc,
10067 declaration_ptc_short4n,
10068 (
BYTE*)exp_vertices15,
10069 exp_vertex_size15
10070 },
10071 {
10075 num_vertices16,
10076 num_faces16,
10077 vertex_size16,
10080 declaration_ptc,
10081 declaration_ptc_ushort2n,
10082 (
BYTE*)exp_vertices16,
10083 exp_vertex_size16
10084 },
10085 {
10089 num_vertices17,
10090 num_faces17,
10091 vertex_size17,
10094 declaration_ptc,
10095 declaration_ptc_ushort4n,
10096 (
BYTE*)exp_vertices17,
10097 exp_vertex_size17
10098 },
10099 {
10103 num_vertices18,
10104 num_faces18,
10105 vertex_size18,
10108 declaration_ptc,
10109 declaration_ptc_float16_2_partialu,
10110 (
BYTE*)exp_vertices18,
10111 exp_vertex_size18
10112 },
10113 {
10117 num_vertices19,
10118 num_faces19,
10119 vertex_size19,
10122 declaration_pntc,
10123 declaration_pntc1,
10124 (
BYTE*)exp_vertices19,
10125 exp_vertex_size19
10126 },
10127 {
10131 num_vertices20,
10132 num_faces20,
10133 vertex_size20,
10136 declaration_pntc1,
10137 declaration_pntc,
10138 (
BYTE*)exp_vertices20,
10139 exp_vertex_size20
10140 },
10141 {
10145 num_vertices21,
10146 num_faces21,
10147 vertex_size21,
10150 declaration_ptc_float1,
10151 declaration_ptc,
10152 (
BYTE*)exp_vertices21,
10153 exp_vertex_size21
10154 },
10155 {
10159 num_vertices22,
10160 num_faces22,
10161 vertex_size22,
10164 declaration_ptc_float1,
10165 declaration_ptc_float3,
10166 (
BYTE*)exp_vertices22,
10167 exp_vertex_size22
10168 },
10169 {
10173 num_vertices23,
10174 num_faces23,
10175 vertex_size23,
10178 declaration_ptc_float1,
10179 declaration_ptc_float4,
10180 (
BYTE*)exp_vertices23,
10181 exp_vertex_size23
10182 },
10183 {
10187 num_vertices24,
10188 num_faces24,
10189 vertex_size24,
10192 declaration_ptc_float1,
10193 declaration_ptc_d3dcolor,
10194 (
BYTE*)exp_vertices24,
10195 exp_vertex_size24
10196 },
10197 {
10201 num_vertices25,
10202 num_faces25,
10203 vertex_size25,
10206 declaration_ptc_float1,
10207 declaration_ptc_ubyte4,
10208 (
BYTE*)exp_vertices25,
10209 exp_vertex_size25
10210 },
10211 {
10215 num_vertices26,
10216 num_faces26,
10217 vertex_size26,
10220 declaration_ptc_float4,
10221 declaration_ptc_d3dcolor,
10222 (
BYTE*)exp_vertices26,
10223 exp_vertex_size26
10224 },
10225 {
10229 num_vertices27,
10230 num_faces27,
10231 vertex_size27,
10234 declaration_ptc_d3dcolor,
10235 declaration_ptc_float4,
10236 (
BYTE*)exp_vertices27,
10237 exp_vertex_size27
10238 },
10239 {
10243 num_vertices28,
10244 num_faces28,
10245 vertex_size28,
10248 declaration_ptc_ubyte4,
10249 declaration_ptc_float4,
10250 (
BYTE*)exp_vertices28,
10251 exp_vertex_size28
10252 },
10253 {
10257 num_vertices29,
10258 num_faces29,
10259 vertex_size29,
10262 declaration_ptc_short2,
10263 declaration_ptc_float4,
10264 (
BYTE*)exp_vertices29,
10265 exp_vertex_size29
10266 },
10267 {
10271 num_vertices30,
10272 num_faces30,
10273 vertex_size30,
10276 declaration_ptc_short4,
10277 declaration_ptc_float4,
10278 (
BYTE*)exp_vertices30,
10279 exp_vertex_size30
10280 },
10281 {
10285 num_vertices31,
10286 num_faces31,
10287 vertex_size31,
10290 declaration_ptc_ubyte4n,
10291 declaration_ptc_float4,
10292 (
BYTE*)exp_vertices31,
10293 exp_vertex_size31
10294 },
10295 {
10299 num_vertices32,
10300 num_faces32,
10301 vertex_size32,
10304 declaration_ptc_short2n,
10305 declaration_ptc_float4,
10306 (
BYTE*)exp_vertices32,
10307 exp_vertex_size32
10308 },
10309 {
10313 num_vertices33,
10314 num_faces33,
10315 vertex_size33,
10318 declaration_ptc_short4n,
10319 declaration_ptc_float4,
10320 (
BYTE*)exp_vertices33,
10321 exp_vertex_size33
10322 },
10323 {
10327 num_vertices34,
10328 num_faces34,
10329 vertex_size34,
10332 declaration_ptc_float16_2,
10333 declaration_ptc_float4,
10334 (
BYTE*)exp_vertices34,
10335 exp_vertex_size34
10336 },
10337 {
10341 num_vertices35,
10342 num_faces35,
10343 vertex_size35,
10346 declaration_ptc_float16_4,
10347 declaration_ptc_float4,
10348 (
BYTE*)exp_vertices35,
10349 exp_vertex_size35
10350 },
10351 {
10355 num_vertices36,
10356 num_faces36,
10357 vertex_size36,
10359 clone_options36,
10360 declaration_pn,
10361 declaration_pn,
10363 vertex_size36
10364 },
10365 };
10366
10369 {
10370 skip(
"Couldn't create test context\n");
10372 }
10373
10375 {
10378 UINT exp_new_decl_length, new_decl_length;
10379 UINT exp_new_decl_size, new_decl_size;
10380
10382 tc[
i].create_options,
10386 tc[
i].indices,
tc[
i].attributes);
10388 {
10389 skip(
"Couldn't initialize test mesh %d. Got %lx expected D3D_OK\n",
i,
hr);
10391 }
10392
10393 hr =
mesh->lpVtbl->CloneMesh(
mesh,
tc[
i].clone_options,
tc[
i].new_declaration,
10395 ok(
hr ==
D3D_OK,
"Test %u, got unexpected hr %#lx.\n",
i,
hr);
10396
10397 hr = mesh_clone->lpVtbl->GetDeclaration(mesh_clone, new_declaration);
10398 ok(
hr ==
D3D_OK,
"Test %u, got unexpected hr %#lx.\n",
i,
hr);
10399
10400 for (
j = 0;
tc[
i].new_declaration[
j].Stream != 0xFF;
j++)
10401 {
10402 ok(
memcmp(&
tc[
i].new_declaration[
j], &new_declaration[
j],
sizeof(*new_declaration)) == 0,
10403 "Test case %d failed. Declaration element %d did not match.\n",
i,
j);
10404 }
10405
10406
10409 ok(new_decl_length == exp_new_decl_length,
10410 "Test case %d failed. Got new declaration length %d, expected %d\n",
10411 i, new_decl_length, exp_new_decl_length);
10412
10413
10416 ok(new_decl_size == exp_new_decl_size,
10417 "Test case %d failed. Got new declaration size %d, expected %d\n",
10418 i, new_decl_size, exp_new_decl_size);
10419
10420
10421 hr = mesh_clone->lpVtbl->LockVertexBuffer(mesh_clone, 0, (
void**)&vertices);
10423 {
10424 skip(
"Couldn't lock cloned vertex buffer.\n");
10426 }
10427 for (
j = 0;
j <
tc[
i].num_vertices;
j++)
10428 {
10431 }
10432 hr = mesh_clone->lpVtbl->UnlockVertexBuffer(mesh_clone);
10434 {
10435 skip(
"Couldn't unlock vertex buffer.\n");
10437 }
10441 mesh_clone->lpVtbl->Release(mesh_clone);
10443 }
10444
10445
10446
10447
10448
10450 tc[2].create_options,
10454 tc[2].indices,
tc[2].attributes);
10456 {
10457 skip(
"Couldn't initialize test mesh for D3DXMESH_VB_SHARE case."
10458 " Got %lx expected D3D_OK\n",
hr);
10460 }
10461
10464 &mesh_clone);
10466 " declaration. Got %lx, expected D3DERR_INVALIDCALL\n",
10471
10473 if (vertices)
mesh->lpVtbl->UnlockVertexBuffer(
mesh);
10475 if (mesh_clone) mesh_clone->lpVtbl->Release(mesh_clone);
10477}
UINT WINAPI D3DXGetDeclLength(const D3DVERTEXELEMENT9 *decl)
UINT WINAPI D3DXGetDeclVertexSize(const D3DVERTEXELEMENT9 *decl, DWORD stream_idx)
static void check_vertex_components(int line, int mesh_number, int vertex_number, BYTE *got_ptr, const BYTE *exp_ptr, D3DVERTEXELEMENT9 *declaration)
static HRESULT init_test_mesh(const DWORD num_faces, const DWORD num_vertices, const DWORD options, const D3DVERTEXELEMENT9 *declaration, IDirect3DDevice9 *device, ID3DXMesh **mesh_ptr, const void *vertices, const DWORD vertex_size, const DWORD *indices, const DWORD *attributes)