Voxel Planets: 1:1 Scale with Level-of-Detail

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 ต.ค. 2024

ความคิดเห็น • 112

  • @MarkedThing
    @MarkedThing 3 หลายเดือนก่อน +63

    Really, really impressive

  • @DogsRNice
    @DogsRNice 3 หลายเดือนก่อน +33

    Finally, a game that can render your mom

    • @NotoriousBlake
      @NotoriousBlake 3 หลายเดือนก่อน +1

      Just barely, though.

    • @Aldueja
      @Aldueja 2 หลายเดือนก่อน

      ​@@NotoriousBlake nah, i don't think that's enough

  • @TheFoxstory
    @TheFoxstory 3 หลายเดือนก่อน +51

    this looks epic !!! Can't wait to see your progress on this :>

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +11

      thanks :)

  • @omegamondo
    @omegamondo 3 หลายเดือนก่อน +12

    the landscape forming over the horizon is so nice

  • @motif_neko6679
    @motif_neko6679 3 หลายเดือนก่อน +16

    this looks so cool, i can't wait to see what you do with this game :)
    with something like this i think it would be cool to see cosmic megastructures like an interplanetary elevator or dyson sphere, where you can actually visit/land on them and see the smaller components making up this colossal artificial structure

  • @jupiterbjy
    @jupiterbjy 3 หลายเดือนก่อน +10

    we just found who'll make the dream KSP2 never reached possible

  • @Officialjadenwilliams
    @Officialjadenwilliams 3 หลายเดือนก่อน +6

    Beautiful!

    • @JensonTM
      @JensonTM 3 หลายเดือนก่อน

      lmao why are you here

    • @bearfm
      @bearfm 3 หลายเดือนก่อน

      would be interesting to see the memory usage too

    • @DwAboutItManFr
      @DwAboutItManFr 2 หลายเดือนก่อน

      I think no mans sky potential was never fully realized.

  • @upseguest
    @upseguest 3 หลายเดือนก่อน +5

    Floating point errors boutta kill this man

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +1

      yes

    • @augustine6683
      @augustine6683 3 หลายเดือนก่อน

      If you have the camera/player be the origin and instead move the world around the camera/player then floating point errors shouldn't be a problem.

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +5

      ​@@augustine6683 This is what is done. There is no problem on the rendering side but there may be floating point accuracy issues for generation since the planets are real size.

    • @kaelandin
      @kaelandin 2 หลายเดือนก่อน +1

      Just add more bits, duh

    • @dampfwatze
      @dampfwatze หลายเดือนก่อน

      It is interesting how this effects simulation. Especially for stuff far away from the player, if you would implement such things.

  • @sadge0
    @sadge0 3 หลายเดือนก่อน +4

    Damn, it has so much potential, a game with space travel where you can visit realistic 1:1 scale planets/moons/asteroids AND WALK ALL ACROSS THEM without any loading screens would be very fucking cool

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +10

      You would even be able to dig through them as they are entirely built of voxels

    • @Haze_Nexus_real
      @Haze_Nexus_real 3 หลายเดือนก่อน +1

      space engine

    • @theswissconfederation
      @theswissconfederation 3 หลายเดือนก่อน +1

      basically space engine but it's an adventure game

    • @EliasCalatayud
      @EliasCalatayud 3 หลายเดือนก่อน

      Space engine(ers)

    • @ankofl
      @ankofl 3 หลายเดือนก่อน

      @@Lemonzy Which engine are you using?

  • @DonnaPinciot
    @DonnaPinciot 3 หลายเดือนก่อน +2

    Congrats on making the algorithm happy early!

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +1

      It's wild!

  • @SeanStClair-cr9jl
    @SeanStClair-cr9jl 3 หลายเดือนก่อน

    Wow, it's so seamless! Gorgeous.

  • @milesread7183
    @milesread7183 3 หลายเดือนก่อน

    This is insane, would love to see some videos about how you programmed this as I'm sure would others!!!

  • @clnrrr
    @clnrrr 3 หลายเดือนก่อน +1

    thats just nuts man

  • @jarate8076
    @jarate8076 3 หลายเดือนก่อน +3

    SPACE ENGINEERS!!!

  • @foodeater420
    @foodeater420 3 หลายเดือนก่อน +1

    really awesome, is there an end goal for this, as in a larger project? or is this just a quick test you did?

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +2

      Thank you! As I said in other comments, this is the start of my voxel-based space adventure game inspired by Starbound and Astroneer.

  • @sirhoog8321
    @sirhoog8321 3 หลายเดือนก่อน

    Subbed. I gotta see the final product.

  • @RubixstewYT
    @RubixstewYT 3 หลายเดือนก่อน

    Thats so cool. Good job!

  • @Queezz
    @Queezz 3 หลายเดือนก่อน

    Holy shit! Thats incredible

  • @GhostGaming-sz9lt
    @GhostGaming-sz9lt 3 หลายเดือนก่อน +1

    This is Genuinely impressive, And so smooth! What engine are you using that can support this?!
    Edit: you just got yourself another sub

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +3

      Thanks :D I use Bevy, a game engine coded in Rust. I also use a library (big_space) to handle the floating origin needed for such scales.

  • @jajoothecoolman
    @jajoothecoolman 3 หลายเดือนก่อน +5

    woah

  • @MiriadCalibrumAstar
    @MiriadCalibrumAstar 2 หลายเดือนก่อน

    holy, i would love to see this with the standard qubic voxels.
    To also see a hose being built at an angle because of the place of the planet(romboid voxel) XD.

    • @Lemonzy
      @Lemonzy  2 หลายเดือนก่อน

      Yes, it wouldn't look right if I made cubic voxels. I know some people make planets out of cubes projected onto a sphere so that there are 6 oriented planes where you can build normally. But there are a lot of distortions with this method.

    • @MiriadCalibrumAstar
      @MiriadCalibrumAstar 2 หลายเดือนก่อน

      @@Lemonzy Hexagonal voxels? piramidal?

  • @gaemdevolper
    @gaemdevolper 3 หลายเดือนก่อน

    Amazing! How did you handle floating point issues?

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +1

      I use a floating origin, provided by the big_space crate.

  • @ObjectionistWasTaken
    @ObjectionistWasTaken 3 หลายเดือนก่อน +1

    im gonna get fuckin megalophobia oh my god

    • @ObjectionistWasTaken
      @ObjectionistWasTaken 3 หลายเดือนก่อน +1

      that is legitimately terrifying

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน

      😅

  • @RRamens
    @RRamens 3 หลายเดือนก่อน

    we need more 1:1 scale space games and your helping ‼️
    (the only other game with 1:1 scale stuff is star citizen which is a game i love)

    • @theswissconfederation
      @theswissconfederation 3 หลายเดือนก่อน +1

      Don't forget about Space Engine! (Probably doesn't count since it's not really a game)

    • @Tsudico
      @Tsudico 3 หลายเดือนก่อน +2

      Star Citizen isn't 1:1 scale mostly because 1:1 likely wouldn't be as fun for most players as it may seem at first glance. The planetary bodies are 1:6 scale which still gives the sense of scale but might help with density of points of interest, and the distances between them are 1:10 which removes the need for FTL travel between bodies yet still is far enough that people can complain about the time it takes to go from one planet to another.

  • @dedbill283
    @dedbill283 3 หลายเดือนก่อน

    looks stunning!
    Is there a way to learn more about this project? will you upload more previews?

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน

      Thanks :) I'll probably upload more previews but there's no set schedule. I have a Twitter account and a Discord server for my game but they're empty and I don't want to manage too many people at the moment.

  • @bazookaman1353
    @bazookaman1353 3 หลายเดือนก่อน

    Wow, just wow.

  • @lFunGuyl
    @lFunGuyl 3 หลายเดือนก่อน

    YOU DID WHAT

  • @GiusePooP
    @GiusePooP 3 หลายเดือนก่อน +1

    now make Kerbal Space Program 3

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +1

      haha, it won't be the same as any KSP

  • @Kero-zc5tc
    @Kero-zc5tc 3 หลายเดือนก่อน

    Star field is not taking notes rn

  • @jbmcge
    @jbmcge 3 หลายเดือนก่อน

    Curious about the implementation. Are there any references you could link?

  • @ЭлФанатик
    @ЭлФанатик 3 หลายเดือนก่อน +1

    Oh, just under bevy 0.14 with its new features ( similar to nanite in UE ). This works fine, but how does the video card read the coordinates? Architecturally it can only read f32. Is there a conversion at some points?

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +1

      I don't use Bevy's new Virtual Geometry feature for this. The GPU still reads f32 as you said, but I'm using a floating origin (big_space crate), which means the inaccuracy occurs far out in the distance, so it's imperceptible.

  • @BoothPlayer
    @BoothPlayer หลายเดือนก่อน

    Amazint!

  • @theblockengineers5525
    @theblockengineers5525 3 หลายเดือนก่อน

    Imagine combining this with a game called Space Engine. It’s technically more like a software. If you are not sure what it is you can look up “space engine”. Just to be clear I’m not talking about space engineers.

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +2

      It's not really possible to combine them, but yeah I know Space Engine, it's great.

  • @dootthedooter
    @dootthedooter 3 หลายเดือนก่อน +6

    What are you making?

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +14

      I'm currently developing my game, which will be a voxel-based space exploration game on a 1:1 scale. The graphics will be inspired by Starbound and Astroneer.

    • @csiguszfoxoup
      @csiguszfoxoup 3 หลายเดือนก่อน +1

      @@Lemonzy sounds awesome!

    • @robot7338
      @robot7338 3 หลายเดือนก่อน

      @@Lemonzy you used exponential acceleration in the demo, do you intend to do something similar for travel? i think the hardest part of 1:1 exploration of space is the amount of time it can take to move between celestial bodies. It sounds like an awesome idea, and you have a beautiful demo here, so i wish you good luck!

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +2

      ​@@robot7338 I've already thought about this problem and will probably use exponential acceleration. What I want is for travel to be something planned for the player (like having enough food) because it won't be something fast. It will be possible to walk around your ship while it's in autopilot mode. I'm not sure, but travel times will be roughly the same, depending on the ship's stats and a little on distance (maybe 5 minutes? I haven't decided yet).

    • @johnterpack3940
      @johnterpack3940 2 หลายเดือนก่อน

      @@Lemonzy This is EXACTLY the sort of thing that motivated me to start learning game development. I even wanted to use Rust. But I went with UE5 because I wanted to actually learn to make games first, then worry about all the hard work of coding later.

  • @escre
    @escre หลายเดือนก่อน

    more please hi

  • @aladvs
    @aladvs 3 หลายเดือนก่อน

    Egui enjoyer

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +1

      I'd even say bevy-inspector-egui :)

  • @OmarDevX
    @OmarDevX 3 หลายเดือนก่อน

    this is too good, can u make tutorial? or explain how it works

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +1

      I don't know if I will do a tutorial, but I can explain the main ideas here:
      - LODs are determined by using an octree whose nodes subdivide until a certain condition is no longer true (depending on the inverse of the distance between the center of the node and the camera position)
      - LOD 0 is the most detailed LOD
      - If a node is a leaf, request the generation of this chunk (chunks are always 32x32x32 voxels, but the higher the LOD, the greater the distance between sampling points).
      - When a chunk is generated, request a mesh for it. I use the naive surface nets algorithm for this.
      Currently, there are gaps between LODs and no physics, which I plan to adress at some point.

    • @OmarDevX
      @OmarDevX 3 หลายเดือนก่อน +1

      @@Lemonzy what rendering method you are using? Is it raytracing on gpu?

    • @OmarDevX
      @OmarDevX 3 หลายเดือนก่อน

      @@Lemonzy ooh you are using bevy? Nicee

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +1

      @@OmarDevX yep I use Bevy! No raytracing, it’s rasterized.

    • @OmarDevX
      @OmarDevX 3 หลายเดือนก่อน +1

      @@Lemonzy ok thx for the information :)

  • @cerulity32k
    @cerulity32k 2 หลายเดือนก่อน

    woa :o

  • @Qohist
    @Qohist 3 หลายเดือนก่อน

    is that rust??? im seeing Egui here

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน

      Yep, Rust and Bevy!

  • @mz00956
    @mz00956 หลายเดือนก่อน

    how do you store the data? or is it procedurally generated using a algorithm when needed?

    • @Lemonzy
      @Lemonzy  หลายเดือนก่อน

      Nothing is stored, it's generated each time. I intend to store player modifications only.

    • @mz00956
      @mz00956 หลายเดือนก่อน

      @@Lemonzy cool. I am also trying to make a space game (more in the direction of ksp) and don't yet know how I will manage planets.
      But that will have to wait, I am currently testing different methods of simulating internal forces, so whatever the players will build can get squished, stretched and break apart.
      Funny enough I also use Voxels for this, but I will have to store them somehow xD

    • @Lemonzy
      @Lemonzy  หลายเดือนก่อน

      @@mz00956 Wow! the internal force system sounds really cool! Good luck :D

  • @Waterlord2.0
    @Waterlord2.0 3 หลายเดือนก่อน

    Is this in a custom engine too?

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน

      I use the Bevy engine.

    • @Waterlord2.0
      @Waterlord2.0 3 หลายเดือนก่อน

      @@Lemonzy I was thinking about using Bevy, but for now my main project is making a Vulkan editor with cpp

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน

      Good luck!

  • @DwAboutItManFr
    @DwAboutItManFr 2 หลายเดือนก่อน

    What if the square was 1cm³?

    • @Lemonzy
      @Lemonzy  2 หลายเดือนก่อน +1

      If you're talking about the red cube, it would work fine because it's not made of voxels, it's just to show the scale. If you say the voxels should be 1cm³, my code isn't optimized for such scales and your PC would explode.

    • @DwAboutItManFr
      @DwAboutItManFr 2 หลายเดือนก่อน

      @@Lemonzy Speaking about the crimson hexahedron.

    • @DwAboutItManFr
      @DwAboutItManFr 2 หลายเดือนก่อน

      @@Lemonzy I challenge you to optimize it them just because i like it. : )

    • @Lemonzy
      @Lemonzy  2 หลายเดือนก่อน

      ​@@DwAboutItManFr haha, I don't know if I'll take up your challenge as I don't envisage having such precision for the terrain. Maybe one day, we'll see...

    • @DwAboutItManFr
      @DwAboutItManFr 2 หลายเดือนก่อน

      @@Lemonzy I enchallenge you to envisage it.

  • @stati5tik
    @stati5tik 3 หลายเดือนก่อน

    now modify the volume.

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน

      It's on my todo list ;)

  • @SuperBro112Lol
    @SuperBro112Lol 3 หลายเดือนก่อน

    planets arent look voxel

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน +1

      Do you mean they're not voxels because they're not blocks like in Minecraft? Voxels can be anything you like, as long as they're values stored in a grid. For example, Astroneer, No Man's Sky and many other games use voxels, but they don't look like cubes.

    • @SuperBro112Lol
      @SuperBro112Lol 3 หลายเดือนก่อน +1

      @@Lemonzy ok

    • @thegoldenatlas753
      @thegoldenatlas753 2 หลายเดือนก่อน

      ​@@Lemonzy Yea but don't we usually call non cubic voxels, marching cubes?

    • @Lemonzy
      @Lemonzy  2 หลายเดือนก่อน

      @@thegoldenatlas753 Marching cubes is only the most widely known algorithm for generating meshes from voxel data. In fact, I don't use it, but the naive surface nets algorithm.

  • @Lemon_Guy76
    @Lemon_Guy76 3 หลายเดือนก่อน

    Well that's pretty cool

    • @Lemonzy
      @Lemonzy  3 หลายเดือนก่อน

      Thank you lemon brother!