Validate Blender Skill
Validates Blender AKM (Asciicker Mesh) export files for compatibility with the Asciicker engine.
Quick Start
Validate an AKM file:
Use the MCP server tool:
Validate the Blender export: meshes/player.akm
This calls the validate_blender_export tool from the asciicker-dev MCP server.
AKM File Format
AKM (Asciicker Mesh) files are custom binary mesh formats containing:
- •Vertex positions
- •Normals
- •UV coordinates
- •Bone weights (for skeletal animation)
- •Material indices
Common Validation Checks
The validator checks:
- •File exists - AKM file is readable
- •Header format - Correct magic number and version
- •Vertex count - Non-zero vertices
- •Normal vectors - Valid and normalized
- •UV coordinates - In range [0, 1]
- •Bone weights - Sum to 1.0 for skinned meshes
- •Face indices - Valid triangle indices
Blender Export Workflow
- •Create/edit mesh in Blender
- •Export to AKM format:
- •Use Blender export script (if available)
- •Or use custom Python exporter
- •Validate export:
code
Validate meshes/my_mesh.akm
- •Place in meshes/ directory
- •Test in editor:
- •Launch editor
- •Place mesh in scene
- •Verify appearance and animation
File Locations
Mesh directory:
meshes/
├── player.akm
├── enemy.akm
├── items/
│ ├── sword.akm
│ └── shield.akm
└── terrain/
└── rock.akm
Blender Export Script
If you need to create an export script, see the MCP server for template generation:
Generate a feature template for Blender AKM export
Common Issues
File not found:
- •Verify file path relative to project root
- •Check file permissions
Invalid header:
- •Re-export from Blender
- •Verify export script version matches engine version
Vertex count zero:
- •Mesh may be empty
- •Check Blender export settings
Invalid normals:
- •Recalculate normals in Blender: Mesh > Normals > Recalculate Outside
- •Ensure mesh is not non-manifold
Bone weight issues:
- •Check armature modifiers in Blender
- •Verify vertex groups are assigned
- •Ensure automatic weights or manual painting is correct
Testing in Editor
After validation:
- •Launch editor:
./.run/asciiid - •Load mesh:
- •Editor should auto-discover meshes in
meshes/directory - •Select mesh from UI
- •Editor should auto-discover meshes in
- •Place in scene:
- •Click to place mesh instance
- •Verify rendering
- •Test animation (if skeletal):
- •Play animation
- •Verify bone deformation
MCP Server Integration
The validate-blender skill uses the asciicker-dev MCP server, which provides:
- •
validate_blender_export(akm_file)- Validate AKM file format - •
analyze_asciiid_structure()- Show mesh loading code - •
generate_feature_template("blender_export")- Export script template
Related Files
- •asciicker_mcp_server.py - MCP server with validation tool
- •
.vscode/mcp.json- MCP server configuration - •
meshes/- Mesh directory - •
asciiid.cpp- Mesh loading code
Instructions
When the user asks to validate a Blender export:
- •Identify the AKM file path
- •Use the MCP server
validate_blender_exporttool - •Report validation results
- •If errors found, suggest fixes based on error type
- •Optionally guide through re-export process
- •Test in editor if validation passes
Blender Resources
Mesh requirements:
- •Triangulated faces (or auto-triangulate on export)
- •Clean geometry (no non-manifold edges)
- •Recalculated normals
- •UV unwrapped (if textured)
- •Proper armature setup (if animated)
Export checklist:
- •Apply modifiers (or export with modifiers applied)
- •Export selected vs all objects
- •Coordinate system: Z-up (or transform on import)
- •Scale: Match engine units