Nagle said:
The people making “metaverse” noises aren't the ones pushing the technology.
To me those people are mostly Zuckerberg and Sweeney, which do work on it. I did not spend attention to those which just jump on a hype train.
But the topic is still confusing and visions vary wildly.
Nagle said:
With multiple people developing similar approaches, hardware support for the data structures needed may appear in GPUs. That would be useful.
No. That's exactly not what's useful or needed. Make sure to understand why fixed function hardware is the primary reason of why the LOD probelm was ignored for much too long, and why Nanite comes late and still is a surprise.
Also notice how another fixed function solution (raytracing) lacks compatibility with Nanite or similar ideas, and this RT might be the reason to prevent other companies from following Epics example. It seems those who want it, just switch to UE5 to avoid this risk and conflict.
I think GPUs / APIs should receive the following updates to do better with LOD:
* Give GPU ability to do coarse control flow on its on. OpenCL 2 can do this in form of device side enqueue, for example. Epic has a related minor issue to implement a multi producer, multi consumer pattern using persistent threads. It works, but it is not specified to work.
* Expose raytracing BVH data structures, so dynamic geometry as LOD requires could be supported.
* Eventually make HW rasterizer work efficiently for tiny triangles. But it could also happen ROPs just become deprecated and obsolete.
Point 1 and 2 are most important, but entirely software problems, coming from a history of fixed function solutions dictating a paradigm of sacrificing flexibility to help with brute force solutions.
But we are past that now. Now we need mostly flexibility to proceed. Not even more fixed function restrictions, imo.
That said, if Linden Labs doesn't aim for raytracing, no need to wait on anything. They could start to implement it right now. Risk of some open standard coming up turning work redundant isn't that big currently, i guess.
Nagle said:
Nanite does depend on the content having lots of instancing. It involves storing a mesh as a directed acyclic graph, with instances merged. If every rock is different, it doesn't help as much. This is in fact Second Life's problem
Agree, but we can not solve this easily as long storage is limited. We simply can't afford an open world made of all unique rocks.
Though, server based games can. They could make games of peta bytes size, and the clients only download what's currently needed. That's the biggest potential win of server games i see, which sadly things like Stadia did not yet utilize.
But even if we go there, we still have the problem of creating infinite content is still problem as well.
Thus, one interesting solution for a meta game would be to enforce sharing of content. Instead making a user made rock a NFT, you add the rock to a library any other creator can use as well. Less storage, less memory, less work, more community.
If you build up your marketing strategy from such positive ideas instead ‘play to earn’ scam, even i would be back believing in the vision.
Second Life may have this ofc., idk. But it should be free to use for anybody. To make the virtual world a better place, not the same shit hole of selfish greed the real world is. Non profit for users, just for fun and reputation. I'd make Reputation the currency - likes, not tokens. That's the true idea of the initial vision. That's why i would avoid the buzzword ‘metaverse’ completely, which came up long after we all founded this vision in our childhood.
Nagle said:
I wonder if the Nanite concept can be extended to network download. You want to download a big mesh, with some parts at higher resolution than others.
I think Nanite is not meant to do a big mesh at all, e.g. landscape. The idea is to compose a big thing from many small instances.
So if you wanted a real universe with planets and space travel between them, you surely need to be creative still. That's not solved by Nanite, but it can be still used to create the detailed environment as you move close to the planets surface.
There's apparently something like this in UE5, specialized for downloading from an local SSD. Anyone know more about that? Would it generalize to a network with more lag?
Afaik all that's new in this regard is a coarse grid based world partition system they have now. Which is the trivial idea to support flat open worlds, but independent from the problems Nanite solves.
The big upsides i see from your perspectives are the same Epic mentions for content creation: Automated LOD generation, less work on faking stuff with normal maps, less need on understanding and avoiding technical restrictions in general to the artist.
The artist creates whatever he wants. The runtime client reduces it to whatever can be processed in realtime. Some details may get lost, but the artist will accept this in return to the benefits.
That's the big advantage, and i'm convinced it lifts user content to a new level.