Skip to content

Architecture

Kelly Thao edited this page Oct 20, 2024 · 24 revisions

Frameworks and Libraries

This will be a 2D game developed in Unity using C# as the programming language. The following libraries, frameworks, and services will be used:

  • Unity Engine: The core framework for building the game, handling the physics, animations, input, and rendering of 2D sprites and environments.

  • Unity UI Toolkit: Used to create and manage in-game user interfaces such as menus, HUD, and dialog systems.

  • Unity 2D Physics: Responsible for implementing the game's physics, including collision detection and responses for game objects.

  • Unity Animation System: Will be used to create smooth transitions and movements for characters and objects using 2D sprites.

  • Cinemachine: A camera system for smooth camera movement, zoom, and tracking of characters during gameplay.

  • Unity Input System: To handle player input for both keyboard and game controller setups.

  • TextMeshPro: For rendering high-quality text in the game UI and dialogues.

  • Unity Addressable Assets System: To manage and load assets effciently, allowing for dynamic loading of levels, characters, and other game assets.

  • Unity Analytics: To collect player data such as gameplay statistics, user engagement, and behavior in the game to inform design decisions.

The Unity package manager is what we will be using as our package/build manager.

Release

We will use a binary exe file, As Unity allows you to directly compile projects in exe files. Testers will then be linked to a separate Github Repository containing this executable.

General UML Chart:

umlchart

Views:

371882593-51cf9a08-0566-4c95-9e6b-18b189632e14 371883075-d88980fb-60b4-46ba-8ed2-19a51491beb5 371883234-3844a2a0-cfcd-4807-a4c1-ecd2941a48fa 371887758-eba77f83-8516-4615-bde7-b35710f8c9b3 371903432-6f49e6d9-2a4b-4fc5-827d-3f20891e9dfe 371903448-6ecd5e83-c314-4693-a85d-cf489b69aaa3 371903507-495da628-a25d-4da6-8adc-758196306e5f 371906901-d1eacf4c-3d9f-4766-bef9-237fb0739667

Tasks:

Joshua Kolbusz: Issues #45, #47, #48, #49, #51, #52

Kelly Thao: Issues #34, #33, #32, #27, #26, #22, #21

Clone this wiki locally