#pragma once #include #include #include #include #include namespace ext { namespace BakingBehavior { UF_BEHAVIOR_DEFINE_TYPE(); EXT_BEHAVIOR_DEFINE_TRAITS(); EXT_BEHAVIOR_DEFINE_FUNCTIONS(); UF_BEHAVIOR_DEFINE_METADATA( pod::Vector2ui size = {}; struct { uf::stl::string model = ""; struct{ uf::stl::string model = ""; uf::stl::string map = "./lightmap.png"; } output; uf::stl::string renderMode = "Baker"; } names; struct { size_t instance = 0; size_t material = 0; size_t texture = 0; size_t light = 0; } buffers; struct { size_t textures2D = 1024; size_t texturesCube = 512; size_t textures3D = 1; size_t lights = 1024; size_t shadows = 1024; } max; struct { size_t max = 0; size_t update = 0; } previous; struct { uf::stl::string mode = "key"; uf::stl::string value = ""; } trigger; struct { bool renderMode = false; bool map = false; } initialized; bool cull = false; ); } }