• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

[IGNxGamer] Matrix Awakens, Hellblade and the Power of Unreal Engine 5 - Performance Preview

Status
Not open for further replies.

Lunatic_Gamer

Gold Member



With The Matrix Awakens and Hellblade II all being shown off running on Unreal Engine 5, we have been granted a glimpse into the future of gaming technology. As the biggest multi-platform engine of last generation, the 5th entry brings a slew of new graphical features and functions only possible on next/now generation hardware. From photo-realistic characters & worlds, seamless LoD free geometry, Real-Time Global Illumination and more. We cover all of it and much more inside, so pick your pill and jack in.
 
Last edited:
The description of proxy meshes is incorrect here, it's all the original mesh, just collapsing the mesh into less complex representations while aligning the edges to adjacent representations in the same node depth. Proxy meshes as described in UE5 are used for the following: RayTracing, Collision and for platforms where nanite is not supported.
It is not the correct term to describe the Nanite functionality which simplifies the original mesh dynamically.
 
Last edited:

Arioco

Member
Why the fuck do all these websites....multi million dollar websites have such shitty shitty video players.

Which is weird if we bear in mind that they can use YouTube for free. 🤷‍♂️ I can't even imagine the reason to usu this shitty player

Can I get a too long didn't watch? Can't stand this guys voice.

What's wrong with his voice? I think it's a perfectly normal voice. 😳
 

NXGamer

Member
The description of proxy meshes is incorrect here, it's all the original mesh, just collapsing the mesh into less complex representations while aligning the edges to adjacent representations in the same node depth. Proxy meshes as described in UE5 are used for the following: RayTracing, Collision and for platforms where nanite is not supported.
It is not the correct term to describe the Nanite functionality which simplifies the original mesh dynamically.
It is, the whole point of the technology is to create a dynamically scaled version of the source model up to and including the full size import. A proxy, by definition, is representation or replacement for something else and that is exactly what this is doing in real-time at all times.
 
It is, the whole point of the technology is to create a dynamically scaled version of the source model up to and including the full size import. A proxy, by definition, is representation or replacement for something else and that is exactly what this is doing in real-time at all times.
It is the wrong term to use in UE5, which actually has Proxy objects which replace the Nanite objects in their entirety, and is a separate concept to what Nanite is doing with clusters.
 

NXGamer

Member
It is the wrong term to use in UE5, which actually has Proxy objects which replace the Nanite objects in their entirety, and is a separate concept to what Nanite is doing with clusters.
It is semantics, look at PRT's or VT's. They are the same thing, solving the same problem in the same way.

Naming conventions, specifically in published software go through marketing, the fact is my description is 100%.
 
It is semantics, look at PRT's or VT's. They are the same thing, solving the same problem in the same way.

Naming conventions, specifically in published software go through marketing, the fact is my description is 100%.
Sorry to be pedantic, they are not solving the same issue. The UE5 Proxy objects are NOT rendered when Nanite is enabled, they are used for things like Collision only.
 

tommib

Member
Can I get a too long didn't watch? Can't stand this guys voice.
uVBvjGY.jpg
 

NXGamer

Member
Sorry to be pedantic, they are not solving the same issue. The UE5 Proxy objects are NOT rendered when Nanite is enabled, they are used for things like Collision only.
Your words" just collapsing the mesh into less complex representations while aligning the edges to adjacent representations in the same node depth"

A representation of something is a Proxy, no matter how you slice it, which they do all the time here by tessellating on the fly i.e. Nanite Geometry.

My ref to same was to PRT's and VT's, same problem, same solution, different name.
 
Last edited:

Sosokrates

Report me if I continue to console war
PS5 has a noticeable performance advantage over XSX while flying and driving apparently.
We dont know why.
Epic have confirmed they have had UE5 on PS5 for longer though, or UE5 could be more suited to PS5's hardware/dev environment.
But we have no information pointing to any of these reasons, so pushing one or more of these reasons shows a bias or intention to push a narritive.
 
Your words" just collapsing the mesh into less complex representations while aligning the edges to adjacent representations in the same node depth"

A representation of something is a Proxy, no matter how you slice it, which they do all the time here by tessellating on the fly i.e. Nanite Geometry.

My ref to same was to PRT's and VT's, same problem, same solution, different name.

There is no tessellation when using Nanite, they literally swap out the triangles to render with more detailed meshes, not divide existing ones. If you want to use technical word-salad, use the right technical word salad. Nanite is all about data structures and maintaining mesh integrity when traversing said data structures. You might as well eschew the word "Rasterisation" or "Pixels" and use Proxy in that case. The data structure is virtual, therefore it doesn't need to store all of it's data in RAM, but the structure contains "All of the data", even if it is streaming parts of it therefore it is by definition "Not a Proxy", as you sample the data, as you would a texture wrapping a traditional mesh, and get the correct pixel colour. Nanite is an optimisation around selecting the correct data to sample, swapping things out behind the scenes, but there is no "Simpler Version", just a hint that you have the colour you need, and don't go further. THE ENTIRE POINT IS THAT ALL OF THE DATA IS THERE, IT'S JUST VIRTUALIZED!
 
