#pragma once #include #ifdef IS_CLIENT #include template S convert_vec2(const SkPoint& t) { return S{t.fX, t.fY}; } #endif template S convert_vec2(const T& t) { return S{t[0], t[1]}; } template S convert_vec3(const T& t) { return S{t[0], t[1], t[2]}; } template S convert_vec4(const T& t) { return S{t[0], t[1], t[2], t[3]}; } template S convert_vec4(const Clay_Color& t) { return S{t.r, t.g, t.b, t.a}; } template S convert_vec2(const Clay_Dimensions& t) { return S{t.width, t.height}; }