Skip to main content
Glama

make_game_asset

Convert a finished Roxy model into a UE5-ready game asset with low/mid-poly mesh, UVs, baked PBR textures, UCX collision, and FBX export.

Instructions

Turn a finished Roxy model into a UE5-ready game asset: game mesh (low/mid-poly, triangulated, smoothing groups, pivot at bottom centre), UVs at the target texel density, a Cycles bake of EVERY Blender-only effect (Poly Haven projections, procedural recipes, weathering, bevels, small parts) into BaseColor / Normal (DirectX) / ORM (R=AO G=Roughness B=Metallic) PNGs, transparent parts on a separate glass slot, UCX_ collision, and an FBX. Takes 1-4 minutes. Run review_model(objects=['SM_...'], purpose='game') afterwards.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
lodsNoExtra LOD ratios e.g. [0.5, 0.25] (UE5 Nanite usually makes these unnecessary).
modeNolowpoly: bevel/subdivision detail and parts smaller than small_part_ratio (screws, rivets) are baked into the normal map. midpoly: keeps bevel geometry (rounder silhouettes, more tris, Nanite-friendly).lowpoly
nameNoAsset name; exported as SM_<name> with T_<name>_BC/_N/_ORM textures.
objectsNoThe (high-poly) parts of ONE asset. Default: selection / all geometry.
collisionNoUCX_ collision: convex hull per large part (default), one hull, or none.convex_parts
export_dirNoOutput folder (default ~/Documents/RoxyGameAssets/SM_<name>).
max_textureNo
target_trisNoDecimate the game mesh down to about this many triangles.
texture_sizeNoForce the texture size (512-4096) instead of deriving it.
texel_densityNoPixels per metre (UE5 PC standard 1024 = 10.24 px/cm).
small_part_ratioNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does well: it discloses runtime ('1-4 minutes'), the exact baking scope (all Blender-only effects into BaseColor/Normal(DirectX)/ORM with channel ordering), transparent-part handling, and collision generation. It omits whether the operation is destructive to the source mesh, how it behaves when an export directory already exists, and whether it modifies the current scene, which keeps it from a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The outcome is front-loaded in a single dense sentence, followed by two short operational notes (runtime, review_model follow-up). Every clause carries real information, though the first sentence is long enough that an agent has to parse it carefully.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 11-parameter, zero-required tool with no output schema, the description covers the produced artifacts, texture naming, and runtime well, so an agent knows what to expect. Remaining gaps are minor: no guidance on default naming when 'name' is null and no statement about overwriting behavior in export_dir.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is high (82%), so the schema already documents most parameters including lods, mode, collision, texel_density, and name conventions. The description adds texture-channel and naming context but no syntax or defaulting guidance for the undocumented parameters (max_texture, small_part_ratio, export_dir fallback), so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource pair ('Turn a finished Roxy model into a UE5-ready game asset') and then enumerates exactly what the output contains: game mesh, UVs, baked maps with channel layout, collision, and FBX. It is clearly distinguishable from siblings like export_model, uv_unwrap, or review_model because it is the end-to-end packaging step.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states the precondition ('a finished Roxy model') and the follow-up action ('Run review_model(objects=[...], purpose="game") afterwards'), and even advises when LODs are unnecessary ('UE5 Nanite usually makes these unnecessary'). It does not explicitly rule out alternatives (e.g. when to use export_model instead), so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.