OSDN Git Service

tule_ul.hpp: 32パラメータ一部
[roast/roast_ex_windows.git] / roast_ex / include / roast / graphics / directx / shader_param.hpp
index 0891468..2557e0c 100644 (file)
@@ -23,6 +23,10 @@ namespace roast
                                        float3,
                                        float4,
                                        float4x4,
+
+                                       d3dvector2,
+                                       d3dvector3,
+                                       d3dvector4,
                                        _null
                                };
 
@@ -33,6 +37,10 @@ namespace roast
                                template<> struct to_type<float2>{ typedef float type[2]; };
                                template<> struct to_type<float3>{ typedef float type[3]; };
                                template<> struct to_type<float4>{ typedef float type[4]; };
+
+                               template<> struct to_type<d3dvector2>{ typedef ::D3DXVECTOR2 type; };
+                               template<> struct to_type<d3dvector3>{ typedef ::D3DXVECTOR3 type; };
+                               template<> struct to_type<d3dvector4>{ typedef ::D3DXVECTOR4 type; };
                        }
                        typedef shader_param_type::_ shader_param_type_e;
                        
@@ -73,8 +81,38 @@ namespace roast
                                shader_param_type_e T31=shader_param_type::_null,
                                shader_param_type_e T32=shader_param_type::_null>
                        struct shader_param_ : public _internal::tuple<
-                               typename shader_param_type::to_type<T1>::type,
-                               typename shader_param_type::to_type<T2>::type
+                               typename shader_param_type::to_type<T1>::type,                          
+                               typename shader_param_type::to_type<T2>::type,
+                               typename shader_param_type::to_type<T3>::type,
+                               typename shader_param_type::to_type<T4>::type,
+                               typename shader_param_type::to_type<T5>::type,
+                               typename shader_param_type::to_type<T6>::type,
+                               typename shader_param_type::to_type<T7>::type,
+                               typename shader_param_type::to_type<T8>::type,
+                               typename shader_param_type::to_type<T9>::type,
+                               typename shader_param_type::to_type<T10>::type,
+                               typename shader_param_type::to_type<T11>::type,
+                               typename shader_param_type::to_type<T12>::type,
+                               typename shader_param_type::to_type<T13>::type,
+                               typename shader_param_type::to_type<T14>::type,
+                               typename shader_param_type::to_type<T15>::type,
+                               typename shader_param_type::to_type<T16>::type,
+                               typename shader_param_type::to_type<T17>::type,
+                               typename shader_param_type::to_type<T18>::type,
+                               typename shader_param_type::to_type<T19>::type,
+                               typename shader_param_type::to_type<T20>::type,
+                               typename shader_param_type::to_type<T21>::type,
+                               typename shader_param_type::to_type<T22>::type,
+                               typename shader_param_type::to_type<T23>::type,
+                               typename shader_param_type::to_type<T24>::type,
+                               typename shader_param_type::to_type<T25>::type,
+                               typename shader_param_type::to_type<T26>::type,
+                               typename shader_param_type::to_type<T27>::type,
+                               typename shader_param_type::to_type<T28>::type,
+                               typename shader_param_type::to_type<T29>::type,
+                               typename shader_param_type::to_type<T30>::type,
+                               typename shader_param_type::to_type<T31>::type,
+                               typename shader_param_type::to_type<T32>::type
                        > {
                                //typename to_type<T1>::type v1;
                        };