@midniteoilsoftware
  @midniteoilsoftware
Midnite Oil Software LLC | Re-Create Defender in Unity - Part 3 @midniteoilsoftware | Uploaded November 2022 | Updated October 2024, 2 hours ago.
In this Unity tutorial we will be re-creating the classic arcade game Defender.
Whether you're a complete beginner or a seasoned pro I think you will find this tutorial useful and entertaining.

In part 3 I introduce unit tests, some test-driven-development (TDD) and show how to setup a CI pipeline on Gitlab.

Link to entire playlist:
youtube.com/playlist?list=PLHcOLPSLOK7MMD6ec488pE_5lz-nspqtp

NSubstitute
github.com/nsubstitute/nsubstitute

GitLab/GameCI - Getting Started
https://game.ci/docs/gitlab/getting-started

Unity3D GitLab CI Example project
gitlab.com/game-ci/unity3d-gitlab-ci-example

"How to setup CI Pipeline" notes I followed
gitlab.com/yanniboi/ci-test/-/issues/1

Defender Assets:
dropbox.com/s/t1psbsx79fzkxgs/Defender%20Assets.zip?dl=1

Free Laser Weapons Asset
assetstore.unity.com/packages/audio/sound-fx/weapons/free-laser-weapons-214929

DOTween Asset used in this project:
assetstore.unity.com/packages/tools/animation/dotween-hotween-v2-27676

Where I got the assets:
Defender Sprites:
seanriddle.com/defendersprites.jpg

Arcade Sounds:
seanriddle.com/willy2.html#sound

Arcade Font:
1001freefonts.com/arcade.font

Link to source code for Part 3
gitlab.com/midnite-oil-software-tutorials/defender/-/tree/Part3

Game Controller I used
amazon.com/dp/B07ZGD53JF?ref=ppx_yo2ov_dt_b_product_details&th=1

If you get stuck and need help join my Discord and post your questions there:
discord.gg/wrdqXPtw9y

00:00:00 - Intro
00:00:26 - Talking about GameCI
00:01:10 - Create Unit Test Project
00:04:09 - Create Assembly Definition
00:06:48 - Creating our first unit test
00:08:20 - Using NSubstitute to "mock" interfaces
00:10:42 - Creating a test scene
00:11:51 - Create a TestHelpers class
00:13:42 - Creating a test setup method
00:18:44 - Running our first test
00:19:33 - Diagnosing failed test
00:22:40 - Watching our first unit test pass
00:23:26 - Adding some more tests
00:28:05 - Test Driven Development (TDD)
00:29:47 - S.O.L.I.D.
00:35:16 - Create a Human prefab
00:40:40 - Add a failing test
00:44:15 - Write code to make test pass
00:58:06 - Continuous integration
01:00:10 - Copying CI files
01:03:23 - Edit .gitlab-ci.yml file
01:05:50 - Commit changes to source control
01:07:54 - Add GitLab CI Variables
01:09:16 - Get Activation File
01:11:51 - Buidling the pipeline
01:17:37 - Outro

In case you'd like to show your support by buying me a coffee
ko-fi.com/gregorybradburn

#madewithunity #unity2d #unitytutorial #indiedev #indiegamedev #arcade #defender #urp
#unityinputsystem #tdd #solid #gitlab #ci #cd #pipeline #unittest #gameci
Re-Create Defender in Unity - Part 3Unity 3D Tutorial - How to Write Q*Bert from Scratch - Part 2Ninja Eggs 9 - Mini Games UpdateHow to make a 3D Space Shooter Game in Unity - Tutorial Part 13Programatically Transition Between Music Groups - Audio Tutorial Part 4 of 6Unity3D Tutorial: How to Make Q*Bert from Scratch - Sneak PeakHighland Panic Beta Game PlayLivestream-21: Unity Game Dev - Publish to Apple App StoreCreating an in-game Tutorial in Unity using Endless BookHow to Make a 3D Space Shooter Game in Unity - Tutorial Part 5Livestream-16: Unity game dev - Tweak difficulty levelNinja Eggs-04: Shuffle Playing Animations

Re-Create Defender in Unity - Part 3 @midniteoilsoftware

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER