Updated 10 months ago
2D Platformer PC WebGL & Mobile : Demo (Press "JOUER" Button)
Creation of 2D video games for PC, WebGL and Mobile with Unity 2018, Cubase and Photoshop.
Part 1
In this vidéo :
  • Camera 2D
  • Slicing floor sprites
  • Adding TileMap 2D
  • Painting Level
  • Add Physics 2D No Friction
Part 2 The Player
In this Vidéo :
  • Player Sprites
  • Player Box and Circle Colliders 2D
  • Player Animation (Idle, Jump, Run and Attack)
Free WebGL DEMO :
Part 3 : Player Animator Parameters

PlayerController Script

Part 4
In this vidéo :
  • Moves variables
  • Start Function (Get component Animator, Get component Rigidbody 2D, variables values, etc...)
  • Update and Fixed Update Functions (Check player and ground layer contact, Move left and right, etc...)
  • Method FlipSprite() => Boolean

Moves Test

Part 5 :

Jump and Double Jump

Part 6 :
In this Vidéo :
  • Jump and Double Jump Method
  • Jump Sound
  • Jump Animator Parameters
  • Test

Sword Attack Script and Anim

Part 7 :
In this vidéo :
  • Sword Script (in Update Function)
  • Sword Animator Parameters

Camera 2D And Custom Editor

Part 8 :
In this vidéo :
  • Camera 2D script instead of cinemachine
  • Custom Camera 2D Editor to define min and max Camera Position
  • Add Pixel perfect camera

Sorting Layer And Skybox

Part 9 :
In this Vidéo :
  • Sorting Layer (Bg, Mg, Default and Fg)
  • Material + 6 sided -> skybox

LevelManager Canvas + Panel

Part 10 :
In this Vidéo :
  • LevelManager Canvas + Panel Top Left Screen
  • LevelManager Script (Particles, sounds, call to GameOver Panel, Respawn and bool check Player is Dead)
  • IEnumerator to call Coroutines respawn player
  • Scene Manager to load scene if Player is dead

Particles System + Square Material + Settings

Part 11 :
In this vidéo :
  • Particles System (Player Death and Respawn Particles)
  • Material Square (Material => GUI -> TextShader)
  • Destroy Particles Script : Destroy GameOblect after 1second (CPU)

Responsive GameOver Panel

Part 12 :
In this vidéo :
  • GameOver Canvas + Panel + Custom sprites

Input AZERTY + Joypad (Playstation, Xbox etc...) and Heart Sprites

Part 13 :
In ThisVidéo :
  • Input Keyboard AZERTY
  • Joypad configuration (for PC)
  • Display Heart Sprites in Level Manager UI

Long HealthManager Script

Part 14 :
In this Vidéo :
  • Using UnityEngine.UI
  • Define player health, hearts sprites Array and Heart Image
  • Material HitPlayer with Coroutines (when player take damage)
  • PlayerPrefs -> player Health
  • HurtPlayer function + invincibility frames
  • FullHealth and KillPlayer functions
  • HealthManager values assignation and Kill Player Script + TEST

GameOver Panel Script (Retry current scene, Menu + Quit Game)

