background top icon
background center wave icon
background filled rhombus icon
background two lines icon
background stroke rhombus icon

Download "Design Patterns in Game Development"

input logo icon
Video tags
|

Video tags

design patterns in game development
design patterns
game development
software design patterns
programming patterns
gamedev
game dev
unity3d
unity 3d
unity game development
game programming
game programming patterns
game programming unity
gamedevelopment
designpatterns
Subtitles
|

Subtitles

subtitles menu arrow
  • ruRussian
Download
00:01:17
Hey Charles!
00:01:18
How’s it going? Pretty good.
00:01:19
Just catching up on some reading.
00:01:20
How about you?
00:01:22
The usual.
00:01:23
Doing some coding and hanging out on Discord.
00:01:25
I saw that.
00:01:26
In fact, I was just catching up on your conversation in the beginner questions channel.
00:01:31
Then you must have seen that question about MVC.
00:01:33
Yep.
00:01:34
We actually get that one a lot.
00:01:35
Tell me about it.
00:01:36
I never really know how to respond.
00:01:38
I mean, I know the answer is that you just shouldn’t use MVC in Unity, but it’s so
00:01:41
hard to explain why.
00:01:43
Yeah, that’s actually why I called.
00:01:45
A lot of beginners ask about MVC — and design patterns in general.
00:01:48
So I figured we should just talk it out and
00:01:50
come up with a good response once and for all.
00:01:52
That’d be great.
00:01:54
We could even pin to the channel so we could reference it later.
00:01:57
That’s a great idea.
00:01:59
Are you free right now?
00:02:00
Yeah, let’s do it!
00:02:02
Cool.
00:02:03
So how do you think we should approach this?
00:02:06
Well in this case, he’s asking about MVC
00:02:09
but he didn’t mention what he was trying to implement.
00:02:11
We should probably find out so we have some context.
00:02:14
Good point.
00:02:15
Why don’t you just go ahead and ask him.
00:02:17
Alright - yeah - one sec.
00:02:25
Alright, let’s see what he says.
00:02:27
I’m willing to bet he’s trying to add a user interface to his game.
00:02:30
Beginners tend to lean on MVC for UIs.
00:02:32
How come?
00:02:33
Well in my experience, someone who knows enough about code to ask about Model-View-Controllers
00:02:37
probably comes from a webdev background.
00:02:39
Which makes sense because a lot of professional software developers try their hand at gamedev
00:02:43
in their free time.
00:02:44
It’s funny you say that because I used to be a web developer myself.
00:02:48
And now that I think about it, every single app I worked on was built on an MVC framework.
00:02:54
Well it’s a great design pattern for web applications.
00:02:57
Yeah but not so great for game development.
00:03:01
You can say that again.
00:03:02
Looks like he responded.
00:03:06
Well there you go.
00:03:07
We just need to explain that MVC isn’t a good pattern to use for UIs in games.
00:03:11
Maybe…
00:03:12
I mean, it’s a good discussion to have.
00:03:15
But there’s a fundamental problem that we still need to address.
00:03:17
Oh yeah?
00:03:18
What’s that?
00:03:19
Let’s think it through.
00:03:20
Based on what he’s saying, it sounds like he hasn’t written any code yet.
00:03:25
You’re right.
00:03:26
It’s almost like he’s trying to use MVC as a sort of blueprint for his logic.
00:03:31
Mhm.
00:03:32
Which obviously isn’t the correct approach.
00:03:33
In fact, I just finished re-reading that famous design pattern book by the “gang of four”
00:03:38
and I might have some notes we can use.
00:03:47
Aha, here it is.
00:03:48
”Design patterns were created to help developers talk about how they solved certain problems.
00:03:53
They aren’t instructions for writing code, but a way to describe commonly used solutions.”
00:03:58
Exactly!
00:03:59
Writing code though the lens of which design patterns you’re going to use always leads
00:04:03
to logic that’s way more complicated than it needs to be.
00:04:06
Right, because design patterns describe complete solutions that are usually overkill for the
00:04:11
things that most developers face on a day to day basis.
00:04:13
Yeah.
00:04:14
You typically don’t need an entire infrastructure or architectural overhaul.
00:04:18
You can overcome most decision points with a few lines of simple code.
00:04:21
Mhm.
00:04:23
I learned that lesson the hard way.
00:04:24
Unfortunately, most developers do.
00:04:27
But I think we’re ready to craft a response that’ll hopefully spare our beginner from
00:04:31
a lot of headaches.
00:04:32
Awesome!
00:04:33
Why don’t you start by letting him know that we understand where he’s coming from.
00:04:36
Then we can steer him in the right direction.
00:04:38
Alright.
00:04:55
Nice!
00:04:56
Great start. Thanks!
00:04:57
Now we just need to let him know where we stand on design patterns in general.
00:05:01
Right. Why don’t you lead by explaining what they and how they were intended to be used.
00:05:06
Okay.
00:05:23
Alright, now hit him with the problem.
00:05:44
Now finish strong.
00:05:45
I hope this makes sense.
00:06:08
Boom.
00:06:09
Drop mic.
00:06:10
Nicely put.
00:06:12
And look: he’s already responding.
00:06:13
Oh, yeah!
00:06:23
This is a common fear among beginners.
00:06:25
There’s so many ways to structure your code and it can be really overwhelming.
00:06:29
I know that feeling.
00:06:30
I’m the poster child of anxiety-induced paralysis by analysis.
00:06:34
Yeah but you got better, right.
00:06:36
I did.
00:06:37
Over time.
00:06:38
It just took me putting in the work and gaining the experience I needed to feel confident.
00:06:42
That sounds like some pretty good advice.
00:06:45
Huh.
00:06:46
Yeah!
00:07:15
I hope that’s helpful.
00:07:16
I think so.
00:07:17
And it looks like he does, too.
00:07:23
Well done, Barles.
00:07:24
I think we handled that very well.
00:07:25
Me too!
00:07:26
Thanks for your help.
00:07:27
You’re welcome.
00:07:28
It’s important that we work together when people in our community run into problems.
00:07:32
This should be a safe place for beginners and more experienced game devs alike.
00:07:36
Definitely!
00:07:38
And now we can pin this for future use.
00:07:41
That’s right!
00:07:42
I’ll do that as soon as I get back to my computer.
00:07:44
Awesome.
00:07:45
Well, I’ve got a long coding session ahead of me so I’ll let you get back to your book.
00:07:50
Sounds good.
00:07:51
Enjoy! Will do.
00:07:52
Catch ya later, man!
00:07:53
Bye!

