• I Cast Fist@programming.dev
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    3 months ago

    Today? No, I don’t think any game does it.

    .kkrieger did that. Not a “real game”, it’s a demo (of a demoscene), a “proof of concept” or a “proof of skill”. Nostalgia Nerd has a very interesting video about it on youtube.

    3D models tend to occupy less disk space than textures, as these usually come in at least 2 files: one for the actual colors, one or two more for light mapping (bump map, emission, normals, etc). I don’t know which format NMS uses, but a .obj 3D model with 62k triangles will take around 4.5MB of disk space.

    For comparison, this Damaged Helmet in gltf format (which you can see on your browser here) has 15k triangles, a .bin file (the actual 3D geometry) of 545kb and roughly 3MB of textures - The Default_albedo.jpg is the “actual color” and it alone is larger than the .bin + .gltf, at 914kb.

    That’s the same problem again, you need hard drive space for all that 3D variation.

    Not really. Again, they just need to be smart with what they have. Grassy planet where one third is green grass, another is red grass, another is yellow. No need for any extra stuff to be made, they already have the building blocks. Better yet, mostly grassy planet with patches of radioactive terrain surrounded by desert.

    For buildings, just think about player made bases. You can make effectively “infinite” interiors and exteriors with all the stuff players can use to make a base. Write coordinates of “premade” rooms, write some extra lines of code to join specific rooms together and bam, all you needed was less than 10kb of extra text to increase variety.

    • Cosmic Cleric@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      3 months ago

      You can procedurally generate textures, sounds and geometry

      Does any game do that today? I’m not aware of any. ??

      Today? No, I don’t think any game does it.

      Well, my comment that you replied to was about a specific game that is already out, today. Hence, my point still stands.

      Let’s hope that future hardware and games are aligned more with what you described, but today’s games do have limitations, based on the day and age they’re created in.

      • I Cast Fist@programming.dev
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        1
        ·
        3 months ago

        The limitation is coder skill, not hardware. That .kkrieger example is 20 years old. It could make a Pentium 3 “generate an entire FPS game” from less than 100kb of coding instructions alone.

        The question is "why don’t other people do it, then?" and the answer is “because having all those media resources as files makes the startup faster, memory usage down and is easier to modify and replace

        • Cosmic Cleric@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          3 months ago

          “because having all those media resources as files makes the startup faster, memory usage down and is easier to modify and replace”

          None of that matters, because you can load them in the background/parallel wise, as needed, which is what the game already does today.

          But all of that takes space on the hard drive, which brings me back to the point I keep making.

          My original comment…

          You’re not wrong, but also the space that they would need on your hard drive to make the game really non-repetitive visually would be out of this world (pardon the pun)

          , and what I keep replying back to comment on, is specifically about visuals, and variety in the planets, the areas of the planets, and the star systems, and the aliens. 3D models and meshes.

          What you been describing is not 3D models and meshes, which is what takes up the majority of the hard drive space.

          So, can you describe for me how the hard drive space for 3D models and meshes would be?

          • I Cast Fist@programming.dev
            link
            fedilink
            English
            arrow-up
            2
            ·
            3 months ago

            What you been describing is not 3D models and meshes, which is what takes up the majority of the hard drive space.

            My brother in christ, what the fuck do you think i’ve been describing then? I even linked an example of how the 3d model itself, the geometry, the mesh, occupies less disk space than the actual textures

            For comparison, this Damaged Helmet in gltf format (which you can see on your browser here) has 15k triangles, a .bin file (the actual 3D geometry) of 545kb and roughly 3MB of textures - The Default_albedo.jpg is the “actual color” and it alone is larger than the .bin + .gltf, at 914kb.

            What I see is that you don’t understand how procedural generation works. As is today, how do you think planetary terrain is generated? That it is all saved as a file that is read from your computer/PC? That you could load up a “planetXYZ.file” externally to edit it? That the terrain mesh is this huge file with all sorts of hills and plains that you could import/export and load in Blender?

            • Cosmic Cleric@lemmy.world
              link
              fedilink
              English
              arrow-up
              1
              ·
              edit-2
              3 months ago

              My brother in christ, what the fuck do you think i’ve been describing then?

              Algorithms that use the models/meshes/etc., and not the models/meshes data themselves. Algorithms take up allot less space on the hard drive.

              What I see is that you don’t understand how procedural generation works.

              I’m a computer programmer. I’ve written that kind of code before (gotta love some Perlin noise). /sigh

              Also, you’re not quoting me on that part, but someone else. I didn’t make any mention about a ‘Damaged Helmet in gitf format’ (or anything else in that text you quoted).

              As is today, how do you think planetary terrain is generated?

              It mixes/matches models (that have meshes, etc.) like Lego pieces to assemble the landscapes/things. If you want more new/varied worlds, you need more models/meshes. The algorithms are not going to create them, its going to just assemble the ones that already exist as files on the hard drive.

              Edit: Funny enough, I’m currently downloading the update, all 7.48GB of it. The whole game takes up 14.69GB on my hard disk. I’m going to bet most of the update is the new stations look/variety, and not the logic code for mix-and-matching ship parts.