Part 15
In this Vidéo :
  • GameOver Panel Script (For the Button Retry, Menu and Quit (Editor and Game)
  • GameOver Panel Assignments

Coin Counter and Pickup

Part 16
In this vidéo :
  • Coin Panel UI in LevelManager (Image + Text)
  • Coin Sprite + Rotation Animation (Circle Collider 2D trigger)
  • PickUp Coin Script (Sounds + Particles Fx)
  • Test = OK

2D Sprites Shapes

Part 17
In this Vidéo :
  • 2D Sprites Shapes Install
  • 2D Sprites Shapes Basic
  • Polygon Collider 2D

Pixel Perfect Camera 2D + My Own Script

Part 18
In this Vidéo :
  • Install Pixel Perfect Camera
  • Configuration
  • TileMap 2D modification

Coin Solide Bounce + Chest Sprite and Animation

Part 19 :
In This Vidéo :
  • Coin solide + bounce fx
  • Chest Sprite + animation
  • Chest Script (OnTriggerEnter2D with Sword Tag, chest is open and spawn coins)

Enable Sword Circle Collider 2D on click (or joypad button) and Enemy Hurt Player On Contact + Player KnockBack left and Right

Part 20
In this Vidéo :
  • Enable Sword Circle collider 2D only when the player click mouse Left or Attack Joypad Button With Record Animations tools .
  • Hurt Player On Contact with collider 2D and Tag
  • Knockback player left and Right OnTriggerEnter 2D With Enemy

Enemy Health Manager Script

Part 21
In this Vidéo :
  • Sorry Wrong Tile !!!! Problems with vidéo conception.
  • Enemy Sprites + Run Animations
  • Enemy Health Script and Test (Player and Enemy Damages)

Enemy Moves LR + Knockback Test

Part 22
In this vidéo :
  • Sorry Wrong Tile !!!! Problems with vidéo conception.(between part 21 and 22)
  • Enemy Move Script Left and Right (Speed, unityToMove, localScale, etc...)
  • Player damage and enemy damage (death) test

Fade Objects + Heart PickUp Solid

part 23
In this Vidéo :
  • Fade Object script (RGBA) + Falling (Rigidbody 2D)
  • Heart PickUp Script
  • Heart Sprite + solid bounce effect
  • Test Player Damage + Heart pickup + Player Full Health Condition

Scrolling & Parallax Script

Part 23
In this Video :
  • Using Array Background Sprite
  • Camera transform
  • Previous and Current Camera 2D Position LateUpdate()

Scrolling & Parallax Settings & TEST

Part 24
In this vidéo:
  • Sprites Arrays Assignation in editor
  • Z values and smoothing

Platfoms Fix (Effector) & Moving Left, right, up, down

Part 25
In this vidéo :
  • Platform Fix (BoxCollider 2D & Platform Effector)
  • Platform moving left, right, up and down
  • PlayerController (OnTriggerStay2D and Exit) to stuck player on the Platform

Destroy Cube OnTriggerEnter2D with Sword Tag (3 hits)

Part 26
In this vidéo :
  • Cube Sprites Array
  • Destroy Cube Script
  • Destroy Cube Sprites after 3 hit OnTriggerEnter 2D with Player -> "Sword" Tag

Pause Panel + Buttons Actions + Panel Animations

Part 27
In this vidéo :
  • Canvas + Pause panel (Text + 4 Buttons)
  • Pause Panel Animation
  • Open Pause Panel with Button (Active Pause Menu Script)

Active Pause Menu Button and Script in UI Bar (Top Left Corner)

Part 28
In this vidéo
  • Adding active pause button top left corner
  • Active pause menu Button Script with public functions()

Pause Menu Panel Buttons Actions + Test

Part 29
In tgis vidéo
  • Test Pause Panel Buttons public functions (Resume, retry, go to menu scene + quit games (game + editor))
  • Changing particles Fx (items)

Block Bonus Gives Coins OnTriggerEnter 2D With Sword TAG

Part 30
In this vidéo :
  • Block bonus Sprites (with BoxCollider2D & CircleCollider2D Trigger)
  • Coins Array[ ] with random range

Platform Rotation + Spike Damage

Part 31
In this vidéo
  • Platform rotation Animation (Invoke + delay)
  • Spike Damage (Hurt Player On Contact)

Dialogue Panel + 3 Scripts (Serialization + Manager + Trigger)

Part 32
In this vidéo
  • Dialogue Panel (Canvas + Panel + Text + Button)
  • Dialog Script Serialization
  • Dialogue Manager On Panel
  • Dialogue Trigger (BoxCollider2D OnTriggerEnter2D with Player Tag)

Dialogue Panel Test + Changing Sprites

Part 33
In this vidéo :
  • Dialogue Panel Scripts Assignations
  • Test Trigger Dialogue Panel
  • Changing Sprites And Fonts

Door Open/Close Sprites Animation + Key Sprite

Part 34
In this vidéo :
  • Door open / close Animations with int Parameters (Idle
  • Key Sprite + CircleCollider2D Trigger

Key Manager + UI

Part 35
In this vidéo :
  • Key Manager script (1 per level to open the exit door)
  • Key UI in player UI Bar (top screen)

Key PickUp Script And TEST

Part 36
In this vidéo
  • Key pickup script (Count (1 max), Sound, particles etc...)

Exit Door + key condition and display help message

Part 37
In this vidéo
  • Open the exit door if key count = 1 => else display "find a key" message.
  • DoorKeyCondition Script.

Auto Scene Loader (Exit Door collider load next scene)

Part 38
In this vidéo
  • Enable circle collider to load the next scene if door is open
  • Auto scene loader script

Main Menu + Options Scenes + Navigation Script

Part 39
In this vidéo
  • Création of 2 Scenes (Main Menu + options) + Canvas, Panel, Text, Buttons, etc...
  • Navigation script using UnityEngine.SceneManagement
  • Navigation TEST

Enemy Fly and follow the player in range

Part 40
In this vidéo :
  • Enemy fly sprites + animations (Sleeping + flying)
  • The enemy follow the player if he is entring the Gizmos

Enemy Fly Sine Script + sprites + animation

Part 41
In this Vidéo
  • Enemy fly Sine script (Mathf.Sin)
  • Bat Sprites + Animation

Sound Class Serializable + Audio Manager Script + Audio Mixer

Part 42
In this vidéo
  • Sound Class Serializable (name, clip, volume, pitch, loop and sources.
  • Audio Manager script Instance and foreach loop

Blue Cube + Switch = Open Horizontal Door

Part 43
In this Vidéo
  • Blue Cube (Box Collider + RB2D), Blue Switch (CC2D) + Horizontal Door Sprites + Aniamtions
  • Blue Switch + Horizontal Door Script
  • Sounds + FX

Enemy Projectiles Vertical + Enemy Sprites Animation

Part 44
In this vidéo
  • Enemy projectile sprites + CC2D and RGB2D
  • Enemy projectile Script (destroy gameobject OnTriggerEnter with Wall Tag)
  • Enemy sprites + animation

Enemy Instanstiate projectiles OnTriggerEnter2D Polygon + Damages

Part 45
In this vidéo :
  • Enemy Script Instantiate projectile + sounds + fx
  • Enemy and player damages

Platforms falling on player contact

Part 46
Inthis vidéo :
  • Platforms fall script OnTriggerEnter2D with player tag
  • Using Rigidbody2D.bodyType = Kinematic to => Dynamic
  • IEnumerator + Delay

Camera 2D Shake (Vector2 Random.insideUnitCircle)

Part 47
In This Vidéo :
  • Using shakeTime, shakeForce and Time.deltatime
  • Vector2 Random.insideUnitCircle + Vector3 transform.position (x, y, z)
  • Camera shake when an object (or enemy) is destroy

Enemy Projectile moving Left and Right

Part 48
In this vidéo:
  • Arrow Sprites moving left and right script
  • Destroy gameObject OnTriggerEnter2D with Player and Wall TAG
  • Vector2 Speed = -Speed if player isFacingRight or not

Enemy Shoot Left and Right OnTriggerEnter 2D one Time

Part 49
In this vidéo:
  • Instantiate Enemy Projectile OnTriggerEnter2D (Player TAG)
  • Disable Polygon Collider when Enemy Projectile is launch
  • CoolDown + FireRate

Magma + Bullet Up Down Script + animation

Part 50
In this vidéo
  • Magma Sprites Anim + Damages
  • Bullet Up Down sprite + animation (anim.setBool) Up - Down
Michael MICHEL
Independent Developer - Programmer
Michael MICHEL
a year ago
Independent Developer
Thank you for your remarks, I have a keyboard AZERTY Europe, the different attacks are also with the right mouse click and left. The game is also compatible with PCs Joypad. Thank you again for taking the time to play my games and good luck for the contest, have a nice day.
John Paul Depew
a year ago
I tried playing the demo, and that was a lot of fun! The artwork is great, and the whole game has a kind of classic-retro feel to it. Personally, I'd prefer to use something like the Z and X keys to attack instead of ctrl and alt, just because you have to stretch your hand a bit to press the space button. But other than that, I really enjoyed it!