Description:

Sign up for the Level 2 Game Dev Newsletter: https://infalliblecode.us7.list-manage.com/subscribe?u=84f963d4e506fd004305cf666&id=94fe6340f9 Design patterns are well-known solutions to common programming problems. In this video we'll discuss whether or not they should be used in game development. 👨💻 Join our community: https://discord.com/invite/NjjQ3BU ❤️ Support the channel: https://www.patreon.com/infalliblecode 00:00 Introduction 02:02 Why do beginners use design patterns? 03:41 How were design patterns meant to be used? 04:33 Should you use design patterns in game development? 06:15 How do you write code without using design patterns? 07:27 Join our community of game developers My Favorite Unity Assets 💯⤵️ 1️⃣ Odin Inspector: https://assetstore.unity.com/packages/tools/utilities/odin-inspector-and-serializer-89041?aid=1100l3e8M 2️⃣ Shapes: https://assetstore.unity.com/packages/tools/particles-effects/shapes-173167?aid=1100l3e8M 3️⃣ Easy Save: https://assetstore.unity.com/packages/tools/input-management/easy-save-the-complete-save-load-asset-768?aid=1100l3e8M 4️⃣ Dialogue System for Unity: https://assetstore.unity.com/packages/tools/ai/dialogue-system-for-unity-11672?aid=1100l3e8M 5️⃣ Editor Console Pro: https://assetstore.unity.com/packages/tools/utilities/rainbow-folders-2-143526?aid=1100l3e8M ⚡ Learn more about Unity 3D Plus at https://unity.com/products 👋 Contact me directly at [email protected] * Disclosure: These are affiliate links, which means I'll receive a commission if you use them to make a purchase.

Preparing download options

popular icon
Popular
hd icon
HD video
audio icon
Only sound
total icon
All
* — If the video is playing in a new tab, go to it, then right-click on the video and select "Save video as..."
** — Link intended for online playback in specialized players

Questions about downloading video

mobile menu iconHow can I download "Design Patterns in Game Development" video?mobile menu icon

  • http://unidownloader.com/ website is the best way to download a video or a separate audio track if you want to do without installing programs and extensions.

  • The UDL Helper extension is a convenient button that is seamlessly integrated into YouTube, Instagram and OK.ru sites for fast content download.

  • UDL Client program (for Windows) is the most powerful solution that supports more than 900 websites, social networks and video hosting sites, as well as any video quality that is available in the source.

  • UDL Lite is a really convenient way to access a website from your mobile device. With its help, you can easily download videos directly to your smartphone.

mobile menu iconWhich format of "Design Patterns in Game Development" video should I choose?mobile menu icon

  • The best quality formats are FullHD (1080p), 2K (1440p), 4K (2160p) and 8K (4320p). The higher the resolution of your screen, the higher the video quality should be. However, there are other factors to consider: download speed, amount of free space, and device performance during playback.

mobile menu iconWhy does my computer freeze when loading a "Design Patterns in Game Development" video?mobile menu icon

  • The browser/computer should not freeze completely! If this happens, please report it with a link to the video. Sometimes videos cannot be downloaded directly in a suitable format, so we have added the ability to convert the file to the desired format. In some cases, this process may actively use computer resources.

mobile menu iconHow can I download "Design Patterns in Game Development" video to my phone?mobile menu icon

  • You can download a video to your smartphone using the website or the PWA application UDL Lite. It is also possible to send a download link via QR code using the UDL Helper extension.

mobile menu iconHow can I download an audio track (music) to MP3 "Design Patterns in Game Development"?mobile menu icon

  • The most convenient way is to use the UDL Client program, which supports converting video to MP3 format. In some cases, MP3 can also be downloaded through the UDL Helper extension.

mobile menu iconHow can I save a frame from a video "Design Patterns in Game Development"?mobile menu icon

  • This feature is available in the UDL Helper extension. Make sure that "Show the video snapshot button" is checked in the settings. A camera icon should appear in the lower right corner of the player to the left of the "Settings" icon. When you click on it, the current frame from the video will be saved to your computer in JPEG format.

mobile menu iconWhat's the price of all this stuff?mobile menu icon

  • It costs nothing. Our services are absolutely free for all users. There are no PRO subscriptions, no restrictions on the number or maximum length of downloaded videos.