Unity Final Report
Unity Final Report
Submitted By
Priyesh Rupavatia
Semester: VIII
2013401107002
BACHELOR OF ENGINEERING
In
Computer Engineering
Certificate
This is to certify that the project report submitted along with the project entitled Unity
Game Development has been carried out by Priyesh Rupavatia under my guidance in
partial fulfilment for the degree of Bachelor of Engineering in Computer Engineering,
8th Semester of Gujarat Technological University, Ahmadabad during the academic year
2024-25.
Sign:- Sign:-
Tanvi Patel Tanvi Patel
Internal Guide Head of the Department
Team ID: 423291 DECLARATION
DECLARATION
We hereby declare that the Internship / Project report submitted along with the Internship /
Project entitled Unity Game Development submitted in partial fulfilment for the degree
of Bachelor of Engineering in Computer Engineering to Gujarat Technological
University, Ahmedabad, is a bonafide record of original project work carried out by me /
us at Secure Infotech under the supervision of Yogesh Savaliya and that no part of this
report has been directly copied from any students’ reports or taken from any other source,
without providing due reference.
ACKNOWLEDGEMENT
Thank you.
Priyesh Rupavatia
ABSTRACT
TABLE OF FIGURES
Fig 1.2……………………………………………………………………………………………..2
Fig 2.1…………………………………………………………………………………………….5
Fig 2.2.1 & 2.2.2…………………………………………………………………………………..6
Fig 2.3…………………………………………………………………………………………….7
Fig 3.1……………………………………………………………………………………………..8
Fig 3.2……………………………………………………………………………………………..9
Fig 4.1……………………………………………………………………………………………..11
Fig 4.2……………………………………………………………………………………………..12
Fig 5.1……………………………………………………………………………………………..14
Fig 5.2……………………………………………………………………………………………..15
Fig 5.3……………………………………………………………………………………………..16
Fig 6.1 …………………………………………………………………………………………….18
TABLE OF CONTENT
DECLARATION………………………………………………………....i
ACKNOWLEDGEMENT………………………………………………ii
ABSTRACT……………………………………………………………...iii
LIST OF FIGURES……………………………………………………...iv
Unity is a robust and versatile game engine developed by Unity Technologies. It serves as
a powerful platform for creating interactive experiences, ranging from video games to
simulations and architectural visualizations. Unity empowers developers with a wide array
of tools and features, including a flexible editor, physics engine, and scripting capabilities.
It supports multiple programming languages, with C# being the primary scripting language.
Unity's cross-platform nature enables developers to build and deploy their projects across
various platforms with ease. Its intuitive interface and extensive documentation make it
accessible to developers of all skill levels, fostering a vibrant community and ecosystem of
assets and resources. Overall, Unity stands as a cornerstone in the world of game
development, empowering creators to bring their visions to life.
Unity is preferred for game development due to its versatility, cross-platform support, and
extensive feature set. It provides developers with a comprehensive suite of tools for creating
both 2D and 3D games, streamlining the development process. Unity's cross-platform
capabilities allow developers to deploy their games across a wide range of devices,
including desktop, mobile, and consoles, reaching a larger audience. Its asset store offers a
vast library of assets, plugins, and resources, enabling developers to enhance their projects
with ease. Unity's active community and robust documentation provide valuable support
and resources for developers at all levels. Additionally, Unity's licensing options cater to
developers of varying needs and budgets, making it accessible to both indie developers and
large studios. Overall, Unity's combination of features, accessibility, and community
support makes it a top choice for game development.
Fig 1.2
- Scene view: This panel provides a visual representation of the game scene, allowing
developers to manipulate game objects by moving, rotating, and scaling them directly
within the scene.
- Game view: The Game view displays a preview of the game as it will appear to players,
providing real-time feedback on changes made in the Scene view.
- Hierarchy: The Hierarchy panel displays a hierarchical list of all game objects in the
current scene, allowing developers to organize and manage their project's structure.
- Project: The Project panel contains all the assets used in the project, including textures,
models, scripts, and audio files. It provides a convenient way to manage and organize
project assets.
- Inspector: The Inspector panel displays detailed information and properties for selected
game objects or assets, allowing developers to modify their attributes and settings.
Overall, Unity's interface and workspace are designed to provide a cohesive and intuitive
environment for game development, enabling developers to focus on bringing their creative
visions to life.
Downloading and installing Unity is a straightforward process that involves a few simple
steps:
2. Sign up or log in: If you don't already have an account, you'll need to sign up for a
Unity account. If you have one, log in to your account.
3. Download Unity Hub: Unity Hub is a management tool that allows you to install
and manage different versions of Unity. Download and install Unity Hub from the
Unity website.
4. Install Unity Editor: Open Unity Hub and navigate to the "Installs" tab. Click on
the "Add" button to select the Unity version you want to install. Choose the desired
components, such as platform support and additional features, and click "Next."
5. Accept license agreement: Read and accept the Unity Software License
Agreement.
6. Choose installation location: Select the location where you want to install Unity
on your computer and click "Install."
7. Wait for installation: Unity Hub will download and install the selected version of
Unity along with the chosen components. Depending on your internet speed and
computer performance, this process may take some time.
8. Launch Unity: Once the installation is complete, you can launch Unity from Unity
Hub. You may need to log in to your Unity account again.
Fig 2.1
Creating a new Unity project is the foundational step in game development within the Unity
engine. It begins with launching the Unity Hub, the management tool for Unity projects.
From there, developers select their desired Unity version and project template, tailored to
various project types such as 2D, 3D, VR, or AR. These templates provide a starting point
with pre-configured settings and assets specific to the chosen project type. Once the project
is created, developers are greeted with Unity's intuitive editor interface, comprising various
panels and windows like the Scene view, Game view, Hierarchy, and Inspector. These
elements facilitate the organization, design, and manipulation of game assets within the
project, setting the stage for further development and customization.
Understanding Unity’s hierarchy and scene view is crucial for effective game development.
The hierarchy view displays all the game objects present in the current scene, organized in
a hierarchical manner. This allows developers to easily manage and manipulate objects by
arranging them into parent-child relationships. The scene view provides a visual
representation of the game scene, allowing developers to interactively position and edit
game objects. By navigating the scene view, developers can inspect and modify the
properties of individual objects, adjust their positions, rotations, and scales, and arrange
them within the scene. Understanding Unity’s hierarchy and scene view facilitates efficient
scene organization, object manipulation, and overall workflow optimization during the
game development process.
Fig 2.3
In Unity, game objects are fundamental building blocks used to create interactive elements
within a scene. These objects can represent characters, props, lights, cameras, and more.
Game objects serve as containers for components, which are modular pieces of
functionality that define the behaviour and properties of the object. Components can range
from basic functionalities like transforms (position, rotation, scale) to more complex
behaviours such as physics interactions, animations, and scripting logic. By attaching
different combinations of components to game objects, developers can create dynamic and
interactive elements within their games. This modular approach to design allows for
flexibility and reusability, enabling developers to efficiently build complex systems while
maintaining code organization and scalability.
Fig 3.1
Transformations and position handling in Unity are fundamental concepts that govern the
placement, orientation, and scaling of game objects within a scene. Unity utilizes a 3D
coordinate system where objects are positioned along the X, Y, and Z axes. Transformations
refer to changes in an object's position, rotation, and scale, which can be manipulated
programmatically or through the Unity editor. Developers can use Unity's Transform
component to access and modify an object's position, rotation, and scale properties.
Position handling involves determining the precise location of objects within the scene,
allowing for accurate placement and movement. Unity provides functions and methods for
translating, rotating, and scaling objects relative to their parent or global coordinates.
Understanding transformations and position handling is crucial for creating dynamic and
interactive scenes, as it enables developers to control the spatial relationships between game
objects and create immersive environments. These concepts form the foundation for
implementing gameplay mechanics, physics simulations, and visual effects within Unity
projects.
Fig 3.2
Fig 4.1
Fig 4.2
Fig 5.1
Fig 5.2
Fig 5.3
Fig 6.1
10.1 Building your game for different platforms (e.g., PC, mobile)
Building Trackmania Mobile for different platforms involves optimizing the game for
Android devices initially, ensuring smooth performance and compatibility. The
development team utilizes Unity's build settings to generate platform-specific builds
tailored for the Android platform. This includes optimizing graphics, controls, and
performance to provide an optimal gaming experience on Android smartphones and tablets.
Upon successful release on Android, the team plans to expand to additional platforms, such
as iOS, in the future, leveraging Unity's cross-platform capabilities to ensure seamless
transition and compatibility across different devices and operating systems.
7. Intermediate Unity Topics: User interfaces, animations, and audio management are
intermediate topics that enhance the visual and auditory aspects of the game. Understanding
these topics adds depth and polish to the gaming experience.
8. Advanced Unity Features: Unity's advanced features, such as the physics engine, particle
systems, and shaders, enable developers to create realistic simulations, stunning visual
effects, and immersive graphics.
9. Introduction to Trackmania Mobile: Trackmania Mobile is a thrilling racing game where
players compete in fast-paced races with dynamic tracks. It emphasizes competitive time
trials and plans to introduce online multiplayer in the future.
10. Development Process and Challenges Faced: The development process of Trackmania
Mobile involves conceptualization, technical implementation, testing, and iteration.
Challenges include optimizing performance, integrating features like online multiplayer,
and ensuring compatibility across platforms.
11. Testing and Debugging: Playtesting and debugging are crucial for identifying and
resolving issues, ensuring the quality and stability of Trackmania Mobile. Thorough testing
and iterative debugging improve gameplay and user experience.
12. Profiling and Optimizing Performance: Profiling performance and optimizing assets,
physics simulations, and rendering techniques are essential for ensuring smooth gameplay
on mobile devices. Unity's profiling tools help identify bottlenecks and optimize
performance.
13. Publishing Your Game: Publishing Trackmania Mobile involves creating platform-
specific builds, submitting to app stores, and adhering to store guidelines. Ongoing support
and updates are necessary for maintaining player engagement post-release.
14. Marketing and Promoting Your Game: Effective marketing strategies, such as social
media campaigns, influencer partnerships, and app store optimization, increase visibility
and drive downloads for Trackmania Mobile.
In conclusion, the journey from introduction to Unity to the development and publishing
of Trackmania Mobile highlights the importance of mastering Unity's tools and features,
overcoming challenges in game development, and implementing effective marketing
strategies for success in the competitive gaming industry.