[ Converted text/html to text/plain ] I figured this would be the best place to ask this since my question relates specifically to Half-Life BSP data structures and algorithms.
I'm trying to do collision detection with the clipnodes in a BSP file, however I'm having some troubling figuring out exactly how to go about doing this. I tried looking at the source to botman's BSP viewer, but his collision detection doesn't use the clipnodes, that sly dog ;) My issue is that each clipnode only stores a single planenum, and "leaf clipnodes" are really just contents information. If I have point A, and I want to see if the camera can be moved to point B, I just check to see if point B is in a solid. If it is, I want to be able to determine the exact boundary, so I can do a line intersection and get the exact point on the wall where we must stop. However, the planes are setup hierarchically in the clipnode structure in such a way that it isn't easy to determine the exact boundary plane. Clipnodes don't store face information like render nodes. I was thinking I could find the plane furthest down in the clipnode tree that still intersects line AB, but I don't know if that's deterministic enough. It needs to find the correct boundary perfectly every time. Maybe I'm simply missing something. Or maybe I should follow in botman's footsteps and just do spherical collision detection with the render faces, I dunno :) _______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders

