I Need A Better Program For Collision Hulls

Fortuna_WolfFortuna_Wolf Join Date: 2003-02-02 Member: 13033Members
<div class="IPBDescription">Look at the screenie.</div> <img src='http://www.truffula.net/~fortuna/Graphics/ns_fw100000.JPG' border='0' alt='user posted image'>
I can understand some slight issues with the way the collision hulls are calculated, but this is abosfsckinglutely ridiculous. I can stand 10 feet off the edge of the stairs and still float on its collision hull. On the stairs that are straight on the X and Y it doesn't happen, but half of the steps are angled at 45 degree angles and this happens on all of them.
HELP!
I've spent all day working on this one hive trying to come up with something resembling the concept. First it wasn't vising correctly and I was still getting polycounts of 900 staring at a wall, and now I'm trying something else and the collision hulls are messed up

Comments

  • CageyCagey Ex-Unknown Worlds Programmer Join Date: 2002-11-15 Member: 8829Members, Retired Developer, NS1 Playtester, Constellation
    edited May 2003
    <!--QuoteBegin--Fortuna Wolf+May 25 2003, 04:00 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Fortuna Wolf @ May 25 2003, 04:00 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> I can understand some slight issues with the way the collision hulls are calculated, but this is abosfsckinglutely ridiculous. I can stand 10 feet off the edge of the stairs and still float on its collision hull. On the stairs that are straight on the X and Y it doesn't happen, but half of the steps are angled at 45 degree angles and this happens on all of them.
    HELP!
    I've spent all day working on this one hive trying to come up with something resembling the concept. First it wasn't vising correctly and I was still getting polycounts of 900 staring at a wall, and now I'm trying something else and the collision hulls are messed up <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    What version of the tools are you currently using? Looks like you've got a case of the first clipping bug that my stuff is supposed to combat (described at <a href='http://www.xp-cagey.com/articles/clip_hull' target='_blank'>http://www.xp-cagey.com/articles/clip_hull</a>).

    If you're using 1.7p10, what cliptype setting are you using?

    EDIT: removed img from quote, added link to article.
  • Fortuna_WolfFortuna_Wolf Join Date: 2003-02-02 Member: 13033Members
    edited May 2003
    I have the latest version of your tools. How do I set the cliptype?
    And thanks for that article.

    I'm busy combatting another problem right now... I have two weldables. two doors, a changetarget and a relay. One weldable sets the relay which triggers a door. the other weldable triggers the changetarget which changes the relay's target to the other door. right now though it seems that the changetarget isn't working at all... I'll probably have this fixed by the time you respond though.
  • CageyCagey Ex-Unknown Worlds Programmer Join Date: 2002-11-15 Member: 8829Members, Retired Developer, NS1 Playtester, Constellation
    <!--QuoteBegin--Fortuna Wolf+May 25 2003, 04:43 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Fortuna Wolf @ May 25 2003, 04:43 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> I have the latest version of your tools. How do I set the cliptype?
    And thanks for that article.

    I'm busy combatting another problem right now... I have two weldables. two doors, a changetarget and a relay. One weldable sets the relay which triggers a door. the other weldable triggers the changetarget which changes the relay's target to the other door. right now though it seems that the changetarget isn't working at all... I'll probably have this fixed by the time you respond though. <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
    -cliptype is a command line argument for CSG, you should probably start with "-cliptype precise" for combating that specific problem. The default value uses the same code that traditional compilers use and doesn't fix either bug--it's set that way for backward compatability.
  • Fortuna_WolfFortuna_Wolf Join Date: 2003-02-02 Member: 13033Members
    Oh man, wow, that's beautiful. Really beautiful. I can't even find anymore of those jaggie corners that would stop me as a skulk. *worships the goatee god*
  • amckernamckern Join Date: 2003-03-03 Member: 14249Members, Constellation
    we are compiling with the standerd clip hulls?

    come on, use the proper hull file in the ns folder under something like ns_hul.txt (it has 3 lines of info in it)

    amckern
  • CageyCagey Ex-Unknown Worlds Programmer Join Date: 2002-11-15 Member: 8829Members, Retired Developer, NS1 Playtester, Constellation
    edited May 2003
    <!--QuoteBegin--amckern+May 25 2003, 08:44 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (amckern @ May 25 2003, 08:44 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> we are compiling with the standerd clip hulls?

    come on, use the proper hull file in the ns folder under something like ns_hul.txt (it has 3 lines of info in it)

    amckern <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    Wrong answer. See above.

    EDIT: Having the correct hull file won't fix the invisible ledges that are displayed in that image unless you change clip generation methods. Try it yourself.
  • ShadowicsShadowics Join Date: 2002-11-07 Member: 7652Members
    edited June 2003
    I'm having a similar though weird problem so I figured I'd revive this thread.

    While doing a test of a room for the map I'm working on, I found several unusual clipping errors. In one part of the map, there was a 'block' of clipping, so that if you got ontop of it you could walk around on it. I went and put in a CC - to make a screenie like Fortuna - and the entire level became non-solid! Except for the 'block' of clipping, which was still there exactly to same.

    I read through this thread, and double checked my settings. I've been using -cliptype precise and the latest version ( 1.7p10 ) tools. On a hunch I went and removed that, so it compiled on whatever the default cliptype is. Bingo - The clipping worked perfectly ( There are other problems but that's beside the point ).

    I'm going to leave cliptype precise off for now, but from reading about what the precise setting does I'd want to use it rather than not. Any ideas? I'm going to play around a bit and see If I can find the problem.

    Edit:

    I went and made logfiles of each of the 2 cliptypes, there is one difference. On cliptype precise during hlcsg I recieve the folowing errors: <!--c1--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>CODE</b> </td></tr><tr><td id='CODE'><!--ec1-->0 brushes (totalling 0 sides) discarded from clipping hulls
    CreateBrush:
    Warning: Illegal Brush (edge without opposite face): Entity 0, Brush 0

    Warning: Illegal Brush (edge without opposite face): Entity 0, Brush 2

    Warning: Illegal Brush (edge without opposite face): Entity 0, Brush 32

    Warning: Illegal Brush (edge without opposite face): Entity 0, Brush 34

    (7.58 seconds)
    <!--c2--></td></tr></table><span class='postcolor'><!--ec2-->
    Without cliptype precise there were no errors. Is the cliptype creating errors or merely looking more closely and only reporting them?
  • CageyCagey Ex-Unknown Worlds Programmer Join Date: 2002-11-15 Member: 8829Members, Retired Developer, NS1 Playtester, Constellation
    <!--QuoteBegin--Shadowics+Jun 3 2003, 06:20 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Shadowics @ Jun 3 2003, 06:20 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> I'm having a similar though weird problem so I figured I'd revive this thread.

    While doing a test of a room for the map I'm working on, I found several unusual clipping errors. In one part of the map, there was a 'block' of clipping, so that if you got ontop of it you could walk around on it. I went and put in a CC - to make a screenie like Fortuna - and the entire level became non-solid! Except for the 'block' of clipping, which was still there exactly to same.

    I read through this thread, and double checked my settings. I've been using -cliptype precise and the latest version ( 1.7p10 ) tools. On a hunch I went and removed that, so it compiled on whatever the default cliptype is. Bingo - The clipping worked perfectly ( There are other problems but that's beside the point ).

    I'm going to leave cliptype precise off for now, but from reading about what the precise setting does I'd want to use it rather than not. Any ideas? I'm going to play around a bit and see If I can find the problem.

    Edit:

    I went and made logfiles of each of the 2 cliptypes, there is one difference. On cliptype precise during hlcsg I recieve the folowing errors: <!--c1--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>CODE</b> </td></tr><tr><td id='CODE'><!--ec1-->0 brushes (totalling 0 sides) discarded from clipping hulls
    CreateBrush:
    Warning: Illegal Brush (edge without opposite face): Entity 0, Brush 0

    Warning: Illegal Brush (edge without opposite face): Entity 0, Brush 2

    Warning: Illegal Brush (edge without opposite face): Entity 0, Brush 32

    Warning: Illegal Brush (edge without opposite face): Entity 0, Brush 34

    (7.58 seconds)
    <!--c2--></td></tr></table><span class='postcolor'><!--ec2-->
    Without cliptype precise there were no errors. Is the cliptype creating errors or merely looking more closely and only reporting them? <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
    Thanks for that error listing -- I think I have the problem narrowed down to the code responsible for determining the direction that bevel edges should face; the error you're getting supports that (it is most likely a result of a bevel face pointing 180 degrees from the correct direction, which is going to result in an illegal brush). The webbed tools thread goes into some technical detail about my current approach for a solution... I'll hopefully have something you can try by the end of the week.

    Could you attach a screenshot of the brushes the error lists taken in the editor, preferably selected? I'd like to see what brush shape is causing the problem.
  • ShadowicsShadowics Join Date: 2002-11-07 Member: 7652Members
    edited June 2003
    I'm using Quark, but I put together a screenshot of the piece. All four of the pieces it gave errors for are identical, just mirrors or rotations of each other. Except that there are 4 more duplicates of that piece that don't give errors. It almost seems like these peices aren't the cause of the problem, but victims. While I was waiting for you to respond I cut down the room with the error in it trying to isolate the problem. In one of my tests I completely removed all four of those peices as well as their adjacent pieces - and putting a large box around the room since they had formed part of the exterior. Without those pieces there were no errors in the compile (with cliptype precise ), but the clipping problems got worse. The original 'block' of clip remained, and a new 'wall' of clip appeared some distance away from it. Also several parts of the room suddenly became non-solid, including the bottom of the plain cube that I had put around the room.


    <img src='http://www.geocities.com/shadowics/brush.JPG' border='0' alt='user posted image'>
    <a href='http://www.geocities.com/shadowics/brush.htm' target='_blank'> - Click here if it doesn't work - </a>


    Edit - I did some more testing - The 'block' of clip I've been referring to is connected to the brush beneath it that you would normally walk on top of, sort of like it's the clip for that brush, only many times larger than it should be, remove the brush and the clip vanishes. However, the other clipping errors remain. Also the floor of the large cube I put around it is not entirely non-solid, only part or parts of it are. I'm not sure how I could find what parts except for walking around and falling through a lot. This is confusing though, as there aren't any other brushs near the floor except the sides of the large cube.


    Edit - *image link*
  • CageyCagey Ex-Unknown Worlds Programmer Join Date: 2002-11-15 Member: 8829Members, Retired Developer, NS1 Playtester, Constellation
    <!--QuoteBegin--Shadowics+Jun 3 2003, 08:00 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Shadowics @ Jun 3 2003, 08:00 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> I'm using Quark, but I put together a screenshot of the piece. All four of the pieces it gave errors for are identical, just mirrors or rotations of each other. Except that there are 4 more duplicates of that piece that don't give errors. It almost seems like these peices aren't the cause of the problem, but victims. While I was waiting for you to respond I cut down the room with the error in it trying to isolate the problem. In one of my tests I completely removed all four of those peices as well as their adjacent pieces - and putting a large box around the room since they had formed part of the exterior. Without those pieces there were no errors in the compile (with cliptype precise ), but the clipping problems got worse. The original 'block' of clip remained, and a new 'wall' of clip appeared some distance away from it. Also several parts of the room suddenly became non-solid, including the bottom of the plain cube that I had put around the room.


    <img src='http://www.geocities.com/shadowics/brush.JPG' border='0' alt='user posted image'>
    <a href='http://www.geocities.com/shadowics/brush.JPG' target='_blank'> - Click here if it doesn't work - </a>


    Edit - I did some more testing - The 'block' of clip I've been referring to is connected to the brush beneath it that you would normally walk on top of, sort of like it's the clip for that brush, only many times larger than it should be, remove the brush and the clip vanishes. However, the other clipping errors remain. Also the floor of the large cube I put around it is not entirely non-solid, only part or parts of it are. I'm not sure how I could find what parts except for walking around and falling through a lot. This is confusing though, as there aren't any other brushs near the floor except the sides of the large cube. <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
    After the brushes are copied with expanded dimensions for use in the clip hull, the tools attempt to use CSG to create a single list of faces that will be used to create the final clip hull. If a brush has an illegal shape (possibly due to the bug in precise), it will cause unpredictable behavior when the hull faces are being generated. This is probably why a simple floor brush appears to have holes in the clipping hull-a bad automatically generated brush is being substracted from the floor, causing the hole.
  • ShadowicsShadowics Join Date: 2002-11-07 Member: 7652Members
    Without looking at the code, I understand generally what you mean, and I'm pretty sure it's because of the staircase I have (which actually won't be making into the final map, though something similar may and I'm worried I could run into this again). I could send the stripped down room as a sample map if it could help to find the bug.

    I did have another thought, so just to make sure, I exported the map to a .map and opened it up in Hammer. The map compiled fine again with cliptype precise, same as in Quark, except that in game the clipping errors had 'moved'. There where still non-solids and invisible walls but either they were in different positions or new ones had been created. I ran the .map in Quark again and the positions matched what I had gotten before in Hammer - it seems changing the file type affected the errors.


    P.S. - Edited the image in the previous post - hopefully you will be able to see it now if you couldn't before.
Sign In or Register to comment.