Last edited:

NXGamer

Member
There is no tessellation when using Nanite, they literally swap out the triangles to render with more detailed meshes, not divide existing ones. If you want to use technical word-salad, use the right technical word salad. Nanite is all about data structures and maintaining mesh integrity when traversing said data structures. You might as well eschew the word "Rasterisation" or "Pixels" and use Proxy in that case. The data structure is virtual, therefore it doesn't need to store all of it's data in RAM, but the structure contains "All of the data", even if it is streaming parts of it therefore it is by definition "Not a Proxy", as you sample the data, as you would a texture wrapping a traditional mesh, and get the correct pixel colour. Nanite is an optimisation around selecting the correct data to sample, swapping things out behind the scenes, but there is no "Simpler Version", just a hint that you have the colour you need, and don't go further. THE ENTIRE POINT IS THAT ALL OF THE DATA IS THERE, IT'S JUST VIRTUALIZED!
I think you need to slow down, stop being so pedantic and listen to yourself.

Look, I will help you learn

Tessellation:- A pattern made of one or more shapes that fit together without any gaps and not overlap within a surface.

Now that sounds a great deal like Nanites purpose and actual results.

You never divide existing triangles, you replace them with more that are smaller, or less that are larger that occupy the same space and shape. You can literally see this in the video and the games visualiser.

Finally this point " Nanite is an optimisation around selecting the correct data to sample, swapping things out behind the scenes, but there is no "Simpler Version", just a hint that you have the colour you need, and don't go further. THE ENTIRE POINT IS THAT ALL OF THE DATA IS THERE, IT'S JUST VIRTUALIZED!"

You are confusing yourself, you say selecting the correct data to swap out, and then say all the data is present? that is wrong plain and simple.

The point and the results show that is renders LESS data (Triangles) and even scales with Pixels to represent a model that, at current data size and viewing distance/angle looks indistinguishable from the original. It quite literally cuts part of the model you cannot see to reduce the impact on Hardware and space.

NXGamer NXGamer a question:

did the performance differ on any console between every time you booted the "game"?

Yes I did and in fact I found that sometimes just going into the City rather than the game section could also help. It is a Tech Demo and the inconsistency from that show which is why I did not dwell on performance.
 
Last edited:
Finally this point " Nanite is an optimisation around selecting the correct data to sample, swapping things out behind the scenes, but there is no "Simpler Version", just a hint that you have the colour you need, and don't go further. THE ENTIRE POINT IS THAT ALL OF THE DATA IS THERE, IT'S JUST VIRTUALIZED!"

You are confusing yourself, you say selecting the correct data to swap out, and then say all the data is present? that is wrong plain and simple.

The point and the results show that is renders LESS data (Triangles) and even scales with Pixels to represent a model that, at current data size and viewing distance/angle looks indistinguishable from the original. It quite literally cuts part of the model you cannot see to reduce the impact on Hardware and space.
I understand exactly what it does and I'm not confused in any way shape of form. Are you saying you do not think the data is there to be sampled? Or do you not understand how virtualisation works?

It's like you having an address for your home, and a postman asks for your address to deliver you a letter, which you will give him in it's entirety, and a street cleaner you've asked the council to clean your road, which you will just give him everything up to the road, and no more. You have the data, but only parts were needed for a particular request. I never said it renders "more data" or anything like it, just that the data is available in it's entirety, if needed. When rendering, the engine will choose how far it needs to traverse this data structure before additional data becomes irrelevant for the task at hand. i.e.: subpixel data. Again, this has nothing to do with "Proxy" objects (as you can get to the entire data structure if you need to) vs. an actual Proxy (You cannot get to the original data, and in fact, the term Proxy is reserved in UE5 for something else)
 

Vognerful

Member
Yes I did and in fact I found that sometimes just going into the City rather than the game section could also help. It is a Tech Demo and the inconsistency from that show which is why I did not dwell on performance.
Thanks man, Using Deus ex OST also makes the video 10 times better.
 

NXGamer

Member
I understand exactly what it does and I'm not confused in any way shape of form. Are you saying you do not think the data is there to be sampled? Or do you not understand how virtualisation works?

It's like you having an address for your home, and a postman asks for your address to deliver you a letter, which you will give him in it's entirety, and a street cleaner you've asked the council to clean your road, which you will just give him everything up to the road, and no more. You have the data, but only parts were needed for a particular request. I never said it renders "more data" or anything like it, just that the data is available in it's entirety, if needed. When rendering, the engine will choose how far it needs to traverse this data structure before additional data becomes irrelevant for the task at hand. i.e.: subpixel data. Again, this has nothing to do with "Proxy" objects (as you can get to the entire data structure if you need to) vs. an actual Proxy (You cannot get to the original data, and in fact, the term Proxy is reserved in UE5 for something else)
This is going nowhere, you are just moving the conversation to another area, creating another avenue never mention from where it started, I have been very clear and concise on the facts and the purpose of this.

