Hello all, a fine day to get some work done isn't it?
I'm working on a scene which involves large, flat surfaces that are perfect for BSP. The problem is that I'd like to be able to 'puncture' these surfaces with inset geometry such as damage and small windows and things.
So now I'm stuck trying to figure out how exactly to go about doing this. The only way I can think of would be to hollow out a square and then fill it with a static mesh. As illustrated below, that can be a problem:
So I ask, are there any other methods to go about getting this to work? Assassin's Creed seems to pull it off pretty well.
Granted, 95% of the indented geometry is surrounded by protruding geometry. But, there's gotta be a way though, right?
Replies
Opacity maps?
I found a better example of the kind of thing I'm trying to achieve. So, how would you guys recreate this:
The trail of debris cuts into the geometry of the ground. Now, I'm guessing that the parking lot ground is made of some kind of BSP or terrain. It wouldn't all be one huge static mesh would it? The surface detail is extremely clear. They would need a gigantic texture for that. So that means the trail of debris is a static mesh laid into a terrain/BSP that has a repeating texture covering it. There is a seamless integration though between the debris trail and the terrain. Sometime I feel like idiot and that I missed something very basic and this is one of those times. Any ideas how someone might go about creating this?
bsp should really not be used anymore though imo, it's an old tech designed for 90ies era engines. Since we can now render millions of triangles in realtime bsp becomes kinda useless.. except for maybe mocking up levels, but then still its restricting tech. I'm pretty sure they didn't use bsp on assasins creed.
I'm not the best at unwrapping and understanding all the concepts behind it. Is there a tutorial out there for unwrapping static meshes in a way so that some parts of it can be tiled and other parts can be unique?
You just overlap parts of the uv map, its not too hard, or make a seamless texture and scale up the UV's so its hanging off the edges.
The white lines are decals, overlays or some form of in-engine model-deforming splines.
As for tutorials, search polycount for terrain texturing threads.
Huh?
Yes, make a mock up level in BSP, then replace all the BSP with static meshes. BSP is only used now to prototype level flow and such...
Just curious, how do static meshes outperform BSP in modern technology? Is it because the hardware does z-sorting for you?
I know in old school 3D engines BSP is good because dividing the geometry into convex groups and rendering group by group, is faster than sorting a render list of however many polygons according to depth every frame, the basic painter's algorithm.
The problem I'm encountering with a theoretical BSP tree is integrating moving objects into the tree without rebuilding it each frame, and thereby nullifying the performance gained by not sorting poly by poly.
In unreal the latest renderer treats BSP as a giant static mesh. A BSP box is the same overhead as a static mesh box. The difference being that a big complicated bsp surface won't be culled by line-of-sight culling where a group of smaller static meshes might get culled.
But as far as I remember, from talks on the subject, the assassins creed engine just doesn't use BSP at all.