Add prototype gameplay loop with character/battlefield assets and server game APIs.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,196 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"sceneId": "Battlefield_Greenfield",
|
||||
"selectedDesign": "A",
|
||||
"requestedDesign": "A",
|
||||
"designOptions": [
|
||||
{
|
||||
"id": "A",
|
||||
"name": "?????",
|
||||
"image": "Doc/Design/Scene/Battlefield/Battlefield_Design_A_GreenFork.png",
|
||||
"summary": "?????????????????????",
|
||||
"generation": {
|
||||
"tool": "Tools/gpt_image_generate.py",
|
||||
"model": "gpt-image-2.5",
|
||||
"promptFile": "Doc/Design/Scene/Battlefield/battlefield_design_prompts.json",
|
||||
"status": "generated",
|
||||
"output": "Doc/Design/Scene/Battlefield/Battlefield_Design_A_GreenFork.png",
|
||||
"statusFile": "Doc/Design/Scene/Battlefield/Battlefield_Design_A_GreenFork_gpt_image_status.json",
|
||||
"generatedAtUtc": "2026-10-18T09:36:01Z"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "B",
|
||||
"name": "????",
|
||||
"image": "Doc/Design/Scene/Battlefield/Battlefield_Design_B_StreamBridges.png",
|
||||
"summary": "??????????????????",
|
||||
"generation": {
|
||||
"tool": "Tools/gpt_image_generate.py",
|
||||
"model": "gpt-image-2.5",
|
||||
"promptFile": "Doc/Design/Scene/Battlefield/battlefield_design_prompts.json",
|
||||
"status": "pending_api_key"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "C",
|
||||
"name": "????",
|
||||
"image": "Doc/Design/Scene/Battlefield/Battlefield_Design_C_OldGarden.png",
|
||||
"summary": "???????????????????????",
|
||||
"generation": {
|
||||
"tool": "Tools/gpt_image_generate.py",
|
||||
"model": "gpt-image-2.5",
|
||||
"promptFile": "Doc/Design/Scene/Battlefield/battlefield_design_prompts.json",
|
||||
"status": "pending_api_key"
|
||||
}
|
||||
}
|
||||
],
|
||||
"ground": {
|
||||
"type": "ground",
|
||||
"designImage": "Doc/Design/Scene/Battlefield/A/ground.png",
|
||||
"highPoly": "Tools/output/battlefield/A/ground_model_ref/ground_model_ref.glb",
|
||||
"gamePrefab": "Assets/Bundles/Scenes/Prototype/Battlefield/GreenfieldGround.prefab",
|
||||
"targetTriangles": 1200,
|
||||
"requirements": "Y-up??????????? -Z ?????? MeshCollider?Read/Write ???",
|
||||
"designGenerationStatus": "generated",
|
||||
"designStatusFile": "Doc/Design/Scene/Battlefield/A/ground_gpt_image_status.json",
|
||||
"modelGenerationStatus": "baked",
|
||||
"modelStatusFile": "Tools/output/battlefield/A/ground_model_ref_hunyuan_status.json",
|
||||
"modelReferenceImage": "Doc/Design/Scene/Battlefield/A/ground_model_ref.png",
|
||||
"modelReferenceStatusFile": "Doc/Design/Scene/Battlefield/A/ground_model_ref_gpt_image_status.json",
|
||||
"modelInputNote": "布局审核图 ground.png保留;混元图生3D使用单一连续地形参考图 ground_model_ref.png,避免网页端主体不明确。",
|
||||
"gameFbx": "Tools/output/battlefield/A/ground_game/ground_model_ref_xpbr/ground_model_ref.fbx",
|
||||
"unityFbx": "AIClient/Assets/Bundles/Scenes/Prototype/Battlefield/A/Ground/ground.fbx",
|
||||
"modelTriangles": 1200,
|
||||
"modelFlow": "Hunyuan 3D 50k -> Blender 5.0 lowpoly 1200 tris -> XPbr",
|
||||
"sourceReference": "Doc/Design/Scene/Battlefield/A/ground_model_ref.png"
|
||||
},
|
||||
"componentTypeLimit": 15,
|
||||
"allowedComponentTypes": [
|
||||
"tree",
|
||||
"rock",
|
||||
"bridge",
|
||||
"sign",
|
||||
"shrub",
|
||||
"water",
|
||||
"reeds",
|
||||
"ruin_wall",
|
||||
"arch",
|
||||
"flower_patch",
|
||||
"fountain",
|
||||
"lamp",
|
||||
"bench",
|
||||
"gate"
|
||||
],
|
||||
"components": [
|
||||
{
|
||||
"type": "tree",
|
||||
"designImage": "Doc/Design/Scene/Battlefield/A/parts/tree.png",
|
||||
"targetTriangles": 700,
|
||||
"generationStatus": "generated",
|
||||
"statusFile": "Doc/Design/Scene/Battlefield/A/parts/tree_gpt_image_status.json",
|
||||
"highPoly": "Tools/output/battlefield/A/tree/tree.glb",
|
||||
"gameFbx": "Tools/output/battlefield/A/tree_game/tree_xpbr/tree.fbx",
|
||||
"modelTriangles": 700,
|
||||
"modelGenerationStatus": "baked",
|
||||
"modelStatusFile": "Tools/output/battlefield/A/tree_hunyuan_status.json",
|
||||
"prefab": "Assets/Bundles/Scenes/Prototype/Battlefield/A/Components/tree/tree.prefab",
|
||||
"label": "tree",
|
||||
"position": { "x": -8.0, "y": 0.0, "z": 9.0 },
|
||||
"rotation": { "x": 0.0, "y": 15.0, "z": 0.0 },
|
||||
"scale": { "x": 2.2, "y": 2.2, "z": 2.2 }
|
||||
},
|
||||
{
|
||||
"type": "rock",
|
||||
"designImage": "Doc/Design/Scene/Battlefield/A/parts/rock.png",
|
||||
"targetTriangles": 450,
|
||||
"generationStatus": "generated",
|
||||
"statusFile": "Doc/Design/Scene/Battlefield/A/parts/rock_gpt_image_status.json",
|
||||
"highPoly": "Tools/output/battlefield/A/rock/rock.glb",
|
||||
"gameFbx": "Tools/output/battlefield/A/rock_game/rock_xpbr/rock.fbx",
|
||||
"modelTriangles": 450,
|
||||
"modelGenerationStatus": "baked",
|
||||
"modelStatusFile": "Tools/output/battlefield/A/rock_hunyuan_status.json",
|
||||
"prefab": "Assets/Bundles/Scenes/Prototype/Battlefield/A/Components/rock/rock.prefab",
|
||||
"label": "rock",
|
||||
"position": { "x": 7.2, "y": 0.0, "z": 5.5 },
|
||||
"rotation": { "x": 0.0, "y": 20.0, "z": 0.0 },
|
||||
"scale": { "x": 1.6, "y": 1.6, "z": 1.6 }
|
||||
},
|
||||
{
|
||||
"type": "bridge",
|
||||
"designImage": "Doc/Design/Scene/Battlefield/A/parts/bridge.png",
|
||||
"targetTriangles": 1200,
|
||||
"generationStatus": "generated",
|
||||
"statusFile": "Doc/Design/Scene/Battlefield/A/parts/bridge_gpt_image_status.json",
|
||||
"highPoly": "Tools/output/battlefield/A/bridge/bridge.glb",
|
||||
"gameFbx": "Tools/output/battlefield/A/bridge_game/bridge_xpbr/bridge.fbx",
|
||||
"modelTriangles": 1200,
|
||||
"modelGenerationStatus": "baked",
|
||||
"modelStatusFile": "Tools/output/battlefield/A/bridge_hunyuan_status.json",
|
||||
"prefab": "Assets/Bundles/Scenes/Prototype/Battlefield/A/Components/bridge/bridge.prefab",
|
||||
"label": "bridge",
|
||||
"placeInScene": false
|
||||
},
|
||||
{
|
||||
"type": "sign",
|
||||
"designImage": "Doc/Design/Scene/Battlefield/A/parts/sign.png",
|
||||
"targetTriangles": 450,
|
||||
"generationStatus": "generated",
|
||||
"statusFile": "Doc/Design/Scene/Battlefield/A/parts/sign_gpt_image_status.json",
|
||||
"highPoly": "Tools/output/battlefield/A/sign/sign.glb",
|
||||
"gameFbx": "Tools/output/battlefield/A/sign_game/sign_xpbr/sign.fbx",
|
||||
"modelTriangles": 448,
|
||||
"modelGenerationStatus": "baked",
|
||||
"modelStatusFile": "Tools/output/battlefield/A/sign_hunyuan_status.json",
|
||||
"prefab": "Assets/Bundles/Scenes/Prototype/Battlefield/A/Components/sign/sign.prefab",
|
||||
"label": "sign",
|
||||
"position": { "x": -6.2, "y": 0.0, "z": -2.2 },
|
||||
"rotation": { "x": 0.0, "y": 180.0, "z": 0.0 },
|
||||
"scale": { "x": 1.6, "y": 1.6, "z": 1.6 }
|
||||
},
|
||||
{
|
||||
"type": "shrub",
|
||||
"designImage": "Doc/Design/Scene/Battlefield/A/parts/shrub.png",
|
||||
"targetTriangles": 450,
|
||||
"generationStatus": "generated",
|
||||
"statusFile": "Doc/Design/Scene/Battlefield/A/parts/shrub_gpt_image_status.json",
|
||||
"highPoly": "Tools/output/battlefield/A/shrub/shrub.glb",
|
||||
"gameFbx": "Tools/output/battlefield/A/shrub_game/shrub_xpbr/shrub.fbx",
|
||||
"modelTriangles": 422,
|
||||
"modelGenerationStatus": "baked",
|
||||
"modelStatusFile": "Tools/output/battlefield/A/shrub_hunyuan_status.json",
|
||||
"prefab": "Assets/Bundles/Scenes/Prototype/Battlefield/A/Components/shrub/shrub.prefab",
|
||||
"label": "shrub",
|
||||
"position": { "x": -7.2, "y": 0.0, "z": 0.5 },
|
||||
"rotation": { "x": 0.0, "y": -15.0, "z": 0.0 },
|
||||
"scale": { "x": 1.3, "y": 1.3, "z": 1.3 }
|
||||
}
|
||||
],
|
||||
"assembly": {
|
||||
"outputPrefab": "Assets/Bundles/Scenes/Prototype/Battlefield/Battlefield_Greenfield.prefab",
|
||||
"materialsFolder": "Assets/Bundles/Scenes/Prototype/Battlefield/Materials",
|
||||
"componentFolder": "Assets/Bundles/Scenes/Prototype/Battlefield/Components",
|
||||
"markerFolder": "Assets/Bundles/Scenes/Prototype/Battlefield/Markers"
|
||||
},
|
||||
"notes": "A 方案地表与 5 类组件已由 Unity Pipeline 生成 Prefab 并拼入 Battlefield_Greenfield,再嵌进开战预制体 PrototypeArena 的 Greenfield 子节点。烘焙地表是朝向 Z 的薄板,场景实例绕 X 轴 -90 度放平,顶面贴 y=0,覆盖三条路线。桥的模型已做好,但场景里不摆桥;路牌在营地侧且 -Z 朝向出生点,树、岩石、灌木放在路线外侧。Greenfield 整棵子树为第 30 层,Play Mode 已验证开战可见。",
|
||||
"designGeneration": {
|
||||
"tool": "Tools/generate_battlefield_designs.py",
|
||||
"imageTool": "Tools/gpt_image_generate.py",
|
||||
"model": "gpt-image-2.5",
|
||||
"promptFile": "Doc/Design/Scene/Battlefield/battlefield_design_prompts.json",
|
||||
"status": "generated",
|
||||
"generatedAtUtc": "2026-10-18T09:36:01Z",
|
||||
"observedSize": "1254x1254",
|
||||
"note": "A ??????????"
|
||||
},
|
||||
"componentDesignGeneration": {
|
||||
"tool": "Tools/generate_battlefield_components.py",
|
||||
"model": "gpt-image-2.5",
|
||||
"styleReference": "prompt-described",
|
||||
"overviewReference": "prompt-described",
|
||||
"referenceUpload": "none",
|
||||
"status": "generated",
|
||||
"generatedAtUtc": "2026-10-18T08:12:13Z",
|
||||
"observedSize": "1254x1254"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user