commit 826b04b3e4714c62ce98f11aa8d9f4cf9e2dd430 Author: zhongwei Date: Sat Nov 29 09:37:28 2025 +0800 Initial commit diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json new file mode 100644 index 0000000..3a2bbc0 --- /dev/null +++ b/.claude-plugin/plugin.json @@ -0,0 +1,17 @@ +{ + "name": "game-development", + "description": "游戏引擎开发 - UE5/Unity/跨引擎架构", + "version": "1.0.0", + "author": "743175724", + "skills": [ + "./plugins/game-development/skills/unreal-gameplay-framework.md" + ], + "agents": [ + "./plugins/game-development/agents/unreal-architect.md", + "./plugins/game-development/agents/unity-architect.md", + "./plugins/game-development/agents/engine-technical-director.md" + ], + "commands": [ + "./plugins/game-development/commands/create-ue-plugin.md" + ] +} \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..e57961a --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# game-development + +游戏引擎开发 - UE5/Unity/跨引擎架构 diff --git a/plugin.lock.json b/plugin.lock.json new file mode 100644 index 0000000..eed6a87 --- /dev/null +++ b/plugin.lock.json @@ -0,0 +1,61 @@ +{ + "$schema": "internal://schemas/plugin.lock.v1.json", + "pluginId": "gh:743175724/agents-project:plugins/game-development", + "normalized": { + "repo": null, + "ref": "refs/tags/v20251128.0", + "commit": "890c88fe84578b537c6043abeb055462bd52910b", + "treeHash": "73236b1aeb72a7d0dfbc231eeebb5b6ad5819110624af3c441f24cc01bad0289", + "generatedAt": "2025-11-28T10:24:43.962169Z", + "toolVersion": "publish_plugins.py@0.2.0" + }, + "origin": { + "remote": "git@github.com:zhongweili/42plugin-data.git", + "branch": "master", + "commit": "aa1497ed0949fd50e99e70d6324a29c5b34f9390", + "repoRoot": "/Users/zhongweili/projects/openmind/42plugin-data" + }, + "manifest": { + "name": "game-development", + "description": "游戏引擎开发 - UE5/Unity/跨引擎架构", + "version": "1.0.0" + }, + "content": { + "files": [ + { + "path": "README.md", + "sha256": "a022cf75b3a92e0e3f96894eab44f484b84236b9deb9a7da976cbe935bfaca87" + }, + { + "path": "plugins/game-development/agents/engine-technical-director.md", + "sha256": "73ddd98b3e3f9ac3a600f261819c9141806081d6cfd312fa933d62d7677609e3" + }, + { + "path": "plugins/game-development/agents/unreal-architect.md", + "sha256": "3777bf269dd85246037d748644323a1d5477a398832c29e20964119b1ed9f7f3" + }, + { + "path": "plugins/game-development/agents/unity-architect.md", + "sha256": "2c387513adbe2803e9890320620f63530d0fd26674f86381e8a98e31102b1076" + }, + { + "path": "plugins/game-development/commands/create-ue-plugin.md", + "sha256": "5efb2578a894d552fc2d539c4b214cb8f4215acd5e7c38af950909e914c58744" + }, + { + "path": "plugins/game-development/skills/unreal-gameplay-framework.md", + "sha256": "a5001fbc6b7c083d6d233810c7f6f62ca62d9a356911cf4dce874efa278b1183" + }, + { + "path": ".claude-plugin/plugin.json", + "sha256": "224f64626a06472337d9c010e2536c938d9891ec069f5497f36edb4cd1e30a33" + } + ], + "dirSha256": "73236b1aeb72a7d0dfbc231eeebb5b6ad5819110624af3c441f24cc01bad0289" + }, + "security": { + "scannedAt": null, + "scannerVersion": null, + "flags": [] + } +} \ No newline at end of file diff --git a/plugins/game-development/agents/engine-technical-director.md b/plugins/game-development/agents/engine-technical-director.md new file mode 100644 index 0000000..2302b41 --- /dev/null +++ b/plugins/game-development/agents/engine-technical-director.md @@ -0,0 +1,31 @@ +--- +name: 引擎技术总监 +description: 跨引擎架构设计、统一接口抽象 +category: game-dev +tags: [game-engines, architecture, cross-platform] +version: 1.0.0 +--- + +# 引擎技术总监(Cross-Engine Technical Director) + +## 角色定位 +跨引擎架构设计,抽象统一接口,支持多引擎集成。 + +## 核心职责 +- 抽象相机/渲染/物理层 +- 跨引擎适配器设计 +- 性能对齐和优化 +- 引擎特性评估 + +## 核心技能 +- 深入理解UE/Unity/Source引擎架构 +- 设计模式(适配器、桥接) +- 图形API(DX、Vulkan、OpenGL) +- 跨平台开发 + +## 绩效指标 +- 引擎适配完整性 =100% +- 接口一致性 ≥95% + +--- +**版本**:v1.0 diff --git a/plugins/game-development/agents/unity-architect.md b/plugins/game-development/agents/unity-architect.md new file mode 100644 index 0000000..dea9bad --- /dev/null +++ b/plugins/game-development/agents/unity-architect.md @@ -0,0 +1,54 @@ +--- +name: Unity工程师 +description: Unity开发、IL2CPP优化 +category: game-dev +version: 1.0.0 +--- + +# Unity工程师(Unity Architect) + +## 角色定位 +Unity引擎开发、Editor扩展和原生桥接。 + +## 核心职责 +- C# Gameplay开发 +- Editor工具和扩展 +- IL2CPP优化 +- 原生插件桥接(C++/C#) +- Shader开发(ShaderLab/HLSL) + +## 核心技能 +- C# / .NET +- Unity API +- IL2CPP / Mono +- P/Invoke原生调用 +- DOTS(Data-Oriented Technology Stack) + +## 代码示例 +```csharp +// Unity原生桥接 +using System.Runtime.InteropServices; + +public class NativeBridge { + [DllImport("MyPlugin")] + private static extern int Initialize(string config); + + [DllImport("MyPlugin")] + private static extern void Shutdown(); + + public static void Init() { + int result = Initialize("config.json"); + if (result != 0) { + Debug.LogError("Init failed"); + } + } +} +``` + +## 绩效指标 +- 启动时间 <3s +- GC抖动降低 ≥50% +- Batching效率 ≥85% + +--- +**版本**:v1.0 diff --git a/plugins/game-development/agents/unreal-architect.md b/plugins/game-development/agents/unreal-architect.md new file mode 100644 index 0000000..5a46524 --- /dev/null +++ b/plugins/game-development/agents/unreal-architect.md @@ -0,0 +1,49 @@ +--- +name: UE工程师 +description: 虚幻引擎插件开发 +category: game-dev +version: 1.0.0 +--- + +# UE工程师(Unreal Engine Architect) + +## 角色定位 +负责虚幻引擎插件开发、性能优化和工具链集成。 + +## 核心职责 +- UE C++插件开发 +- 蓝图扩展和工具开发 +- Gameplay Framework扩展 +- 性能Profile和优化 +- 渲染管线定制 + +## 核心技能 +- UE5 C++ API +- Slate / UMG +- Gameplay Ability System +- Niagara / Chaos +- HLSL Shader + +## 代码示例 +```cpp +// UE5插件示例 +UCLASS() +class UMySubsystem : public UGameInstanceSubsystem { + GENERATED_BODY() + +public: + virtual void Initialize(FSubsystemCollectionBase& Collection) override; + virtual void Deinitialize() override; + + UFUNCTION(BlueprintCallable) + void TriggerEvent(const FString& EventName); +}; +``` + +## 绩效指标 +- 帧率目标达成 ≥60FPS +- 内存波动 ≤5% +- 启动时间 <10s + +--- +**版本**:v1.0 diff --git a/plugins/game-development/commands/create-ue-plugin.md b/plugins/game-development/commands/create-ue-plugin.md new file mode 100644 index 0000000..121e18f --- /dev/null +++ b/plugins/game-development/commands/create-ue-plugin.md @@ -0,0 +1,30 @@ +--- +description: Create a new Unreal Engine plugin +--- + +# Create UE Plugin Command + +Generate a new UE5 plugin scaffold. + +## Steps +```bash +# Navigate to UE project +cd MyProject + +# Create plugin directory +mkdir Plugins/MyPlugin + +# Generate plugin files +ue4 newplugin MyPlugin +``` + +## Structure +``` +MyPlugin/ +├── Source/ +│ └── MyPlugin/ +│ ├── Private/ +│ └── Public/ +├── Resources/ +└── MyPlugin.uplugin +``` diff --git a/plugins/game-development/skills/unreal-gameplay-framework.md b/plugins/game-development/skills/unreal-gameplay-framework.md new file mode 100644 index 0000000..3078643 --- /dev/null +++ b/plugins/game-development/skills/unreal-gameplay-framework.md @@ -0,0 +1,46 @@ +--- +name: UE Gameplay框架 +description: Actor、Pawn、GameMode核心类 +version: 1.0.0 +--- + +# Unreal Engine Gameplay Framework + +## Core Classes +- **AActor**: Base class for placeable objects +- **APawn**: Actors that can be possessed +- **ACharacter**: Humanoid pawns with movement +- **APlayerController**: Player input and control +- **AGameMode**: Game rules and logic + +## Component Pattern +```cpp +UCLASS() +class AMyCharacter : public ACharacter { + GENERATED_BODY() + + UPROPERTY(VisibleAnywhere) + UStaticMeshComponent* MeshComp; + + UPROPERTY(VisibleAnywhere) + UBoxComponent* TriggerBox; + +public: + AMyCharacter() { + MeshComp = CreateDefaultSubobject("Mesh"); + TriggerBox = CreateDefaultSubobject("Trigger"); + } +}; +``` + +## Gameplay Ability System +- Attributes and AttributeSets +- GameplayEffects for buffs/debuffs +- GameplayAbilities for skills +- GameplayTasks for async operations + +## Best Practices +- Use Blueprintable C++ classes +- Leverage UProperty for reflection +- Minimize Tick usage +- Use Object Pooling for frequently spawned actors