Bratz: Total Fashion Makeover was the second game I worked on with Graphite Lab, a contract job for Outright Games, the license holder. The project could essentially be divided into three main branches; character customization, story, and match-three gameplay.
Leading up to release, my main responsibility was to support our writer/designer Brad with tools to configure the game's story. This
included the chapters and their completion requirements, tasks and associated costs/rewards, dialogue, and environment customization
options exposed to the player.
All this was done through a custom editor window I'd made with UI Toolkit. When dragging scene objects into specified areas of the UI,
they'd be bound to ScriptableObjects representing any relevant config data, refereced by GUID. I'd made a decision early on distribute
the data across many ScriptableObjects to avoid version control conflicts if multiple people were using the tool.
Post-release, the size of the game began to bloat as we added more customization options and features. As is often the case, textures
were the main culprit. Bratz had tons of popups for different notifications and activities, and while most had the same theme, the
large backing graphics were almost all unique.
To reclaim the lost megabytes, I built a custom Image component allowing us to rebuild these unique popup panels from only a single
tiled "fill" texture, whose UVs could be skewed, scaled, and rotated. The corners could be manipulated individually through handles in the
scene view, with an adjustable corner radius. Making these adjustments would rearrange/rebuild the Graphic's geometry as necessary, its
triangles fanning out from a single central vertex.