Тёмный
No video :(

Making my Voxel Engine Really Fast 

Tooley1998
Подписаться 33 тыс.
Просмотров 137 тыс.
50% 1

Wishlist Lay of the Land on Steam: store.steampow...
Support development and play the game early: / tooley1998
Hey everyone. A bit of a different video for today. I’ve been making some improvements to the voxel engine in my game. I've made use of GPU Compute to accelerate voxel data generation.
This basically speeds up everything from mesh generation, voxel physics, fire/water simulation etc. I think the results speak for themselves.
linktr.ee/tool...

Опубликовано:

 

25 май 2023

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 438   
@Tooley1998
@Tooley1998 7 месяцев назад
Wishlist Lay of the Land on Steam :) store.steampowered.com/app/2776090 Support development and play the game early: www.patreon.com/Tooley1998
@cwinchcarwash2629
@cwinchcarwash2629 Год назад
it's prob not a priority rn, but i'd love to eventually see walking smoothed out. so its not all bumpy thanks to each tiny block
@FireNLightnin
@FireNLightnin Год назад
I was thinking this same thing. I recommend using a logistic curve to interpolate the camera and smooth out the bumps from walking. This would allow the camera to move slowly at the beginning and end of the movement, but still move quickly in the middle of the movement.
@puppergump4117
@puppergump4117 Год назад
@@FireNLightnin Or instead of teleporting the player up it could just create a slope to walk on.
@Deathington.
@Deathington. Год назад
​@@puppergump4117 take this one back to the drawing board
@puppergump4117
@puppergump4117 Год назад
@@Deathington. There's no issue with it, as it will be temporary and reevaluated as you move. The "slope" itself is simply saying you move diagonally at some min and max angle and your y position increments slowly like a polished game instead of sharply teleporting like a dull game. I mean, it's so simple, just replace teleporting events with some interpolated y movement. idk why people have difficulty with this lol
@zentoa
@zentoa Год назад
@@puppergump4117 performance but camera smoothing would not have as much performance problems if at all
@JackAllpikeMusic
@JackAllpikeMusic Год назад
I am pretty blown away with how on earth you managed to do this. I don't know an awful lot about computing things on the GPU - but it seems really difficult, especially with just how the GPU works - not really having access to much information outside of each individual calculation.
@Tooley1998
@Tooley1998 Год назад
Thanks 🙂. I made my system in such a way where I don't need any neighbour information to generate a voxel
@havenselph
@havenselph Год назад
@@Tooley1998 I'm extremely curious as to how you've tackled that? Do you mean actually terrain generation doesn't require information about neighboring cells, or the rendering doesn't? No matter what, this is beyond my level of understanding and just really impressive. Great job!
@beholdergamedesign
@beholdergamedesign Год назад
​@@havenselph I've worked on a similar project. The physics system here obviously would require information about neighbouring cells, everything else can just refer to the world gen data (a bunch of noise maps and random vector fields basically). Some structures would need to know data about the cells they want to replace, but not neighbor data.
@Lingu42
@Lingu42 Год назад
@@havenselph Terrain generation itself can use a noise function (like Perlin or Simplex noise), which does not need information about neighbouring cells. But I think when it comes to objects like plants it gets more difficult.
@arbitervildred8999
@arbitervildred8999 Год назад
I'm also working on a game and i was using my CPU to do all the frame updates, objects placement, computing and stuff. Got to the point i had too many thing going on and had to switch to GPU, honestly there was not much to change, just some flags for my window, made a new virtual screen where i would render everything with my GPU and then pass it back to original window. was a weird code injection but hey, it works and i don't have to touch that part ever again xD. the neat part is that i can use steam overlay now, post-processing, masks and shaders
@emberdragons8244
@emberdragons8244 Год назад
i absolutly got shocked by the water and fire simulation....absolutly amazing
@rowanw5912
@rowanw5912 Год назад
To get rid of the lag when the player creates floating voxels you could start the query with voxels adjacent to the ones last edited. Doing it this way could also prevent having to search the whole area for floating geometry.
@player6769
@player6769 Год назад
exactly what I was thinking. although I suppose he might already be doing that
@squffed
@squffed Год назад
this game development journey you're on is fantastic and am looking forward to the final product!
@rubenhillier770
@rubenhillier770 Год назад
So lovely to see you also focus on optimisations. Love this project.
@tim265
@tim265 Год назад
Here is a trick for you to make the 60ms the gpu takes at 2:00 appear instant: create an animation when the user destroys blocks (for example the blocks disappear one by one or vanish in some way) that takes about 50ms :) then the physics calculation (gravity) would feel instant
@Jmac2110
@Jmac2110 Год назад
smart
@hoveringgoat8061
@hoveringgoat8061 Год назад
Theres gotta be an easier way to check two grids are not connected that takes less than 50ms. Thats an eternity. I'm confident you could do this in under a frame
@duckner
@duckner Год назад
@@hoveringgoat8061 you do it
@bobsmithy3103
@bobsmithy3103 Год назад
@@hoveringgoat8061 In the game Ace Of Spades - a fps with minecraft building mechanics - they allowed players to collapse buildings with thousands of blocks instantly. There is a way but idk how'd they do it. I myself was kinda stuck on how to code a basic 2d version of it. If anyone knows a good way pls let me know.
@ayylmao.mp3
@ayylmao.mp3 Год назад
@@bobsmithy3103 my first instinct would be to utilize a tree data structure that would show which blocks rest on top of which others. Then if you destroy a node then it'd be easy to propagate the change or lack of parent node to the others.
@io6619
@io6619 Год назад
I am astonished you only have 3600 subscribers and so little support for this game. This is incredible and transcends Minecraft in every way, you’re definitely going to succeed if you keep this up!
@blvckbytes7329
@blvckbytes7329 Год назад
If they manage to create an equally good or even better atmosphere than Minecraft, I'm in. Imagine this game with a proper modding system, without having to fight obfuscation. Just writing mods and plugins, building a huge community and exploring everything the game has to offer. That would be great.
@ShiroCh_ID
@ShiroCh_ID 10 месяцев назад
the fact that this guy have the same trial and error notch has on his YT Channel on the past can speak itself that this game can or may became the next "Minecraft"
@cutiestcutcat514
@cutiestcutcat514 Год назад
Definitely a hidden gem. It's definitely not minecraft despite what RU-vid might call it.
@Greg-J
@Greg-J Год назад
This is really cool. It still looks like you're going to need an absolute monster of a PC to run a game made with this once you have environmental stuff going on where there are ticking entities.
@CatDevz
@CatDevz Год назад
Man videos like this always make me want to get into graphics programming, but at the same time it just seems so damn difficult. Awesome video, keep up the great work.
@ethanfullmer5547
@ethanfullmer5547 Год назад
I'm saddened that this is the first video of this project that was suggested to me, but your game looks awesome! I love games that feel like the world interacts with you, but of course those are also really hard to design and make work logistically. This video seems to be doing well, so hopefully this will get you some good attention! Great job!
@ThatTrueCJ201
@ThatTrueCJ201 Год назад
I would love to see a technical deep dive into some of the challenges and inner workings of this engine! I'm genuinely blown away at how performant and beautiful the graphics and physics looks 🙂👍
@largiegorgle
@largiegorgle 3 месяца назад
Im pretty sure its developed in unreal engine 5, which is designed to run great looking graphics as efficiently as possible
@BobzBlue
@BobzBlue Год назад
What I learned from coding in scratch is that ray casting directly with the tile information is faster than having a sort of hitbox middle man like a mesh. Probably only applicable to RT, and that's in contrast to scratch's hit detection.
@squashbanana
@squashbanana Год назад
I really like this idea, reminds me of teardown but with survival haha
@ChuckSploder
@ChuckSploder Год назад
and magic and exploration and enemies
@DoktorSus
@DoktorSus Год назад
Bro is really out here showing us the best game to be made since 2019 bit by bit and I am already ridiculously excited.
@wetstoffels3198
@wetstoffels3198 Год назад
I have to say this looks gorgeous. The higher fidelity (sub-voxels? texels?) of the blocks makes it look infinitely better than other voxel games like Minecraft or Cube World.
@Quaz-jinx
@Quaz-jinx Год назад
wow! i’ve dreamed of making a voxel survival game but don’t know enough to make one yet, it’s cool to see it be done!!
@ImpossibleEvan
@ImpossibleEvan Год назад
I forgot the name of your channel and finally got it recommended again
@sirdoggydawg8600
@sirdoggydawg8600 Год назад
This looks epic, can’t wait too see where this goes !!
@yndranth
@yndranth Год назад
holy idk why I was recommended this but god damn does this game look beautiful, I'd def play it upon release!
@Luluskuy
@Luluskuy 8 месяцев назад
I can see ur burning passion in this project man! Hope u succeed in your development journey!
@doiman6591
@doiman6591 Год назад
Боже мой! Это шедевр! Надеюсь ты доведешь игру до ума и в будущем в нее можно будет поиграть
@StuffandThings_
@StuffandThings_ Год назад
I don't know what this is or how I ended up here, but holy SHIT. This looks absolutely stunning! I'll definitely be following along to see how this goes. Voxel sandbox games are still loaded with potential and this looks like a really unique and amazing take on the genre.
@M3ladi
@M3ladi Год назад
This is an amazing game even without GPU Compute yet you managed to make it so much better
@Solusire
@Solusire Год назад
Just found your channel and... I think you might actually beat hytale to the punch. I always wanted a more detailed and realistic voxel environment that I could still easily build in with larger voxels. Nice work. Might make a video on this.
@JustDoom
@JustDoom Год назад
damn, impressive. cant wait to see more progress on the game!
@Lordfireballz
@Lordfireballz Год назад
unique suggestion: when breaking the base of structures, calculate the total units on the side which does not make contact with the ground. Then, use a ratio to assign the minimum amount of “bridging” units before triggering a collapse. This way you can mimic the idea that very heavy object can’t be supported by just 1 single unit, and you could build on this program by assigning different support ratios for different material types.
@Sarnahanfi
@Sarnahanfi Год назад
damn, you're voxel world looks beautiful! especially love the water with the gradient to the light blue, reminds me of jamaica
@marc5543
@marc5543 Год назад
This looks incredible dude!
@cosmojev
@cosmojev Год назад
this reminds me of teardown so much! i love these style of games, and great work making the engine run on lower end hardware!
@ChipboardDev
@ChipboardDev Год назад
Bro is making Teardown 2! Jokes aside, this is sick! I love highly optimized voxel tech that allows simulation and modification in abundance.
@kennethsmith5383
@kennethsmith5383 Год назад
I am excited by the progress you have made! Also haha same graphics card.
@captainsmackyou302
@captainsmackyou302 Год назад
The world of your game looks beautiful so far. I will say that the HUD does seem to create a bit of a "minecraft knockoff" vibe, but the general look of the world you are building is fantastic. I hope you come up with a amazing name for the game and sell a billion copies.
@dominicstocker5144
@dominicstocker5144 Год назад
Wow that render distance at that voxel detail and graphical fidelity is mad impressive
@bagenskiii8376
@bagenskiii8376 Год назад
Looks INSANELY promising. Can't wait to see what you come up with. I'd love to support this project in any way I can but I don't see a Patreon. Keep us updated!
@danielbr93
@danielbr93 Год назад
Hi. YT algorithm recommended me this. I do not know game development, so take this with a truck load of salt. Suggestion: When the stone at 2:00 barely hangs on, let very tiny voxels with low resolution fall off of it randomly. This will make it feel like it's barely hanging on. Even with a 60ms delay, it would make it feel better. Anyhow, Godspeed on your game. Love the visuals. PS: If there is a way to stop the jittery camera when walking down a steep hill, that'd be amazing. Like in 0:59.
@MakutaOfficial
@MakutaOfficial Год назад
lol, "my sanity: Optional" I feel that on a personal level
@sebastianfeistl
@sebastianfeistl Год назад
It looks amazing so far. Keep up the good work!
@dvinez01
@dvinez01 Год назад
this looks like teardown... i LOVE teardown... keep it up
@chaosincarnate7304
@chaosincarnate7304 Год назад
This is so cool I cannot wait to play this if it ever gets fully fleshed out and released as a game.
@couldntgivafuk
@couldntgivafuk Год назад
It’s out right now… it’s called minecraft
@ianmeade7441
@ianmeade7441 Год назад
I could imagine a scenario where we get Minecraft 2 in the form of something like this, and then Minecraft 3 with even smaller voxels, and then on and on with smaller and smaller scales of detail until, in the future, we have Minecraft 1000 that just looks real . Younger generations will ask elderly zoomers and millennials why we refer to units of material in Minecraft as "blocks", and we'll have to explain that, back in our day, Minecraft was iconic for having its world completely made of blocks that were half the size of the character. They'll be confused, until we show them what old Minecraft looked like and then they'll wonder how we ever tolerated it. They'll joke about how all the characters and creatures looked like painted carboard boxes (if we still use cardboard), and we'll just say "it had charm". And that's when we'll know we've been alive for too long.
@Zakru
@Zakru Год назад
Only now discovered this through recommended, what an impressive project. Makes me want to learn how to render voxels like that.
@boumapanda7624
@boumapanda7624 Год назад
Nice work ! I loved burning tree part , really beautiful desgins there
@-Average-
@-Average- Год назад
Since I played teardown I thought a game in this style crossed with a game like Project Zomboid would be amazing. The depth and features of PZ with the visuals of this where you could build up a base anywhere you wanted would be amazing. Some kind of mishmash with PZ, this and 7 days to die.
@Stezell
@Stezell Год назад
I realize this might be a lot of work but I think if you smooth out the Z axis when moving it could make movement feel less jarring. Right now, It's like you're teleporting up and down with each step you take to keep your feet to the ground (which makes sense, the ground isn't smooth by design) it's honestly not a problem, moreso a quality of life thing I thought of watching this really cool demo!
@QuariYune
@QuariYune Год назад
I think the biggest reason why more people don't use GPU compute shaders for this (Despite the benefits of parallel execution times) is because of the frame hitches, especially from higher complexity procedural noises. I implemented a procedural generation system in 2D with a compute shader and due to the amount of processing there was an ~160ms frame hitch each time a set of chunks were generated. Of course I could optimize the algorithm a bit more, but when you're doing Warped FBM with high samples on voronoi with nearest points or more complex layered noises, there's no getting around the frame hitch that occurs. And the frame hitch feels a lot worse than lower fps or catching up with terrain generation imo. Thats why I at least just do it all in cpu and leave the gpu budget to effects and higher fps.
@jeremotas200
@jeremotas200 Год назад
Seems like you're making a lot of progress, i hope stuff comes out well, keep the good work up!
@fadinglight7264
@fadinglight7264 Год назад
having some cube craft vibes i love this
@lewismassie
@lewismassie Год назад
This is really cool to see. Though it is funny to see my GPU is still less powerful than the low end you tested here
@lucass_rl8247
@lucass_rl8247 Год назад
I love to see that this game is still progressing, good luck
@Pantheos
@Pantheos Месяц назад
It's funny that I still have the exact same CPU and GPU as well. Must have been a popular choice :D
@randomdiyguy1883
@randomdiyguy1883 Год назад
I love this!!! First reaction is to help out in any way. Keep it up!
@dinok4774
@dinok4774 Год назад
Congrats on going viral!
@janbertus
@janbertus Год назад
you are doing awesome
@fjpdu625
@fjpdu625 Год назад
For me this compenents are still very actual and dear, the most of game should run on 4GB GPU thank to optimisation. Hoverwer, you do a very great work of optimisation. Good continuation 😁😁
@stephenward4935
@stephenward4935 Год назад
Really nice update mate, its looking really good
@aigaro9736
@aigaro9736 6 месяцев назад
That looks actually amazing bro
@mdbgamer556
@mdbgamer556 3 месяца назад
>My sanity: optional Ugh, felt. You're doing good though! :D
@restlessparadox1953
@restlessparadox1953 Год назад
this is so cool :] i havent seen ur other devlogs yet but this seems really impressive to my peabrain
@yumi.8484
@yumi.8484 Год назад
i really like this concept i have an i5 4570 and a gtx 1050, and i can barely run teardown on 1080p at the lowest settings while getting a solid 70 frames but something like cube world gives me no issue at all looking at modern games, usually triple a ones, not a lot of games are optimized, new stuff comes out that most of the time ends up looking worse than what came before with double or triple the computing power required to run it
@aaronmaldonado6562
@aaronmaldonado6562 Год назад
Excellent. Just a small detail, I don't know if it's feasible, but I think it would be better to smooth out the way the explorer falls off the little voxels, so it doesn't look like it's bouncing down the platforms, with a similar solution for climbing.
@TheRealDioBrando
@TheRealDioBrando Год назад
really satisfying seeing things go silky smooth once on the gpu
@lemonlordminecraft
@lemonlordminecraft Год назад
The world is beautiful, can't wait to see what kind of game this engine serves!
@john.dough.
@john.dough. Год назад
Wow! This is an awesome game engine! I wonder if it'd be better suited to a true sandbox like Minecraft, or if it's better suited for a progression oriented game like Terraria. Either way, thanks for sharing! That's amazing!
@indoorjetpacks
@indoorjetpacks Год назад
as someone with an "old by today's standards" cpu, this looks especially incredible :o this is pretty mindblowing even regardless of that
@flory_gamedev
@flory_gamedev Год назад
Can't wait to play your game, hope you post it soon
@jeff_j_chen
@jeff_j_chen Год назад
I somehow came across your channel in my recommend and am blown away. Some tutorials would be amazing!
@LotnyLotnik
@LotnyLotnik Год назад
I though from previous videos that you wrote your own engine, but this is Unreal Engine. I don't know if I'm less impressed or more impressed now
@hunted_games
@hunted_games Год назад
The engine looks wonderful, well done!
@nur-e-amanrefai9038
@nur-e-amanrefai9038 Год назад
Epic video as always. As someone who always wants to play games with friends but is limited by their not being able to play certain games due to hardware, I really appreciate you making playability on lower end devices a priority. I'm sure you've been asked this question before, but I haven't seen it at the top of comments lately. Do you have a name for this project?
@TerkanTyr
@TerkanTyr Год назад
Man, I feel like we're not _that_ far away from a full new Minecraft scale. Teardown got a bit of the way there with a very shallow voxel ground supported on an unbreakable plane. But you've gotten *THICK* voxel masses, and that really matters.
@gabrielchcosta
@gabrielchcosta Год назад
reminds me of a game called "king arthurs gold", a PVP 2d game made of "blocks", teams would battle it out for a flag and build bases. If a structure didn't have support it would all collapse
@Ma-ki-maa
@Ma-ki-maa Год назад
Holy crap this gives me Cube World vibes, If only this turns out to be a better version of that...
@larkind1698
@larkind1698 Год назад
Another teardown? LETS FUCKING GO
@SuperLlama88888
@SuperLlama88888 Год назад
Wow!!! This is a great application of graphics cards! Quick question, how are you rendering millions of voxels? Do you merge them into one giant mesh?
@pr0hobo
@pr0hobo Год назад
dude as soon as this is for sale im buying it, id pay upwards of 60 bucks
@ArielLothlorien
@ArielLothlorien Год назад
Very impressive! I am excited to see where you go with this project. Just please remember to actually make it a game. Minecraft was just an art tool until they added the monsters and a food bar that you needed to keep full.
@Magnogen
@Magnogen Год назад
Hey Tooley, so I'm not sure if ive mentioned this yet, but the water in your game looks beautiful. I love the reflections, but I really wanna see it well to appreciate it. You see, I'm colourblind, and I have a lot of trouble seeing the water in your demo, as it blends in with the sandy background. Could you perhaps make it slightly more opaque, or perhaps give it some solid particles flowing through it? I can see clearly when the depth through the water is larger, such as looking out into the open ocean, but shallow water is... well its pretty much not there hah. Even if you just had a setting to make it more opaque, thatd be amazing. Thank you for reading!
@klaytonshell5654
@klaytonshell5654 Год назад
Honestly think mojang should fear this mans ambition and talent alone
@onionike4198
@onionike4198 Год назад
To smooth walking perhaps a small mesh could be calculated based on the slope from the corner of one voxel to the next, if the height difference between adjacent voxels is within a certain limit, otherwise the slope could be treated as vertical as it appears to be now.
@keksentdecker
@keksentdecker Год назад
bro you just revived my cube world dream
@alysprdev
@alysprdev Год назад
the option in choosing between what voxel data generation you want to use would be nice
@muxailo289
@muxailo289 Год назад
Отличная работа, продолжай совершенствовать игру и снимать периодически видео. Алгоритмы Ютуба благословили тебя!
@tajaloe5920
@tajaloe5920 Год назад
Hey, random, but have you thought about using the voxel colour value to offset the normal/roughness value of each voxel? Even by a tiny bit, it might give a cool texture, if that's the look you're going for
@giganticLarry
@giganticLarry Год назад
this game looks nuts so far. i really hope this game doesnt become another hytale or cube world. idk if im ready to be hurt again
@diligencehumility6971
@diligencehumility6971 Год назад
That's actually beautiful
@nowymail
@nowymail Год назад
First time on this channel. Impressive work. So far I only played Minecraft. And for me the small plants in your game look chunky, and make the look a bit "messy" (but maybe it's because the voxels are small). MC uses sprites for small plants, which can show more details. You're already realistic sky, why not small plants?
@acenovaYT
@acenovaYT Год назад
Saw some of what this game has. Question is how about building if you can break the voxels only uncontrolled ways there wont be a way to build easily (not sure if you even want the game to have building) Well you could always add a chisel tool that while holding the material you are building with places missing voxels / chips away at the voxels in the way. Would be a nice way to make you run out of items if you break blocks carefully you would have to replace less while building making replacing using the chisel tool cost more would increase the need for those items if you do go that route you would also have to make mechanics that renew every rescourse, but it is a pretty cool idea to enable building while still allowing details perhaps using the chisel without holding the material chisel could also work with multiple material types at once randomly / in a pattern placing chosen voxels.
@NotEvenARealAnimation
@NotEvenARealAnimation Год назад
This game looks amazing, i love the style.
@RaandomUsername
@RaandomUsername Год назад
This looks really cool! Will the game have procedural generation?
@chromemaskqurae1222
@chromemaskqurae1222 Год назад
' So that's basically just Teardown ' - Chrome
@cherryparry
@cherryparry Год назад
amazing work!!
@Neuxen
@Neuxen Год назад
Yo that looks amazing!
@tristunalekzander5608
@tristunalekzander5608 Год назад
In my experience, GPU compute shaders don't work well with voxels, it's a lot of data to send back and forth between the CPU and GPU. While you might have a decent frame rate doing it, the GPU will still hitch every time you use a big compute shader, meaning your apparent frame rate might actually be lower with compute shaders. Though I admit some of the things, like the physics and fire propagation, seem to work well. The most important thing is how fast the render thread is, and compute shaders compete for resources with your rendering shaders.
@Razumen
@Razumen Год назад
Can't wait to see someone remake Doom in this engine.
@mindlessmrawesome
@mindlessmrawesome Год назад
This game looks absolutely GORGEOUS!
@Jonny-mh2jo
@Jonny-mh2jo Год назад
Looks amazing, like a combination of minecraft and teardown
@iizvullok
@iizvullok Год назад
Mojang: No, we cannot increase the world height to more than 384 blocks and the render distance can barely be set to 32 chunks. This guy: Hold my gpu
Далее
The biggest lie in video games
15:18
Просмотров 1,7 млн
Gelik yoki Velik?
00:20
Просмотров 549 тыс.
Qora Gelik
00:26
Просмотров 543 тыс.
I Optimised My Game Engine Up To 12000 FPS
11:58
Просмотров 637 тыс.
Ray Traced Voxel Engine in Unity - Voxtopolis Devlog 1
8:31
Making a Voxel Engine from SCRATCH (w/ Destruction)
14:31
It Turns Out, Minecraft Can Beat Itself
24:28
Просмотров 1,2 млн
Boxel Engine #1 | RAYTRACING my voxels
9:43
Просмотров 15 тыс.
Minecraft... Hmmm...
8:35
Просмотров 1,1 млн
All Updates We Need In Minecraft
36:52
Просмотров 1,2 млн
I Made My First Game in Godot in 3 Weeks...
26:21
Просмотров 300 тыс.
Gelik yoki Velik?
00:20
Просмотров 549 тыс.