sant0s81 Posted September 21, 2020 Share Posted September 21, 2020 Yea, but I mean if you would import the street HDA - you have the street as a single geometry no matter how large that geometry is. So maybe there is a way to use tesselation (or reducing polygons) by distance to the camera. I thought, maybe there is a way like that tesselation in the video, that could be used on an HDA. So reducing polygons by distance. Quote Link to comment Share on other sites More sharing options...
rates Posted September 21, 2020 Share Posted September 21, 2020 Sure, this is just the Unreal LOD (Level of Detail) system. The issue though is that when you are talking about 20km square of open world, that leads to a generating a huge amount of unique geometry. That is the root problem the OP is trying to solve. With Houdini it is straight forward to procedurally generate a bespoke road system with all of the detail and LODs you want, and that will look great and be good for rendering performance, but then every triangle is unique. Using that approach you could easily end up with hundreds of gigabytes of geometry just for roads. This impacts how much geometry is in memory and on disk. That is not much of an issue in a small space like a race track, or an offline context like film vfx, but for games you (and gamers) care about the size of your build because it impacts how much space it takes up on the PC or console or whatever you are playing on. You also care about what your memory allocation is doing every frame, presumably you have other things to worry about other than just rendering roads, like game logic, animation, sound, AI etc. You could use landscape materials and decals to generate the roads as materials in landscape height maps as mentioned (watch Building Worlds with Houdini | Benoit Martinez | Houdini HIVE Paris), but then you are limited in the resolution of the masks you can create to describe road placement. Fine for country roads that blend into the surrounding terrain and don't need geometric detail like curbs and sidewalks. If you want to use geometry, a more efficient approach would be to instance a limited kit-set of road geometry over and over again, (e.g onto points) rather than create a huge amount of unique geometry. That way you can massively reduce your memory footprint when working at scale. If your roads are a nice straight grid like in Spider Man (watch Marvel’s Spider-Man, meet Houdini | David Santiago | GDC 2019), that is not too much of a problem because in this case you can instance straight road segments onto points and they will line up, and then use bespoke geo for the minority of curvy or odd shaped roads. Unfortunately however, not every urban area you might want to make has nice grid shaped road systems, and you could be dealing with a situation where the majority of the road shapes are bespoke with lots of windy, or non uniform shaped roads. In this case you are looking for a way to instance deforming geometry along a curve. You will notice that all road building demos / tutorials only demonstrate these 4 approaches: 1) Procedurally generated unique geometry. 2) Procedurally instanced geometry on points. 3) Procedurally or hand paint roads as landscape textures. 4) Instanced deforming geometry along a hand placed (NOT procedurally placed) curve e.g. Unreal curve components or Unreal Landscape Splines. The issue is, there is currently no way to go from Houdini to Unreal as OP describes, i.e curves generated in Houdini and then instance connected, deforming geometry along splines in Unreal. You can do each of these things individually fine. Creating curves for roads in Houdini is no problem, creating splines in Unreal and instancing and deforming geometry (e.g road kit set pieces) along the splines is fine, there is just currently no off the shelf way to connect these two processes. With Houdini Engine 2 Sidefx is apparently planing to rectify all of this headache by allowing you to convert Houdini curves in to Unreal Spline Components. https://www.sidefx.com/forum/topic/58507/ 1 Quote Link to comment Share on other sites More sharing options...
sant0s81 Posted September 23, 2020 Share Posted September 23, 2020 What about World Composition? I never worked with it, but as far as I understand you split your massive world in little parts. https://docs.unrealengine.com/en-US/Engine/LevelStreaming/WorldBrowser/index.html Quote Link to comment Share on other sites More sharing options...
sant0s81 Posted October 28, 2020 Share Posted October 28, 2020 https://youtu.be/9xK2YK4iYO8?t=2724 I think at 45:24 its related to that topic? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.