Game Dev Beginner
Game Dev Beginner
  • 21
  • 675 641
How to write a Game Design Document
Are you a new developer? Want to know how to CODE in Unity? Get my online course here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B
---------------------------------------------------
00:00 Intro
00:55 Why would you need a Game Design Document?
02:45 How to make a Game Design Document
06:10 Picking a format
07:59 The One-Page Method
11:52 Outro
Game Design Documents are extremely useful for keeping your game development project on track. But, not all GDD's are helpful. In this video, I'll show you when to use a game design document, how to write one of your own, and how to do it in a way that's actually useful.
#indiegamedev #gamedesign #gamedevelopment
CREDITS:
---------------------------------------------------
Stone Librande - One-Page Designs: www.gdcvault.com/play/1012356/One-Page
Music:
In the Atmosphere - Bad Snacks
New Year - Bad Snacks
Artist link: ua-cam.com/channels/BCI_QCAMe1hx8UNyvJlM_Q.html
Переглядів: 8 430

Відео

Script initialisation in Unity doesn't work how you think
Переглядів 1,8 тис.14 днів тому
Are you a new developer? Want to know how to CODE in Unity? Get my online course here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B 00:00 Intro 00:49 How event messages work 02:10 Awake and On Enable are different 03:30 How new object initialisation works 04:43 Why is this important? 06:00 Outro Awake, On Enable, and Start, might not work in the way that you expe...
How to split up your scripts in Unity (the easy way)
Переглядів 5 тис.Місяць тому
Want to know how to CODE in Unity? Get it on Udemy here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B Video promo (Gumroad only): get 50% off gamedevbeginner.gumroad.com/l/how-to-code-in-unity/46ce63j (Limited to 100 customers) 00:00 Intro 01:22 What is Single Responsibility? 02:54 How to split up scripts 04:43 How to connect them together again 07:05 Outro Have ...
Timing in Unity (and why it's so important)
Переглядів 2,4 тис.2 місяці тому
Want to know how to CODE in Unity? Get my course here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B 00:00 Intro 00:49 Event Execution Order 05:00 Instance-Based Order 06:20 Function-Based Execution 09:10 Outro You might be surprised by just how many errors, bugs, and unexplained issues in Unity are actually caused by timing. In this video, taken from the beginner...
How to CODE in Unity (online course)
Переглядів 8 тис.9 місяців тому
Learn how to write your own code in Unity by mastering the basics of C# scripting. Get the course: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B Music: Block Party - Bad Snacks Artist link: ua-cam.com/channels/BCI_QCAMe1hx8UNyvJlM_Q.html
Trying Godot (as a Unity user) for the first time
Переглядів 3,4 тис.Рік тому
Is it easy to switch from Unity to Godot? What's different, what's the same? And, if you wanted to switch, how difficult would it be? I find out, by trying Godot for the first time, on camera, for your enjoyment. 00:00 Intro 03:14 Hello Godot 07:05 Making a cube 09:12 Physics! 17:05 Moving the object (with a Script) 25:17 Jumping 29:58 Camera movement 36:36 Physics Process 37:26 Outro LINKS God...
Singletons in Unity (done right)
Переглядів 16 тис.Рік тому
Want to know how to CODE in Unity? Get my course here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B Learn the pros & cons of using singletons in Unity, and decide for yourself if they can help you to develop your game more easily. 00:00 Intro 00:47 What is a Singleton? 02:39 Why use a Singleton? 03:00 Drawbacks of using Singletons 05:45 Is it ok to use Singletons...
Connecting scripts on the same object in Unity
Переглядів 12 тис.Рік тому
Want to know how to CODE in Unity? Get my course here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B Learn how to connect scripts and systems together on the same object in Unity. 00:00 Intro 00:47 What's the problem? 03:18 Step 1. Local Singletons 05:54 Step 2. Automatic references using Inheritance 08:02 Step 3. Abstraction with Actions 12:23 Benefits 13:30 Draw...
Is Unity free? (and will you ever need Unity Pro?)
Переглядів 14 тис.Рік тому
Want to know how to CODE in Unity? Get my course here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B Find out how Unity's licensing tiers work and if you'll ever need to upgrade to Unity Pro. 00:00 Intro 01:32 Unity subscription tiers explained 04:00 Unity Personal 06:40 Unity Plus 10:08 Unity Pro 11:20 Unity Pro Preferred Platform Keys 12:32 Which version of Unit...
The right way to Lerp in Unity
Переглядів 22 тис.Рік тому
Want to know how to CODE in Unity? Get my course here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B Learn how to Lerp in Unity, the "right" way. 00:00 Intro 00:38 What does Lerp do? 01:19 The "right" way to use Lerp 04:54 What can you do with Lerp? 06:38 Other types of Lerp 08:32 Lerp Assets 09:05 Outro You'll learn how Lerp in Unity is supposed to work, what you...
How to Rotate in Unity
Переглядів 29 тис.2 роки тому
Want to know how to CODE in Unity? Get my course here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B Learn how to rotate anything in Unity. 00:00 Intro 00:35 Rotation in Unity 04:20 The Rotate function 05:40 How to Rotate around a point 09:38 How to Rotate towards another object 14:07 Rotating with Physics 15:02 Rotating in 2D 15:35 Outro You'll learn how to rotat...
How to jump in Unity (with or without physics)
Переглядів 49 тис.2 роки тому
Want to know how to CODE in Unity? Get my course here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B Learn how to make an object jump in Unity with or without using physics. 00:00 Intro 01:43 Jumping with physics 03:29 How to fix a floaty jump 05:00 Faster fall jump curves 05:59 Jump to a specific height 06:49 Controlling jump height 09:31 Jumping without physics ...
Raycasts in Unity (made easy)
Переглядів 101 тис.2 роки тому
Want to know how to CODE in Unity? Get my course here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B Learn how to use the Raycast function in Unity. 00:00 Intro 00:57 Creating a Ray 02:33 The Raycast Hit variable 03:11 The Raycast function 04:48 Layermasks 07:10 How to exclude Trigger Colliders 08:26 Raycast All 10:03 Raycast Non-Alloc 10:30 Other types of Raycast...
The right way to pause a game in Unity
Переглядів 62 тис.2 роки тому
Want to know how to CODE in Unity? Get my course here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B Learn how to pause a game in Unity, the right way, using time scale. 00:00 Intro 01:13 How to use time scale in Unity 02:15 How time scale works 03:38 What does & doesn't get paused 05:27 Prevent objects from being paused (using Unscaled Time) 06:36 How to pause au...
Events & Delegates in Unity
Переглядів 63 тис.2 роки тому
Want to know how to CODE in Unity? Get my course here: www.udemy.com/course/how-to-code-in-unity/?referralCode=7D4BCF4F86A840FB720B Learn how to create event-based logic in Unity, using Delegates, Events Actions, Unity Events & Scriptable Objects. 00:00 Intro 00:39 Event-based logic in Unity 01:56 The Observer Pattern 02:49 Delegates 05:37 Event Delegates 06:38 Actions in Unity 07:42 Unity Even...
How to get a variable from another script in Unity (the right way)
Переглядів 100 тис.2 роки тому
How to get a variable from another script in Unity (the right way)
How to move objects in Unity (3 methods)
Переглядів 51 тис.2 роки тому
How to move objects in Unity (3 methods)
Coroutines in Unity (how & when to use them)
Переглядів 31 тис.2 роки тому
Coroutines in Unity (how & when to use them)
How to convert the mouse position to world space in Unity
Переглядів 37 тис.2 роки тому
How to convert the mouse position to world space in Unity
How to make a Countdown Timer in Unity (in minutes + seconds)
Переглядів 38 тис.3 роки тому
How to make a Countdown Timer in Unity (in minutes seconds)
How to Play Audio from a Script in Unity
Переглядів 23 тис.4 роки тому
How to Play Audio from a Script in Unity

КОМЕНТАРІ

  • @arthurjvnb
    @arthurjvnb 6 годин тому

    My biggest problem with interfaces in Unity is that it is not serializable out of the box. I do love using interfaces, but that single limitation makes me almost never use it inside Unity (only interfaces from System itself).

    • @GameDevBeginner
      @GameDevBeginner 3 години тому

      Absolutely, it would be great to be able to drag a reference to a field based on the interface it uses

    • @arthurjvnb
      @arthurjvnb 3 години тому

      @GameDevBeginner yeah. I hope they add that feature in the near feature (so that we do not need to rely on Odin or Naughty assets)

  • @Radidar
    @Radidar 3 дні тому

    This was a good video. As someone who has been using Unity as a game designer since 2016 and is self-taugh in coding, this video helped me understand the underlying system under the Action type that I've been using for years :D

  • @RivenbladeS
    @RivenbladeS 3 дні тому

    Wtf is this. Just make games people

  • @DerAua
    @DerAua 4 дні тому

    Subbed.

  • @KyleJMitchell
    @KyleJMitchell 5 днів тому

    It would be useful for you to add a link to that GDC talk to the description of this video.

    • @GameDevBeginner
      @GameDevBeginner 4 дні тому

      Done! Also, here's the link: www.gdcvault.com/play/1012356/One-Page

  • @ArleneIraba
    @ArleneIraba 5 днів тому

    Book , на універзітї

  • @Hersatz
    @Hersatz 6 днів тому

    Couple of additional tips for aspiring developers here. 1. Avoid walls of text as much as possible. It is the worst way to transfer the complexity of game design information. Text should only be used to specify things that cannot be properly explained otherwise. 2. Try to separate things into different design documents also. A system should not be detailed in a level design document, for example. Nobody wants to have to find how an AI should behave through the design document of dungeon number 6. It's all about defining through encapsulation and teaching multi-faceted elements of a game in the fastest way possible. 3. Use a variety of design document format. Some things are more easily explained through specific design document formats. Here's a short non-exhaustive list: - Storyboard - Mind map - One pager - Flowchart - greyboxing

  • @userbunny14
    @userbunny14 6 днів тому

    soo there's no hotkey to just hold, click the object and free move it like in blender?

  • @whynotanyting
    @whynotanyting 6 днів тому

    I've found Miro quite handy to organize our thoughts for a game we're making. It's pretty good since there isn't the limit of paper space and you can technically fit the whole thing on "one page". Very handy for art references and music as we can collaborate some sort of "mood board" together. Plus, if we ever need to add someone to the team we can just invite them.

  • @lazercatanimations
    @lazercatanimations 7 днів тому

    Crucial for all game devs. This video tought me alot 😀

  • @TurkiKAlqou
    @TurkiKAlqou 7 днів тому

    Great video! Could you please go into more details with an example in another video? Like a video focused on Game Design as well as writing an effective GDD with a full example from start to finish (One-Page example).

    • @GameDevBeginner
      @GameDevBeginner 4 дні тому

      Thanks! I'll see what I can do. In the meantime, check out Stone Librande's original talk here: www.gdcvault.com/play/1012356/One-Page

  • @pingcode
    @pingcode 7 днів тому

    Yknow, this is something i always wanted to know how to do. My one and only attempt was a long word document that i organized really well. And i didn't know if this was the best way of doing it. The one page rule is really interesting! Thanks for the new perspective

  • @greatestgamer00
    @greatestgamer00 7 днів тому

    the timing couldnt have been better

  • @Qewbicle
    @Qewbicle 7 днів тому

    It sounds good, and seems to simplify, but it's not as easy as it sounds. It's like when first learning how to build a resume or a business plan. Dozens of templates, dozens of advice, dozens of opinions. Which leaves you with too many possible decisions. Until that day when it clicks, that you put whatever the heck you want because you're a pro in your industry and know what matters, and then you min max, the minimum effort for maximum impact. You express it adamantly, as a statement of fact. No begging, no fluff, no buzzword salad. As a real pro. This means. You'll probably write it. Struggle with execution. Start other intermediate projects. Rewrite. Write for something else. Pivot. Give up. Start over. Each step, side stepping but learning. Then. If you trust the process of learning from the struggles, you'll find yourself knowledgeable in the many hats. Your iterative changes didn't seem to be much further. But now twenty or thirty iterations along, they add up. Two steps forward, one and a half back. I thought I learned this, I did it before, but now I'm having to do it again, and that again, but I remember that. The process. The grind. The set backs. The determination. If you have grit, then you'll eventually accomplish it.

  • @MinoruGLS
    @MinoruGLS 7 днів тому

    he sounds like GMTK

    • @GameDevBeginner
      @GameDevBeginner 7 днів тому

      I've been told this before and I absolutely do

    • @linked3
      @linked3 7 днів тому

      Is this your secret second channel?

    • @GameDevBeginner
      @GameDevBeginner 7 днів тому

      @@linked3 We should do a video together to prove we're different people, but no one would know who's talking.

    • @davidj3048
      @davidj3048 6 днів тому

      @@GameDevBeginner My first tought was is this a AI voice of GMTK. Thanks for clearing that up!

    • @krazymeanie
      @krazymeanie 2 дні тому

      ​@@GameDevBeginner U sound like No Boilerplate with a different mic setup 😂

  • @TackleProd
    @TackleProd 7 днів тому

    I'm making my game in the most ADHD way possible. Introducing one bug at a time 🎉

  • @andisarifi5805
    @andisarifi5805 7 днів тому

    Shallow video not a must watch

  • @mannig.faltigkeit2341
    @mannig.faltigkeit2341 7 днів тому

    Thanks for motivating me to do it for real this time. I used the example from PirateSoftware, but it's too big and I prefer the focus the one pager provides.

  • @RudolphThomas
    @RudolphThomas 7 днів тому

    Thanks for the video. Fully agree. Apple has got this free app called Freeform. I Used it to design my first Inverter system. I was easy for me to keep a one page document with an overview of my project without having to create folders and files about everything. Freeform also allows you to drop images, videos, links, pdfs etc. onto the one page. It is still a very easy one page document I could open and study with the added benefit of containing complex details. PS. Also, look at a program called Simple Mind Pro that has a more mindmap approach to it.

  • @rbsalmon7895
    @rbsalmon7895 7 днів тому

    Checked out various tutorials about this topic but my negative iq couldn't quite fully grasp the concept. Now after watching this video I can confidently say that I REALLY regret not knowing about this sooner. I'm 2-3 months in on a project and this could've made my life so much easier. I'm not sure if refactoring my previous progress is worth it so I guess i'll try implementing events going forward

  • @blossomcherrypink
    @blossomcherrypink 7 днів тому

    Very cool idea for a video. Thanks for the epic knowledge.

  • @advaitadvait4457
    @advaitadvait4457 8 днів тому

    This is the most simplest explanation of a Game Design Document I have seen till date.

  • @amdevmam
    @amdevmam 8 днів тому

    😮 am the first one to put a like

  • @nTu4Ka
    @nTu4Ka 13 днів тому

    This is super interesting!

  • @Marc142000
    @Marc142000 15 днів тому

    Extreeeeeeeeeeeeemely useful as always. Million thanks

  • @RootGames
    @RootGames 17 днів тому

    Very good explanations (and video quality) 🙃

  • @fruitfunfitness3584
    @fruitfunfitness3584 17 днів тому

    I've ran into problems trying to use regular c# constructors in Unity to do anything other than getting or setting variables. I think they get called multiple times for Serialised structs and classes, so that can cause problems of stuff happening more than once. So Unity expects you to use Start / Awake / OnEnable, but it's annoying because if you're making new c# classes that don't inherit monobehaviour, then Start / Awake and OnEnable are not available.

  • @globes179
    @globes179 17 днів тому

    Also helpful to know (though not mentioned in the video) is the fact that Start() can be a coroutine - just change void to IEnumerator. This has come in handy quite a few times for me: private IEnumerator Start() { // Do something right when Start() is called yield return new WaitForSeconds(0.5f); // Do something a some time later.... }

  • @umapessoa6051
    @umapessoa6051 18 днів тому

    Hi, i'm a game dev instructor, thanks for spreading out this information for everyone, that's the main cause of lots of errors on games and a lot of people still don't know about that. Mainly by users of the Singleton Pattern or really any script that depends on the initialization of another object.

    • @8BitsPerPlay
      @8BitsPerPlay 17 днів тому

      I think if more people knew about static constructors this would be less of a problem. Static constructors are very useful when it comes to the Singleton Pattern in Unity.

  • @patrickbielau6919
    @patrickbielau6919 18 днів тому

    The first time I saw an error in your videos! (typo in the word SPHERECAST) So you are not a machine 😅 I love your content! Your ways of explaining, showing and suggesting are the best since @Brackeys left the scene 😊 Edit: typo 😇

  • @mikeha
    @mikeha 18 днів тому

    interesting tip, have everything active at first and then deactivate the ones you don't need, just to get Awake out of the way. I guess if we have a lot of objects with scripts on them, it might boost performance at the start

    • @stefan429
      @stefan429 18 днів тому

      the performance boost would be negligible. I use awake for everything! :D

    • @GameDevBeginner
      @GameDevBeginner 18 днів тому

      Oh yeah, absolutely. Just to be clear, I'm not saying don't use it, Awake is great.

  • @technofeeliak
    @technofeeliak 18 днів тому

    Thanks.

  • @BitterTast3
    @BitterTast3 19 днів тому

    Which one of these would be best to rotate my character's vertical axis of rotation to a slope?

  • @VRWarehouse
    @VRWarehouse 21 день тому

    Finally an explanation I can understand, good job.

  • @MagicCubeWorld
    @MagicCubeWorld 23 дні тому

    Thank you so much, this is brilliant. Going to need to watch this a few more times to really absorb it all. Subbed.

  • @Sylvadorr
    @Sylvadorr 26 днів тому

    You are the goat at explaining. Why did NO ONE else said, that i can use Action without the event keyword to allow invokation from the other classes... It was such a pain in the ass

  • @adeladam2325
    @adeladam2325 29 днів тому

    Thanks for the great and detailed explanation.

  • @esnevip
    @esnevip Місяць тому

    8:26 how did you do this? Have the brackets engulf the line by shortcut?

  • @Marc142000
    @Marc142000 Місяць тому

    I'm surprised you didn't make any mention to the methods explained on your 'Connecting scripts on the same object in Unity' video where you had a class that stored the actions an object could execute and other components subscribe to them. I think that way of doing things is perfectly explained in that video, but I would have liked you to talk more in depth about when to implement that style of method over the ones described on this video. Either way, brilliant information and lovely explaination. Thank you so much and keep them coming!!

  • @dogemcdogeface7901
    @dogemcdogeface7901 Місяць тому

    Hey man, this is a really great video that touches a topic that we struggle at work too! Just a quick question, at 4:04 you mentioned that Ground Check could be implemented via Inheritance, would it be better to make Ground Check as an Interface instead? Just figured that an interface is more modular. Thanks in advance ! :D

    • @GameDevBeginner
      @GameDevBeginner Місяць тому

      Thank you! Personally, I would want to use an interface when I want to create compatibility (i.e. two different classes can be treated as if they're the same, even though they're not) and inheritance to share functionality (avoid writing the same code twice in both scripts) so for me, it's inheritance. But, this only works if the hierarchy of the scripts is a good fit, and it may still be possible to do something like this with interfaces, now that default implementation is a thing. Just my opinion of course.

  • @marcinziajkowski3870
    @marcinziajkowski3870 Місяць тому

    How to hit Mesh Collider which is not convex?

  • @Fossilsmudge
    @Fossilsmudge Місяць тому

    hey i'd be interested in a video about attributes in unity. ive seen some but dont completely know how to use them, create them, and most built in ones.

  • @BetoSantosArt
    @BetoSantosArt Місяць тому

    "How do you use lerp in your projects?" Me: "the wrong way" Hope not to do so, anymore.

  • @timmygilbert4102
    @timmygilbert4102 Місяць тому

    I separate feature and architecture, any code will have some specific cuisine, so brstvto contain what's unique in single places. For example, move is a feature, it takes input modifier and position and output back new position, it shouldn't know about anything else, the manager is the one responsible for linking input type, position and controller results to the move element, that keep bug seeking into two type, feature implementation bug, or architecture communication bug, it help refactoring because you either rewrite features or rewrite architecture, even when both need rewrite it's a clear separation of concern. In practice it makes your code more modular, but modularity is only as good as how many utils class your code depends on 😂 the math class sipping everywhere is inevitable.

  • @snesmocha
    @snesmocha Місяць тому

    Inheritance… in modern oop… that’s gonna lead to disasters untold. I’m not much of a Unity dev but can’t you just make a global function that can be referenced that checks for the entity state?

  • @RodrigoP3ssoal
    @RodrigoP3ssoal Місяць тому

    Legend. I just have one specific question... I've setup the Scriptable Objects Game Events system on my game, but sometimes I want so that when an event is triggered, a value is returned from the subscribers, but I don't see with clarity how that could work? I've thought about using Funcs, because it can return a value, but how to I merge the concepts of Funcs and Scriptable Objects Game Events in a clean way? Thanks!

    • @GameDevBeginner
      @GameDevBeginner Місяць тому

      So the way you'd normally do this is use Func, or a delegate type that returns a value, but because scriptable object events use Unity Events to trigger responses, that's where your issue is. I don't know if there's a way to return data from a Unity Event. So, this could work, but you'd probably need to remove the Unity Event part of it, and have scripts subscribe directly to the Func in the scriptable object. This is just off the top of my head, it's not something I've tried.

  • @aarongeorge347
    @aarongeorge347 Місяць тому

    I've personally been exploring a composition architecture to go along with how Unity already does game objects and components. Unity Events help keep components ignorant, but I fear I'm going to end up over-using them...

    • @GameDevBeginner
      @GameDevBeginner Місяць тому

      In my experience Unity Events can be great for local connections, like on a prefab, and especially if you want to set things up in the Inspector. Personally, I think they work best when the connection is more likely to be unique. Otherwise they can be a lot of work to keep setting them up in the same way on different objects.

  • @markorossie9296
    @markorossie9296 Місяць тому

    This was clean, simple to follow, useful. Thanks.

  • @b5fan504
    @b5fan504 Місяць тому

    I submit that anyone who thinks an entire game's worth of code should go into one script, doesn't yet know enough about what they're doing. This is why we have principles and guidelines and architectural patterns.

    • @GameDevBeginner
      @GameDevBeginner Місяць тому

      I certainly wouldn't do it that way but if it works, it works: ua-cam.com/video/cFRT9E0C3XM/v-deo.html

  • @Fossilsmudge
    @Fossilsmudge Місяць тому

    just started learning unity and your vids are a breath of fresh air, easy to follow and very helpful!