No video

6 MONTHS WRITING A GAME ENGINE IN C++ | Devlog #1

  Рет қаралды 52,266

voxelbee

voxelbee

Күн бұрын

Пікірлер: 138
@Goodgis
@Goodgis 3 жыл бұрын
Woah! I was trippin' at the end when you kept zooming closer to the corner. Haha This looks sweet!
@voxelbee
@voxelbee 3 жыл бұрын
Thanks man. It is quite trippy zooming in so far haha
@olivervoss3196
@olivervoss3196 3 жыл бұрын
Looks like mandelbrot zoom
@marsclose7985
@marsclose7985 3 жыл бұрын
That is an amazing start from scratch in six months. I'm really excited to see what happens over the next few months.
@dorianmajerowski7895
@dorianmajerowski7895 3 жыл бұрын
you got yourself a new fan buddy, what you've done in 6 months is really impressive
@voxelbee
@voxelbee 3 жыл бұрын
Thanks so much! :)
@kanikabhatia9865
@kanikabhatia9865 3 жыл бұрын
You deserve much more than what you have got. Keep it up, I am with you.
@hectorragofi3640
@hectorragofi3640 3 жыл бұрын
That looks amazing my dude !
@voxelbee
@voxelbee 3 жыл бұрын
Thanks, man !
@jimmykrochmalska3501
@jimmykrochmalska3501 6 ай бұрын
Dudes so good at making voxel rendering engines he even got one on his wall
@timokha2462
@timokha2462 3 жыл бұрын
This is really cool! There aren't that many Voxel engines, but this one looks very promising. Keep working on it!
@dutchplayermc
@dutchplayermc 3 жыл бұрын
The way you explain this kind of things that are super complicated, is f. amazing... I don't know how did I get here, but I'm sure I'm going to stay lmao
@ja100o
@ja100o 3 жыл бұрын
This is plain awesome! The level of detail at 7:32 made my chin drop💪
@LuchoGamingLB
@LuchoGamingLB 3 жыл бұрын
Dude you're a legend, keep up the amazing work and passion!
@Skeffles
@Skeffles 3 жыл бұрын
This looks great. I can't wait to see what it's like with ray tracing.
@stevesprogramming5941
@stevesprogramming5941 3 жыл бұрын
Man !!!!!!!.. this is really nice , am so happy for you , really excited to you watch in this journey Really NYC man
@voxelbee
@voxelbee 3 жыл бұрын
Thank you so much bro. Glad you like it :)
@pastor1114
@pastor1114 3 жыл бұрын
I am exited to see how this goes
@SpencerYonce
@SpencerYonce Жыл бұрын
DUDE THIS IS INSANE!!! You are extremely talented man, and have given me more motivation to keep pushing on with my own game engine
@theburgerbox9576
@theburgerbox9576 3 жыл бұрын
This is unbelievable! The fact that you were able to build this all from scratch in just 6 months is amazing! You are so talented
@publicalias8172
@publicalias8172 2 жыл бұрын
Pure talent, thanks for sharing your progress I love this stuff.
@t3v727
@t3v727 3 жыл бұрын
It's always nice to see other people making devlogs :) When it's a sweet and nice working voxel engine then it's even way better. Looks pretty neat, well done :)
@Fidelity_Investments
@Fidelity_Investments 3 жыл бұрын
3 seconds and you hit me with a jarvis johnson
@Fidelity_Investments
@Fidelity_Investments 3 жыл бұрын
1 month later I realize I spelled johnson with an i.
@yvindharboe7048
@yvindharboe7048 3 жыл бұрын
I'm so used to seeing all these 3d games and applications. Since there's so much of it and I take it as granted, I'm thinking: how hard can it be? Kinda like watching soccer on TV :-)
@oblivion_2852
@oblivion_2852 3 жыл бұрын
Really interesting video. I've just been struggling to learn opengl shaders and whatnot and you're out here writing a voxel rendering engine. Great work. I'm 21 just graduated computer science and feel like I have a lot to learn
@voxelbee
@voxelbee 3 жыл бұрын
Thanks! The shaders can be a struggle for sure. I'm in my second year of computer science so i'm excited to see how it goes. Good luck with your projects!
@catapillie
@catapillie 3 жыл бұрын
such a great start! i got this video recommended by youtube and i like it!
@good4710
@good4710 3 жыл бұрын
I was recommended this, then I ended up watching the entire dev logs. Keep doing what your doing!!
@Adrianensis
@Adrianensis 3 жыл бұрын
The job you're doing is awesome! ;D I'm also trying to make some devlogs in my channel, about my C++ 2D Game Engine! Keep up that great job, I'm glad to learn more about the game engine!
@demetriuslewis6750
@demetriuslewis6750 3 жыл бұрын
you've inspired me to want to learn Vulkan. Well done my dude!
@pathfinder750
@pathfinder750 3 жыл бұрын
Ahh it's nice to sub to someone who hasn't blown up yet. It feels like I'm along for the ride
@rocknroll113
@rocknroll113 3 жыл бұрын
Got those voxel led wall lights rendered well. Great vid
@voxelbee
@voxelbee 3 жыл бұрын
Haha thanks man
@badpotato
@badpotato 3 жыл бұрын
oh.. it is really nice to see a lot of programmers sharing their work on youtube. :)
@nonnullptrhuman504
@nonnullptrhuman504 3 жыл бұрын
This is awesome!
@sjoerdev
@sjoerdev 3 жыл бұрын
This is absolutely incredible!
@oglothenerd
@oglothenerd Жыл бұрын
I am making a voxel game in Rust with the Bevy engine! It has a really nice ECS system.
@melkenhoning158
@melkenhoning158 3 жыл бұрын
This is already hard enough to pull off in other graphics APIs but Vulkan? Impressive dude!
@voxelbee
@voxelbee 3 жыл бұрын
Thanks man! You should be able to do the same thing in DirectX or Metal. Not sure about OpenGL though.
@ThankYouESM
@ThankYouESM 3 жыл бұрын
Now subscribed... even though my OCD very kicked in a few times, especially with the handwriting.
@saidfarahani8207
@saidfarahani8207 3 жыл бұрын
Wow that looks amazing. could you please link the most usefull resources that helped you create this ?
@voxelbee
@voxelbee 3 жыл бұрын
Thank you :) this website is very helpful to learn Vulkan to render stuff: vulkan-tutorial.com/ This was very helpful too for ray casting information: three-eyed-games.com/2018/05/03/gpu-ray-tracing-in-unity-part-1/ And just looking at what other people have done search on Google voxel octree renderer useful stuff there!
@Nuvhandra
@Nuvhandra 3 жыл бұрын
Great job, looks very good. Gotta get into Vulkan, seams very cool API
@EMB3D
@EMB3D 3 жыл бұрын
awesome, great choice of tools
@OversizedPringleToe
@OversizedPringleToe 2 жыл бұрын
Quite the effort. 🤓
@mathusuthanvenkatesan
@mathusuthanvenkatesan 3 жыл бұрын
a pretty difficult feat you have achieved. good work sir.
@olikat9774
@olikat9774 3 жыл бұрын
damn this is pretty cool, reminds me of teardown and early sapiens devlogs (by Dave Frampton)
@voxelbee
@voxelbee 3 жыл бұрын
Thanks so much. I really like teardown (physics will be coming!) And sapiens devlogs are really cool.
@zblurth855
@zblurth855 3 жыл бұрын
well i will follow this dev blog with a lot of attention,
@woxelgamedev8782
@woxelgamedev8782 3 жыл бұрын
Very Cool!
@vlandemart
@vlandemart 3 жыл бұрын
Thats pretty neat!
@BilionairScientist
@BilionairScientist 3 жыл бұрын
looks awesome!
@ausilliam
@ausilliam 3 жыл бұрын
Awesome work!
@liskov7983
@liskov7983 3 жыл бұрын
So amazing! How did you start working on this project? I mean, you somehow decided to use Vulkan and you knew about different rendering techniques and which one to use for the project. And you mentioned that you started from scratch and it took 6 months. It's really impressive, could you give me some advice on how to start? :D
@voxelbee
@voxelbee 3 жыл бұрын
Thanks! Well I started by reading the Vulkan tutorial at: vulkan-tutorial.com/ It took me a while to understand what was going on though! Also join the Discord server for some other resources: discord.gg/uV6KwfYmwn
@mrgps4393
@mrgps4393 3 жыл бұрын
better that an addictive gps map survey
@Signforfame
@Signforfame 3 жыл бұрын
Just wondering were can I find the footage of AC without textures, looks mesmerizing
@voxelbee
@voxelbee 3 жыл бұрын
This guy has some good videos: kzfaq.info/get/bejne/qtOUrc6DstmvZYk.html
@Taggua
@Taggua 3 жыл бұрын
Awesome work 👍
@pollovaldes
@pollovaldes 3 жыл бұрын
How can you do this, I struggle with just creating a window LMAO :/, Btw, great result
@voxelbee
@voxelbee 3 жыл бұрын
Thanks! I know the struggle took me a while too lol
@4Bakers
@4Bakers 3 жыл бұрын
LOD Sizes are descending if I'm not mistaken LOD0 is the highest res, and each number up us lower in detail
@voxelbee
@voxelbee 3 жыл бұрын
Yeahh you are actually correct made a mistake in the video there. Didn't notice that.
@hamad.learns
@hamad.learns 3 жыл бұрын
dig those speakers 😉!
@chetana9802
@chetana9802 3 жыл бұрын
Awesome bhai awesome
@rosva4331
@rosva4331 3 жыл бұрын
You're amazing.
@jatinoham
@jatinoham 3 жыл бұрын
Great ! so when you will send us the link to download it
@voxelbee
@voxelbee 3 жыл бұрын
I'm not planning to release a download anytime soon... But maybe something in a few months!
@noapoleon_
@noapoleon_ 3 жыл бұрын
Didn't watch the whole video yet (I'm at 2:46) but damn I never heard about this technique ray casting. So does it mean that it only computes the first object that hits the ray and discard anything behind that first object?
@voxelbee
@voxelbee 3 жыл бұрын
It's really good for fast rendering. Yeah it discards anything behind it and only uses the first object for the color.
@noapoleon_
@noapoleon_ 3 жыл бұрын
@@voxelbee Ok that explains how you can have so many obhects in your scene then xD I was confused
@Heknon
@Heknon 3 жыл бұрын
@@noapoleon_ you'd probably use 3d perlin noise for procedural generation, right 🤔
@noapoleon_
@noapoleon_ 3 жыл бұрын
@@Heknon mmmh i dont think this is perlin noise. it looks more like a fractal to me so probably some equation
@Heknon
@Heknon 3 жыл бұрын
@@noapoleon_ nono I'm talking in general since he is planning on creating a voxel game Even though this guy made some crazy stuff so if he doesn't use perrin noise for procgen I just wouldn't be surprised
@lankymoose1831
@lankymoose1831 3 жыл бұрын
Awesome video, engine looks sick. A little less hand stuff when you're doing your intro please lol. +1 sub :D
@voxelbee
@voxelbee 3 жыл бұрын
Glad you like it, and yeah I'll cut that down a little haha. Thanks for the tips!
@yvindharboe7048
@yvindharboe7048 3 жыл бұрын
Our workstations at the office now has 64 cores and 128 threads. So with single threading, you're using
@voxelbee
@voxelbee 3 жыл бұрын
I'm designing the core of the engine to be able to be entirely multithreaded because then I could uses computers like that. My next update should hopefully have that all working :)
@yvindharboe7048
@yvindharboe7048 3 жыл бұрын
@@voxelbee Having never programmed a GPU, I was not clear on the distinction between C++ and GPU programming. Is this written in GPU programming(shaders?) or C++ or both? How much of the time is executed by CPUs vs. GPUs? Also, I don't know the difference between multithreading/multicore programming on GPUs vs. multithreaded/multicore CPUs.
@voxelbee
@voxelbee 3 жыл бұрын
@@yvindharboe7048 Yeahh so all of the rendering is done on the GPU using shaders this takes about half of the current frame time or less. Then the CPU is generating the scene and sending that to the GPU this could be done in multiple threads speeding up the scene generation time and therefore the FPS.
@yvindharboe7048
@yvindharboe7048 3 жыл бұрын
@@voxelbee I see. en.wikipedia.org/wiki/Amdahl%27s_law comes to mind :-)
@jacobthomas4020
@jacobthomas4020 3 жыл бұрын
i love this! wow! is your multithread support going to support the max the user has or a fixed amount
@Acetix
@Acetix 3 жыл бұрын
That's so cool! I want to make a voxel game on my own someday too. Do you have some sources that helped you in the process or some starting points?
@voxelbee
@voxelbee 3 жыл бұрын
Well if your interested in working with Vulkan I would recommend vulkan-tutorial.com/ as they have lots of information there! I would also recommend looking at other voxel projects people are making too cause there's lots of inspiration out there.
@Acetix
@Acetix 3 жыл бұрын
@@voxelbee Thanks
@TagetesAlkesta
@TagetesAlkesta 3 жыл бұрын
Have you ever heard of ray marching? Combining that with a voxel engine could be very interesting.
@sneakyfatcat
@sneakyfatcat 3 жыл бұрын
Have you been doing this on top of work in your free time or do you work on this full time? Also how do you handle the cubes, are they just distance functions or polys? Good stuff
@voxelbee
@voxelbee 3 жыл бұрын
I'm currently studying at University so I work on this in my free time! The cubes are ray-casted in an octree!
@sneakyfatcat
@sneakyfatcat 3 жыл бұрын
@@voxelbee Very nice! I'll need to catch up on your other dev log videos, I'm in the same boat as you. Finishing up school rn and started a simple engine a while back but I'm about to scrap it and start over.
@geekonarium
@geekonarium 3 жыл бұрын
If you divide all voxels into groups, couldn't raytracing skip certain regions if they are empty? Maybe 10 times 10 voxels in a group. And then you could divide these groups into larger groups again? These groups has a flag if they are empty or not. Also light rays could overjump empty cells. Would this bring any performence benefits? Just guessing. Sorry for the noob question :-)
@voxelbee
@voxelbee 3 жыл бұрын
Currently it is implemented using octree ray casting so this does mean the rays skip over empty space very quickly! Very similar to what you said about groups of voxels!
@SkylerLinux
@SkylerLinux 3 жыл бұрын
Have you thought about negative LOD, or do you have to decide what is the biggest/furthest away you want, and then go smaller?
@voxelbee
@voxelbee 3 жыл бұрын
The current system uses an LOD!
@projecteidolononlinenft1988
@projecteidolononlinenft1988 2 жыл бұрын
hey voxel bee! love the engine, I also was considering creating a voxel engine for a "minecraft"-like survival game. I have no idea where to learn vulkan, but I'd love to try it out? do you know any good learning resources for vulkan??
@zaneg
@zaneg 2 жыл бұрын
You could check out “The Churno” KZfaq channel. He should have some good videos on Vulcan.
@chechitomata
@chechitomata 3 жыл бұрын
eres un genio
@breadpebbles2603
@breadpebbles2603 3 жыл бұрын
I was wondering what platform your on(windows Linux Mac) and what text editor/IDE do you use?
@voxelbee
@voxelbee 3 жыл бұрын
I currently develop on Mac using Xcode
@federicoalbesa3748
@federicoalbesa3748 3 жыл бұрын
Q maestro!!!
@loufi7175
@loufi7175 3 жыл бұрын
Nice
@hectorragofi3640
@hectorragofi3640 3 жыл бұрын
Also are you going to make this engine available to everyone in the future like unreal?
@voxelbee
@voxelbee 3 жыл бұрын
I haven't fully decided yet but if it goes well that probably will happen.
@santiagobarbosa615
@santiagobarbosa615 3 жыл бұрын
Hey! I'm really interested in trying to make something like this on my own. What resources did you use to learn about voxels and vulkan?
@voxelbee
@voxelbee 3 жыл бұрын
Hey! I would start trying to learn vulkan with vulkan-tutorial.com/ and I mostly looked up on google voxel traversal papers and read about them
@primalaspid7197
@primalaspid7197 3 жыл бұрын
amazing 👌👌👌
@nutme
@nutme 3 жыл бұрын
You card needs to support the VK_KHR_ray_query extension to do this didn't? T_T
@voxelbee
@voxelbee 3 жыл бұрын
Well I've written my own custom ray casting so no VK_KHR_ray_query required
@ABHISHEKSINGH-nv1se
@ABHISHEKSINGH-nv1se 2 жыл бұрын
Did you had any graphics experience before starting this vulkan game engine???
@soviet-doge3370
@soviet-doge3370 3 жыл бұрын
you deserve more subs lmao, i subbed too
@TheSgrizli
@TheSgrizli 3 жыл бұрын
Did you know how to code before this or did you also learn it all in 6 months?
@voxelbee
@voxelbee 3 жыл бұрын
I've been coding for around 5-6 years now. But learnt most of Vulkan I know in this 6 months...
@watercat1248
@watercat1248 3 жыл бұрын
Nice jobe but what you have planned to make for these engine?
@negrastormentas2865
@negrastormentas2865 3 жыл бұрын
Have you considered using compute shaders?
@voxelbee
@voxelbee 3 жыл бұрын
I have this is currently all being done in compute shaders!
@negrastormentas2865
@negrastormentas2865 3 жыл бұрын
@@voxelbee Sweet. Do you know if it would work as well with opengl compute shaders ?
@voxelbee
@voxelbee 3 жыл бұрын
@@negrastormentas2865 The rendering would but the systems around like loading voxels ect. might be quite a bit slower. I'm not sure how much slower though.
@Psychx_
@Psychx_ 3 жыл бұрын
When you say you freshly learned C++ and Vulkan, which programming knowledge did you have before?
@voxelbee
@voxelbee 3 жыл бұрын
I had some knowledge with C++ but not much mostly with Java!
@Psychx_
@Psychx_ 3 жыл бұрын
@@voxelbee That's quite the jump then. Going from managed high-level programming to lowlevel graphics programming and doing the memory management yourself is awesome. Can you recommend any literature?
@vitorbarrosaschama2277
@vitorbarrosaschama2277 3 жыл бұрын
im making a c++ game engine too, but not in vulkan! lol, thats hard.
@voxelbee
@voxelbee 3 жыл бұрын
Good luck! Yeah it is quite a challenge! lol
@finnvictorsson
@finnvictorsson 3 жыл бұрын
It's xqc PagMan
@dottedboxguy
@dottedboxguy 2 жыл бұрын
why isn't anyone marching their rays :( it's good too
@aSameplayer
@aSameplayer 3 жыл бұрын
Ich liebe dich!
@MarkusBurrer
@MarkusBurrer 3 жыл бұрын
You should have use Rust instead of C++. This would make multithreading much easier
@linovermac
@linovermac 3 жыл бұрын
*_Please, Source Code github link_*
@voxelbee
@voxelbee 3 жыл бұрын
I'm not planning to release the code anytime soon maybe when the project has progressed further. Thanks though :)
@linovermac
@linovermac 3 жыл бұрын
@@voxelbee Thanks:)
@MehmetSarkd
@MehmetSarkd 3 жыл бұрын
Check John Lin bro. He can inspire you.
@voxelbee
@voxelbee 3 жыл бұрын
Yeah I really like what he's working on!
@bigboibob2568
@bigboibob2568 3 жыл бұрын
Who disliked this video??
@Phiwipuss
@Phiwipuss 3 жыл бұрын
British
@madscience6283
@madscience6283 3 жыл бұрын
Scripts, buddy, scripts
MAKING A GUI IN MY GAME ENGINE | Devlog #2
5:01
voxelbee
Рет қаралды 15 М.
Adding A CACHE To My Custom VOXEL Game Engine  | Devlog #5
6:54
Zombie Boy Saved My Life 💚
00:29
Alan Chikin Chow
Рет қаралды 27 МЛН
ROLLING DOWN
00:20
Natan por Aí
Рет қаралды 11 МЛН
Incredible Dog Rescues Kittens from Bus - Inspiring Story #shorts
00:18
Fabiosa Best Lifehacks
Рет қаралды 27 МЛН
I Spent 100 HOURS Making a Game With NO GAME ENGINE
13:42
Fuelvin
Рет қаралды 337 М.
I made my game engine
5:28
Benjamin Blodgett
Рет қаралды 30 М.
How I Made My Game Engine 6x Faster! | Devlog #8
6:25
voxelbee
Рет қаралды 39 М.
Epic's Unreal Optimization Disaster | Why Nanite Tanks Performance!
13:07
Threat Interactive
Рет қаралды 89 М.
I Optimised My Game Engine Up To 12000 FPS
11:58
Vercidium
Рет қаралды 649 М.
A new way to generate worlds (stitched WFC)
10:51
Watt Designs
Рет қаралды 525 М.
Loading VOXEL Models Into My Game Engine | Devlog #6
5:32
voxelbee
Рет қаралды 36 М.
INFINITE ZOOM IN MY C++ GAME ENGINE | Devlog #3
7:13
voxelbee
Рет қаралды 73 М.
Zombie Boy Saved My Life 💚
00:29
Alan Chikin Chow
Рет қаралды 27 МЛН