How New Game Engine Features are Implemented

  Рет қаралды 24,909

The Cherno

The Cherno

Күн бұрын

Schedule a Grammarly demo for your team using my link ► grammarly.com/cherno02
Patreon ► / thecherno
Instagram ► / thecherno
Twitter ► / thecherno
Discord ► / discord
Hazel ► hazelengine.com
🕹️ Play our latest game FREE (made in Hazel!) ► studiocherno.itch.io/dichotomy
🌏 Need web hosting? ► hostinger.com/cherno
📚 CHAPTERS
0:00 - Implementing a new feature
2:43 - A story from my past
6:52 - The beginning of features
8:41 - What drives features?
10:49 - Prototyping in Hazel
12:34 - Turn that frown upside down
13:34 - BUGS
20:38 - The real story
💰 Links to stuff I use:
⌨ Keyboard ► geni.us/T2J7
🐭 Mouse ► geni.us/BuY7
💻 Monitors ► geni.us/wZFSwSK
This video is sponsored by Grammarly.

Пікірлер: 72
@TheCherno
@TheCherno 2 ай бұрын
Hope this gives a little insight into what it's like to implement a new feature in Hazel! Let me know what you thought of this post-mortem thoughts mixed with work live stream footage kind of video! 👇 Schedule a Grammarly demo for your team using my link ► grammarly.com/cherno02
@user-cf5cy8rb5y
@user-cf5cy8rb5y 2 ай бұрын
cOMPARE hazel and unreal 5 ples. and revie unreal 5 please. ty bro
@MyRandomChannel24
@MyRandomChannel24 2 ай бұрын
Are you going to do Ludum Dare 55.
@pedroganme2503
@pedroganme2503 2 ай бұрын
Well, you definitely created the most engaging Grammarly ad I've ever seen.
@fahdasq507
@fahdasq507 2 ай бұрын
That's gotta be one of the smoothest transition to an ad I've ever seen
@sherman4163
@sherman4163 2 ай бұрын
2:57 For anyone curious, it is the FC/FIFA team he is referring to.
@rand0mtv660
@rand0mtv660 2 ай бұрын
3:40 ah yes, sounds like modern day scrum. Let's have meetings about meetings.
@gavinderulo12
@gavinderulo12 2 ай бұрын
That's not scrum at all. Scrum has fixed meetings. And is designed to let developers use most of their time to develop.
@dummyaccount1706
@dummyaccount1706 2 ай бұрын
4:52 Smooth! I liked that insert.
@Lepumpkino
@Lepumpkino 2 ай бұрын
I'd love it if you made a series just you talking about stories in EA or any programming endeavour.
@circlePulse
@circlePulse Ай бұрын
Wow, one of the most impressive sponsorship integrations!
@PhiloMath1412
@PhiloMath1412 2 ай бұрын
The video was lovely, and explained almost everything I took in Software Engineering class. Finally almost cleared university and coming back to watching Cherno, game engine series. Thanks for the C++ series!
@SynthByte_
@SynthByte_ 2 ай бұрын
I really like this format of video where you go over a bug that your struggling with and break it down into manageable pieces and figure out how to fix it by the end of it.
@pizzalover13_44
@pizzalover13_44 2 ай бұрын
cherno's hairstyle reminds of pablo escobar's from narcos:netflix
@Voidload
@Voidload 2 ай бұрын
Good sponsoring transition btw. The topic of ending up in meeting hell scenarios is so relatable. Especially when you know how much you can do within that time if you just get in the zone for uninterrupted 6 hours. But to be fair that's why big teams are so hard because without enough management it would collapse. So it's very hard to solve unless you are a smaller team where you can just talk enough and have a few dashboards, agile boards whatever...
@PotionScape
@PotionScape 2 ай бұрын
I'm currently trying to make a game engine. Its essentially just a library that allows for an update loop, an input system, and editable windows (like the pixels) Its not that great but i kinda like how easy it is to make new projects, before it would have taken me a day or two to make a little falling sand game, but now it takes an hour or two, and can also have placing materials as well. Its definitely made me realize that coding to help myself code is a good use of my time
@0ia
@0ia 2 ай бұрын
I recommend you copy code from other projects instead of making a library. I saw Jonathan Blow doing this from Braid (C++) to Witness (C++) to his new massive puzzle game (Jai), and it worked well for him. As well as that, it has been working well for me. By not having this code in a library but rather a part of the project itself, it is more malleable (so we can avoid the square-peg-round-hole effect). It allows my games to be one cohesive whole that is entirely designed to support itself and runs on solid foundation. In the past, making engine abstraction layers has been a bad use of my time, considering my goal is to finish games.
@informagico6331
@informagico6331 2 ай бұрын
I think exactly the same. I've been like a whole summer designing and uploading a library to GitHub to automatically manage and parse command line arguments and subcommands (with self memory-aligned trie structures) without ever having to touch them again. I learned a lot, deep diving into the rabbit hole of what implies making C/C++ software, and making tools to code faster.
@gfabasic32
@gfabasic32 2 ай бұрын
These frank expositions of what's involved in program development are gold!
@AlanMitchellAustralia
@AlanMitchellAustralia 2 ай бұрын
01:08 I'm a big fan of the organic IDEA -> TEST -> REPEAT approach (as opposed to a more structured formal style). Basically come up with an idea, test it, come up with a new idea, test it, and so on...then once you have a working product, refactor the inevitable spaghetti. It's incredibly flexible, encourages innovation, and saves on premature optimsation. Its how ant colonies develop, and how slime/fungii navigate complex networks.
@Brahvim
@Brahvim 2 ай бұрын
I love the "BUGS" chapter of this video. It felt more complete than I thought. ...I did realize later that it was 7 minutes long. Thanks for defining _those_ thoughts for me (and many of us other people).
@ItsBaffledd
@ItsBaffledd 2 ай бұрын
New editors seem like a GREAT QOL thing for the channel, awesome direction
@user-kx5nr9hz2t
@user-kx5nr9hz2t 2 ай бұрын
bro that segue to the sponser was much better than linus tech tips
@kc-me6wl
@kc-me6wl 2 ай бұрын
story from a past was fantastic...i think almost most people can relate to experiencing meetings about meetings :p but "meta work"...😂 hahah i am totally stealing that - such a good phrase for people who look like there doing work but not doing actual work!
@mountieman18
@mountieman18 15 күн бұрын
5:30 This feels like the perfect use of AI for the programmer stereotype - using it to handle communication for us haha
@orlovskyconsultinggbr2849
@orlovskyconsultinggbr2849 2 ай бұрын
Why we need meetings anyone? I think meeting is a tool to find a middle ground for understanding where we as team are and see where we going. There always be differences and opposite opinions in meeting , but in Scrum workflow we have scrummaster, people know how to moderate and lead the team to productive talking and solutions. Basically meetings help to understand the interaction in team and lead team to better more realistic solutions, sure somebody can and will abuse meetings for not doing work, but that upon them, other people work hard and they want to see results. Yan i did subscribed to your channel i like what you talking about, those topic are important.
@marcasrealaccount
@marcasrealaccount 2 ай бұрын
2:22 Ah so that's why I couldn't find it on github xD Yeah I too have figured out that it's not the best to keep working only in local changes... But sometimes it happens because you first work on implementing one new feature, which then turns out to be much bigger than you anticipated and you end up spending so much time having to for instance rewrite some other parts of the codebase just to make it work. And you forget to commit anything at all, because nothing works at all xD
@monad_tcp
@monad_tcp 2 ай бұрын
2:18 yeah, that's how you do it ! (why would it be dangerous, git is not backup, you have to have backup of the entire file system anyway, not only that, git isn't a "undo" button either, why having to commit things when you can just use BTRFS and take snapshot every 2 hours ? )
@Voidload
@Voidload 2 ай бұрын
Props for using fork as a git client! Proud of our czech devs working on it!
@TopwizSoft
@TopwizSoft 2 ай бұрын
Kind of off topic, I'm looking for a good example of a Winsock server app that uses I/O Completion Ports for multi-threading.
@unkgames-abdullahali4048
@unkgames-abdullahali4048 2 ай бұрын
I read "Implementing a New Game engine" then I said no way!! 💀💀💀
@richardbloemenkamp8532
@richardbloemenkamp8532 2 ай бұрын
It looks like you can get pretty annoyed if something doesn't work the way you have it in mind. Anyway it is fun to watch. I'm happy that my codebases never yell at me. They only whisper: "you have been a bit too lazy so I'm full of bugs and we both know that". Take it easy and have fun.
@TheRayar_
@TheRayar_ 2 ай бұрын
Is your game engine all OpenGL based or it also uses other API's like Vulkan or DirectX12(Most common and best)? and what is the think that set's you apart from other game engines?
@wowvain2989
@wowvain2989 2 ай бұрын
it also has Vulkan support, I am not sure if it handles DirectX too. Hazel's much more light weight than Unreal and Unity and similarly fast (if not faster in some edge cases). It has none of the bloat those two have with tons of functionality barely anyone ever uses, and the pricing is much better, it only costs the patreon fee to use it :p.
@TheRayar_
@TheRayar_ 2 ай бұрын
UI is a little boring.
@ezzygd2521
@ezzygd2521 2 ай бұрын
I believe he dropped/is planning to drop OpenGL support and it's mostly Vulkan based. The engine is still considered early in development, so I think it's too early to judge how it compares to other engines, but he's been focusing a lot on making it as lightweight as possible and keep it very low on bloat. I would expect the UI to be boring, as this is still very early development work and the focus on the engine as in visual terms and UI/UX is probably almost non-existent
@RickMcMichael
@RickMcMichael 2 ай бұрын
is XR Going to be supported? I have a lot of stuff that I designed in Unity (Created my own XR system on top of theirs) and would like to consider bringing it over to Hazel or Ultra Engine.
@Noriyak1
@Noriyak1 2 ай бұрын
What about trace logging? Like the most detailed logging you could have, it may be slow but wouldn't it help to see the "why"? Also love your videos ❤
@ilmarinen79
@ilmarinen79 2 ай бұрын
20:24 this will be haunting me forever 😱
@Driver___
@Driver___ 2 ай бұрын
You have implemented thumbnails for the Hazel content browser. Now you need to implement the same thumbnails feature for windows explorer 👍
@Alriightyman
@Alriightyman 2 ай бұрын
The meeting that could have been an email.
@insainbassist
@insainbassist 2 ай бұрын
ending up at a place that has that many meetings is my worst nightmare lol
@monad_tcp
@monad_tcp 2 ай бұрын
Basically every time you make invalid data not representable, it pays off, or at least tell when its invalid.
@dagonmeister
@dagonmeister 2 ай бұрын
Great video today! Want to advice, I fully disagree with the advantages of thumbnails and accessibility with a massive amount on content. After many teams from different backgrounds, sizes, expertise it all boils down to the same problem: “share me the path, I can easily take it from there”, specially more relevant for 100% remote teams. I find more useful to have complex filters, shortcuts, good naming structure, sorting than anything visual. So if I was part of your triage, I would definitely had pushed back the thumbnails😊
@luz_reyes_676
@luz_reyes_676 2 ай бұрын
The idea is to see what it asset looks like without importing it... see being the keyword. Again he said it's mostly for getting the feel right and to do what you are commenting on
@dagonmeister
@dagonmeister 2 ай бұрын
@@luz_reyes_676 the feature is cool though, is just not in my list of priorities for the stage the engine is
@SownJevan
@SownJevan 2 ай бұрын
That Grammarly Ad came out of nowhere.
@khaledb8618
@khaledb8618 2 ай бұрын
depthgraph / context are exactly allow these features
@Nodsaibot
@Nodsaibot 2 ай бұрын
cherno + notch colab, when? or interview
@vast634
@vast634 2 ай бұрын
If all you do in your editor is small toy projects and scenes, then you will only optimize the UI for small toy projects. Better is to make a large project, to see what functionality becomes relevant then.
@miladhakimi3495
@miladhakimi3495 2 ай бұрын
I constantly face the same issue at work: "Why I don't know why?"
@orlovskyconsultinggbr2849
@orlovskyconsultinggbr2849 2 ай бұрын
Oh its hard enough, as always software architecture is not flexible, if you dont have unit tests which try every possible "corner" of your software , then its hard to implement the new feature without breaking something in the process.
@julianelischer
@julianelischer 2 ай бұрын
documentation: more pictures. less words.
@tubeincompetence
@tubeincompetence 2 ай бұрын
I'd say a good mix of the two. But I probably prefer words, at least to get to that specific picture I might need. Maybe that is what you are saying though, less words, not "no" words.
@rko2016
@rko2016 2 ай бұрын
If i can implement gyro controls and you dont reinvent the wheel on every damn feature, creating a worse version in the process, i will love this engine more than godot and even source 2(s&box ver.).
@tofaa3668
@tofaa3668 2 ай бұрын
I'm a bit too early guys lemme finish the video fully then I'll write something proper as a comment Post watch edit: Banger video as always
@julianelischer
@julianelischer 2 ай бұрын
meta work.. look up "shaving the yak"
@realKlik
@realKlik 2 ай бұрын
Thank you very much for the video! I was wondering this and, universe provided by giving you an idea for the video. One thing: Get thinner DAFUQ did you do with the body? You are full of money ruining your HP.
@dj10schannel
@dj10schannel 2 ай бұрын
🤔 edit: nice vid i like these types of vids here would like more if possible 👍👍👍
@_dan6904
@_dan6904 2 ай бұрын
Hi Cherno, I hope you see this. I would really appreciate a return to more C++ tutorial-type content, I understand that Hazel is a big undertaking and I'm proud of your success but there's not much educational value to be had through your videos alone if viewing Hazel's source code is behind a paywall. That being said, I respect your decision to pivot away from education.
@NaucifyMC
@NaucifyMC 2 ай бұрын
Im really early dang
@lostdeeply397
@lostdeeply397 2 ай бұрын
rly wish hazel go free and open source
@zombi1034
@zombi1034 2 ай бұрын
I think his plan is to eventually release Hazel (binaries) for free so you can use it to make your own games with it.
@lostdeeply397
@lostdeeply397 2 ай бұрын
@@zombi1034 when 😭😭😭
@TheGreatArlei
@TheGreatArlei 2 ай бұрын
Bro gave up his jawline for godlike programming skills. Legend
@anthonysteinerv
@anthonysteinerv 2 ай бұрын
This used to be a channel where we learn and you teach, right now it seems like a podcast, where you just talk about stuff :(
@unschlagbar2302
@unschlagbar2302 2 ай бұрын
That's why Rust is better. The rust compiler wouldn't compile the code until all the parameters are there.
@thelaw3536
@thelaw3536 2 ай бұрын
Making an application in rust lol. Stick to cyber security
@DeusEx3
@DeusEx3 2 ай бұрын
Damn, dude just throwing a 4 minute Grammarly ad in there. edit: I mean this in the worst way, that whole segment gave me nothing of value. Some creators don't respect your time. I know, I know, you got to make that break, but you can actually take it too far.
@gsestream
@gsestream 2 ай бұрын
first step is to admit you dont have to, then you can chill, and then make the actual most useful thing. if you invest in rep, you are not doing the thing you rep for. if at all required or useful. oh youtube thumbnails. irrelevant. usually. way too much hurry. vacation is much better. you will end up going through all of the assets in depth anyways. why do quick and dirty looks at all. focus lost. no focus. freedom does not need to be communicated. have skill as God gave it. internally. not externally. seeing visions is external. intuitive understanding is internal. freedom because of you already have enough, nothing more required by any excuse. then implement the essentials. only. in the most efficient way. no fluff.
2000 HOUR 2D Game Engine! // Code Review
32:01
The Cherno
Рет қаралды 76 М.
The Insane Engineering of the Gameboy
17:49
Real Engineering
Рет қаралды 1,6 МЛН
ГДЕ ЖЕ ЭЛИ???🐾🐾🐾
00:35
Chapitosiki
Рет қаралды 8 МЛН
She ruined my dominos! 😭 Cool train tool helps me #gadget
00:40
Go Gizmo!
Рет қаралды 35 МЛН
1 класс vs 11 класс  (игрушка)
00:30
БЕРТ
Рет қаралды 3,5 МЛН
Optimizing my Game so it Runs on a Potato
19:02
Blargis
Рет қаралды 400 М.
I Made a Neural Network with just Redstone!
17:23
mattbatwings
Рет қаралды 551 М.
My thoughts on the Unity situation.
24:09
The Cherno
Рет қаралды 105 М.
3 Hours vs. 3 Years of Blender
17:44
Isto Inc.
Рет қаралды 3,5 МЛН
Coding Adventure: Optimizing a Ray Tracer (by building a BVH)
52:13
Sebastian Lague
Рет қаралды 268 М.
How One Programmer Created Gaming's Most Complex Ecosystem
28:29
ThatGuyGlen
Рет қаралды 1,5 МЛН
PATH TRACER made by 15-YEAR-OLD in C++ OpenGL! // Code Review
36:56
Procedurally Generating Icons for my Farming Game
18:50
ThinMatrix
Рет қаралды 129 М.
From Editor to Runtime - The Hazel Engine Workflow
23:45
The Cherno
Рет қаралды 28 М.
7 DEVS Make a GAME without COMMUNICATING! (centipede edition)
17:16
Blackthornprod
Рет қаралды 994 М.
Урна с айфонами!
0:30
По ту сторону Гугла
Рет қаралды 6 МЛН
Как работает автопилот на Lixiang L9 Max
0:34
Семен Ефимов
Рет қаралды 13 М.
ВЫ ЧЕ СДЕЛАЛИ С iOS 18?
22:40
Overtake lab
Рет қаралды 107 М.