How New Game Engine Features are Implemented

Ғылым және технология

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.

Пікірлер: 71

  • @TheCherno
    @TheChernoАй бұрын

    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

    Ай бұрын

    cOMPARE hazel and unreal 5 ples. and revie unreal 5 please. ty bro

  • @MyRandomChannel24

    @MyRandomChannel24

    Ай бұрын

    Are you going to do Ludum Dare 55.

  • @pedroganme2503
    @pedroganme2503Ай бұрын

    Well, you definitely created the most engaging Grammarly ad I've ever seen.

  • @fahdasq507
    @fahdasq507Ай бұрын

    That's gotta be one of the smoothest transition to an ad I've ever seen

  • @sherman4163
    @sherman4163Ай бұрын

    2:57 For anyone curious, it is the FC/FIFA team he is referring to.

  • @dummyaccount1706
    @dummyaccount1706Ай бұрын

    4:52 Smooth! I liked that insert.

  • @rand0mtv660
    @rand0mtv660Ай бұрын

    3:40 ah yes, sounds like modern day scrum. Let's have meetings about meetings.

  • @gavinderulo12

    @gavinderulo12

    Ай бұрын

    That's not scrum at all. Scrum has fixed meetings. And is designed to let developers use most of their time to develop.

  • @Cross_Zero
    @Cross_ZeroАй бұрын

    I'd love it if you made a series just you talking about stories in EA or any programming endeavour.

  • @Voidload
    @VoidloadАй бұрын

    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...

  • @circlePulse
    @circlePulse13 күн бұрын

    Wow, one of the most impressive sponsorship integrations!

  • @gfabasic32
    @gfabasic32Ай бұрын

    These frank expositions of what's involved in program development are gold!

  • @SynthByte_
    @SynthByte_Ай бұрын

    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Ай бұрын

    cherno's hairstyle reminds of pablo escobar's from narcos:netflix

  • @PotionScape
    @PotionScapeАй бұрын

    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

    Ай бұрын

    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

    Ай бұрын

    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.

  • @PhiloMath1412
    @PhiloMath1412Ай бұрын

    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!

  • @AlanMitchellAustralia
    @AlanMitchellAustraliaАй бұрын

    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Ай бұрын

    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Ай бұрын

    New editors seem like a GREAT QOL thing for the channel, awesome direction

  • @user-kx5nr9hz2t
    @user-kx5nr9hz2tАй бұрын

    bro that segue to the sponser was much better than linus tech tips

  • @orlovskyconsultinggbr2849
    @orlovskyconsultinggbr2849Ай бұрын

    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: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

  • @kc-me6wl
    @kc-me6wlАй бұрын

    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!

  • @Voidload
    @VoidloadАй бұрын

    Props for using fork as a git client! Proud of our czech devs working on it!

  • @monad_tcp
    @monad_tcpАй бұрын

    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 ? )

  • @richardbloemenkamp8532
    @richardbloemenkamp8532Ай бұрын

    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.

  • @unkgames-abdullahali4048
    @unkgames-abdullahali4048Ай бұрын

    I read "Implementing a New Game engine" then I said no way!! 💀💀💀

  • @Driver___
    @Driver___Ай бұрын

    You have implemented thumbnails for the Hazel content browser. Now you need to implement the same thumbnails feature for windows explorer 👍

  • @Noriyak1
    @Noriyak1Ай бұрын

    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 ❤

  • @dagonmeister
    @dagonmeisterАй бұрын

    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

    Ай бұрын

    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

    Ай бұрын

    @@luz_reyes_676 the feature is cool though, is just not in my list of priorities for the stage the engine is

  • @TopwizSoft
    @TopwizSoftАй бұрын

    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.

  • @RickMcMichael
    @RickMcMichaelАй бұрын

    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.

  • @Nodsaibot
    @NodsaibotАй бұрын

    cherno + notch colab, when? or interview

  • @vast634
    @vast634Ай бұрын

    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.

  • @ilmarinen79
    @ilmarinen79Ай бұрын

    20:24 this will be haunting me forever 😱

  • @insainbassist
    @insainbassistАй бұрын

    ending up at a place that has that many meetings is my worst nightmare lol

  • @khaledb8618
    @khaledb8618Ай бұрын

    depthgraph / context are exactly allow these features

  • @Alriightyman
    @AlriightymanАй бұрын

    The meeting that could have been an email.

  • @SownJevan
    @SownJevanАй бұрын

    That Grammarly Ad came out of nowhere.

  • @TheRayar_
    @TheRayar_Ай бұрын

    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

    Ай бұрын

    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_

    Ай бұрын

    UI is a little boring.

  • @ezzygd2521

    @ezzygd2521

    Ай бұрын

    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

  • @miladhakimi3495
    @miladhakimi3495Ай бұрын

    I constantly face the same issue at work: "Why I don't know why?"

  • @monad_tcp
    @monad_tcpАй бұрын

    Basically every time you make invalid data not representable, it pays off, or at least tell when its invalid.

  • @orlovskyconsultinggbr2849
    @orlovskyconsultinggbr2849Ай бұрын

    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Ай бұрын

    documentation: more pictures. less words.

  • @tubeincompetence

    @tubeincompetence

    Ай бұрын

    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Ай бұрын

    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.).

  • @julianelischer
    @julianelischerАй бұрын

    meta work.. look up "shaving the yak"

  • @tofaa3668
    @tofaa3668Ай бұрын

    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

  • @_dan6904
    @_dan6904Ай бұрын

    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.

  • @dj10schannel
    @dj10schannelАй бұрын

    🤔 edit: nice vid i like these types of vids here would like more if possible 👍👍👍

  • @realKlik
    @realKlikАй бұрын

    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.

  • @lostdeeply397
    @lostdeeply397Ай бұрын

    rly wish hazel go free and open source

  • @zombi1034

    @zombi1034

    Ай бұрын

    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

    Ай бұрын

    @@zombi1034 when 😭😭😭

  • @NaucifyMC
    @NaucifyMCАй бұрын

    Im really early dang

  • @TheGreatArlei
    @TheGreatArleiАй бұрын

    Bro gave up his jawline for godlike programming skills. Legend

  • @DeusEx3
    @DeusEx3Ай бұрын

    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.

  • @anthonysteinerv
    @anthonysteinervАй бұрын

    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Ай бұрын

    That's why Rust is better. The rust compiler wouldn't compile the code until all the parameters are there.

  • @thelaw3536

    @thelaw3536

    Ай бұрын

    Making an application in rust lol. Stick to cyber security

  • @gsestream
    @gsestreamАй бұрын

    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.

Келесі