3D Physics! // Hazel Engine Dev Log
Patreon ► / thecherno
Instagram ► / thecherno
Huge thank you to peter1745 for all his work on this! It's gonna be a great year :)
0:00 - Vlog
5:58 - Physics Demo
Twitter ► / thecherno
Discord ► thecherno.com/discord
#Hazel
Пікірлер: 194
Glad to be back! Hope you guys enjoyed the dev log, looking forward to making this year the best one yet! ❤️
@mohitsethi99
3 жыл бұрын
Happy new year 🎉
@asianhavoc1872
3 жыл бұрын
Happy New Year!!
@CosmJJ
3 жыл бұрын
Твой канал - кладезь знаний! :) Спасибо большое!! P.s. сегодня старый Новый год!
@yehiawaleed
3 жыл бұрын
Add ui for hazel
@peter1745dev
3 жыл бұрын
@@yehiawaleed UI will come in the future, but it's quite a large system to add and not the most important system right now.
10:02 I love that you let it finish
Yeah full name is Peter Nilsson ;)
@OhhBabyATriple
3 жыл бұрын
Great work Peter!
Writing your own engine is cool and everything, but it's not "yours" enough. I think to solve this problem you're going to have to set aside the gcc and c++, and write your own compiler and programming language. However, Windows of course isn't great, so I'd think about creating your own os as well. Although store-bought hardware is great, it can be a little unpredictable at times, and if they start malfunctioning (ok let's be honest: when not if), warranties are a pain, so I think you're going to have to create your own ALU and go up from there. Let's also not forget the absurd proportions of low-quality copper and zinc that corporations like Gigabyte or AMD purchase by the thousands, so I think you're going to have to start a mine and get to smelting. After that, we can make a game.
@MinerBat
3 жыл бұрын
but you probably can't make a copper mine in your back yard so you have to create a new planet that you can decide the locations of copper in. but that would require a new solar system because our solar system does not have enough material left to make another planet. but that takes a few million years so maybe you should just create a new uiverse where time goes faster.
@ahmedthegreat3973
3 жыл бұрын
@@MinerBat And Also Going To OTHER Unvierse Will Take A Few Million Light Years So You Should Just Fly But Flying Isnt Possible So Just Use Minecraft elytras But If You Dont Have them just go to end and defeat ender dragon and then go to end city and find them but we dont know which quality of cloth is used in elytras so just put a new on their cloths and enchant it with unbreaking 3 and mending. And you also want Fireworks... Anyone Who Sees This please reply and expand this you could also use ender peals
@starup4960
3 жыл бұрын
If you wish to make a game from scratch, you must first invent the universe.
@TheIgoorR
3 жыл бұрын
Well, just find yourself some stick then and act like it's a gun :))
@ctx4241
3 жыл бұрын
I am willing to provide mining privilegies, there is iron rich water nearby my home. I know, I know, it's not silicon but reliability od PC cases is terrible nowadays. Also... nobody in Hazel community can blame me for not doing my part.
Shout out to Peter Nilsson (peter1745)
Woah, finally there. I've been waiting for 3d physics for ages, and now, here it is! P.S. It is kinda interesting to see math behind a physics engine. I mean, not just use PhysX, but actually know how it works. Would be good if Cherno made a series about this.
@mastershooter64
3 жыл бұрын
like making a physics engine series?
@jcdentonunatco
3 жыл бұрын
I highly recommend the book Game Physics Engine Development by Ian Millington. It teaches you to design your own physics engine from scratch with working examples in opengl. Its an excellent book
@rafaelocariz1384
3 жыл бұрын
You can always go to physx repo (it is open source) and check how they do the math
This is coming along amazingly well :) Good luck for 2021 Cherno!
Happy new year guys
Each Devlog is making the game engine series more and more exciting
Been watching for like a month now and already learned so much about C++/graphics. Such an awesome channel!
Amazing stuff! It's awesome to see how good physx and how it meshes with hazel.
A small tip with the soft selection in blender. You need to enable it *before* you grab a vertex.
It is amazing how good this engine looks like. I am using your videos in order to develop my own because "I want" hahaha. Wish you the best with this project.
I've stopped watching you and other creators for like 6 months to focus on some personal stuff and I come back to you having Hazel 2D and 3D mostly capable of creating games... After 2-3 years of very slow progress... honestly I can't wait for it to be a fully capable engine, you've taught me 90% of everything I know about programming and I wish to create something more or less as capable as Hazel sometime in my life. Best of luck to you!
Hey TheCherno! This is some great stuff. Quick question - do you plan on integrating everything with keybinds as an optional kind of thing? Something on the level of blender, in order to fully boost productivity. It's something that other game engines don't use much and it'd make yours stand out, especially with people who enjoy keyboard-based workflows and power users.
I love the massive 'c++!' on the whiteboard
Wow, glad to see you back
Long time no see/hear buddy! Glad your back!
Very nice, and Happy New Year! :-) Quick question, why did you decide to go with PhysX over Bullet? Both seem good solutions although I guess PhysX might be more performant.
3:13 Can't wait to see what you come up with!
Procrastinating by saying I'll make my first game using the first usable version of Hazel
@unfa00
3 жыл бұрын
Grab Godot and do it now :D
Sick dude! You’re doing gods work here 👍
Hey, Cherno the last thing people want is for you to overwork yourself. It's good to have that push and a goal to pursue but always remember to keep checking in on yourself. You have done loads for inspiring as well as teaching people and your content is already amazing. Keep up the great work but don't burn yourself out bud
WOw it is really good that you helps others how to get an engine going : D
The most , the best, the most reliable series ever. Keep it up bro 👍
What a treat good thing I stayed up till 3am
Man does it feel weird coming back and watching this over 2 years later
Finally!! my favorite part!!
man hazel evolved so much since i last have seen it!!!
10:01 my favorite part of the video is Cherno being silent to wait the ball to fall off : ))) it was hilarious
WOAH U MADE ALL THAT SO COOL U EVEN ADDED INTERFACE
Its coming along fast...nice
This is absolutely sick
THE CERNO!!!!!! Glad you're doing good man
OMG i had stoppped watching your video after like first gamejam via hazel or something like that and you came this far I really thought you would have quit but You kept going I hope you reach the goal you dream, I wish you good luck take care !!!
Just enable the a.n.t addon and select a preset, you have a ready made landscape in a couple of clicks. Also you need to enable proportional edit for manipulating multiple vertices.
Your Content Are Awesome i Mean I like It
Looks nice!
Looks great, credit to Peter
When we can expect Vulkan Renderer
amazing!
Peter thx. Physics make me go yes.
Will you go through the code a little, even a quick overview of how it works?
Is there a video showing how 3D was implemented in the engine?
Hi man, great video, I was wondering what is your reasoning to choose Physx over Bullet, if you don't mind sharing your opinion?
Hello the cherno! Big fan! I was wondering. Is hazel going to support virtual reality? If not, then maybe in the future? And is hazel going to be availeble for the public? If so then What price?
Really channeling peter mckinnon with these intro's
subscribed sicne months but I always understand "Acherno" in the intro :D
I wonder if this engine will be polished enough to actually make games in it or is it just a coding experiment. Good luck Cherno! It'd also be interesting to hear about porting and optimizing for consoles, but not going to happen - NDAs.
@notlegal99
3 жыл бұрын
if enough people get interested, the community could code a powerful version
@gileee
3 жыл бұрын
Isn't PhysX a licenced, closed-source solution on consoles?
How does it work with concave meshes? I thought that every physics engine needs to separate concave meshes into multiple convex ones. But in your demo it works without any visible preparations! [Edit]: ok I saw that it's static.
Hey, is there any chance that you could reupload the Lapsis Series? All of the episodes are gone, and I would love to revisit a part of my past again. I’m really destroyed about what has happened to the series, and I would like to view it again :(
Just a wonder: Why don't you make a Collider Component to unify box, sphere, mesh... colliders and choose the collision shape inside the component?
@peter1745dev
3 жыл бұрын
You definitely can, but the amount of memory the entity would use in that case is not just that of a box collider, but that of a box collider, sphere collider, capsule collider, and mesh collider. You would end up using a lot of unnecessary memory
Hey cherno, just wondering what you use for c# do you use mono?
i have a question when hazel is done will it be freely available to make games with like unity or unreal
The main question is "What can Hazel do, that can't do other engines?"
@betterfly7398
3 жыл бұрын
You seem like you don't know that the purpose this engine is made for is to teach others how engines are made. Add to that it's written and maintained by one person, afaik.
@dudenarima2528
3 жыл бұрын
@@betterfly7398 as i know it was just pet project, that turned to smthing serious
Hey Cherno, would it be possible to make a video/series on how to integrate a physics library like bullet or nvidia physx to your opengl project ?
Kinda off-topic: Do you think you will ever make videos about algorithms? BFS,DFS,Flocking and such. Going in detail how to use them?
Nice ;D
thank you peter seventeen forty five
peter 🙌🏼🙌🏼
Woah 3d is out!? Looks like ive got some catching up to do...
What your thoughts on dreams have you played/used it
How's it with non-convex colliders? I know Unity had to remove support for non-static concave colliders because of PhysX dropping support, is there an optimized way to still have them?
@peter1745dev
3 жыл бұрын
Yeah sorry, non-convex colliders doesn't work with Dynamic actors. I tried to find a way of supporting it, but the actor has to be either Kinematic or fully static. Really annoying that PhysX doesn't support it, but there's a good reason for it: non-convex colliders are heavy in terms of collision computations. Sorry.
@GreenDave113
3 жыл бұрын
@@peter1745dev Thanks for the answer! No need to apologize, I understand, I'm aware of the computation requirement. Strange that it was allowed before.. But that made me wonder, how do VR games like Boneworks (made in Unity) do concave colliders like for empty trashcans and such, of which the game is full. Is there an industry standart way of doing these colliders, or is it just using a bunch of boxes or multiple convex mesh colliders?
@peter1745dev
3 жыл бұрын
@@GreenDave113 I'm not sure exactly how they do it, but I think the best way to do something like that, and the way Boneworks most likely did it, is using multiple convex colliders
I was so excited to learn how physics engines work under the hood, but... PhysX it is. Also isn't Bullet more advanced than PhysX?
does cherno go over the code for rigidbody and gravity physics?
how do you render the GUI ?? .. do you create a framebuffer for every view and render to it (to keep the performance) ?? .. or you just render every view every frame ?? because Im building my own game engine too 😅 .. and I couldn't make a decision about how to render the UI
@DFPercush
2 жыл бұрын
You can see the term "imgui" come up in his engine sometimes, that gives you a clue. It's probably putting the gui elements into a vertex/element buffer and then rendering that like a model with an orthographic projection. You could theoretically use a different render target or a texture and do a post-processing pass to overlay it, but it's probably not that expensive to just render the gui every frame unless you have some insane widget counts and lots of textures. Did you ever get something working?
How/Where do you know how to implement these features do you research the methods or is it something you already know, if not then could you provide some resources for use to have a look at?
@peter1745dev
3 жыл бұрын
Documentation, I know it can be really boring to just read a bunch of text, but for any library you find you should really look at the docs :)
What an interesting project! Could you make a card game with your Hazel engine? Would it reach the level of Hearthstone?
Finish this video ,Now i am waiting the next video ,😂
Is this the Focusrite Scarlett 2i2 there?
Say I want Sonic to run on any surface walls ceilings ramps ect could I use physic and just remove the gravity so he sticks to the ground? Then do a raycast so when he doesn't detect ground underneath him apply the gravity?
The editor is starting to look like Unity!
Where's the impact energy restitution physics?
Is there a specific reason you use an old version of Windows?
I am not a game developer, but I would like to point out that it will be better to have slight bounces of the cubes and spheres when they meet the terrain.
I still do love cherno work and I do respect the choices. I would only share my opinion here as a feedback because I can't send it in private and I hope it may be kinda constructive feedback. I haven't been watching cherno videos anymore because this stream format doesn't teach me anything. I understand people chating in gaming streaming, but I can't watch like 3 hours on twitch and maybe learn something random. I miss c++ series, and I miss the original format of this series because I could follow along. maybe it's just me,l and it's ok. I respect cherno work, he is an awesome explainer and doing both things, YT videos and the engine at the same time is probably impossible and he is trying his best. anyway, I wish Cherno good luck on his journey and thank him for his work
Well these physics are very basic and simple, but there are more physics you need to add. And more meshes or objects
Can you change the density of objects?
Is the plan to make this a viable open source alternative to Unity? Cause it looks like Unity, but in C++... which is beautiful.
It would be nice if you add a little camera preview somewhere around the corners so you can actually see what will be shown on the screen without need to click Play everytime. EDIT: Your engine interface looks very similar to unity interface.
@peter1745dev
3 жыл бұрын
Camera preview is something that's being worked on by another guy at the moment so it will be added eventually. We take inspiration from both Unity and Unreal in terms of interface since there's no point in reinventing the wheel and it makes it easier if someone who is familiar with Unity or Unreal wants to take a look at Hazel :)
Oh also I am new to following hazel, but this it allow for c++ scripting?
Hello, instead of C# you could use AngelScript
Hello, happy new year cherno. I'm following your opengl video series. I want to take a very bad optimized game in wich fps drops when there is more than 3 objech on screen, no matter how powerfull cpu you have. (The game do not use gou even). Can i take the game and change the way it behave in it render engine? Let say, batch rendering all texture in oce. And also. Can you make a char or data, comparing the use of 10000 drawcalls, vs 1 drawcall with 10000 objects in fps, cpu and gpu?
Наконец-то
How do you feel about Razer using your game engines name for their new respirator?
Custom physics resolvers or you integrated third party?
will you be running the physX engine on a GPU?
@peter1745dev
3 жыл бұрын
Hi! To my knowledge PhysX only supports GPU physics (e.g CUDA Physics) on NVIDIA GPUs. It will probably be something that Hazel takes advantage of in the future, but it's most likely not going to be a thing for quite some time since it would require a lot of restructuring of the code.
@mastershooter64
3 жыл бұрын
@@peter1745dev no I'm pretty sure physX supports CPU physics because there are plenty of physics based games made on unity(which uses physX) that mainly uses CPU
@peter1745dev
3 жыл бұрын
@@mastershooter64 Sorry if I was a bit unclear, PhysX mainly runs CPU side, but GPU physics is only supported on NVIDIA GPUs because GPU physics is done via CUDA, which only works on NVIDIAs GPUs. So AMD cards would not be able to take advantage of GPU physics when using PhysX
@peter1745dev
3 жыл бұрын
@@mastershooter64 So computers that have and AMD GPU would only use CPU side physics :)
@mastershooter64
3 жыл бұрын
@@peter1745dev oh sorry no it's my bad, I didn't read it properly "To my knowledge PhysX only supports GPU physics (e.g CUDA Physics) on NVIDIA GPUs" "So AMD cards would not be able to take advantage of GPU physics when using PhysX" that's exactly why I was asking it. can you make it so that physX fully utilizes an NVIDIA GPU, like running all the physics on a GPU? from what I've read, only something like cloth simulations and stuff use GPU
power programmer!
What happened to the tutorial series?
Are you using open gl?
you could turn hazel into a renderer engine for artists, similar to marmoset toolbag but with physics and other functionalities.
@theairaccumulator7144
2 жыл бұрын
blender?
@jonnyabatti5120
2 жыл бұрын
@@theairaccumulator7144 just a renderer, could fulfill a little niche similar to marmoset toolbag. Maybe even provide better scripting opportunities with shaders and all.
Implement reimport button for assets
Cherno, how can I get this AMAZING theme of your editor for vs code?
@homelikebrick42
3 жыл бұрын
He uses visual studio
@hugoalmeida1291
3 жыл бұрын
@@homelikebrick42 Yeah, that's the IDE, but I want to know what is the theme of his syntax highlighting. This one has much more colors than mine on vs code.
I am pretty sure that your name is not "The Cherno". Otherwise nice content :D
Isnt PhysX only for nvidia gpus and it cripples for cpus
@gileee
3 жыл бұрын
It used to be, although PhysX does all of the physics logic on the CPU anyway of course. Only bulk calculation is done on the GPU. It's open-source now so if they haven't already made use of GPU acceleration on AMD (through OpenCL or whatever) it's a matter of time.
This exactly looks like unity engine
@cpaul3409
3 жыл бұрын
he is an unreal dev :)
@vinyas0795
3 жыл бұрын
@@cpaul3409 his engine looks like unity
Hazel Always Gonna be Open Source....? Cause.... That would be awesome....
@stephen9849
3 жыл бұрын
Only the game engine series version of Hazel is open source, the other one (shown is this video) is available only on Patreon
Hold on...when did Star-Lord start making games?
Cyber punk should use some of those physics