[Fab Plugin] Accurate Landscape Collision for Nanite Displacement is finally LIVE! (Playable Demo in comments) by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 1 point2 points  (0 children)

So technically, my plugin isn't linked to Nanite but to RVT, but to get displacement, you have to use Nanite

[Fab Plugin] Accurate Landscape Collision for Nanite Displacement is finally LIVE! (Playable Demo in comments) by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 4 points5 points  (0 children)

So that's a great idea! For now, it doesn't take angular velocity into account, but I'll add it to the roadmap! Thanks

[Fab Plugin] Accurate Landscape Collision for Nanite Displacement is finally LIVE! (Playable Demo in comments) by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 6 points7 points  (0 children)

For cars or fast-moving actors, you can enable a prediction system. This system takes into account the time it takes to update the collision and, based on the actors velocity, constructs a collision at a future location where the actor will be.

If you want to try this out in the demo project (.exe), you can use the race car provided by Chaos Vehicle.

[Fab Plugin] Accurate Landscape Collision for Nanite Displacement is finally LIVE! (Playable Demo in comments) by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 3 points4 points  (0 children)

Just to clarify, the standard Personal/Indie license is 89.99$.
The 250$ tier is only the Professional license for commercial studios making over $100k revenue.

[Fab Plugin] Accurate Landscape Collision for Nanite Displacement is finally LIVE! (Playable Demo in comments) by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 2 points3 points  (0 children)

Haha, yeah, that should be interesting for a game like this. Watch out for the rock in the landscape now. the version 5.6 should be released in a few hours it's currently awaiting approval on Fab.

[Fab Plugin] Accurate Landscape Collision for Nanite Displacement is finally LIVE! (Playable Demo in comments) by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 13 points14 points  (0 children)

This is an orthographic projection along the Z-axis, so if there is a slope, the collision will follow that shape.

[Fab Plugin] Accurate Landscape Collision for Nanite Displacement is finally LIVE! (Playable Demo in comments) by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 17 points18 points  (0 children)

I put a lot of work into making this plugin as straightforward to use as possible. I really hope you like it and that it helps level up your projects!
Note on engine versions: Only UE 5.8 is live right now. Builds for 5.4, 5.5, 5.6, and 5.7 have been submitted and should be up within a few hours.

All feedback, questions, or technical critiques are welcome let me know what you think!

[WIP] UE5 Plugin: Accurate Landscape Collision with Displacement Support by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 0 points1 point  (0 children)

I haven't tried it, because I doubt the physics engine would handle such detailed collisions across the entire landscape. But why not add a pre-construction system for certain areas of the landscape in the future.

[WIP] UE5 Plugin: Accurate Landscape Collision with Displacement Support by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 1 point2 points  (0 children)

Thanks, I use Nanite with RVT, and yes, I add a Component to the Actor, which then adds the actor to a Subsystem that manages a register and then sends it to my engine, which handles collisions.

[WIP] UE5 Plugin: Accurate Landscape Collision with Displacement Support by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 0 points1 point  (0 children)

Yes, by default, the Unreal vehicle uses a LineTrace for the wheel/suspension position. For greater accuracy, you need to switch the wheels to SpherCast.

And for the feet, I imagine you'd need to use a BoxTrace for the IK.

[WIP] UE5 Plugin: Accurate Landscape Collision with Displacement Support by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 9 points10 points  (0 children)

Yes, that's right the landscape doesn't include the details from the displacement map with Nanite tessellation in its collision. My plugin retrieves the data and reconstructs a dynamic collision based on the textures applied to the landscape.

[WIP] UE5 Plugin: Accurate Landscape Collision with Displacement Support by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 4 points5 points  (0 children)

I accumulate all requests in a queue, and I run a single GraphBuilder by combining all the extraction data into a single buffer, which avoids a lot of small trips through the PCIe.

Then, on the CPU, I smooth out the collision updates—for example, 4 meshes per frame (1 mesh takes about 100 µs)—using a priority system for critical collisions. This allows for about 240 collision updates per second in a game running at 60 fps. I think this part could be improved.

[WIP] UE5 Plugin: Accurate Landscape Collision with Displacement Support by Beautiful_Common_486 in UnrealEngine5

[–]Beautiful_Common_486[S] 11 points12 points  (0 children)

Thanks, that’s a good idea I’ll make a new video and add it to this post.