PDA

View Full Version : BSP invisible walls !



stevelois
03-27-2011, 08:30 PM
In my DM-Amyrade map, a 100% BSP map, I'm running into a weird problem that an invisible wall just "appear" after a while always at the same spot ?

Brief, when I add a brush, which can be anywhere in the map, I dunno why but in some case there is an invisible wall that just appear in a specific spot in the map & isn't close at all where the new brush as been added !

I'm aware of intersect/deintersect steps, or brush orders or brush solidity & I already made everything I can to get rid of my issue by playing with those. I also rotate the entire map & move the entire map elsewhere without success.

The worst is when I do a geometry rebuild, the problem is gone BUT when I do a full rebuild it come back !

The map as only 2500 brushes & use simple shapes. I mean that I'm not using cylinder with many faces or stairs or sphere & such.

So when I look at other heavy HOLP map that as many more brushes, I simply don't understand how they manage to build the map without those frustrating issues.

This is where I'm lost !

Any hints ?

EDIT:

To have an idea, in this screenshot the yellow square is where I add the latest brushes while the red square show where the invisible wall appear.

http://img40.imageshack.us/img40/1183/bspissue.jpg

tetrahedron
03-27-2011, 08:52 PM
I'm currently making a BSP map as well (for Warfare). I encountered this problem a few times, almost always when I was making a ramp. If I moved an edge down and joined it with another edge, part of the ramp would disappear along with some of the ajacent surfaces. I fixed this by making the ramp differently so it wouldn't cause any edges/vertices to be lost.

So I guess, look around the place with the invisible surfaces for deleted edges? That's about all the help I can give, hope it helps. :)

stevelois
03-27-2011, 09:08 PM
Yeah, I've encounter that kind of anomalies, faces just disappear. Even by remaking the brush or move the vertex didn't fix it so I just forgot it.

In my case, everything look good everywhere, nothing is missing, it's just you can see there is a invisible wall there but can find anything where to look at in brush wireframe or wireframe modes !

Sometime if your lucky, when the face disappear, you can recreate it.

THX for your help :)

TKBS
03-27-2011, 09:20 PM
* Ii had invisible wall problems to the extreme-
i even re-built a map from scratch and encountered the same invisible wall 7 times....

- my issue was, strangely, related to static mesh-

*its hard to explain: but for some reason :-

*every time i built BSP in one particular place i was blocked by an invisible wall: it turned out i was using a static mesh - that did not even appear to be remotely near the wall- it did not touch my BSP or anything- but the Blocking volume for it was expanding into the territory of the BSP. [this was not visible in any mode -wireframe etc, it was a stock rock with really poor default collision lines]

- Basically:
see if you have SM overlapping your BSP- even if it does not look like they touch.

stevelois
03-27-2011, 10:07 PM
Well, the map is 100% made of brushes so meshes collisions isn't an issue in this particular case. But it could be a good thing to look at.

I didn't add a blocking volume since a while but maybe there is one that is causing the trouble since they are brush after all ?

plugh
03-28-2011, 12:26 AM
More than likely it's a BSP error. View in BSP split mode to get a better idea of where the error might be.

stevelois
03-28-2011, 01:02 AM
I forgot to mention that in wireframe OR brush wireframe, there is nothing that look problematic neither.

I spend all day just to get rid of that problem without resolving it !

What a waste of time :(

Cr4zy
03-28-2011, 10:39 AM
It's odd that it's fine on a geo rebuild but not on a full rebuild.

I guess everything you've done is on-grid? If not that'd be the first place to look for fixes.
Sometimes odd angles can be a problem, but they're rare.
Usually a BSP error will be quite obvious in normal view ie a missing face or a random black shape will cut through the level. At times the error doesn't have to be where you were last working. In Cipe I had a BSP error occur on the opposite side of a room where I hadn't actually changed anything.

If it's fine after a geo rebuild is it possible to do the builds separately? BSP, Paths, Lights?

If you can't figure it out. I could take a look to see if I can see what the problem may be. No promises though.

Bl!tz~
03-28-2011, 10:45 AM
i have exactly same problem on a morpheus3 conversion, i did three conversions of the bsp (i work on 3 diff versions)..2 are ok and on the third while playing with SM an invisible wall have appear...cant get rid of it and cant see where it comes from
i deleted all the smeshes from the map...and the problem still in....???!!
can something modify the bsp ?looks like it s not related to the bsp itself as the bsp part is the same in the three maps...really weird...i have leave the version with the bug...never was abble to fix it

the worst is if u didnt notice it immediatly...no way to identify where it comes from after some hours work on the map :(

plugh
03-28-2011, 11:04 AM
I forgot to mention that in wireframe OR brush wireframe, there is nothing that look problematic neither.

I spend all day just to get rid of that problem without resolving it !

What a waste of time :(

You won't see a BSP error in wireframe mode.

To fix it, keep all your BSP vertices on a large a grid as possible, keep your weird angles to a minimum, use angles 90º, 45º, 22.5º (1x1, 1x2, 1x4 on the grid). Keep all your geometry planes flat and straight. Use cones, cyclinders, and spheres at your peril.

The more complicated the BSP geometry, the more you must obey the above rules.

Bear in mind that BSP splits will travel across the map, that's why you may get errors appear on the other side from where you're working, so keep your geometry as simple and 'clean' as possible.

TKBS
03-28-2011, 12:03 PM
hmm no SM
-This does sound familiar though-

*Everytime i made a brush BSP using Subtraction- the entire map became BSP- as if i was subtracting from a "Subractive" map- not "additive" - and it was most definately in additive

*build a massive Brush surrounding the area that is Blocking you [the invisible wall]- subtract it and see if it a larger feature appears

I have seen that by deleting these little nuisance files that get corrupt on occassions:
LocalShaderCache-PC-D3D-SM3
you can maybe re-build Full and it will replace these and hopefully work.- this has helped for other situations with me and most recently - bastardbrain

- and this definately is the same as my Radiation thread - i think you even commented on it lol
sorry if im shooting in the dark-
i would be more than happy to look at your map with a link.

Cr4zy
03-28-2011, 01:01 PM
To fix it, keep all your BSP vertices on a large a grid as possible, keep your weird angles to a minimum, use angles 90º, 45º, 22.5º (1x1, 1x2, 1x4 on the grid). Keep all your geometry planes flat and straight. Use cones, cyclinders, and spheres at your peril.

The more complicated the BSP geometry, the more you must obey the above rules.


tbh. i've had more issues with BSP that's 6 faces and on grid then thing's i've had off grid at angles, including cylinders. It's hit and miss.

While I'll always stay stick to the grid, i've gone off it many times without issue. But it's one of those things that can become a nightmare.

plugh
03-28-2011, 03:08 PM
With cylinders, I will always snap the vertices to the grid (select a pair of vertices and in geometry edit with grid snap on, right click on them). Usually I will only use 8 sided cyclinders, as octagons are made of 45º angles, it keeps all the cuts clean and on the grid. Of course you don't have to keep anything on the grid if the BSP is pretty simple, but in this example (2500 brushes?!) you're always going to have issues if you don't keep it clean.

Cr4zy
03-28-2011, 05:15 PM
With cylinders, I will always snap the vertices to the grid (select a pair of vertices and in geometry edit with grid snap on, right click on them). Usually I will only use 8 sided cyclinders, as octagons are made of 45º angles, it keeps all the cuts clean and on the grid. Of course you don't have to keep anything on the grid if the BSP is pretty simple, but in this example (2500 brushes?!) you're always going to have issues if you don't keep it clean.

I agree on snapping cylinders to grid. And always using ones with an even number of sides where possible, they just seem to have less problems.

2500 brushes seems small to me I had over 8k in Cipe :p Only had one BSP issue in that, so either there is an accidental cut or some off grid happening in Steve's map, or just an unlucky engine issue.

stevelois
03-28-2011, 05:42 PM
Since many of you as post something to help me out, my post would be to long if I quote all posts so THX all for sharing your thoughts :)

I resolve my issue by deleting the brushes one by one near the problematic area & make a full rebuild each time between each deletion to see which brush was the faulty one.

In the end, it's some brushes near the invisible wall that seem to cause the issue & not the new brushes I add at the opposite of the map. So I can say it is resolve for the moment...

@TKBS & Blitz

Wow, talk about odd issues m8's ??? Damn, the editor is tricky !

@plugh

FYI, I always stay on the grid & work with the 16, 32 uu's value most of the time. I also use the basic angles (45, 90, etc) & always snap the vertex on the grid with the right click as you mention.

The wall wasn't visible in all mode (wireframe + brush wireframe + unlit or lit) & there isn't any BSP holes or HOM effect anywhere. There is no meshes in that map so it's not related to a bad collision model on a invisible mesh.

@Crazy

2500 isn't not a lot but I'm far from finish :p but I don't want to reach 8000 neither ;)

I don't get why a geometry rebuild fix the issue while the full rebuild put it back.......... mystery !!! But I didn't thought of rebuilding only geometry, after pathing, etc ?

THX again for the help guy's & if my prob is come back, I'll update this thread.