This is a page to help beginners to get familiar with Unity.
Contents are referenced from LinkedIn Unity 2023 essential training by Emmanuel Henri.
Download Unity Hub: Visit unity.com, find Unity Hub, and download it for your operating system (Windows, Mac, or Linux).
Install Unity Hub: Open the downloaded file, agree to the terms, and drag Unity Hub to your applications folder.
Set Up Unity Hub: Open Unity Hub, log in (or create an account if you don't have one), and then install the Unity editor. Choose the long-term support version for stability.
Select Platforms: During installation, select the platforms you plan to release your project on (e.g., iOS, Android).
System Requirements: Unity is resource-intensive, so ensure your computer has sufficient hardware, especially a good GPU, for optimal performance.
Unity Project Files: Understand the different files and folders in a Unity project, such as assets, library, logs, packages, project settings, user settings, and temp.
File Management: Learn how to manage these files for backup purposes or to move the project to another computer.
HDRP Template: Option to use the 3D sample scene HDRP template for more comprehensive project setups, including players, meshes, and lights.
Main Sections: Unity's interface consists of four main sections: Hierarchy, Project (including Console), Inspector, and Scene/Game view.
Hierarchy: Displays all elements in your scene. Deleting items here removes them from the scene but not from the project.
Project: Contains all assets. Deleting items here removes them permanently.
Inspector: Shows details and options for selected items or game objects.
Console: Displays messages and errors from the rendering engine and scripts.
Layout Customization: You can move and rearrange sections like the Inspector, Hierarchy, and Console to fit your needs.
Default Layout: If you make changes and want to revert, you can easily reset to the default layout.
Saving Layouts: You can save your customized layout for future use.
Unity Manual: Access the Unity Manual through the Help menu for comprehensive information.
Search Functionality: Use the search feature to find specific information quickly.
Exploration: Navigate through different sections like 2D game development and lighting for detailed guidance.
Accessing the Roadmap: You can find the Unity roadmap by searching "Unity Roadmap" on Google or visiting unity.com/roadmap.
Roadmap Details: The roadmap provides information on upcoming features and developments in Unity, including 3D characters, animation, game objects, and more.
Specifics: You can click on specific items to see detailed information about what Unity is working on for future updates.
GameObjects: Everything in a Unity scene, such as lights, props, and characters, is a GameObject.
Creating GameObjects: You can create an empty GameObject and add components to transform it into something specific, like a light or a 3D object.
Components: Adding components like a light or mesh renderer defines the properties and behavior of a GameObject.
Package Manager: Access it via Window > Package Manager to install or remove native packages based on your project's needs.
Asset Store: Access it via Window > Asset Store, which opens a browser window where you can find plugins, 3D objects, materials, and more to enhance your Unity projects.
Usage: Both tools allow you to customize and expand your project by adding necessary assets and packages.
Low Polygon Count: Ensure 3D models have a low polygon count and clean topology for better performance.
Origin Alignment: Snap models to the origin (0,0) to make positioning easier in Unity.
Texture Resolutions: Use textures with equal width and height resolutions (e.g., 512x512, 1024x1024).
Supported Formats: Prefer the FBX format for 3D assets, and use high-quality image formats like PNG for textures.
Import Methods: There are three ways to import assets into Unity: using the "Import New Asset" option, dragging files directly from a folder, or dragging and dropping into the Unity Hub project folder.
Drag and Drop: The recommended method is to drag and drop assets into the project to let Unity handle any necessary background processes.
Asset Management: Imported assets appear in the Assets folder and can be dragged into the scene. Deleting them from the Assets folder removes them permanently, while deleting from the scene only removes them from the current view.
Materials and Shaders: Materials define how the surface of a model should be rendered, including references to textures. Shaders determine how light interacts with an object.
Importing Packages: You can import materials and textures using the "Import Package" option in Unity.
Texture Files: Texture files are images that provide necessary information for channels like color, height, metallic, normals, and roughness.
Creating Materials: You can create a new material by right-clicking in the Materials folder, selecting "Create," and then "Material."
Shader Selection: Shaders are crucial as they determine the final look of your material based on configurations and lighting. The standard shader is commonly used for real-world objects.
Material Properties: You can explore and adjust various shader options to see how they affect the material's appearance, such as changing it to a specular shader for non-metallic materials.
Base Color: Defines the base color of your material.
Metallic Setting: Determines how reflective or metallic the object is.
Roughness: Controls the smoothness or ruggedness of the material's surface.
Normal Map: Adds details to the geometry of an object, enhancing realism.
Prefab Definition: Prefabs are templates that allow you to create multiple instances of the same object while maintaining all its properties.
Usage: Prefabs are ideal for creating multiple similar objects, like trees in a forest, and can be updated easily by modifying the prefab itself.
Variations: You can create nested prefabs and variations within these nested branches to have different versions of similar objects.
Creating a Prefab: To create a prefab, drag the desired object from the scene or hierarchy into the assets folder, typically into a designated "Prefabs" folder.
Unpacking Prefabs: If an object is already part of a prefab, you need to unpack it by right-clicking the parent prefab and selecting "Unpack Completely" before creating a new prefab.
Applying Materials: Once a prefab is created, you can apply different materials to it and create multiple instances with varied appearances.
Instance Overrides: You can create variations of a prefab by changing properties like materials on individual instances without affecting the original prefab.
Nested Prefabs: It's possible to create nested prefabs, where changes to the parent prefab can trickle down to its instances unless overridden.
Material Changes: Changing the material on an instance creates an override, allowing for unique appearances while maintaining the connection to the original prefab.
Prefab Variants: Prefab variants are similar to instances of a prefab but allow for modifications that apply to all instances of that variant.
Usage: Useful for creating multiple versions of an object, like different types of books in a library, while maintaining a connection to the original prefab.
Inheritance: Changes to the parent prefab affect all variants, but changes to a variant only apply to that specific variant.
ProBuilder Tool: ProBuilder is used to create simple geometry directly within Unity, ideal for level blocking and simple structures.
Accessing ProBuilder: You can access ProBuilder through the Package Manager by searching for and installing it from the Unity Registry.
Creating Shapes: Once installed, you can create various shapes like cubes, spheres, and cones to quickly build and experiment with your scene.
Docking the ProBuilder Menu: The instructor demonstrates how to dock the ProBuilder menu for easier access while working on shapes.
Grid System: The grid system in Unity helps with precise placement and alignment of objects. You can adjust the grid's opacity and orientation.
Creating Shapes: You can create various shapes like cubes, cylinders, and cones, and adjust their properties such as size and vertices for customization.
ProBuilder Tools: The video introduces various ProBuilder tools for creating and editing 3D objects, such as smoothing, material editing, and vertex manipulation.
Complex Objects: For more complex 3D modeling, it's recommended to use dedicated 3D modeling software like Maya, Cinema 4D, Zbrush, or Blender, and then import the objects into Unity.
Blocking Scenes: ProBuilder is ideal for blocking out scenes and creating basic shapes, which can later be replaced with more detailed assets from the asset store or other 3D modeling software.
Applying Materials: The instructor demonstrates how to apply various materials to different parts of the scene, such as floors, walls, ceilings, and furniture.
Material Organization: Emphasis on organizing materials and ensuring consistency across different objects in the scene.
Verification: Tips on verifying that all materials are correctly applied, such as checking individual parts for missing materials.
Animation Window: The animation window in Unity allows you to create animation clips. You can access it via Window > Animation > Animation Window.
Creating Animations: To animate an object, select it in the scene, create an animation folder, and add properties to animate specific elements of the object.
Keyframes and Timeline: You can set initial and end keyframes for the object's properties and adjust the timeline to define the duration of the animation.
Animation Controllers: These allow you to add multiple animations to a specific game object and use them based on the object's state.
Creating Controllers: When you create an animation, a controller is automatically created. You can manage and organize multiple animations within this controller.
State Machine: The controller uses a state machine to manage transitions between different animations. You can connect animations to define the flow of states.
Rigid Bodies: Adding a rigid body component to game objects allows them to interact with physics, such as gravity and realistic behaviors.
Colliders: Colliders are essential for preventing objects from passing through each other. They add physical form to objects, enabling interactions like bouncing or stopping.
Physics Properties: You can adjust properties like mass and drag to control how objects behave under physics. Mass affects the object's weight, while drag influences how it moves through space.
Purpose of Colliders: Colliders are used to set rules around collisions for objects in a scene, preventing them from passing through each other.
Types of Colliders: Different types of colliders are used for various scenarios:
Box Collider: Commonly used for most objects.
Mesh Collider: Adapts to the shape of uneven objects.
Sphere Collider: Ideal for rounded objects.
Capsule Collider: Typically used for character models.
Application: The video demonstrates how to add colliders to objects, ensuring they interact correctly within the scene.
Adding Colliders: The video demonstrates how to add various types of colliders (Box, Mesh, Capsule) to different objects in the scene, such as countertops, floors, walls, ceilings, and chairs.
Collider Selection: Use Box Colliders for square or rectangular objects, Mesh Colliders for irregular shapes, and Capsule Colliders for objects like chairs.
Visualization: You can visualize the added colliders by clicking on the appropriate icon to ensure they are correctly applied.
Editing Colliders: The video demonstrates how to edit existing colliders to make them more realistic and better fit the objects they are applied to.
Collider Adjustments: Adjusting the size and shape of colliders ensures that objects interact correctly within the scene, such as making sure a ball bounces off a table or floor properly.
Physics Materials: Adding and configuring physics materials to objects (like a ball) can affect their physical behavior, such as bounciness and friction.
Audio Formats: Unity supports various audio formats, including MP3, Wave, and Ogg files.
Audio as a Component: Audio can be added as a component to any game object in Unity.
Audio Listener: An audio listener is required to hear sounds in the scene, typically attached to the main camera or a character.
Adding Audio Source: You can add sound to a game object by adding an Audio Source component and selecting an audio clip.
Audio Settings: Adjust settings like priority, volume, pitch, stereo pan, and spatial blend to control how the sound is heard in the scene.
Practical Application: The video demonstrates adding ambient and kettle sounds to specific objects, encouraging you to experiment with your own sounds.
Creating Audio Mixers: You can create an audio mixer in Unity to control audio levels for different sounds in your scene.
Grouping Sounds: Group related sounds (e.g., kettle, ambient) to manage their levels collectively and more granularly.
Adjusting Sound Levels: Use the audio mixer to adjust the volume of individual sounds or groups, ensuring the audio balance fits your scene.
Directional Light Characteristics: Directional lights are ideal for simulating sunlight as they provide consistent lighting across the entire scene, regardless of their position.
Impact of Rotation: Changing the rotation of the directional light affects the direction and angle of the light, altering the scene's lighting.
Intensity and Temperature: You can adjust the light's intensity and color temperature to achieve different lighting effects, such as a warm sunset or a cool winter day.
Point Light: Emits light equally in all directions. You can adjust its range, intensity, color, and shadows to fit specific areas.
Spot Light: Emits light in a specific direction, typically in a cone shape. You can adjust its rotation, range, intensity, and the shape of the cone to control where the light falls.
Customization: Both types of lights can be customized extensively using Unity's settings, including changing the light type, intensity, range, and angles.
Area Light: A rectangle that produces light with soft shadowing. You can adjust its size and shape (tube, rectangle, or disc) and control settings like intensity and range.
Emissive Materials: Materials that emit light. You can adjust the emission intensity and choose settings like Nits or EV 100. Emissive materials can be used to simulate light from objects and are useful for light baking.
Volumes in Unity: Used to add effects like fog, sky, lighting, post-processing, or shadows to a scene. They can be global or local.
Creating Volumes: Right-click in the hierarchy to create a volume and select the type (e.g., global volume, sky and fog, reflection, box volume).
Adding Components: Add components to volumes to control various settings, such as exposure and HDRI sky for lighting adjustments.
Concept of Light Baking: Light baking creates a light map composed of texels, which is a texture overlaid on 3D objects with light information applied to it.
Benefits: It saves computing resources by baking light effects directly into objects, avoiding the need to render lights in real-time.
Limitations: Light baking does not provide real-time direct lighting for dynamic objects or characters, which may be necessary depending on the performance and look you want to achieve.
Static Objects: To bake lighting, objects must be set to static. This ensures they don't move and can have lightmaps applied.
Dynamic Objects: Dynamic objects should not be static and will use global illumination instead of lightmaps.
Lightmap Settings: Adjusting the scale in the lightmap affects the density of texels, impacting the quality and performance of the baked lighting.
Texel Density: Texels are the texture elements in a lightmap. Higher texel density results in better resolution and lighting quality for objects.
Viewing Baked Lightmap: You can view the baked lightmap by selecting the appropriate view in Unity and adjusting the exposure to see the texel density.
Adjusting Texel Density: Increase the scale in the lightmap for specific objects in the inspector to improve their resolution and lighting quality.
Purpose of Reflection Probes: Reflection probes are used to capture and bake reflections in areas with reflective elements, ensuring accurate reflections in the scene.
Placement and Adjustment: Insert a reflection probe by right-clicking in the hierarchy, selecting light, and then reflection probe. Adjust the size and position to cover the desired reflective areas.
Multiple Probes: You may need to add multiple reflection probes to ensure accurate reflections throughout the scene, depending on the final look you want to achieve.
Lightmap Settings: Control the quality of the lightmap baked into the scene. Access these settings via Window > Rendering > Lighting.
Baking Options: Choose between progressive CPU or GPU for baking. GPU is faster if you have a powerful GPU.
Quality vs. Time: Higher settings improve quality but increase baking time. Start with lower settings, test, and then increase as needed.
Direct and Indirect Samples: Adjust these to improve the quality of direct and indirect lighting in your scene.
Lightmap Resolution: Higher resolution results in better quality but larger files. Adjust based on your needs.
Post-Processing Stack: Enhances the visual quality of your game by adding effects like bloom, depth of field, film grain, and more.
Creating a Post-Processing Volume: Add a game object, create a volume, and make it global or local. Then, create a new profile and add overrides for different effects.
Adjusting Effects: Customize effects like bloom, tone mapping, and color adjustments to improve the aesthetics of your scene.
Basic Introduction: This video provides a basic introduction to C# programming within Unity, not a full overview of the language.
Unity and C#: Unity primarily uses C# for scripting, and it's recommended to stick with C# for better support and documentation.
Scripting in Unity: Scripts are created in Unity and attached to game objects. They execute when events are triggered by these objects.
Script Creation: Create a new C# script in Unity, ensuring the script name matches the class name.
Organizing Folders: Maintain organized folders for scripts and other assets to keep the project tidy.
Writing the Script: Write a simple script to play a sound when approaching an object, using AudioSource and OnTriggerEnter methods in C#.
Script Application: Ensure the audio script is applied to the kettle and validate its presence in the inspector.
Collider Setup: Add and adjust a box collider to trigger the audio when the player enters the specified area.
First Person Controller: Optionally, add a first person controller from the asset store to test the audio trigger in the scene.
Installing Recorder: Use the Package Manager to install the Recorder package in Unity.
Setting Up Recorder: Access the Recorder window and configure settings like target FPS, source, output resolution, and aspect ratio.
Exporting the Movie: After configuring, start recording to export the movie, which will be saved in your project under the specified file name and location.
Build Settings: Access the Build Settings from the File menu to set up your project for export. Choose the target platform (e.g., Windows, Mac, Linux, WebGL) and configure necessary options like architecture.
Exporting: After setting up the Build Settings, use the "Build and Run" option to create and run the export file. This process is resource-intensive and may take some time.
Platform Packages: Ensure you have installed the necessary platform packages (e.g., Android, iOS) during the initial setup to enable exporting to those platforms.
Added by : Eunjin Hong 2025/04/01