How To Make A 2D Platformer In Unity (THE FASTEST WAY!)

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hey guys how's it going my name is thomas brush and i make indie games for a living let's jump inside of unity and i want to show you how you can create a 2d platformer really really fast believe it or not my recent 2d games whether it's my remake of bioshock or my 2d game that i made for pewdiepie for my 14 day game jam and i actually got to play it with felix those projects were actually created using this basic sort of blank canvas game kit okay and this game kit is actually totally free i want you to click below download that game kit to follow along because what i'm going to do is i'm going to start with just the core elements of any 2d game most 2d platformer games are all going to have basically the same things and that's what's included in this game kit so once you actually click that link below you're going to be sent a link i want you to go to this link here and i want you to click code here this green button this is on github and just download the zip file open that up in unity make sure you check the readme file depending on when you're watching this video which unity version you want to open it up in in the readme file currently it's 2020.3.19 f1 before we get into the actual content of this scene just note that my layout for unity might be a little bit different than yours i like to have my hierarchy right here which is all my game objects for the scene then i like to have my project folder i like to have it sort of stacked and have collapsible folders got my console down here my inspector over here and my animation tab over here okay let's hit play here and take a look i'm going to mute the audio for now we can attack we can run there's parallaxing occurring there's a camera following the player there's a level name you can collect coins and hearts you can break boxes there's patrolling enemy types there's keys you can collect you can kill the patrolling enemy types there's also flying enemy types and there's doors and dialog systems okay very very basic 2d system here so instead of you coding all this from scratch why not just have a starting point right away and again that's the link in the description feel free to download that it's totally free use it however you want and follow along with this video so let's briefly just go through what's included in this current scene we have our persistent objects these are objects that don't get destroyed when you load a new level that's going to be the player and also just some startup elements like the game manager and also the hud which is going to be just the graphics on a canvas and there's also a pause menu it's currently disabled and it's enabled when you press escape then we have our level objects here these are things that are going to destroy once you load a new level right we have our scene layers here and this is really an awesome system i'm really proud of it actually and i'm going to talk about it in just a bit but we have our scene layers which include all of our graphics and all of our platforms and we have a cameras prefab here which collapse when it's collapsed or expanded there's a main camera a virtual camera which is basically controlling the main camera via cinemachine which is unity's camera system you can do a lot of cool things with cinemachine we're not actually going to do a lot of cool things in this tutorial because it's just the basics of a 2d platformer but that's going to follow the player around then also our music and our ambience and all they are is audio triggers with a few variables you can control that's basically it so let's run through each individual element and we're going to start with the most important 2d elements and go down from there okay let's start with our player any 2d game any 2d platformer game should take advantage of what's called a capsule collider and most of you probably probably already know how to use this but the truth is is most indie game developers they don't create everything from scratch they don't create a capsule collider or a physics system completely from scratch rather they're just going to use out of the box components that ud unity has to offer and so i'm just putting that together here for you in this project file so that you don't have to do all the work so here's our capsule collector i'm going to turn on our gizmos here so right off the bat any 2d platformer game is going to utilize a capsule collider and not a square or box collider the reason why is because if you were actually to push a box up a hill you'd notice the corner would dig in to the ground that you're pushing it on the same is true with physics in a video game that's why you want to have these rounded edges it's really smooth it allows us to go up inclines very smoothly okay so there's a capsule collider and it's linked to the rigid body right that rigid body is going to be what makes that capsule collider actually fall to the ground then we have an audio source which plays sound effects through the player we have an animator which controls various animations like running or standing or jumping or attacking let me move my face here and show you if i move my face over here you'll notice that i have a bunch of different animations here like the fall animation the attack up animation right and also the hurt animation which actually just disables the player's graphics for a little bit the jump animation and my favorite mainly because it takes forever to create so i'm glad that i have a basic run animation ready to go for you we have a run animation here okay these various animations are controlled with our animator component okay so if we select the animator window here you can see that we have a bunch of parameters and by the way if this confuses you i highly suggest clicking the link below to watch a tutorial on the animator i love this tutorial and it's going to help you better understand how to use the animator okay but what i've created here for you is just the basics of any 2d character in a platforming game so we have standing we have running we have attacking and then the directional attacks here we have jumping and then we have falling these are all uh triggered based on various parameters like the velocity x of the player the velocity y of the player whether we're attacking whether we're grounded whether we're hurt whether we're jumping the move direction the attack direction in the y direction so we can push punch up or down there's a bunch of parameters here that control which animations play and this is done with these transitions here and i apologize if you understand transitions but just for those of you who don't understand these transitions have these conditions in here and if the conditions are met they're going to play the animation if they're not met they're going to go back to running or back to standing so just be sure to click around these and take a look at them and you can tweak them however you like and make your character much more custom and have your own types of attacks using the current sort of canvas i've created here and i say canvas it's just a blank canvas for you to paint on and create your own game that's kind of a metaphor for you okay so we have our animator on our player and sorting group we just want the player and all of his sprites that are children here we want those to be in the right sorting group and this is the most important script in fact i would argue this is the most important script for any 2d game and that is your player script i like to call it the new player script okay that's just what i've decided to call it as opposed to player i think that's a very generic term and sometimes that can get confusing with other name spaces now again this tutorial is for those of you who understand c sharp at least beginners or slightly intermediate understanding c sharp the reason i say that is because if you scroll through this you should be able to look at this script and understand what's going on and that's because i'm a layman when it comes to scripting and so there's just generic conditions being met okay and i've also left comments here of exactly what's going on so this is just the basic player script there's nothing too complicated here okay there's nothing specific that won't work with your 2d game there's a references portion for our variables and these are all the references to various items in the game like particles for the death effect camera effects we can control an attack hitbox and we'll talk about that in a second audio sources the animator on the player so these are all just references we can reference with the script and actually make changes to these various components and down here we're going to talk about this singleton instantiation in just a second right here right here is the properties and you can see that it has a header here these are all of my properties um so my whether i'm dead or not whether i'm frozen or not um what uh what my launch power is when i get hurt um jumping power max speed these are all just very generic properties associated with the player's movement okay we also have inventory we have sounds all the sounds we want to play and then the last thing i want to mention before any function fires before even the awake before the start before on enable this is so important this is our singleton instantiation the singleton instantiation allows us to access the new player wherever we are in any script so for example if i was in the dialog trigger script just a random script i'm going to pick here instead of writing gameobject.find player dot get component new player instead of doing it this way which is the typical way that you access components because we have this singleton instantiation we can type new player dot instance dot and then whatever variable we want to change inside of the new player script we can do that dot frozen equals false right so that is why we're utilizing the singleton instantiation occurring before any functions fire okay we're creating this singleton now we're doing with this with the game manager as well and we'll talk about the game manager in a second but this singleton instantiation and the game managers in singleton instantiation allow us to access these two scripts from any script in the game so hopefully you can see why you would want to use a singleton for certain classes in your game classes that you're going to be using over and over and over again and i've only done it in two cases the game manager and we're going to talk about that in a second and then also just the new player script alright so that's the new player script let's talk about what's inside of the player as children all we've really got here are just sprites okay just a bunch of sprites the hand the foot the foot left the foot right the eyes and then most importantly and this is what i love about unity's 2d animation system we have our bones that we can move this sprite or the meshes of this sprite and create various animations so that's what allows us to have this run animation it's almost like a 3d model but it's in 2d now let's talk about how to edit this character's graphics if you want to okay what i want to do is actually just go to the actual player photoshop file it's right here it's called player and you can see it has a little blue box next to it that's because it's actually a psb file and not a psd file if it was a psd file it would generate a little sprite icon right here but what we've got is a psb file and what that means is we can take the layers from the photoshop file and actually animate those layers it's really really cool before we jump into how to edit these graphics i just want to make sure it's clear the 2d animation system is not included by default in a blank unity project it should be included in yours because you're downloading this from my github but i just want you to know that if you don't see it make sure you go to unity registry and type in 2d animation and you'll see it show up right here and you can import that that's going to allow you to import psb files not psd files psb files and animate those files let's double click on this just to show you what it looks like inside of photoshop this is a psb file it's a photoshop big file by default photoshop is going to save out your files as a psd and that's a photoshop document file you really want them to be a photoshop big file otherwise that information of the layers and the names that's not going to get transferred over to unity and you won't be able to animate each layer okay so we have all of our different layers here just various pieces for our character and we even have this little explosion effect for punching or attacking okay now if i wanted to change the head for example if i wanted to let's say i wanted to make an orange face maybe add a little bit of a gradient to it like this and maybe add a little nose and a smile right some eyebrows if i merge all these layers together and then merge it down as long as this layer here is named exactly what it was before we made any changes if i save this unity will recognize that and update the graphics on the fly see that so if i hit play you'll see we now have a new graphic for the head now obviously guys if you start making crazy crazy changes to the graphics you're going to need to understand the 2d animation system and the and creating a mesh and weight painting you can you're going to need to understand a little bit of that and so what i want to do is i'll just point you to a video that i did about rigging in unity for those of you who might get into a situation i'll show you let's say if i gave him blue hair like this i saved that out you might get confused because well you can't see the hair that's because you want to make sure you go to the player here and in the inspector when you click sprite editor you're going to need to re-mesh and i highly recommend watching the video below and it's going to help you better understand how to do this okay i'm going to run through everything in this video go to the skinning editor here and you can see here we can generate new geometry but for the purposes of this tutorial i'm just going to ignore that and again just click below if you're confused about rigging in 2d animation okay all right so that's the player pretty cool and again don't feel ashamed if you feel like you're not creating everything from scratch downloading this project file is going to save you three four weeks of time because it's all pretty much ready to go and it's up to you to personalize it and make it fit what you're going out going for for your 2d game okay all right we're just moving down the line here we have a startup game object this is a blank game object it's basically kind of like a folder and it holds our hud and these are all these different graphics here we have our dialog system which will pop down when you talk these buttons here and we also have our ui elements like our coins and our health and then this right here allows us to put our various keys that we collect or any inventory item we want into this slot here there's a fader there's a damage which the damage just sort of flashes the screen it's just an image and then a title that appears so this should be the way that a lot of 2d games are created they have a player they have a hud and then they also have and this is really important a game manager and you can see that when you name something game manager in unity it gives it a little gear icon by default pretty cool and all this is is a script it can be anything you want it to be typically a game manager is going to hold certain references and also it sometimes will hold the inventory ultimately the game manager is something that's to help you it shouldn't be a burden you don't even need a game manager if you really don't want it for me it just stores certain references and a few variables okay but overall the game manager is actually really simplistic here just a few references to the hud to various audio sources to the dialog box controller those kinds of things so just open up this script and take a look at it and if you're ever confused what a script does it's written right up there okay all right and again this is a singleton right so the game manager and the new player are singletons and this is what this script does it makes it a singleton that allows me to reference the game manager whenever i want right so i could write again just for clarity here game manager dot instance and then reference whatever i need all right okay let's move on down the line here we have our pause menu nothing too crazy here just a few generic buttons that when you click them it will continue or restart the level or you'll quit these are just the basic core elements of pretty much any pause menu i'm going to disable that for now let's move on to in my opinion the second most important aspect of any 2d game and that is the graphics now the way that i used to make 2d games and perhaps you've experienced this yourself you find yourself dragging in all your graphics and your sprites and you're setting up this beautiful 2d scene it looks great but it's a mess and trying to change it trying to tweak stuff trying to adjust the sorting layers is a real pain what i've created here is something called a scenes layers prefab i'm going to open up that prefab by clicking this little arrow over here and show you what we've got all we have are negative layers they're just empty game objects notice they're all just set to zero position zero rotation and one scale and then they go up to positive six what is the point of all these layers well it's to allow us to have something called a parallax layer script and what this does is it simulates parallax anything that's negative the higher well i guess the lower the negative number so layer negative six that's gonna move a lot closer to the camera what does that mean that means that the object that's on this layer is actually gonna move very quickly if a let's say a tree stump was way right here and the player was right here if the camera was moving with the player the tree stump would actually move like this okay that's what this parallax layer script is doing for us okay and you can see we've got a parallax layer script on every layer here every object and watch this parallax amount slider here as i go down see that slowly going down to negative one layer six is where you could put something like the sky it's gonna move very slowly very slowly in the background have you ever noticed that when you're driving on the road um the sun never moves that's because it's really far away okay and that's what layer six is finally note that each layer or game object has a sorting group on it as well and that sorting group ensures that any sprite we put inside of this game object is going to be on layer negative six and the order is zero okay layer negative five notice the sorting layer keeps changing as we go down and that allows us to just drag and drop sprites into each scene layer now if we go back you'll notice that i've done that here right i have very generic graphics here so for example in layer 0 this is like the middle layer this is where the player actually walks so we have our ground here and notice that this sprite here actually has a polygon collider and just for those of you who don't know anytime you see a gray a green line it means it's a collider a rule of thumb for me is if something is interactable with the player like a box or an enemy a coin the ground that's gonna be on layer zero that means there's no parallax effect it just means it's going perfectly relative to the camera right nothing's happening but you can also see that i've got elements in the foreground so for example these black boxes here on layer negative two that means they're going to move a little bit quicker towards the camera don't worry i'm going to show you this in action if it's confusing you you'll notice i haven't taken advantage of all of the layers here i've actually taken advantage of five layer five here is uh the buildings in the background and that's just a simple very simple tiled you can see the draw mode is that the tiled it's just a tiled sprite in the background okay let's show you this parallax in action i'm going to hit play here notice in the game view here it looks like it's a three-dimensional world almost like pieces of paper sort of stacked it looks 3d with that parallax effect but notice in the scene view it's a little bit different isn't it in the scene view you can see the sprites actually moving they're literally moving creating that effect see that so that is what parallax looks like when you're not actually looking through the lens of the camera now i think it's important to note that there's another way to achieve this without writing parallax scripts or utilizing parallax scripts and that is if you go to your actual camera if we go to the main camera and we set it to perspective well perspective is going to treat it like a 3d game so that parallaxing is going to occur naturally by default the problem is and without getting into too much detail here the problem is this actually creates a lot of difficulty in control i have a lot more control when i'm using a orthographic mode in a 2d game so i'll just leave it at that you have a lot more control and you can try out perspective and see if it works for you just make sure you disable those parallax effects and so the way this works is if you ever want to add a sprite or something to a layer all you got to do is well let me show you let's say i'm i've got these cool prefabs here i've got a breakable box all i got to do is just drag it to layer 0 there it is and now the sorting is proper see it's behind the ground but in front of those background objects so the sorting is set up by default because we put it in the right layer and also the parallaxing is correct as well pretty cool for example let's do another one if um i wanted to add something to the foreground let's say i wanted to add another foreground box here let's see if i can select it there we go and again this is a prefab here if i wanted to do that i could add it to let's say layer six there it is so this box is going to move a lot faster when it's close to that camera and that's just because again of this parallax layer script and i will open up a few scripts after we run through all of the objects in the scene okay but for now just know there's a parallax layer script that's being controlled by a paralyzed controller okay there's a cameras group it's really just an empty game object with three game game objects inside we have a main camera we have a virtual camera and then the camera bounds the main camera is like i said earlier it is orthographic meaning there's no actual depth we have to simulate that with a parallax effect and you can tweak the size if you want if you wanted to zoom out you could but you'll notice that it's not working right now and the reason why is because the virtual camera which is a cinemachine virtual camera that actually is controlling everything associated with the main camera so for example if i want to change the orthographic size i actually have to do it with the virtual camera anytime you're changing any settings with the camera just know it's probably going to be done through the virtual camera and again like i said the virtual camera is utilizing cinemachine and cinemachine is the camera system that unity has out of the box it's a wonderful camera system there's so many cool things you can do with this camera system but fortunately for you the game kit has it all set up properly so you don't need to worry too much about all these different settings okay but feel free to tweak these change them if you want but in my opinion just keep them the way they are and you'll be good to go all right and then finally we have our camera bounds the cool thing about a camera bounds is it's just a polygon collider with trigger set to true and you can edit that collider and say hey you know what i want the camera to actually go all the way over here pretty cool huh i want it to be able to go all the way up here but it's going to stop when it hits these boundaries so that's a really effective way to create a camera boundary and that is linked to the virtual camera here okay and you can see here we have a camera a cinemachine confiner right here and then we've dragged um we dragged in the camera bounds right here and it's going to hit that bounding box okay finally we have music and we have ambience these are both set to auto play see that tick box there they're just set to auto play meaning they're going to start up the ambient sounds of the city are going to start playing and then the music is going to start playing with a fade speed of 0.1 and it's going to loop okay now if you wanted it to only start let's say you want the music to start once you've hit a certain location you can actually say autoplay is false but make sure you open up or turn on that box collider down there and make sure it's set to trigger and let's say we want to move it to the zone over here now when they walk into this box it'll start playing the music instead okay all right so that's the basic layout of all the game objects and what they do for demo level here okay here is the best part before we move on to the scripts and all the other prefabs and objects we have in our project files i want to make sure you understand how to change the graphics of the actual game this is where you're going to realize how powerful this kit is if you open up anytime you want to open up a sprite by the way just click the sprite and then you'll see that it's probably going to be at least in in my game kit it's actually part of this big psb file again i'm use i love using psb files unity is able to interpret all the layers of the psb file so i'm going to double click on this and show you check it out in this scene we've got all of our scene graphics everything we use in the game except for like the enemies and like the ui everything's in this one scene so what i love to do is have each level have its own psb file you might be curious what's the size of this psb file well you can go to image canvas size and you'll notice it's basically 4k but times 2 at least in the width right it's 3840 times 2 which is 76.80 with a height of 2160 which is 4k height 2 times 4k width and this allows us to have a bunch of 4k graphics that are detailed and it's so cool i love this because let's say i want to change the way that the ground here looks if i want to do something like this maybe i want to add some texture to it what about some bricks here these are some bricks that i like to use in my games throw in some bricks maybe some gradients let's do this really quick here cool look at that that's awesome let's flip it up like this sweet so if we wanted our ground to look like this all you've got to do and this is important make sure if i saved it now you'll notice we have all these random layers unity is going to be like i guess i'll just make sprites out of every layer what you want to make sure you do is you merge all of this together but make sure the name was the same now obviously you can create additional layers if you want you're just going to need to make sure you edit those in the sprite editor and cut them out i'll show you how we're going to do that all right i'm going to save that that's ground one and we're about to have a whoopsie moment here let's let me show you i don't know what a whoopsie moment is it's when there's a whoopsie okay so let's let that import and you'll notice oh my goodness something happened my sprites are gone well let's open up ground one and take a look look it says we're missing a sprite sometimes this happens don't freak out it's totally fine all you do is you go to your psb file click on it and then in the inspector take a look at sprite editor ah okay let's see what's going on here looks like we have our sprite here okay so we're good to go sometimes the sprite might be a little too tall if you've made some edits make sure you just pull that sprite up like that okay sometimes it might be too wide or the position's off just make sure you clean up this sprite bounding box basically all this is going to tell unity is where do i want this sprite to cut okay the name's right it's ground one okay let's hit apply and click x and you can see we're still missing that sprite so let's collapse or expand the city psb file and down here are all my sprites okay so let's just drag it in great okay that's working perfectly notice we have a sort of new collision part here a little ramp so i'm going to add that to my collider now because this is a prefab it's really that easy now all of them are updated look we have all these pieces of ground over here so so it's so cool because if you went into this uh into this city and made it look gorgeous changed all the graphics made beautiful sky and then brought it back into unity tweaked the sprite bounding boxes made sure you you put those sprites into any missing fields everything's gonna update and you're going to have a beautiful beautiful city i did this for bioshock my remake of bioshock my remake of skyrim i did this for pewdiepie's game zero deaths it works every time so if you want to change out these graphics again just open up the city file city.psb you can name it whatever you want and then update those prefabs that's the benefit of working with prefabs anything again most of you know this but anything that's blue here any blue text that's a prefab right and inside of those prefabs are more prefabs so if you want to edit each one prefab it's going to edit a lot of the other ones okay let's move on to the code base okay we've run through a few pieces of code but i just want to make sure it's clear kind of what the hierarchy of the code is where they're stored and the most important pieces of code now again this tutorial is not for people who don't understand code if you don't understand c sharp you might want to get an understanding of c click the link below to get started but what i've got here for those of you who understand intermediate code you can see we have i think maybe 20 scripts here nothing crazy but the most important ones the most important ones are stored in the core folder here okay dialog and we'll talk about how to write dialogue in a second the dialogue the dialog box controller game manager new player new player is huge recovery counter and startup okay there's also interaction scripts like an attack hit box that is this right here if we go to the player you can see we have this polygon collider it's currently disabled that's because we don't want the hitbox to hit enemies all the time we only want it to appear when the player punches so when this box appears it can hurt enemies and that's all done through the attack punch so you'll see here look the box appeared so we can control where exactly the hit range for the player is we're not controlling it with code we're actually controlling it with this box collider here we have audio triggers bouncers things you can bounce on breakable objects like boxes and you can actually extend these to other things like lamp posts barrels pots that kind of thing collectibles which include three kinds inventory coin health and ammo that's four actually dialog trigger and you get the point there's a ton of different interaction scripts feel free to dig through all of these each one has comments in each script so you can take a look at all the different comments that i've written to get an understanding of what each one does all right we've got some other scripts here the animator function script you will use a lot this allows me to put animation events down here and do different effects like emit particles or shake the screen or play a sound that's because on the player we have an animator functions script and this script has all these cool different ver uh functions hide players you can actually jump the player with the animator events so these just allow us to fire functions using the animator events in the animation timeline you can create any custom ones you want and just use them by creating a new event down here and then select the function in the animator function script pretty cool i use that all the time even with like footsteps right if i'm running look at all these different events i'm using for from the animator functions script play step sound occurs see pretty cool it even emits particles as well and those particles are right here they're called particle step if i set the emission to 10 i can show you what they look like right so pretty cool you can control that with the animator functions script the parallax can we've already talked about parallax controller parallax layer these are some pretty complicated scripts i'll be honest and i don't really know what they mean anymore um and i'm not too worried about it and i don't think you should worry about it either if they work they work and don't stress too much a lot of these scripts i don't understand anymore and that's totally fine what happens with me is i'll google something find out how to do it and then i'll forget but i'll just keep using that code over and over again all right and then we also have some ui scripts here as well but like i said all you got to do is open up these scripts to take a look at what they're doing because i'm a layman i i write in very basic coding and i just use basic conditions if then statements nothing too crazy here so feel free to open up those scripts and take a look all right let's talk really quickly this is the last thing i want to discuss when it comes to this demo scene here okay so let's take a look at how this dialog system works it's very simplistic basically what you do is you just run over to a character or it doesn't have to be a character it could be a locked door and press e and there you have it he says hi there i'm an npc and this conversation is called character a if you go and find me 80 coins my dialogue will move on to character b feel free to edit my dialogue in the dialog cs file to keep it simple you can also ask me one and only one question so if i select let me go find some coins it'll close out the dialog or if i choose the dialog object on the right i can ask a question cool like this great job when you do that i'll just move on to the next sentence i'll answer that question but it's not going to change much about the game you can always tweak the dialog box cs script to add more functionality so as you can see very simplistic dialog but how on earth do you write that in a text file or a cs file well let's open up the dialog cs script here and you can see this is our dialog all this is is a public dictionary okay and we just add all these different characters or locked doors in this case i want to cover what this npc's dialogue looks like as a script it's actually very very simple right here we have character a and then we have character b think of the letters after each name as parts of one conversation so we could really call this john a and john b john a talks about what his functionality is and that he wants 80 coins when you find 80 coins john b will fire hey you found 80 coins see that but we're going to keep it at character a and character b so this is the entire conversation you'll notice that when we were playing it cuts off right here and throws us these options or these choices so how on earth does that work well look at the name here character a which is this identical string here and then choice one all you got to do is write choice 1 and choice 2 after the name when you're creating a new dialog entry and then just keep it blank if they're blank here for each entry it's not going to show any choices and then for the fifth line here which is right here it shows those choices really simplistic here very basic anytime you choose the choice 2 it's going to continue the conversation here that's about it all right so that's how the dialog works and just note that with dialog if we go to this dialog object here there's a lot of cool different options inside of the dialogue trigger take a look this is the fetch quest section here and this allows us to get a chair if we bring him 80 coins see that now in the case of this demo i think the idea was the chair is something you can use to advance to the next level right after you've collected 80 coins throughout this whole level here but he could give you a key and also you can choose what the item is and what the sprite looks like so that it appears on screen right here so this is where you can do all your cool fetch quest things there's just a ton of cool stuff even a get sound that can play when you get an item but you know sometimes dialogue is just for world building or store story building and it doesn't have to be a fetch quest ultimately we have a very basic system here and i think most importantly we do have enemies and those enemies just patrol and then we also have flying enemies as well be sure to take a look at those scripts as well but i honestly recommend keeping them as is as you're creating your game and tweak them when you feel like you're more comfortable with c sharp because those two scripts are actually a little bit more complicated alright as we close up this tutorial guys we have a folder of scenes now we just took a look at demo level but i just want to make sure you know that we also have a logo intro scene which just fades in your logo currently it's just a white square but you could drag your sprite onto that logo and then it's going to load the menu here so we're currently on this menu it's just two very simplistic buttons you can click start game or quit and it'll close the application and when you click start game it's going to load up the cut scene right in this case i've just put my full-time game dev logo here for my online program but you get the idea after the cut scene it's just going to load your first level anyway guys i highly highly highly highly highly recommend taking a look at this game kit and downloading it's going to make things so much easier for you all of this took me a long time to create it took me about a month full time putting together this system so if this sounds like something you're interested in download it now totally free my treat to you use it for commercial use or you can just use it for your personal uh projects doesn't matter to me and be sure to leave a like subscribe and any comments or questions below is totally fine i'll talk to you later bye
Info
Channel: Thomas Brush
Views: 35,867
Rating: undefined out of 5
Keywords: tutorial, unity3d, unity, assets, texture, models, materials, indie games, beginner, easy, C#, function, settings, how to, howto, learn, course, tips, tricks, tutorials, Platform Game (Game Genre), Unity (Software), platformer, platforming, coding, 2d, Unity 2018, basics, basic, movement, controller, indies, game development, game, career
Id: fZBEnlTwuuI
Channel Id: undefined
Length: 43min 45sec (2625 seconds)
Published: Mon Oct 11 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.