Read back, do some research on the subject and learn from it.
 

Vognerful

Member
why only now we see noticeable difference in performance PS5 with 5fps advantage at times and better reflections
DF didn't show this said PS5 have 1fps advantage irc.
NXGamer explained that even with these differences in the video, it doesn't say much about the hardware as these are still tech demos. In fact, that the performance differs on the same console between every time you boot the demo tells a lot.
 
This is going nowhere, you are just moving the conversation to another area, creating another avenue never mention from where it started, I have been very clear and concise on the facts and the purpose of this.

Read back, do some research on the subject and learn from it.

I'm literally still on the topic of proxies, but it's ok, you won't word salad your way out of this.
I have done my research, I've detailed how it works in previous posts if you want to do yours.
 
Last edited:

Darius87

Member
NXGamer explained that even with these differences in the video, it doesn't say much about the hardware as these are still tech demos. In fact, that the performance differs on the same console between every time you boot the demo tells a lot.
that's interesting i didn't know that performance differs everytime you play.
 

sircaw

Banned
It is, the whole point of the technology is to create a dynamically scaled version of the source model up to and including the full size import. A proxy, by definition, is representation or replacement for something else and that is exactly what this is doing in real-time at all times.
The only important question is,

Man Utd or Liverpool, choose the wrong one and you are not welcome around here.

Good job on the video btw :messenger_grinning:
 

NXGamer

Member
I'm literally still on the topic of proxies, but it's ok, you won't word salad your way out of this.
I have done my research, I've detailed how it works in previous posts if you want to do yours.
Really man, you are talking about postmen and street cleaners.

You went from
"The description of proxy meshes is incorrect here, it's all the original mesh, just collapsing the mesh into less complex representations while aligning the edges to adjacent representations in the same node depth."

to
"There is no tessellation when using Nanite, they literally swap out the triangles to render with more detailed meshes, not divide existing ones."

You get tessellation wrong and then ignore it and then say later.

"Nanite is an optimisation around selecting the correct data to sample, swapping things out behind the scenes, but there is no "Simpler Version"
with
"The data structure is virtual, therefore it doesn't need to store all of it's data in RAM, but the structure contains "All of the data", even if it is streaming parts of it"

You are conflating everything here showing no understanding the subject matter, Less word salad, more word soup. A less complex or "Simpler version" is not the same as the source mesh.

To virtualise something you, by definition, represent it in a lighter, better, simpler representation of it be that a VM server, Proxy Host, data set, Models. I never said the data was not present, in fact I say the exact opposite in the video and posts, this is my point you are trying to shift the conversation which was and I quote you.
"The description of proxy meshes is incorrect here, it's all the original mesh, just collapsing the mesh into less complex representations while aligning the edges to adjacent representations in the same node depth."

And then you confirm you agree as above by saying in the render stage it represents the source model with a less complex version by tessellating ( which you described but did not understand ) on the fly. I.e a virtualised representation as needed per scene, aka a Proxy model.
 
Really man, you are talking about postmen and street cleaners.

You went from
"The description of proxy meshes is incorrect here, it's all the original mesh, just collapsing the mesh into less complex representations while aligning the edges to adjacent representations in the same node depth."

to
"There is no tessellation when using Nanite, they literally swap out the triangles to render with more detailed meshes, not divide existing ones."

You get tessellation wrong and then ignore it and then say later.

Tessellation is taking some vertices and creating triangles from them. You can use higher order functions to create complex shapes from the source, but it's nothing to do with swapping data pages around in a virtualised data structure, not sure why you think it is, or why you think I don't know what it is. Is it because those structures have more polygons in them? they were generated already, so the tessellation isn't dynamic is it? Pedantic, yes, but you like to say I got it wrong.

"Nanite is an optimisation around selecting the correct data to sample, swapping things out behind the scenes, but there is no "Simpler Version"
with
"The data structure is virtual, therefore it doesn't need to store all of it's data in RAM, but the structure contains "All of the data", even if it is streaming parts of it"

You are conflating everything here showing no understanding the subject matter, Less word salad, more word soup. A less complex or "Simpler version" is not the same as the source mesh.

My boss would be unhappy to hear that, seeing as I work with virtualised data structures for a living. Virtualisation, in this context, is simply mapping pointers to non resident data pages and having a method to get the data from disk when required, nanite handles this while traversing the in-memory hierarchy and loads / unloads the clusters required. It's pretty basic stuff here. Unless you think a data structure is a proxy.... for itself?

Little bit of gaslighting going on there with you don't you think? Stating I'm wrong, or have no understanding..


And then you confirm you agree as above by saying in the render stage it represents the source model with a less complex version by tessellating ( which you described but did not understand ) on the fly. I.e a virtualised representation as needed per scene, aka a Proxy model.

Nonsense, when you understand.
 
Status
Not open for further replies.
Top Bottom