Bằng cách tách riêng phần hiển thị sử dụng GameObject và phần mô phỏng sử dụng ECS, chúng ta có thể thay đổi map chơi khá dễ dàng trong EzyTank. Sau đây là các bước chi tiết để thực hiện việc đổi map chơi:

Tải tài nguyên

  • Trong dự án Tanks! Complete Project trên Unity assetstore đã có một số map chơi mà chúng ta có thể tái sử dụng như Desert, Jungle, Moon.
  • Import asset này vào 1 project mới trên Unity và ta có thể tìm thấy các map chơi này trong thư mục Assets/_Tanks/Prefabs/Levels Screenshot from 2025-11-02 16-09-01.png
  • Chúng ta sẽ cần copy một số assets như sau để có thể tái sử dụng map chơi trong project EzyTank:
    • Assets/_Tank/Art/Materials and Assets/_Tank/Art/Materials.meta to ezytank-unity/Assets/ folder
    • Assets/_Tank/Art/Models/Environment and Assets/_Tank/Art/Models/Environment.meta to ezytank-unity/Assets/ folder
    • Assets/_Tank/Art/Textures and Assets/_Tank/Art/Textures.meta to ezytank-unity/Assets/ folder
    • Assets/_Tank/Prefabs/Environment and Assets/_Tank/Prefabs/Environment.meta to ezytank-unity/Assets/ folder
    • Assets/_Tank/Prefabs/Levels and Assets/_Tank/Prefabs/Levels.meta to ezytank-unity/Assets/ folder

Cài đặt map chơi mới

Sau khi có prefab LevelJungle, việc còn lại rất đơn giản:
  • Mở scene SharedGameScene và mở sub scene New Sub Scene
Screenshot from 2025-11-02 16-20-11.png
  • Chọn game object CompleteLevelArt và đổi Client Prefab thành LevelJungle như sau:
Screenshot from 2025-11-02 16-22-07.png
  • Build lại game server và game client như hướng dẫn ở đây