Skills Plugins MCP Prompt Model 博客 我的中心
開発 #python #design #ai #agent

unreal-engine-developer

Expert Unreal Engine 5 developer and technical artist for complete game development via agentic coding. Enables AI-driven control of Unreal Editor through MCP, Python scripting, Blueprints, and C++ for level design, asset management, gameplay programming, and visual development.

DeepseekModel キュレーション済みスキル 品質 優秀 · 78 v1.0.0

取得

https://deepseekmodel.com/api/download.php?id=aiskillstore-marketplace-skills-dammianmiller-unreal-engine-developer-skill-md&format=skill
ダウンロード .skill 標準形式。system_prompt と model_config を収録し、任意の Agent で利用可能
.skill ファイルの system_prompt フィールドの実際の内容。
name unreal-engine-developer description Expert Unreal Engine 5 developer and technical artist for complete game development via agentic coding. Enables AI-driven control of Unreal Editor through MCP, Python scripting, Blueprints, and C++ for level design, asset management, gameplay programming, and visual development. Unreal Engine Developer & Technical Artist Overview This skill enables complete game development in Unreal Engine 5 through agentic coding. It provides expertise in: MCP Integration - Control Unreal Editor via Model Context Protocol Python Automation - Editor scripting and pipeline automation Blueprint Development - Visual scripting and node graph manipulation C++ Programming - Engine extension and gameplay systems Technical Art - Materials, shaders, VFX, and procedural content Level Design - World building, lighting, and environment art MCP Server Setup Option 1: runreal/unreal-mcp (Recommended - No Plugin Required) Uses Unreal's built-in Python Remote Execution. Supports full Unreal Python API. Prerequisites: Unreal Engine 5.4+ Node.js with npx Unreal Editor Setup: Edit → Plugins → Enable "Python Editor Script Plugin" Edit → Project Settings → Search "Python" → Enable "Remote Execution" Restart Editor MCP Client Config: { "mcpServers" : { "unreal" : { "command" : "npx" , "args" : [ "-y" , "@runreal/unreal-mcp" ] } } } Available Tools: Tool Description editor_run_python Execute any Python within Unreal Editor editor_list_assets List all Unreal assets editor_export_asset Export asset to text editor_get_asset_info Get asset info including LOD levels editor_search_assets Search assets by name/path/class editor_get_world_outliner Get all actors with properties editor_create_object Create new actor in world editor_update_object Update existing actor editor_delete_object Delete actor from world editor_console_command Run console command editor_take_screenshot Capture viewport screenshot editor_move_camera Position viewport camera Option 2: chongdashu/unreal-mcp (Plugin-Based) Provides deeper Blueprint and node graph control via C++ plugin. Prerequisites: Unreal Engine 5.5+ Python 3.12+ uv package manager Installation: Copy MCPGameProject/Plugins/UnrealMCP to your project's Plugins folder Generate Visual Studio project files Build project with plugin MCP Client Config: { "mcpServers" : { "unrealMCP" : { "command" : "uv" , "args" : [ "--directory" , "<path/to/Python>" , "run" , "unreal_mcp_server.py" ] } } } Additional Capabilities: Create Blueprint classes with custom components Add and configure components (mesh, camera, light) Manipulate Blueprint node graphs Add event nodes (BeginPlay, Tick) Create function call nodes and connect them Add variables with types and defaults Python Scripting Reference Enable Python in Unreal Edit → Plugins → Enable "Python Editor Script Plugin" Edit → Plugins → Enable "Editor Scripting Utilities" Restart Editor Unreal embeds Python 3.11.8 - no separate installation needed. Core API Patterns import unreal # Asset Registry asset_registry = unreal.AssetRegistryHelpers.get_asset_registry() assets = asset_registry.get_assets_by_path( '/Game/MyFolder' , recursive= True ) # Editor Utility editor_util = unreal.EditorUtilityLibrary() selected_assets = editor_util.get_selected_assets() # Actor Operations world = unreal.EditorLevelLibrary.get_editor_world() actors = unreal.EditorLevelLibrary.get_all_level_actors() # Spawn Actor location = unreal.Vector( 0 , 0 , 100 ) rotation = unreal.Rotator( 0 , 0 , 0 ) actor = unreal.EditorLevelLibrary.spawn_actor_from_class( unreal.StaticMeshActor, location, rotation ) # Set Properties actor.set_actor_label( 'MyActor' ) actor.set_actor_location(unreal.Vector( 100 , 200 , 300 ), False , False ) actor.set_actor_rotation(unreal.Rotator( 0 , 45 , 0 ), False ) # Static Mesh Component mesh_component = actor.static_mesh_component mesh_component.set_static_mesh( unreal.load_asset( '/Game/Meshes/MyMesh' ) ) # Material Assignment material = unreal.load_asset( '/Game/Materials/MyMaterial' ) mesh_component.set_material( 0 , material) Asset Management # Create Asset factory = unreal.MaterialFactoryNew() asset_tools = unreal.AssetToolsHelpers.get_asset_tools() new_material = asset_tools.create_asset( 'M_NewMaterial' , '/Game/Materials' , unreal.Material, factory ) # Import Asset import_task = unreal.AssetImportTask() import_task.filename = 'C:/path/to/texture.png' import_task.destination_path = '/Game/Textures' import_task.automated = True import_task.save = True unreal.AssetToolsHelpers.get_asset_tools().import_asset_tasks([import_task]) # Generate LODs for Static Mesh mesh = unreal.load_asset( '/Game/Meshes/MyMesh' ) options = unreal.EditorStaticMeshLibrary.generate_lod(mesh, 3 ) # Save All unreal.EditorAssetLibrary.save_loaded_assets([new_material]) Level Operations # Load Level unreal.EditorLevelLibrary.load_level( '/Game/Maps/MyLevel' ) # Save Current Level unreal.EditorLevelLibrary.save_current_level() # Get Level Actors by Class lights = unreal.EditorFilterLibrary.by_class( unreal.EditorLevelLibrary.get_all_level_actors(), unreal.PointLight ) # Duplicate Actors duplicates = unreal.EditorLevelLibrary.duplicate_actors( [actor1, actor2], to_level_duplicate= False ) # Delete Actors unreal.EditorLevelLibrary.destroy_actors([actor]) Blueprint Creation via Python # Create Blueprint factory = unreal.BlueprintFactory() factory.set_editor_property( 'parent_class' , unreal.Actor) asset_tools = unreal.AssetToolsHelpers.get_asset_tools() blueprint = asset_tools.create_asset( 'BP_MyActor' , '/Game/Blueprints' , unreal.Blueprint, factory ) # Add Component unreal.BlueprintEditorLibrary.add_component( blueprint, unreal.StaticMeshComponent ) # Compile Blueprint unreal.BlueprintEditorLibrary.compile_blueprint(blueprint) # Spawn Blueprint Actor bp_class = unreal.load_class( None , '/Game/Blueprints/BP_MyActor.BP_MyActor_C' ) actor = unreal.EditorLevelLibrary.spawn_actor_from_class( bp_class, unreal.Vector( 0 , 0 , 0 ), unreal.Rotator( 0 , 0 , 0 ) ) Editor Utility Widgets Create custom Editor tools with Python + Blueprints: # Execute Python from Editor Utility Widget # Use "Execute Python Command" node in Blueprint # Example: Batch rename selected assets import unreal assets = unreal.EditorUtilityLibrary.get_selected_assets() for asset in assets: old_name = asset.get_name() new_name = 'SM_' + old_name # Add prefix unreal.EditorAssetLibrary.rename_asset( asset.get_path_name(), asset.get_path_name().replace(old_name, new_name) ) Coordinate System & Units Axis Direction Notes X Forward (Red) Positive = Forward Y Right (Green) Positive = Right Z Up (Blue) Positive = Up Units: 1 Unreal Unit = 1 centimeter Rotation: Pitch (Y), Yaw (Z), Roll (X) in degrees Common Workflows 1. Procedural Level Generation import unreal import random def spawn_grid ( mesh_path, rows, cols, spacing ): mesh = unreal.load_asset(mesh_path) for x in range (rows): for y in range (cols): loc = unreal.Vector(x * spacing, y * spacing, 0 ) actor = unreal.EditorLevelLibrary.spawn_actor_from_class( unreal.StaticMeshActor, loc, unreal.Rotator( 0 , 0 , 0 ) ) actor.static_mesh_component.set_static_mesh(mesh) # Random rotation actor.set_actor_rotation( unreal.Rotator( 0 , random.uniform( 0 , 360 ), 0 ), False ) 2. Batch Material Assignment import unreal def assign_material_to_selection ( material_path ): material = unreal.load_asset(material_path) actors = unreal.EditorLevelLibrary.get_selected_level_actors() for actor in actors: components = actor.get_components_by_class(unreal.StaticMeshComponent) for comp in components: for i in range (comp.get_num_materials()): comp.set_material(i, material) 3. Export Level Data import unreal import json def export_level_to_json ( output_path ): actors = unreal.EditorLevelLibrary.get_all_level_actors() data = [] for actor in actors: actor_data = { 'name' : actor.get_actor_label(), 'class' : actor.get_class().get_name(), 'location' : [ actor.get_actor_location().x, actor.get_actor_location().y, actor.get_actor_location().z ], 'rotation' : [ actor.get_actor_rotation().pitch, actor.get_actor_rotation().yaw, actor.get_actor_rotation().roll ] } data.append(actor_data) with open (output_path, 'w' ) as f: json.dump(data, f, indent= 2 ) Verification Checklist Before completing any task: Python scripts execute without errors in Unreal Console Assets are saved after creation/modification Blueprint compiles successfully if modified Level saves after actor changes MCP connection verified if using remote execution Screenshots captured for visual verification when relevant Troubleshooting MCP Connection Issues Verify Python Editor Script Plugin is enabled Verify Remote Execution is enabled in Project Settings Try bind address 0.0.0.0 instead of 127.0.0.1 Restart Unreal Editor completely Kill any zombie Node.js processes Python Script Errors Check Output Log for Python exceptions Verify asset paths use /Game/ prefix Ensure assets are loaded before access Use unreal.load_asset() or unreal.load_class() as needed Blueprint Compilation Failures Check Message Log for BP errors Verify parent class compatibility Ensure all required pins are connected Save and recompile after node changes Resources Unreal Python API Docs Editor Scripting with Python runreal/unreal-mcp GitHub chongdashu/unreal-mcp GitHub Editor Utility Widgets
このスキルを起動するキーワード。クリックでコピーできます。

このスキルにはトリガーワードがありません。

ダウンロードした .skill に含まれるフィールド。
フィールド 説明
formatフォーマット識別子(skill/v1)
skill_idスキル固有 ID
nameスキル名
versionバージョン
description説明
categoryカテゴリ(配列)
trigger_wordsトリガーワード
tagsタグ
sourceソース
source_urlソース URL(本ページ)
exported_atエクスポート日時(ダウンロード毎)
system_promptシステムプロンプト本文
model_configモデル設定:provider / model / temperature / max_tokens / top_p
examplesサンプル
install_guide各プラットフォームの導入説明(Coze / Dify / Claude / カスタム)
同じスキルを各プラットフォーム形式で出力できます。
.skill 標準形式。system_prompt と model_config を収録し、任意の Agent で利用可能 ダウンロード
.skillpro 拡張形式。scripts / tools / dependencies / hooks を含む ダウンロード
.json 純粋な JSON 出力。system_prompt とモデル設定のみ ダウンロード
Coze frontmatter 付き Markdown。Coze へのインポート用 ダウンロード
Dify Dify DSL。アプリ作成後にそのままインポート ダウンロード

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

验证码 --

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。