Skip to content

marczaku/101-introduction-to-unity-game-development

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 

Repository files navigation

101 Introduction to Unity Game Development

Hi, my name is Marc and I am an enthusiastic Software Developer and Lecturer.
A lot of ⏱️ time and many years of iteration went into the preparation of this class material.
Please Leave a ⭐️ on this repository if you found this course helpful!
Feel free to open Issues for 💡 Feedback as well!

This material is available for free under the terms of Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0). Check the LICENSE file on this repository for details.


Goal

In this introduction course to Unity Game Development, we'll implement a clone of Impossible Game (Video)


Grading Criteria

Passing Grade

All Baseline Milestones completed.

Excellent Grade

All Advanced Miletones completed.


Submission

Submit your project to Learnpoint by adding a link to your repository and/or a link to your game on Unity Play as well as uploading a Screenshot


Baseline Milestone

1. Learn GitHub Basics

Please follow the instructions on these Slides, but name your repository and Unity Project ImpossibleGame

2. Build Ground

Place a few cubes in the scene to build a ground on which our player can navigate. Place the camera in a way, that it can see the ground. - Requires Unity Essentials

3. Create Player

Place a cube on top of those cube. Name it Player.

4. Move Camera

Change the camera's position and rotation, so we can see the Player Cube on top of the Ground Cubes from the side or any other perspective that you prefer.

5. Player Movement

Make the player move from left to right permanently (without requiring any input) - Requires Visual Scripting

6. Goal

Place a goal at the end of your ground cubes. Show a Log "You Win!" when the player touches that goal.

7. Long Level

Make your level so long, that it does not fully fit on the screen. Make the camera follow the player.

8. Spike

Add a spike in the level. When the player touches the spike, show a log: "You died!" and restart the game after 3 seconds

9. Player Jump

Allow the player to jump when pressing the SPACE-key.

10. Grounding

Make sure that the player can only jump while he is on ground. You can use OnCollisionStay or RayCast to do this.


Advanced Milestone

1. Crash

Add cubes, that the player needs to jump on. If the player crashes into the cube from the side, he dies. If he lands on it, he survives.

2. Release

Publish your game to Unity Play

Bonus

1. Counter

Add a counter that shows, how often you've tried this level. Print the Output to the Log.

2. Pretty, please?

Make it your own. Add some Assets from Unity's Asset Store. If you can, add Effects and Sound.

3. Jump On Click

If you want to be able to play your game on your phone, you should change the input to jump on click. Taps on a phone are interpreted as clicks.

Skills Learned

Click me

Git

  • Repository
    • Create a local one
    • Publish it to GitHub
  • Commit
  • Push

Unity

  • Hub
    • Install an Editor
    • Create a Project
    • Open a Project
  • Editor
    • Project View
    • Hierarchy View
    • Scene View
    • Game View
    • Inspector
    • Meta-Files
    • PlayMode
    • Console
  • Engine
    • GameObject
    • Component
    • Asset
    • Scene
    • Prefab
  • Components
    • Transform
      • Position
      • Rotation
      • Scale
      • Parent
    • Camera
    • DirectionalLight
    • Canvas
    • RectTransform
      • Anchor
      • Pivot
    • TextMeshProUGUI
      • Text
    • Image
  • Packages
    • Manifest
    • Visual Scripting
  • Build
  • Play

Game Engine

  • Update
    • DeltaTime
    • Frames per Second
  • FixedUpdate

Physics

  • Collider
    • Trigger
    • Events
  • Rigidbody
    • Velocity
    • Force
  • Raycast

Maths

  • Vector3

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published