[font=tahoma,geneva,sans-serif]Hey everyone[/font]
[font=tahoma,geneva,sans-serif]I've been coming to this site for years but have only just decided to sign up. Hopefully I can help out the community and vice versa.[/font]
[font=tahoma,geneva,sans-serif]My question is about getting the best performance out of the UDK Package for my levels. I have gone through many different tutorials for the modelling suite "Maya" (2011), and I am currently in the progress of modelling a house that I would like to import into UDK later. I was thinking back to other projects I have seen in which houses had been developed via using the BSP geometry and just attaching textures to them. I was wondering would it be better for me to model my houses via Maya and then import them or to attempt to create them with BSP's instead. [/font]Is there going to be any deterioration in frame rate from using one or the over?
[font=tahoma,geneva,sans-serif]Thank you to anyone, and hopefully I don't sound stupid.[/font]
[font=tahoma,geneva,sans-serif]Coro[/font]
UDK - Performance question
Hi there!
So the BSP's in UDK actually help to alleviate processing load while in the game.
When I was learning how to use UDK, I made the first level of DOOM in 3DsMax and imported it as just a massive model and tried to set it up properly in the engine. It was a real pain. Once I got it good to test without even built lighting, it really lagged out.
When I replaced nearly all the walls and floors with BSP's, it screamed and worked perfectly, even with dynamic lighting and depth of field built in the level. I lost a bit of detail, but it still had the effect I was looking for and helped make it do-able.
So in my opinion, if you want to have high detail that needs lotsa geometry, then use a model. Otherwise, use BSP's to help make things quicker. That's what they're there for.
Hope that helps!
So the BSP's in UDK actually help to alleviate processing load while in the game.
When I was learning how to use UDK, I made the first level of DOOM in 3DsMax and imported it as just a massive model and tried to set it up properly in the engine. It was a real pain. Once I got it good to test without even built lighting, it really lagged out.
When I replaced nearly all the walls and floors with BSP's, it screamed and worked perfectly, even with dynamic lighting and depth of field built in the level. I lost a bit of detail, but it still had the effect I was looking for and helped make it do-able.
So in my opinion, if you want to have high detail that needs lotsa geometry, then use a model. Otherwise, use BSP's to help make things quicker. That's what they're there for.
Hope that helps!
Check out my game blog - Dave's Game Blog
Thank you!
Sorry I never replied, I never got an notification. This is really good information.
Sorry I never replied, I never got an notification. This is really good information.
Yeah. The BSP tree (data tree structure) is crucial in many games. I have even seen whole villages in one BSP as essential one placeable object which can greatly increase performance in the game. On rare occasion I come across a simple FPS which has planar elliminated, all the stationary hard edge models as one and sharing a single 2048x2048 or similar texture image. In general the fewer the separate models, textures, and materials the better for performance in game. Watch for hot spots of overloading where there are too many things resulting in frames per second and smoothness of frames problems.
Clinton
Clinton
Personal life and your private thoughts always effect your career. Research is the intellectual backbone of game development and the first order. Version Control is crucial for full management of applications and software. The better the workflow pipeline, then the greater the potential output for a quality game. Completing projects is the last but finest order.
by Clinton, 3Ddreamer
You also need to keep in mind how the Unreal 3 engine handles culling with models. If even a single vertex of a model is visible to the viewport, then the entire model is drawn. This is more than likely why loading up a single model for an entire level was killing the performance for UDK; the entire level was drawn at all times regardless of what was actually truly visible.
I believe this goes for 'grouped models' as well (collections of smaller models). You would need to balance grouping models together and having individual models for situations such as having a bunch of crates throughout a room. Grouping these together means you only have to check once to see if any of the models are visible. However, group too many too far apart, and a single outlying box that might be visible from where you're currently at will cause all the rest of the boxes that are hidden to be drawn anyways even though nothing is shown for the work.
BSPs can be a handy tool for indoor scenes but they really begin to struggle with handling large outdoor areas. I can't remember off the top of my head what the deal was but I believe there's also some inconsistencies with lighting methods between BSP geometry and model geometry (vertex lighting vs. lightmapping and dynamic lighting). Something to keep in mind and look deeper into.
If you build your models properly snapped to a grid following UDK's units, you will be able to snap them together in the UDK editor with ease. As long as you have your models flush with each other and prevent gaps between meshes your models will prevent anything behind them from drawing (as long as all vertices of the hidden models are not visible).
I believe this goes for 'grouped models' as well (collections of smaller models). You would need to balance grouping models together and having individual models for situations such as having a bunch of crates throughout a room. Grouping these together means you only have to check once to see if any of the models are visible. However, group too many too far apart, and a single outlying box that might be visible from where you're currently at will cause all the rest of the boxes that are hidden to be drawn anyways even though nothing is shown for the work.
BSPs can be a handy tool for indoor scenes but they really begin to struggle with handling large outdoor areas. I can't remember off the top of my head what the deal was but I believe there's also some inconsistencies with lighting methods between BSP geometry and model geometry (vertex lighting vs. lightmapping and dynamic lighting). Something to keep in mind and look deeper into.
If you build your models properly snapped to a grid following UDK's units, you will be able to snap them together in the UDK editor with ease. As long as you have your models flush with each other and prevent gaps between meshes your models will prevent anything behind them from drawing (as long as all vertices of the hidden models are not visible).
BSP are only used to flash out a level! In a profesional level you hardly see any BSP since they are all covered with static meshes. But they are nice to flesh out the design and get your basic idea down.
You have a view options, depending on what you exactly want with the house. If it is just scenery i advice you import it as a whole and place it. But if it is very detailed and you might want to re-use parts you should cut it up and put it together in UDK. Depending on the size of the house you can use BSP to flesh things out.
Performance wise UDK can handle tons of triangles, but only if you use the optimization tools. Put up lightmass importance volumes and visibility volumes. The former makes sure the engine calculates the lightning at the important places and the latter will completely hide BSP's and meshes when they are not visible to the player anyway and dynamically loads it back in.
For more detail you should watch some video's of 3D buzz on UDK they have 40+ hours i believe. Also try load a unreal map and turn off static meshes and you see what i mean about using BSP's.
You have a view options, depending on what you exactly want with the house. If it is just scenery i advice you import it as a whole and place it. But if it is very detailed and you might want to re-use parts you should cut it up and put it together in UDK. Depending on the size of the house you can use BSP to flesh things out.
Performance wise UDK can handle tons of triangles, but only if you use the optimization tools. Put up lightmass importance volumes and visibility volumes. The former makes sure the engine calculates the lightning at the important places and the latter will completely hide BSP's and meshes when they are not visible to the player anyway and dynamically loads it back in.
For more detail you should watch some video's of 3D buzz on UDK they have 40+ hours i believe. Also try load a unreal map and turn off static meshes and you see what i mean about using BSP's.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement