Readdressing the "Phantom Poly" Static Terrain bug

Author Topic: Readdressing the "Phantom Poly" Static Terrain bug  (Read 2965 times)

So, spoiler alert: I got The Slopes working with v21.

I had to decimate the hell out of it and reduce it's poly-count so I could make tris and quads suitable for collision in v21's static engine without taking up an assload of datablocks. There's just one main problem- With a map as big and complicated as this, there's collision issues involving offset raycasting.

To make it clear- player and bot collision works fine and is 100% functional. This bug seems to only affect things which are bound by raycasting.

When a vehicle is used, it won't follow the terrain in the same way that player collision or bot collision does. Flat areas work fine, however once a vehicle goes over a hill with an odd angle, the car will either sink into the ground or drive above it on a short 'invisible poly'. What's super odd about this is that if I were to drive up the area again in another direction, sometimes I'll collide with the terrain just fine.

I've had this bug before when I had first made my first buggy-mess of a map, "Kerumi Valley", where I had dubbed the mysterious error as "Phantom Poly". This is because I noticed that with every tri in the map, there was a "Phantom Tri" that would accompany it, making it into a quad that would only effect of what I suspect is raycasting, as only ghostbricks, bricks, and vehicles seemed to have the error. (I don't know how or if it affects weapons/tools.)

I have reason to suspect that Non-Planar Faces might be causing this issue, as bent-quads seem to also possess this bug. I'll look into it soon. However for now, I just want to know if anybody else has gotten this error while working with staticmaps. If you have another solution or recommendation, please reply with your thoughts. (Or if you're just excited that Slopes is coming to v21 then scream your face off.)

----------
EDIT: Oh yeah I forgot a download link. Here's a temp version of the project, not in its final build quality, but if anybody wants to play around with the map before it's finished, go ahead.
« Last Edit: January 04, 2019, 02:57:33 AM by speeddog73 »

I'll add screenshots and maybe some gifs here. It's late for me right now and I'm running an export of the Blender file as I type, so I can't load the map and screenshot it now.

EDIT: Managed to crank out an extra 15 minutes and get this screenshot. Now I'll be getting only 6 hours of sleep.

« Last Edit: January 04, 2019, 03:00:22 AM by speeddog73 »

I have run into this issue when trying to port a Descent map to Blockland.  I believe it has more to do with single-sided faces than anything else.  Blockland tends to try and "fill in" information if it think's it doesn't have enough to work with.

I would advise against using single-sided faces for collision.  If you're working with terrain, you should be able to just extrude all collision objects down by a single unit.
If you're also using blender, I suggest deleting all faces and edges and then using the spacebar menu's "Convex Hull" tool to make sure your shapes will work right.

I would advise against using single-sided faces for collision.  If you're working with terrain, you should be able to just extrude all collision objects down by a single unit.
Good idea, I’ll give that a try when I get the chance. Hopefully it’s as effective, and less tedious than the method for Convex Hulling.

Hey guys, I'd love to set up a discord group for this. Idk if maybe Tendon or Speed would like to set one up, or I can set one up too!

In any case, I've done a lot of experimentation with this terrain stuff- I've come across the "phantom tri" issue but I was able to resolve it by extruding the triangles and making them 3D. The only problem with this is it gets laggy. I have a theory that we can have a lot of static shapes, but they need to be small.

pretty sure why big static shapes with collision lag more than small is cause of octtree issues. the optimal size probably is to make each static shape smaller so it doesnt span so many large octtree compartments at once

I have a theory that we can have a lot of static shapes, but they need to be small.
I don't think that's right.  Almost all issues I've had with static shapes have been the number of them.  Absolute size doesn't seem to do much.

However, SCALING a shape up probably causes lag.  I had that problem with... I think it was bloodgulch?  Idk that was a long time ago.

Maybe we could get a channel on the BL content creator's discord?  There isn't anything there for mapmakers specifically yet.



anyway regarding the actual topic, it just sounds like your collision boxes are convex which is wrong and produces glitches as described

ah, fair maiden, make haste and absist.  it appears we've a troll neath yonder bridge.

the collisions aren't like solid, they're planes and I havent tried this yet but maybe try applying the solidify modifier (then increase the thickness and apply) to all of the collision?
« Last Edit: January 08, 2019, 09:21:37 PM by Datiel12 ² »

It warms my heart to see content creators in Blockland being more united than ever trying to help each other out, you boys are making me proud.


how to make addon
1) think of idea
2) open up a text file and save as server.cs
3) finish the addon