8630{
8635 {
8639 };
8641 {
8646 };
8648 {
8653 };
8655 {
8659 };
8661 {
8665 };
8667 {
8671 };
8673 {
8677 };
8679 {
8683 };
8685 {
8689 };
8691 {
8695 };
8697 {
8701 };
8703 {
8707 };
8709 {
8713 };
8715 {
8719 };
8721 {
8725 };
8727 {
8731 };
8733 {
8737 };
8739 {
8743 };
8745 {
8749 };
8751 {
8756 };
8757 const unsigned int VERTS_PER_FACE = 3;
8760 struct vertex_pn
8761 {
8764 };
8765 struct vertex_pntc
8766 {
8770 };
8771 struct vertex_ptcn
8772 {
8776 };
8777 struct vertex_ptc
8778 {
8781 };
8782 struct vertex_ptc_float16_2
8783 {
8786 };
8787 struct vertex_ptc_float16_4
8788 {
8791 };
8792 struct vertex_ptc_float1
8793 {
8796 };
8797 struct vertex_ptc_float3
8798 {
8801 };
8802 struct vertex_ptc_float4
8803 {
8806 };
8807 struct vertex_ptc_d3dcolor
8808 {
8811 };
8812 struct vertex_ptc_ubyte4
8813 {
8816 };
8817 struct vertex_ptc_ubyte4n
8818 {
8821 };
8822 struct vertex_ptc_short2
8823 {
8826 };
8827 struct vertex_ptc_short4
8828 {
8831 };
8832 struct vertex_ptc_ushort2n
8833 {
8836 };
8837 struct vertex_ptc_ushort4n
8838 {
8841 };
8842 struct vertex_ptc_udec3
8843 {
8846 };
8847 struct vertex_ptc_dec3n
8848 {
8851 };
8852#ifndef __REACTOS__
8855#else
8856#define up {0.0f, 0.0f, 1.0f}
8857#define zero_vec2 {0.0f, 0.0f}
8858#endif
8859
8860
8861
8862
8863
8864
8865
8866
8867 const struct vertex_pn vertices0[] =
8868 {
8869 {{ 0.0f, 3.0f, 0.f},
up},
8870 {{ 2.0f, 3.0f, 0.f},
up},
8871 {{ 0.0f, 0.0f, 0.f},
up},
8872
8873 {{ 3.0f, 3.0f, 0.f},
up},
8874 {{ 3.0f, 0.0f, 0.f},
up},
8875 {{ 1.0f, 0.0f, 0.f},
up},
8876 };
8879 const UINT vertex_size0 =
sizeof(*vertices0);
8880
8882
8883
8884
8885 const struct vertex_pntc exp_vertices2[] =
8886 {
8887 {{ 0.0f, 3.0f, 0.f},
up, zero_vec2},
8888 {{ 2.0f, 3.0f, 0.f},
up, zero_vec2},
8889 {{ 0.0f, 0.0f, 0.f},
up, zero_vec2},
8890
8891 {{ 3.0f, 3.0f, 0.f},
up, zero_vec2},
8892 {{ 3.0f, 0.0f, 0.f},
up, zero_vec2},
8893 {{ 1.0f, 0.0f, 0.f},
up, zero_vec2},
8894 };
8895 const UINT exp_vertex_size2 =
sizeof(*exp_vertices2);
8896
8897
8898
8899
8900 const struct vertex_ptcn exp_vertices3[] =
8901 {
8902 {{ 0.0f, 3.0f, 0.f}, zero_vec2,
up},
8903 {{ 2.0f, 3.0f, 0.f}, zero_vec2,
up},
8904 {{ 0.0f, 0.0f, 0.f}, zero_vec2,
up},
8905
8906 {{ 3.0f, 3.0f, 0.f}, zero_vec2,
up},
8907 {{ 3.0f, 0.0f, 0.f}, zero_vec2,
up},
8908 {{ 1.0f, 0.0f, 0.f}, zero_vec2,
up},
8909 };
8910 const UINT exp_vertex_size3 =
sizeof(*exp_vertices3);
8911
8912 const struct vertex_ptc vertices4[] =
8913 {
8914 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
8915 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
8916 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f}},
8917
8918 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
8919 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f}},
8920 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f}},
8921 };
8924 const UINT vertex_size4 =
sizeof(*vertices4);
8925 const struct vertex_ptc_float16_2 exp_vertices4[] =
8926 {
8927 {{ 0.0f, 3.0f, 0.f}, {0x3c00, 0x3c00}},
8928 {{ 2.0f, 3.0f, 0.f}, {0x3800, 0x399a}},
8929 {{ 0.0f, 0.0f, 0.f}, {0xb266, 0xb4cd}},
8930
8931 {{ 3.0f, 3.0f, 0.f}, {0x3266, 0x34cd}},
8932 {{ 3.0f, 0.0f, 0.f}, {0x3c00, 0x3c00}},
8933 {{ 1.0f, 0.0f, 0.f}, {0x2e66, 0x3266}},
8934 };
8935 const UINT exp_vertex_size4 =
sizeof(*exp_vertices4);
8936
8937 const struct vertex_ptc vertices5[] =
8938 {
8939 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
8940 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
8941 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f}},
8942
8943 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
8944 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f}},
8945 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f}},
8946 };
8949 const UINT vertex_size5 =
sizeof(*vertices5);
8950 const struct vertex_ptc_float16_4 exp_vertices5[] =
8951 {
8952 {{ 0.0f, 3.0f, 0.f}, {0x3c00, 0x3c00, 0, 0x3c00}},
8953 {{ 2.0f, 3.0f, 0.f}, {0x3800, 0x399a, 0, 0x3c00}},
8954 {{ 0.0f, 0.0f, 0.f}, {0xb266, 0xb4cd, 0, 0x3c00}},
8955
8956 {{ 3.0f, 3.0f, 0.f}, {0x3266, 0x34cd, 0, 0x3c00}},
8957 {{ 3.0f, 0.0f, 0.f}, {0x3c00, 0x3c00, 0, 0x3c00}},
8958 {{ 1.0f, 0.0f, 0.f}, {0x2e66, 0x3266, 0, 0x3c00}},
8959 };
8960 const UINT exp_vertex_size5 =
sizeof(*exp_vertices5);
8961
8962 const struct vertex_ptc vertices6[] =
8963 {
8964 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
8965 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
8966 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f}},
8967
8968 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
8969 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f}},
8970 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f}},
8971 };
8974 const UINT vertex_size6 =
sizeof(*vertices6);
8975 const struct vertex_ptc_float1 exp_vertices6[] =
8976 {
8977 {{ 0.0f, 3.0f, 0.f}, 1.0f},
8978 {{ 2.0f, 3.0f, 0.f}, 0.5f},
8979 {{ 0.0f, 0.0f, 0.f}, -0.2f},
8980
8981 {{ 3.0f, 3.0f, 0.f}, 0.2f},
8982 {{ 3.0f, 0.0f, 0.f}, 1.0f},
8983 {{ 1.0f, 0.0f, 0.f}, 0.1f},
8984 };
8985 const UINT exp_vertex_size6 =
sizeof(*exp_vertices6);
8986
8987 const struct vertex_ptc vertices7[] =
8988 {
8989 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
8990 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
8991 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f}},
8992
8993 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
8994 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f}},
8995 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f}},
8996 };
8999 const UINT vertex_size7 =
sizeof(*vertices7);
9000 const struct vertex_ptc_float3 exp_vertices7[] =
9001 {
9002 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f, 0.0f}},
9003 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f, 0.0f}},
9004 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f, 0.0f}},
9005
9006 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f, 0.0f}},
9007 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f, 0.0f}},
9008 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f, 0.0f}},
9009 };
9010 const UINT exp_vertex_size7 =
sizeof(*exp_vertices7);
9011
9012 const struct vertex_ptc vertices8[] =
9013 {
9014 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
9015 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
9016 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f}},
9017
9018 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
9019 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f}},
9020 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f}},
9021 };
9024 const UINT vertex_size8 =
sizeof(*vertices8);
9025 const struct vertex_ptc_float4 exp_vertices8[] =
9026 {
9027 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f, 0.0f, 1.0f}},
9028 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f, 0.0f, 1.0f}},
9029 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f, 0.0f, 1.0f}},
9030
9031 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f, 0.0f, 1.0f}},
9032 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f, 0.0f, 1.0f}},
9033 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f, 0.0f, 1.0f}},
9034 };
9035 const UINT exp_vertex_size8 =
sizeof(*exp_vertices8);
9036
9037 const struct vertex_ptc vertices9[] =
9038 {
9039 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
9040 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
9041 {{ 0.0f, 0.0f, 0.f}, {-0.4f, -0.6f}},
9042
9043 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
9044 {{ 3.0f, 0.0f, 0.f}, { 2.0f, 256.0f}},
9045 {{ 1.0f, 0.0f, 0.f}, { 0.11f, 0.2f}},
9046 };
9049 const UINT vertex_size9 =
sizeof(*vertices9);
9050 const struct vertex_ptc_d3dcolor exp_vertices9[] =
9051 {
9052 {{ 0.0f, 3.0f, 0.f}, {0, 255, 255, 255}},
9053 {{ 2.0f, 3.0f, 0.f}, {0, 179, 128, 255}},
9054 {{ 0.0f, 0.0f, 0.f}, {0, 0, 0, 255}},
9055
9056 {{ 3.0f, 3.0f, 0.f}, {0, 77, 51, 255}},
9057 {{ 3.0f, 0.0f, 0.f}, {0, 255, 255, 255}},
9058 {{ 1.0f, 0.0f, 0.f}, {0, 51, 28, 255}},
9059 };
9060 const UINT exp_vertex_size9 =
sizeof(*exp_vertices9);
9061
9062 const struct vertex_ptc vertices10[] =
9063 {
9064 {{ 0.0f, 3.0f, 0.f}, { 0.0f, 1.0f}},
9065 {{ 2.0f, 3.0f, 0.f}, { 2.0f, 3.0f}},
9066 {{ 0.0f, 0.0f, 0.f}, { 254.0f, 255.0f}},
9067
9068 {{ 3.0f, 3.0f, 0.f}, { 256.0f, 257.0f}},
9069 {{ 3.0f, 0.0f, 0.f}, { 1.4f, 1.5f}},
9070 {{ 1.0f, 0.0f, 0.f}, {-4.0f, -5.0f}},
9071 };
9073 const UINT num_faces10 =
ARRAY_SIZE(vertices10) / VERTS_PER_FACE;
9074 const UINT vertex_size10 =
sizeof(*vertices10);
9075 const struct vertex_ptc_ubyte4 exp_vertices10[] =
9076 {
9077 {{ 0.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9078 {{ 2.0f, 3.0f, 0.f}, {2, 3, 0, 1}},
9079 {{ 0.0f, 0.0f, 0.f}, {254, 255, 0, 1}},
9080
9081 {{ 3.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9082 {{ 3.0f, 0.0f, 0.f}, {1, 2, 0, 1}},
9083 {{ 1.0f, 0.0f, 0.f}, {0, 0, 0, 1}},
9084 };
9085 const UINT exp_vertex_size10 =
sizeof(*exp_vertices10);
9086
9087 const struct vertex_ptc vertices11[] =
9088 {
9089 {{ 0.0f, 3.0f, 0.f}, { 1.0f, -1.0f}},
9090 {{ 2.0f, 3.0f, 0.f}, { 0.4f, 0.5f}},
9091 {{ 0.0f, 0.0f, 0.f}, {-0.5f, -5.0f}},
9092
9096
9100 };
9102 const UINT num_faces11 =
ARRAY_SIZE(vertices11) / VERTS_PER_FACE;
9103 const UINT vertex_size11 =
sizeof(*vertices11);
9104 const struct vertex_ptc_short2 exp_vertices11[] =
9105 {
9106 {{ 0.0f, 3.0f, 0.f}, {1, 0}},
9107 {{ 2.0f, 3.0f, 0.f}, {0, 1}},
9108 {{ 0.0f, 0.0f, 0.f}, {0, -4}},
9109
9113
9114 {{ 4.0f, 3.0f, 0.f}, {-2, 1}},
9115 {{ 6.0f, 0.0f, 0.f}, {32765, -32767}},
9116 {{ 4.0f, 0.0f, 0.f}, {-4, 1}},
9117 };
9118 const UINT exp_vertex_size11 =
sizeof(*exp_vertices11);
9119
9120 const struct vertex_ptc vertices12[] =
9121 {
9122 {{ 0.0f, 3.0f, 0.f}, { 1.0f, -1.0f}},
9123 {{ 2.0f, 3.0f, 0.f}, { 0.4f, 0.5f}},
9124 {{ 0.0f, 0.0f, 0.f}, {-0.5f, -5.0f}},
9125
9129
9133 };
9135 const UINT num_faces12 =
ARRAY_SIZE(vertices12) / VERTS_PER_FACE;
9136 const UINT vertex_size12 =
sizeof(*vertices12);
9137 const struct vertex_ptc_short4 exp_vertices12[] =
9138 {
9139 {{ 0.0f, 3.0f, 0.f}, {1, 0, 0, 1}},
9140 {{ 2.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9141 {{ 0.0f, 0.0f, 0.f}, {0, -4, 0, 1}},
9142
9146
9147 {{ 4.0f, 3.0f, 0.f}, {-2, 1, 0, 1}},
9148 {{ 6.0f, 0.0f, 0.f}, {32765, -32767, 0, 1}},
9149 {{ 4.0f, 0.0f, 0.f}, {-4, 1, 0, 1}},
9150 };
9151 const UINT exp_vertex_size12 =
sizeof(*exp_vertices12);
9152
9153 const struct vertex_ptc vertices13[] =
9154 {
9155 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 2.0f}},
9156 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
9157 {{ 0.0f, 0.0f, 0.f}, {-0.4f, -0.5f}},
9158
9159 {{ 3.0f, 3.0f, 0.f}, {-0.6f, -1.0f}},
9162 };
9164 const UINT num_faces13 =
ARRAY_SIZE(vertices13) / VERTS_PER_FACE;
9165 const UINT vertex_size13 =
sizeof(*vertices13);
9166 const struct vertex_ptc_ubyte4n exp_vertices13[] =
9167 {
9168 {{ 0.0f, 3.0f, 0.f}, {255, 255, 0, 255}},
9169 {{ 2.0f, 3.0f, 0.f}, {128, 179, 0, 255}},
9170 {{ 0.0f, 0.0f, 0.f}, {0, 0, 0, 255}},
9171
9172 {{ 3.0f, 3.0f, 0.f}, {0, 0, 0, 255}},
9173 {{ 3.0f, 0.0f, 0.f}, {255, 255, 0, 255}},
9174 {{ 1.0f, 0.0f, 0.f}, {255, 0, 0, 255}},
9175 };
9176 const UINT exp_vertex_size13 =
sizeof(*exp_vertices13);
9177
9178 const struct vertex_ptc vertices14[] =
9179 {
9180 {{ 0.0f, 3.0f, 0.f}, {1.0f, 2.0f}},
9181 {{ 2.0f, 3.0f, 0.f}, {0.4f, 0.5f}},
9182 {{ 0.0f, 0.0f, 0.f}, {0.6f, -1.0f}},
9183
9184 {{ 3.0f, 3.0f, 0.f}, {-0.4f, -0.5f}},
9185 {{ 3.0f, 0.0f, 0.f}, {-0.9f, -0.99997}},
9187 };
9189 const UINT num_faces14 =
ARRAY_SIZE(vertices14) / VERTS_PER_FACE;
9190 const UINT vertex_size14 =
sizeof(*vertices14);
9191 const struct vertex_ptc_short2 exp_vertices14[] =
9192 {
9194 {{ 2.0f, 3.0f, 0.f}, {13107, 16384}},
9195 {{ 0.0f, 0.0f, 0.f}, {19660,
SHRT_MIN + 2}},
9196
9197 {{ 3.0f, 3.0f, 0.f}, {-13106, -16383}},
9198 {{ 3.0f, 0.0f, 0.f}, {-29489,
SHRT_MIN + 3}},
9200 };
9201 const UINT exp_vertex_size14 =
sizeof(*exp_vertices14);
9202
9203 const struct vertex_ptc vertices15[] =
9204 {
9205 {{ 0.0f, 3.0f, 0.f}, {1.0f, 2.0f}},
9206 {{ 2.0f, 3.0f, 0.f}, {0.4f, 0.5f}},
9207 {{ 0.0f, 0.0f, 0.f}, {0.6f, -1.0f}},
9208
9209 {{ 3.0f, 3.0f, 0.f}, {-0.4f, -0.5f}},
9210 {{ 3.0f, 0.0f, 0.f}, {-0.9f, -0.99997}},
9212 };
9214 const UINT num_faces15 =
ARRAY_SIZE(vertices15) / VERTS_PER_FACE;
9215 const UINT vertex_size15 =
sizeof(*vertices15);
9216 const struct vertex_ptc_short4 exp_vertices15[] =
9217 {
9219 {{ 2.0f, 3.0f, 0.f}, {13107, 16384, 0,
SHRT_MAX}},
9221
9222 {{ 3.0f, 3.0f, 0.f}, {-13106, -16383, 0,
SHRT_MAX}},
9225 };
9226 const UINT exp_vertex_size15 =
sizeof(*exp_vertices15);
9227
9228 const struct vertex_ptc vertices16[] =
9229 {
9230 {{ 0.0f, 3.0f, 0.f}, {1.0f, 2.0f}},
9231 {{ 2.0f, 3.0f, 0.f}, {0.4f, 0.5f}},
9232 {{ 0.0f, 0.0f, 0.f}, {0.6f, -1.0f}},
9233
9234 {{ 3.0f, 3.0f, 0.f}, {-0.4f, -0.5f}},
9235 {{ 3.0f, 0.0f, 0.f}, {-0.9f, 0.99998f}},
9236 {{ 1.0f, 0.0f, 0.f}, {
USHRT_MAX, 0.0f}},
9237 };
9239 const UINT num_faces16 =
ARRAY_SIZE(vertices16) / VERTS_PER_FACE;
9240 const UINT vertex_size16 =
sizeof(*vertices16);
9241 const struct vertex_ptc_ushort2n exp_vertices16[] =
9242 {
9244 {{ 2.0f, 3.0f, 0.f}, {26214, 32768}},
9245 {{ 0.0f, 0.0f, 0.f}, {39321, 0}},
9246
9247 {{ 3.0f, 3.0f, 0.f}, {0, 0}},
9248 {{ 3.0f, 0.0f, 0.f}, {0,
USHRT_MAX - 1}},
9250 };
9251 const UINT exp_vertex_size16 =
sizeof(*exp_vertices16);
9252
9253 const struct vertex_ptc vertices17[] =
9254 {
9255 {{ 0.0f, 3.0f, 0.f}, {1.0f, 2.0f}},
9256 {{ 2.0f, 3.0f, 0.f}, {0.4f, 0.5f}},
9257 {{ 0.0f, 0.0f, 0.f}, {0.6f, -1.0f}},
9258
9259 {{ 3.0f, 3.0f, 0.f}, {-0.4f, -0.5f}},
9260 {{ 3.0f, 0.0f, 0.f}, {-0.9f, 0.99998f}},
9261 {{ 1.0f, 0.0f, 0.f}, {
USHRT_MAX, 0.0f}},
9262 };
9264 const UINT num_faces17 =
ARRAY_SIZE(vertices17) / VERTS_PER_FACE;
9265 const UINT vertex_size17 =
sizeof(*vertices17);
9266 const struct vertex_ptc_ushort4n exp_vertices17[] =
9267 {
9269 {{ 2.0f, 3.0f, 0.f}, {26214, 32768, 0,
USHRT_MAX}},
9270 {{ 0.0f, 0.0f, 0.f}, {39321, 0, 0,
USHRT_MAX}},
9271
9272 {{ 3.0f, 3.0f, 0.f}, {0, 0, 0,
USHRT_MAX}},
9275 };
9276 const UINT exp_vertex_size17 =
sizeof(*exp_vertices17);
9277
9278
9279
9280 const struct vertex_ptc vertices18[] =
9281 {
9282 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 1.0f}},
9283 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.7f}},
9284 {{ 0.0f, 0.0f, 0.f}, {-0.2f, -0.3f}},
9285
9286 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.3f}},
9287 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 1.0f}},
9288 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.2f}},
9289 };
9291 const UINT num_faces18 =
ARRAY_SIZE(vertices18) / VERTS_PER_FACE;
9292 const UINT vertex_size18 =
sizeof(*vertices18);
9293 const struct vertex_ptc_float16_2 exp_vertices18[] =
9294 {
9295 {{ 0.0f, 3.0f, 0.f}, {0x3c00, 0x3c00}},
9296 {{ 2.0f, 3.0f, 0.f}, {0x3800, 0x399a}},
9297 {{ 0.0f, 0.0f, 0.f}, {0xb266, 0xb4cd}},
9298
9299 {{ 3.0f, 3.0f, 0.f}, {0x3266, 0x34cd}},
9300 {{ 3.0f, 0.0f, 0.f}, {0x3c00, 0x3c00}},
9301 {{ 1.0f, 0.0f, 0.f}, {0x2e66, 0x3266}},
9302 };
9303 const UINT exp_vertex_size18 =
sizeof(*exp_vertices18);
9304
9305
9306 const struct vertex_pntc vertices19[] =
9307 {
9308 {{ 0.0f, 3.0f, 0.f},
up, { 1.0f, 1.0f}},
9309 {{ 2.0f, 3.0f, 0.f},
up, { 0.5f, 0.7f}},
9310 {{ 0.0f, 0.0f, 0.f},
up, {-0.2f, -0.3f}},
9311
9312 {{ 3.0f, 3.0f, 0.f},
up, { 0.2f, 0.3f}},
9313 {{ 3.0f, 0.0f, 0.f},
up, { 1.0f, 1.0f}},
9314 {{ 1.0f, 0.0f, 0.f},
up, { 0.1f, 0.2f}},
9315 };
9317 const UINT num_faces19 =
ARRAY_SIZE(vertices19) / VERTS_PER_FACE;
9318 const UINT vertex_size19 =
sizeof(*vertices19);
9319 const struct vertex_pntc exp_vertices19[] =
9320 {
9321 {{ 0.0f, 3.0f, 0.f},
up, zero_vec2},
9322 {{ 2.0f, 3.0f, 0.f},
up, zero_vec2},
9323 {{ 0.0f, 0.0f, 0.f},
up, zero_vec2},
9324
9325 {{ 3.0f, 3.0f, 0.f},
up, zero_vec2},
9326 {{ 3.0f, 0.0f, 0.f},
up, zero_vec2},
9327 {{ 1.0f, 0.0f, 0.f},
up, zero_vec2},
9328 };
9329 const UINT exp_vertex_size19 =
sizeof(*exp_vertices19);
9330
9331
9332 const struct vertex_pntc vertices20[] =
9333 {
9334 {{ 0.0f, 3.0f, 0.f},
up, { 1.0f, 1.0f}},
9335 {{ 2.0f, 3.0f, 0.f},
up, { 0.5f, 0.7f}},
9336 {{ 0.0f, 0.0f, 0.f},
up, {-0.2f, -0.3f}},
9337
9338 {{ 3.0f, 3.0f, 0.f},
up, { 0.2f, 0.3f}},
9339 {{ 3.0f, 0.0f, 0.f},
up, { 1.0f, 1.0f}},
9340 {{ 1.0f, 0.0f, 0.f},
up, { 0.1f, 0.2f}},
9341 };
9343 const UINT num_faces20 =
ARRAY_SIZE(vertices20) / VERTS_PER_FACE;
9344 const UINT vertex_size20 =
sizeof(*vertices20);
9345 const struct vertex_pntc exp_vertices20[] =
9346 {
9347 {{ 0.0f, 3.0f, 0.f},
up, zero_vec2},
9348 {{ 2.0f, 3.0f, 0.f},
up, zero_vec2},
9349 {{ 0.0f, 0.0f, 0.f},
up, zero_vec2},
9350
9351 {{ 3.0f, 3.0f, 0.f},
up, zero_vec2},
9352 {{ 3.0f, 0.0f, 0.f},
up, zero_vec2},
9353 {{ 1.0f, 0.0f, 0.f},
up, zero_vec2},
9354 };
9355 const UINT exp_vertex_size20 =
sizeof(*exp_vertices20);
9356
9357 const struct vertex_ptc_float1 vertices21[] =
9358 {
9359 {{ 0.0f, 3.0f, 0.f}, 1.0f},
9360 {{ 2.0f, 3.0f, 0.f}, 0.5f},
9361 {{ 0.0f, 0.0f, 0.f}, -0.2f},
9362
9363 {{ 3.0f, 3.0f, 0.f}, 0.2f},
9364 {{ 3.0f, 0.0f, 0.f}, 1.0f},
9365 {{ 1.0f, 0.0f, 0.f}, 0.1f},
9366 };
9368 const UINT num_faces21 =
ARRAY_SIZE(vertices21) / VERTS_PER_FACE;
9369 const UINT vertex_size21 =
sizeof(*vertices21);
9370 const struct vertex_ptc exp_vertices21[] =
9371 {
9372 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 0.0f}},
9373 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.0f}},
9374 {{ 0.0f, 0.0f, 0.f}, {-0.2f, 0.0f}},
9375
9376 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.0f}},
9377 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 0.0f}},
9378 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.0f}},
9379 };
9380 const UINT exp_vertex_size21 =
sizeof(*exp_vertices21);
9381
9382 const struct vertex_ptc_float1 vertices22[] =
9383 {
9384 {{ 0.0f, 3.0f, 0.f}, 1.0f},
9385 {{ 2.0f, 3.0f, 0.f}, 0.5f},
9386 {{ 0.0f, 0.0f, 0.f}, -0.2f},
9387
9388 {{ 3.0f, 3.0f, 0.f}, 0.2f},
9389 {{ 3.0f, 0.0f, 0.f}, 1.0f},
9390 {{ 1.0f, 0.0f, 0.f}, 0.1f},
9391 };
9393 const UINT num_faces22 =
ARRAY_SIZE(vertices22) / VERTS_PER_FACE;
9394 const UINT vertex_size22 =
sizeof(*vertices22);
9395 const struct vertex_ptc_float3 exp_vertices22[] =
9396 {
9397 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 0.0f, 0.0f}},
9398 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.0f, 0.0f}},
9399 {{ 0.0f, 0.0f, 0.f}, {-0.2f, 0.0f, 0.0f}},
9400
9401 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.0f, 0.0f}},
9402 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 0.0f, 0.0f}},
9403 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.0f, 0.0f}},
9404 };
9405 const UINT exp_vertex_size22 =
sizeof(*exp_vertices22);
9406
9407 const struct vertex_ptc_float1 vertices23[] =
9408 {
9409 {{ 0.0f, 3.0f, 0.f}, 1.0f},
9410 {{ 2.0f, 3.0f, 0.f}, 0.5f},
9411 {{ 0.0f, 0.0f, 0.f}, -0.2f},
9412
9413 {{ 3.0f, 3.0f, 0.f}, 0.2f},
9414 {{ 3.0f, 0.0f, 0.f}, 1.0f},
9415 {{ 1.0f, 0.0f, 0.f}, 0.1f},
9416 };
9418 const UINT num_faces23 =
ARRAY_SIZE(vertices23) / VERTS_PER_FACE;
9419 const UINT vertex_size23 =
sizeof(*vertices23);
9420 const struct vertex_ptc_float4 exp_vertices23[] =
9421 {
9422 {{ 0.0f, 3.0f, 0.f}, { 1.0f, 0.0f, 0.0f, 1.0f}},
9423 {{ 2.0f, 3.0f, 0.f}, { 0.5f, 0.0f, 0.0f, 1.0f}},
9424 {{ 0.0f, 0.0f, 0.f}, {-0.2f, 0.0f, 0.0f, 1.0f}},
9425
9426 {{ 3.0f, 3.0f, 0.f}, { 0.2f, 0.0f, 0.0f, 1.0f}},
9427 {{ 3.0f, 0.0f, 0.f}, { 1.0f, 0.0f, 0.0f, 1.0f}},
9428 {{ 1.0f, 0.0f, 0.f}, { 0.1f, 0.0f, 0.0f, 1.0f}},
9429 };
9430 const UINT exp_vertex_size23 =
sizeof(*exp_vertices23);
9431
9432 const struct vertex_ptc_float1 vertices24[] =
9433 {
9434 {{ 0.0f, 3.0f, 0.f}, 1.0f},
9435 {{ 2.0f, 3.0f, 0.f}, 0.5f},
9436 {{ 0.0f, 0.0f, 0.f}, -0.2f},
9437
9438 {{ 3.0f, 3.0f, 0.f}, 0.2f},
9439 {{ 3.0f, 0.0f, 0.f}, 1.0f},
9440 {{ 1.0f, 0.0f, 0.f}, 0.11f},
9441 };
9443 const UINT num_faces24 =
ARRAY_SIZE(vertices24) / VERTS_PER_FACE;
9444 const UINT vertex_size24 =
sizeof(*vertices24);
9445 const struct vertex_ptc_d3dcolor exp_vertices24[] =
9446 {
9447 {{ 0.0f, 3.0f, 0.f}, {0, 0, 255, 255}},
9448 {{ 2.0f, 3.0f, 0.f}, {0, 0, 128, 255}},
9449 {{ 0.0f, 0.0f, 0.f}, {0, 0, 0, 255}},
9450
9451 {{ 3.0f, 3.0f, 0.f}, {0, 0, 51, 255}},
9452 {{ 3.0f, 0.0f, 0.f}, {0, 0, 255, 255}},
9453 {{ 1.0f, 0.0f, 0.f}, {0, 0, 28, 255}},
9454 };
9455 const UINT exp_vertex_size24 =
sizeof(*exp_vertices24);
9456
9457 const struct vertex_ptc_float1 vertices25[] =
9458 {
9459 {{ 0.0f, 3.0f, 0.f}, 0.0f},
9460 {{ 2.0f, 3.0f, 0.f}, 1.4f},
9461 {{ 0.0f, 0.0f, 0.f}, 1.5f},
9462
9463 {{ 3.0f, 3.0f, 0.f}, 255.0f},
9464 {{ 3.0f, 0.0f, 0.f}, 256.0f},
9465 {{ 1.0f, 0.0f, 0.f}, -1.0f},
9466 };
9468 const UINT num_faces25 =
ARRAY_SIZE(vertices25) / VERTS_PER_FACE;
9469 const UINT vertex_size25 =
sizeof(*vertices25);
9470 const struct vertex_ptc_ubyte4 exp_vertices25[] =
9471 {
9472 {{ 0.0f, 3.0f, 0.f}, {0, 0, 0, 1}},
9473 {{ 2.0f, 3.0f, 0.f}, {1, 0, 0, 1}},
9474 {{ 0.0f, 0.0f, 0.f}, {2, 0, 0, 1}},
9475
9476 {{ 3.0f, 3.0f, 0.f}, {255, 0, 0, 1}},
9477 {{ 3.0f, 0.0f, 0.f}, {0, 0, 0, 1}},
9478 {{ 1.0f, 0.0f, 0.f}, {0, 0, 0, 1}},
9479 };
9480 const UINT exp_vertex_size25 =
sizeof(*exp_vertices25);
9481
9482 const struct vertex_ptc_float4 vertices26[] =
9483 {
9484 {{ 0.0f, 3.0f, 0.f}, {0.0f, 1.0f, 0.4f, 0.5f}},
9485 {{ 2.0f, 3.0f, 0.f}, {-0.4f, -0.5f, -1.0f, -2.0f}},
9486 {{ 0.0f, 0.0f, 0.f}, {254.0f, 255.0f, 256.0f, 257.0f}},
9487
9488 {{ 3.0f, 3.0f, 0.f}, {0.1f, 0.2f, 0.3f, 0.4f}},
9489 {{ 3.0f, 0.0f, 0.f}, {0.5f, 0.6f, 0.7f, 0.8f}},
9490 {{ 1.0f, 0.0f, 0.f}, {0.9f, 0.99f, 0.995f, 0.999f}},
9491 };
9493 const UINT num_faces26 =
ARRAY_SIZE(vertices26) / VERTS_PER_FACE;
9494 const UINT vertex_size26 =
sizeof(*vertices26);
9495 const struct vertex_ptc_d3dcolor exp_vertices26[] =
9496 {
9497 {{ 0.0f, 3.0f, 0.f}, {102, 255, 0, 128}},
9498 {{ 2.0f, 3.0f, 0.f}, {0, 0, 0, 0}},
9499 {{ 0.0f, 0.0f, 0.f}, {255, 255, 255, 255}},
9500
9501 {{ 3.0f, 3.0f, 0.f}, {77, 51, 26, 102}},
9502 {{ 3.0f, 0.0f, 0.f}, {179, 153, 128, 204}},
9503 {{ 1.0f, 0.0f, 0.f}, {254, 252, 230, 255}},
9504 };
9505 const UINT exp_vertex_size26 =
sizeof(*exp_vertices26);
9506
9507 const struct vertex_ptc_d3dcolor vertices27[] =
9508 {
9509 {{ 0.0f, 3.0f, 0.f}, {102, 255, 0, 128}},
9510 {{ 2.0f, 3.0f, 0.f}, {0, 0, 0, 0}},
9511 {{ 0.0f, 0.0f, 0.f}, {255, 255, 255, 255}},
9512
9513 {{ 3.0f, 3.0f, 0.f}, {77, 51, 26, 102}},
9514 {{ 3.0f, 0.0f, 0.f}, {179, 153, 128, 204}},
9515 {{ 1.0f, 0.0f, 0.f}, {254, 252, 230, 255}},
9516 };
9518 const UINT num_faces27 =
ARRAY_SIZE(vertices27) / VERTS_PER_FACE;
9519 const UINT vertex_size27 =
sizeof(*vertices27);
9520 const struct vertex_ptc_float4 exp_vertices27[] =
9521 {
9522 {{ 0.0f, 3.0f, 0.f}, {0.0f, 1.0f, 0.4f, 0.501961f}},
9523 {{ 2.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 0.0f}},
9524 {{ 0.0f, 0.0f, 0.f}, {1.0f, 1.0f, 1.0f, 1.0f}},
9525
9526 {{ 3.0f, 3.0f, 0.f}, {0.101961f, 0.2f, 0.301961f, 0.4f}},
9527 {{ 3.0f, 0.0f, 0.f}, {0.501961f, 0.6f, 0.701961f, 0.8f}},
9528 {{ 1.0f, 0.0f, 0.f}, {0.901961f, 0.988235f, 0.996078f, 1.0f}},
9529 };
9530 const UINT exp_vertex_size27 =
sizeof(*exp_vertices27);
9531
9532 const struct vertex_ptc_ubyte4 vertices28[] =
9533 {
9534 {{ 0.0f, 3.0f, 0.f}, {0, 0, 0, 0}},
9535 {{ 2.0f, 3.0f, 0.f}, {1, 1, 1, 1}},
9536 {{ 0.0f, 0.0f, 0.f}, {1, 0, 1, 0}},
9537
9538 {{ 3.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9539 {{ 3.0f, 0.0f, 0.f}, {10, 20, 30, 40}},
9540 {{ 1.0f, 0.0f, 0.f}, {50, 60, 127, 255}},
9541 };
9543 const UINT num_faces28 =
ARRAY_SIZE(vertices28) / VERTS_PER_FACE;
9544 const UINT vertex_size28 =
sizeof(*vertices28);
9545 const struct vertex_ptc_float4 exp_vertices28[] =
9546 {
9547 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 0.0f}},
9548 {{ 2.0f, 3.0f, 0.f}, {1.0f, 1.0f, 1.0f, 1.0f}},
9549 {{ 0.0f, 0.0f, 0.f}, {1.0f, 0.0f, 1.0f, 0.0f}},
9550
9551 {{ 3.0f, 3.0f, 0.f}, {0.0f, 1.0f, 0.0f, 1.0f}},
9552 {{ 3.0f, 0.0f, 0.f}, {10.0f, 20.0f, 30.0f, 40.0f}},
9553 {{ 1.0f, 0.0f, 0.f}, {50.0f, 60.0f, 127.0f, 255.0f}},
9554 };
9555 const UINT exp_vertex_size28 =
sizeof(*exp_vertices28);
9556
9557 const struct vertex_ptc_short2 vertices29[] =
9558 {
9559 {{ 0.0f, 3.0f, 0.f}, {0, 0}},
9560 {{ 2.0f, 3.0f, 0.f}, {0, 1}},
9561 {{ 0.0f, 0.0f, 0.f}, {1, 0}},
9562
9563 {{ 3.0f, 3.0f, 0.f}, {1, 1}},
9565 {{ 1.0f, 0.0f, 0.f}, {-42, 42}},
9566 };
9568 const UINT num_faces29 =
ARRAY_SIZE(vertices29) / VERTS_PER_FACE;
9569 const UINT vertex_size29 =
sizeof(*vertices29);
9570 const struct vertex_ptc_float4 exp_vertices29[] =
9571 {
9572 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 1.0f}},
9573 {{ 2.0f, 3.0f, 0.f}, {0.0f, 1.0f, 0.0f, 1.0f }},
9574 {{ 0.0f, 0.0f, 0.f}, {1.0f, 0.0f, 0.0f, 1.0f}},
9575
9576 {{ 3.0f, 3.0f, 0.f}, {1.0f, 1.0f, 0.0f, 1.0f}},
9578 {{ 1.0f, 0.0f, 0.f}, {-42.0f, 42.0f, 0.0f, 1.0f}},
9579 };
9580 const UINT exp_vertex_size29 =
sizeof(*exp_vertices29);
9581
9582 const struct vertex_ptc_short4 vertices30[] =
9583 {
9584 {{ 0.0f, 3.0f, 0.f}, {0, 0, 0, 0}},
9585 {{ 2.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9586 {{ 0.0f, 0.0f, 0.f}, {1, 0, 1, 0}},
9587
9588 {{ 3.0f, 3.0f, 0.f}, {1, 1, 1, 1}},
9591 };
9593 const UINT num_faces30 =
ARRAY_SIZE(vertices30) / VERTS_PER_FACE;
9594 const UINT vertex_size30 =
sizeof(*vertices30);
9595 const struct vertex_ptc_float4 exp_vertices30[] =
9596 {
9597 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 0.0f}},
9598 {{ 2.0f, 3.0f, 0.f}, {0.0f, 1.0f, 0.0f, 1.0f }},
9599 {{ 0.0f, 0.0f, 0.f}, {1.0f, 0.0f, 1.0f, 0.0f}},
9600
9601 {{ 3.0f, 3.0f, 0.f}, {1.0f, 1.0f, 1.0f, 1.0f}},
9604 };
9605 const UINT exp_vertex_size30 =
sizeof(*exp_vertices30);
9606
9607 const struct vertex_ptc_ubyte4n vertices31[] =
9608 {
9609 {{ 0.0f, 3.0f, 0.f}, {0, 0, 0, 0}},
9610 {{ 2.0f, 3.0f, 0.f}, {1, 1, 1, 1}},
9611 {{ 0.0f, 0.0f, 0.f}, {1, 0, 1, 0}},
9612
9613 {{ 3.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9614 {{ 3.0f, 0.0f, 0.f}, {10, 20, 30, 40}},
9615 {{ 1.0f, 0.0f, 0.f}, {50, 60, 70,
UCHAR_MAX}},
9616 };
9618 const UINT num_faces31 =
ARRAY_SIZE(vertices31) / VERTS_PER_FACE;
9619 const UINT vertex_size31 =
sizeof(*vertices31);
9620 const struct vertex_ptc_float4 exp_vertices31[] =
9621 {
9622 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 0.0f}},
9625
9629 };
9630 const UINT exp_vertex_size31 =
sizeof(*exp_vertices31);
9631
9632 const struct vertex_ptc_short2 vertices32[] =
9633 {
9634 {{ 0.0f, 3.0f, 0.f}, {0, 0}},
9635 {{ 2.0f, 3.0f, 0.f}, {0, 1}},
9636 {{ 0.0f, 0.0f, 0.f}, {1, 0}},
9637
9638 {{ 3.0f, 3.0f, 0.f}, {1, 1}},
9640 {{ 1.0f, 0.0f, 0.f}, {-42, 42}},
9641 };
9643 const UINT num_faces32 =
ARRAY_SIZE(vertices32) / VERTS_PER_FACE;
9644 const UINT vertex_size32 =
sizeof(*vertices32);
9645 const struct vertex_ptc_float4 exp_vertices32[] =
9646 {
9647 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 1.0f}},
9648 {{ 2.0f, 3.0f, 0.f}, {0.0f, 1.0f/
SHRT_MAX, 0.0f, 1.0f}},
9649 {{ 0.0f, 0.0f, 0.f}, {1.0f/
SHRT_MAX, 0.0f, 0.0f, 1.0f}},
9650
9652 {{ 3.0f, 0.0f, 0.f}, {-1.0f, 1.0f, 0.0f, 1.0f}},
9654 };
9655 const UINT exp_vertex_size32 =
sizeof(*exp_vertices32);
9656
9657 const struct vertex_ptc_short4 vertices33[] =
9658 {
9659 {{ 0.0f, 3.0f, 0.f}, {0, 0, 0, 0}},
9660 {{ 2.0f, 3.0f, 0.f}, {0, 1, 0, 1}},
9661 {{ 0.0f, 0.0f, 0.f}, {1, 0, 1, 0}},
9662
9663 {{ 3.0f, 3.0f, 0.f}, {1, 1, 1, 1}},
9665 {{ 1.0f, 0.0f, 0.f}, {-42, 42, 1, 1}},
9666 };
9668 const UINT num_faces33 =
ARRAY_SIZE(vertices33) / VERTS_PER_FACE;
9669 const UINT vertex_size33 =
sizeof(*vertices33);
9670 const struct vertex_ptc_float4 exp_vertices33[] =
9671 {
9672 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 0.0f}},
9675
9677 {{ 3.0f, 0.0f, 0.f}, {-1.0f, 1.0f, -1.0f, 1.0f}},
9679 };
9680 const UINT exp_vertex_size33 =
sizeof(*exp_vertices33);
9681
9682 const struct vertex_ptc_float16_2 vertices34[] =
9683 {
9684 {{ 0.0f, 3.0f, 0.f}, {0x3c00, 0x3c00}},
9685 {{ 2.0f, 3.0f, 0.f}, {0x3800, 0x399a}},
9686 {{ 0.0f, 0.0f, 0.f}, {0xb266, 0xb4cd}},
9687
9688 {{ 3.0f, 3.0f, 0.f}, {0x3266, 0x34cd}},
9689 {{ 3.0f, 0.0f, 0.f}, {0x3c00, 0x3c00}},
9690 {{ 1.0f, 0.0f, 0.f}, {0x2e66, 0x3266}},
9691 };
9693 const UINT num_faces34 =
ARRAY_SIZE(vertices34) / VERTS_PER_FACE;
9694 const UINT vertex_size34 =
sizeof(*vertices34);
9695 const struct vertex_ptc_float4 exp_vertices34[] =
9696 {
9697 {{ 0.0f, 3.0f, 0.f}, {1.0f, 1.0f, 0.0f, 1.0f}},
9698 {{ 2.0f, 3.0f, 0.f}, {0.5f, 0.700195f, 0.0f, 1.0f}},
9699 {{ 0.0f, 0.0f, 0.f}, {-0.199951f, -0.300049f, 0.0f, 1.0f}},
9700
9701 {{ 3.0f, 3.0f, 0.f}, {0.199951f, 0.300049f, 0.0f, 1.0f}},
9702 {{ 3.0f, 0.0f, 0.f}, {1.0f, 1.0f, 0.0f, 1.0f}},
9703 {{ 1.0f, 0.0f, 0.f}, {0.099976f, 0.199951f, 0.0f, 1.0f}},
9704 };
9705 const UINT exp_vertex_size34 =
sizeof(*exp_vertices34);
9706
9707 const struct vertex_ptc_float16_4 vertices35[] =
9708 {
9709 {{ 0.0f, 3.0f, 0.f}, {0x0000, 0x0000, 0x0000, 0x0000}},
9710 {{ 2.0f, 3.0f, 0.f}, {0x3c00, 0x3c00, 0x3c00, 0x3c00}},
9711 {{ 0.0f, 0.0f, 0.f}, {0x3c00, 0x0000, 0x3c00, 0x0000}},
9712
9713 {{ 3.0f, 3.0f, 0.f}, {0x0000, 0x3c00, 0x0000, 0x3c00}},
9714 {{ 3.0f, 0.0f, 0.f}, {0x3800, 0x399a, 0xb266, 0xb4cd}},
9715 {{ 1.0f, 0.0f, 0.f}, {0x2e66, 0x3266, 0x2e66, 0x3266}},
9716 };
9718 const UINT num_faces35 =
ARRAY_SIZE(vertices35) / VERTS_PER_FACE;
9719 const UINT vertex_size35 =
sizeof(*vertices35);
9720 const struct vertex_ptc_float4 exp_vertices35[] =
9721 {
9722 {{ 0.0f, 3.0f, 0.f}, {0.0f, 0.0f, 0.0f, 0.0f}},
9723 {{ 2.0f, 3.0f, 0.f}, {1.0f, 1.0f, 1.0f, 1.0f}},
9724 {{ 0.0f, 0.0f, 0.f}, {1.0f, 0.0f, 1.0f, 0.0f}},
9725
9726 {{ 3.0f, 3.0f, 0.f}, {0.0f, 1.0f, 0.0f, 1.0f}},
9727 {{ 3.0f, 0.0f, 0.f}, {0.5f, 0.700195f, -0.199951f, -0.300049f}},
9728 {{ 1.0f, 0.0f, 0.f}, {0.099976f, 0.199951f, 0.099976f, 0.199951f}},
9729 };
9730 const UINT exp_vertex_size35 =
sizeof(*exp_vertices35);
9731
9732 const struct vertex_pn vertices36[] =
9733 {
9734 {{ 0.0f, 3.0f, 0.f},
up},
9735 {{ 2.0f, 3.0f, 0.f},
up},
9736 {{ 0.0f, 0.0f, 0.f},
up},
9737 };
9739 const UINT num_faces36 =
ARRAY_SIZE(vertices36) / VERTS_PER_FACE;
9740 const UINT vertex_size36 =
sizeof(*vertices36);
9742
9744 ID3DXMesh *mesh_clone =
NULL;
9745 struct
9746 {
9747 const BYTE *vertices;
9749 const DWORD *attributes;
9750 const UINT num_vertices;
9751 const UINT num_faces;
9752 const UINT vertex_size;
9753 const DWORD create_options;
9754 const DWORD clone_options;
9757 const BYTE *exp_vertices;
9758 const UINT exp_vertex_size;
9759 }
9761 {
9762 {
9766 num_vertices0,
9767 num_faces0,
9768 vertex_size0,
9771 declaration_pn,
9772 declaration_pn,
9774 vertex_size0
9775 },
9776 {
9780 num_vertices0,
9781 num_faces0,
9782 vertex_size0,
9783 options_16bit,
9784 options_16bit,
9785 declaration_pn,
9786 declaration_pn,
9788 vertex_size0
9789 },
9790 {
9794 num_vertices0,
9795 num_faces0,
9796 vertex_size0,
9799 declaration_pn,
9800 declaration_pntc,
9801 (
BYTE*)exp_vertices2,
9802 exp_vertex_size2
9803 },
9804 {
9808 num_vertices0,
9809 num_faces0,
9810 vertex_size0,
9813 declaration_pn,
9814 declaration_ptcn,
9815 (
BYTE*)exp_vertices3,
9816 exp_vertex_size3
9817 },
9818 {
9822 num_vertices4,
9823 num_faces4,
9824 vertex_size4,
9827 declaration_ptc,
9828 declaration_ptc_float16_2,
9829 (
BYTE*)exp_vertices4,
9830 exp_vertex_size4
9831 },
9832 {
9836 num_vertices5,
9837 num_faces5,
9838 vertex_size5,
9841 declaration_ptc,
9842 declaration_ptc_float16_4,
9843 (
BYTE*)exp_vertices5,
9844 exp_vertex_size5
9845 },
9846 {
9850 num_vertices6,
9851 num_faces6,
9852 vertex_size6,
9855 declaration_ptc,
9856 declaration_ptc_float1,
9857 (
BYTE*)exp_vertices6,
9858 exp_vertex_size6
9859 },
9860 {
9864 num_vertices7,
9865 num_faces7,
9866 vertex_size7,
9869 declaration_ptc,
9870 declaration_ptc_float3,
9871 (
BYTE*)exp_vertices7,
9872 exp_vertex_size7
9873 },
9874 {
9878 num_vertices8,
9879 num_faces8,
9880 vertex_size8,
9883 declaration_ptc,
9884 declaration_ptc_float4,
9885 (
BYTE*)exp_vertices8,
9886 exp_vertex_size8
9887 },
9888 {
9892 num_vertices9,
9893 num_faces9,
9894 vertex_size9,
9897 declaration_ptc,
9898 declaration_ptc_d3dcolor,
9899 (
BYTE*)exp_vertices9,
9900 exp_vertex_size9
9901 },
9902 {
9906 num_vertices10,
9907 num_faces10,
9908 vertex_size10,
9911 declaration_ptc,
9912 declaration_ptc_ubyte4,
9913 (
BYTE*)exp_vertices10,
9914 exp_vertex_size10
9915 },
9916 {
9920 num_vertices11,
9921 num_faces11,
9922 vertex_size11,
9925 declaration_ptc,
9926 declaration_ptc_short2,
9927 (
BYTE*)exp_vertices11,
9928 exp_vertex_size11
9929 },
9930 {
9934 num_vertices12,
9935 num_faces12,
9936 vertex_size12,
9939 declaration_ptc,
9940 declaration_ptc_short4,
9941 (
BYTE*)exp_vertices12,
9942 exp_vertex_size12
9943 },
9944 {
9948 num_vertices13,
9949 num_faces13,
9950 vertex_size13,
9953 declaration_ptc,
9954 declaration_ptc_ubyte4n,
9955 (
BYTE*)exp_vertices13,
9956 exp_vertex_size13
9957 },
9958 {
9962 num_vertices14,
9963 num_faces14,
9964 vertex_size14,
9967 declaration_ptc,
9968 declaration_ptc_short2n,
9969 (
BYTE*)exp_vertices14,
9970 exp_vertex_size14
9971 },
9972 {
9976 num_vertices15,
9977 num_faces15,
9978 vertex_size15,
9981 declaration_ptc,
9982 declaration_ptc_short4n,
9983 (
BYTE*)exp_vertices15,
9984 exp_vertex_size15
9985 },
9986 {
9990 num_vertices16,
9991 num_faces16,
9992 vertex_size16,
9995 declaration_ptc,
9996 declaration_ptc_ushort2n,
9997 (
BYTE*)exp_vertices16,
9998 exp_vertex_size16
9999 },
10000 {
10004 num_vertices17,
10005 num_faces17,
10006 vertex_size17,
10009 declaration_ptc,
10010 declaration_ptc_ushort4n,
10011 (
BYTE*)exp_vertices17,
10012 exp_vertex_size17
10013 },
10014 {
10018 num_vertices18,
10019 num_faces18,
10020 vertex_size18,
10023 declaration_ptc,
10024 declaration_ptc_float16_2_partialu,
10025 (
BYTE*)exp_vertices18,
10026 exp_vertex_size18
10027 },
10028 {
10032 num_vertices19,
10033 num_faces19,
10034 vertex_size19,
10037 declaration_pntc,
10038 declaration_pntc1,
10039 (
BYTE*)exp_vertices19,
10040 exp_vertex_size19
10041 },
10042 {
10046 num_vertices20,
10047 num_faces20,
10048 vertex_size20,
10051 declaration_pntc1,
10052 declaration_pntc,
10053 (
BYTE*)exp_vertices20,
10054 exp_vertex_size20
10055 },
10056 {
10060 num_vertices21,
10061 num_faces21,
10062 vertex_size21,
10065 declaration_ptc_float1,
10066 declaration_ptc,
10067 (
BYTE*)exp_vertices21,
10068 exp_vertex_size21
10069 },
10070 {
10074 num_vertices22,
10075 num_faces22,
10076 vertex_size22,
10079 declaration_ptc_float1,
10080 declaration_ptc_float3,
10081 (
BYTE*)exp_vertices22,
10082 exp_vertex_size22
10083 },
10084 {
10088 num_vertices23,
10089 num_faces23,
10090 vertex_size23,
10093 declaration_ptc_float1,
10094 declaration_ptc_float4,
10095 (
BYTE*)exp_vertices23,
10096 exp_vertex_size23
10097 },
10098 {
10102 num_vertices24,
10103 num_faces24,
10104 vertex_size24,
10107 declaration_ptc_float1,
10108 declaration_ptc_d3dcolor,
10109 (
BYTE*)exp_vertices24,
10110 exp_vertex_size24
10111 },
10112 {
10116 num_vertices25,
10117 num_faces25,
10118 vertex_size25,
10121 declaration_ptc_float1,
10122 declaration_ptc_ubyte4,
10123 (
BYTE*)exp_vertices25,
10124 exp_vertex_size25
10125 },
10126 {
10130 num_vertices26,
10131 num_faces26,
10132 vertex_size26,
10135 declaration_ptc_float4,
10136 declaration_ptc_d3dcolor,
10137 (
BYTE*)exp_vertices26,
10138 exp_vertex_size26
10139 },
10140 {
10144 num_vertices27,
10145 num_faces27,
10146 vertex_size27,
10149 declaration_ptc_d3dcolor,
10150 declaration_ptc_float4,
10151 (
BYTE*)exp_vertices27,
10152 exp_vertex_size27
10153 },
10154 {
10158 num_vertices28,
10159 num_faces28,
10160 vertex_size28,
10163 declaration_ptc_ubyte4,
10164 declaration_ptc_float4,
10165 (
BYTE*)exp_vertices28,
10166 exp_vertex_size28
10167 },
10168 {
10172 num_vertices29,
10173 num_faces29,
10174 vertex_size29,
10177 declaration_ptc_short2,
10178 declaration_ptc_float4,
10179 (
BYTE*)exp_vertices29,
10180 exp_vertex_size29
10181 },
10182 {
10186 num_vertices30,
10187 num_faces30,
10188 vertex_size30,
10191 declaration_ptc_short4,
10192 declaration_ptc_float4,
10193 (
BYTE*)exp_vertices30,
10194 exp_vertex_size30
10195 },
10196 {
10200 num_vertices31,
10201 num_faces31,
10202 vertex_size31,
10205 declaration_ptc_ubyte4n,
10206 declaration_ptc_float4,
10207 (
BYTE*)exp_vertices31,
10208 exp_vertex_size31
10209 },
10210 {
10214 num_vertices32,
10215 num_faces32,
10216 vertex_size32,
10219 declaration_ptc_short2n,
10220 declaration_ptc_float4,
10221 (
BYTE*)exp_vertices32,
10222 exp_vertex_size32
10223 },
10224 {
10228 num_vertices33,
10229 num_faces33,
10230 vertex_size33,
10233 declaration_ptc_short4n,
10234 declaration_ptc_float4,
10235 (
BYTE*)exp_vertices33,
10236 exp_vertex_size33
10237 },
10238 {
10242 num_vertices34,
10243 num_faces34,
10244 vertex_size34,
10247 declaration_ptc_float16_2,
10248 declaration_ptc_float4,
10249 (
BYTE*)exp_vertices34,
10250 exp_vertex_size34
10251 },
10252 {
10256 num_vertices35,
10257 num_faces35,
10258 vertex_size35,
10261 declaration_ptc_float16_4,
10262 declaration_ptc_float4,
10263 (
BYTE*)exp_vertices35,
10264 exp_vertex_size35
10265 },
10266 {
10270 num_vertices36,
10271 num_faces36,
10272 vertex_size36,
10274 clone_options36,
10275 declaration_pn,
10276 declaration_pn,
10278 vertex_size36
10279 },
10280 };
10281#ifdef __REACTOS__
10282#undef up
10283#undef zero_vec2
10284#endif
10285
10288 {
10289 skip(
"Couldn't create test context\n");
10291 }
10292
10294 {
10297 UINT exp_new_decl_length, new_decl_length;
10298 UINT exp_new_decl_size, new_decl_size;
10299
10301 tc[
i].create_options,
10305 tc[
i].indices,
tc[
i].attributes);
10307 {
10308 skip(
"Couldn't initialize test mesh %d. Got %x expected D3D_OK\n",
i,
hr);
10310 }
10311
10312 hr =
mesh->lpVtbl->CloneMesh(
mesh,
tc[
i].clone_options,
tc[
i].new_declaration,
10314 ok(
hr ==
D3D_OK,
"Test %u, got unexpected hr %#x.\n",
i,
hr);
10315
10316 hr = mesh_clone->lpVtbl->GetDeclaration(mesh_clone, new_declaration);
10317 ok(
hr ==
D3D_OK,
"Test %u, got unexpected hr %#x.\n",
i,
hr);
10318
10319 for (
j = 0;
tc[
i].new_declaration[
j].Stream != 0xFF;
j++)
10320 {
10321 ok(
memcmp(&
tc[
i].new_declaration[
j], &new_declaration[
j],
sizeof(*new_declaration)) == 0,
10322 "Test case %d failed. Declaration element %d did not match.\n",
i,
j);
10323 }
10324
10325
10328 ok(new_decl_length == exp_new_decl_length,
10329 "Test case %d failed. Got new declaration length %d, expected %d\n",
10330 i, new_decl_length, exp_new_decl_length);
10331
10332
10335 ok(new_decl_size == exp_new_decl_size,
10336 "Test case %d failed. Got new declaration size %d, expected %d\n",
10337 i, new_decl_size, exp_new_decl_size);
10338
10339
10340 hr = mesh_clone->lpVtbl->LockVertexBuffer(mesh_clone, 0, (
void**)&vertices);
10342 {
10343 skip(
"Couldn't lock cloned vertex buffer.\n");
10345 }
10346 for (
j = 0;
j <
tc[
i].num_vertices;
j++)
10347 {
10350 }
10351 hr = mesh_clone->lpVtbl->UnlockVertexBuffer(mesh_clone);
10353 {
10354 skip(
"Couldn't unlock vertex buffer.\n");
10356 }
10360 mesh_clone->lpVtbl->Release(mesh_clone);
10362 }
10363
10364
10365
10366
10367
10369 tc[2].create_options,
10373 tc[2].indices,
tc[2].attributes);
10375 {
10376 skip(
"Couldn't initialize test mesh for D3DXMESH_VB_SHARE case."
10377 " Got %x expected D3D_OK\n",
hr);
10379 }
10380
10383 &mesh_clone);
10385 " declaration. Got %x, expected D3DERR_INVALIDCALL\n",
10390
10392 if (vertices)
mesh->lpVtbl->UnlockVertexBuffer(
mesh);
10394 if (mesh_clone) mesh_clone->lpVtbl->Release(mesh_clone);
10396}
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)