QtMeshEditor

v2.0.0

Graphical Editor for Ogre3D Mesh and Material • Built with Qt Framework

🚀 Comprehensive Ogre3D Editing Suite

🎨

Advanced Material System

Modern QML-based material editor with real-time preview. Visual material editing alongside script-based authoring for complete Ogre3D material workflow.

🤖

AI-Powered Generation

Generate materials using AI with OpenAI GPT or local LLM models. Run completely offline with GPU-accelerated local inference — no API keys needed.

Professional Undo/Redo

Complete undo/redo system with 50-step history, keyboard shortcuts (Ctrl+Z/Y), and smart button management.

🔍

Enhanced Validation

Comprehensive material script validation with syntax error detection, line-specific reporting, and detailed error descriptions.

⚙️

Mesh Transformation & Operations

Complete mesh editing suite with translation, scaling, rotation, and format conversion. Easier than OgreMeshMagick with visual feedback and batch operations.

🦴

Skeleton & Animation

Bone visualization, animation preview, keyframe inspection, and animation renaming tools for complete skeletal mesh workflow.

📦

Multi-Format Support

Import/export various 3D formats via ASSIMP. Convert to Ogre mesh, material, and skeleton formats with version compatibility.

🎯

Primitive Creation

Built-in primitive generation using Ogre-Procedural. Create boxes, spheres, planes, and more with customizable parameters.

🔌

MCP Server (AI Agent Control)

Built-in Model Context Protocol server lets AI agents (Claude, Cursor, etc.) control the editor programmatically. 15 tools for materials, meshes, transforms, textures, and animations.

🧠

Local LLM Support

Run AI material generation entirely offline using bundled llama.cpp with Metal/CUDA GPU acceleration. Download and manage GGUF models directly from the app.

⚡ Quick Start Guide

Download QtMeshEditor

Get the latest release from GitHub or build from source:

git clone https://github.com/fernandotonon/QtMeshEditor.git cd QtMeshEditor

Install Dependencies

Ensure you have Qt6, Ogre3D, and ASSIMP installed:

# Ubuntu/Debian sudo apt install qt6-base-dev libogre-1.12-dev libassimp-dev # Build dependencies sudo apt install cmake build-essential

Build the Project

Compile QtMeshEditor with CMake:

mkdir build && cd build cmake .. make -j$(nproc)

Run QtMeshEditor

Launch the application and start creating:

./bin/QtMeshEditor

🎮 Complete Ogre3D Workflow

Material Editing

• Open the QML Material Editor
• Use AI assistance for script generation
• Edit materials with real-time preview
• Validate and apply changes instantly
• Use Ctrl+Z/Y for undo/redo

Mesh Operations

• Import meshes via File → Import
• Transform with scale/rotate/translate tools
• Preview animations in real-time
• Export to different Ogre versions
• Convert between 3D formats

AI Material Generation

• Describe your desired material
• Use OpenAI GPT or local LLM models
• GPU-accelerated offline inference
• Automatic validation and application
• Download GGUF models from the app

MCP Agent Integration

• AI agents control the editor via MCP
• 15 tools: materials, meshes, transforms
• HTTP REST API on port 8080
• Works with Claude, Cursor, and more
• Create scenes with natural language

🔌 MCP Server — AI Agent Integration

QtMeshEditor includes a built-in Model Context Protocol (MCP) server that lets AI agents control the 3D editor programmatically. Create scenes, apply materials, and transform objects using natural language through Claude, Cursor, or any MCP-compatible agent.

Launch with MCP Server

Start QtMeshEditor with the MCP server enabled alongside the GUI:

# GUI + MCP server (stdio + HTTP on port 8080) ./bin/QtMeshEditor --with-mcp # Headless MCP mode (no GUI, for scripting) ./bin/QtMeshEditor --mcp # Custom HTTP port ./bin/QtMeshEditor --with-mcp --http-port 9090

Configure Your AI Agent

Add QtMeshEditor as an MCP server in your agent's configuration:

# Claude Code claude mcp add --transport stdio qtmeshEditor -- /path/to/QtMeshEditor --with-mcp # Or create .mcp.json in your project root: { "mcpServers": { "qtmeshEditor": { "type": "stdio", "command": "/path/to/QtMeshEditor", "args": ["--with-mcp"] } } }

Use the HTTP REST API

Or call tools directly via HTTP from any terminal or script:

# Create a sphere curl -X POST localhost:8080/api/tools/create_primitive \ -d '{"type":"sphere","name":"MySphere"}' # Create and apply a material with texture curl -X POST localhost:8080/api/tools/create_material \ -d '{"name":"RedMat","colors":{"diffuse":[1,0,0]}}' curl -X POST localhost:8080/api/tools/apply_material \ -d '{"material":"RedMat","mesh":"MySphere"}' # Transform objects curl -X POST localhost:8080/api/tools/transform_mesh \ -d '{"name":"MySphere","position":{"x":3,"y":0,"z":0}}' # Animate rotation curl -X POST localhost:8080/api/tools/animate \ -d '{"name":"MySphere","yaw":60,"pitch":20}' # List all available tools curl localhost:8080/api/tools

Available MCP Tools

15 tools for complete scene control:

create_material — Create materials with colors or full scripts modify_material — Modify material properties (colors, textures) get_material — Get the full material script list_materials — List all materials in the scene apply_material — Apply a material to a mesh set_texture — Set a texture on a material load_mesh — Load a 3D mesh file get_mesh_info — Get mesh information export_mesh — Export mesh to file transform_mesh — Position, rotate, and scale objects by name create_primitive — Create spheres, cubes, cylinders, cones, etc. get_scene_info — Get full scene information list_textures — List loaded textures take_screenshot — Capture the viewport animate — Start/stop rotation animations

🌟 Join the Community

Connect with other QtMeshEditor users and Ogre3D developers. Share your creations, get help, and contribute to the project!

🏛️ Ogre3D Forum Discussion

Active community since 2013 • 63+ posts • Regular updates and support

🔧 Technical Details

Requirements

• Qt 6.x framework
• Ogre3D 14.x engine
• ASSIMP library
• CMake 3.24+
• C++17 compiler

Supported Formats

• Ogre .mesh/.skeleton/.material
• FBX, OBJ, 3DS, DAE
• X, PLY, STL files
• Various texture formats
• Legacy Ogre versions

Platforms

• Linux (Ubuntu, Debian, etc.)
• Windows 10/11
• macOS (experimental)
• Cross-platform Qt deployment
• CI/CD automated builds

License & Source

• MIT License (open source)
• GitHub repository available
• Community contributions welcome
• Comprehensive test suite
• SonarCloud quality analysis