Author Topic: "aabb split problem"  (Read 930 times)

Legacy__six

  • Hero Member
  • *****
  • Posts: 1436
  • Karma: +0/-0
"aabb split problem"
« on: September 06, 2010, 03:27:19 pm »


               Anyone have any idea what could cause this kind of issue in a tile walkmesh? Tiles that have this error in their sanity check invariably crash the toolset when placed, but there's no obvious cause for the problem, and I can find no information anywhere regarding what the error means. As far as I can see from my walkmesh  nothing is wrong - I made it the same way as every other one I make, but having remade it three times I get the same error every time.

I've encountered the error a couple of times before, and each time my only solution was to make the entire tile from scratch. Hopefully I won't have to do that this time...

So, anyone able to help?
               
               

               


                     Modifié par _six, 06 septembre 2010 - 02:28 .
                     
                  


            

Legacy_Michael DarkAngel

  • Hero Member
  • *****
  • Posts: 627
  • Karma: +0/-0
"aabb split problem"
« Reply #1 on: September 06, 2010, 04:43:41 pm »


               Wish I could help, but I haven't encountered that error in a while and I can't remember how or if I fixed it.

My recent issues with walkmeshes have been caused by unwelded verts, hidden faces and modelbases not placed at exactly 0,0,0.



'Posted

MDA
               
               

               
            

Legacy_Zwerkules

  • Hero Member
  • *****
  • Posts: 1997
  • Karma: +0/-0
"aabb split problem"
« Reply #2 on: September 06, 2010, 06:47:36 pm »


               The problem is caused by two faces with the same vertices. In the wok you will somewhere find an entry that tells you the average position of those. So you know where to start looking for them. Still it's often not easy to find them. You have to select faces and use 'hide mesh' until you find one

face below another one and then remove one of those faces.

I've only encountered this error when working on Bioware tiles and exporting them. I remember two tiles of the arena from the city tileset have this error when being exported. A lot of others cause this too, but I can't remember which ones.

I don't know if there is any other possible reason for this aabb split problem. Every time I had it it was because of two faces in the same place or very nearly the same place so they were overlapping.
               
               

               
            

Legacy_Bannor Bloodfist

  • Hero Member
  • *****
  • Posts: 1578
  • Karma: +0/-0
"aabb split problem"
« Reply #3 on: September 06, 2010, 10:45:14 pm »


               This is where you really need the "View Sanity Check Results" OR, to actually view the wok data.



To get and use the sanity check, you must export the mdl, and choose "yes" when it asks if you wish to continue.  If you don't continue, the sanity check file is never written.



To use the sanity check file, it will give you the same info and actually tell you the bad edges, if you find the vert mentioned in the sanity check file, then select edges at that location until you find the edge number that matches the edge reported bad edge in the sanity check and delete it.  If you lost a face, don't worry, you can rebuild it.  If there are MORE than one edge mentioned, work from the bottom up, ie, fix the last one first, and work backwards, otherwise, when you delete one max will renumber everything on you and the sanity check file reported bad edge number will not be accurate.



OR to use the wok data, which is a bit more tricky,  select the wok object, on the rollout menu click "Build wok Data"  This may or may not give an error.  Regardless, scroll down through the wok data, slowly, you should find an aabb split line in there, the line above, and the line below are the two locations that are



The tricky thing here, is that the wok data is in temporary memory only, once you click away and do anything else, it is gone.  However, it also gives you the location of the first vertice that is part of the problem with the wok.
               
               

               
            

Legacy__six

  • Hero Member
  • *****
  • Posts: 1436
  • Karma: +0/-0
"aabb split problem"
« Reply #4 on: September 07, 2010, 05:58:45 am »


               

Zwerkules wrote...

The problem is caused by two faces with the same vertices. In the wok
you will somewhere find an entry that tells you the average position of
those. So you know where to start looking for them. Still it's often not
easy to find them. You have to select faces and use 'hide mesh' until
you find one


Thanks! I'll get onto that right away.

Bannor Bloodfist wrote...

To use the sanity check file, it will give you the same info and actually tell you the bad edges, if you find the vert mentioned in the sanity check file, then select edges at that location until you find the edge number that matches the edge reported bad edge in the sanity check and delete it.

Just for the record this isn't a "bad edges" issue, and no information other than the one line "aabb split problem" is listed in the sanity check. It's not very enlightening.
               
               

               


                     Modifié par _six, 07 septembre 2010 - 04:59 .
                     
                  


            

Legacy_Zwerkules

  • Hero Member
  • *****
  • Posts: 1997
  • Karma: +0/-0
"aabb split problem"
« Reply #5 on: September 07, 2010, 04:01:35 pm »


               I just reconstructed one of those aabb split errors by importing and then exporting tcn01_x12_01.mdl which is one of the arena tiles which cause this error when being exported. In the wok file you get a line like this:

#ERROR: aabb tree unable to get a split down both branches after testing x,y,z slicing planes.

#Midpoint Average (x,y,z): 194.667 -180.667 -98.0

#Facelist: #(39, 40)

It has the average position of the faces and the numbers of the faces, so in this example you'd

have to find either face 39 or 40 and delete it. If there's more than one such error you have to work backwards as Bannor said because the faces get renumbered after one is removed.

               
               

               
            

Legacy_Michael DarkAngel

  • Hero Member
  • *****
  • Posts: 627
  • Karma: +0/-0
"aabb split problem"
« Reply #6 on: September 08, 2010, 03:05:16 am »


               Would a WOK Checker that actually worked, or worked better (depending on which you use) be of use.

I ask because for some time the "WOK Checker Tool" in NWmax for 3DSMax v8 would always crash for me.  A couple years ago, I fixed that problem so that it displays the bad edges/verts and allows them to be selected from the display box.

Also, I changed some of the Listener display for the "WOK-Check" tool in VelTools.  I can no longer remember why, I just know that it didn't make the results very clear to me.



If either of these would be considered helpful, I would happily make them available.



'Posted

MDA
               
               

               
            

Legacy_Bannor Bloodfist

  • Hero Member
  • *****
  • Posts: 1578
  • Karma: +0/-0
"aabb split problem"
« Reply #7 on: September 08, 2010, 04:29:09 am »


               

Michael DarkAngel wrote...

Would a WOK Checker that actually worked, or worked better (depending on which you use) be of use.
I ask because for some time the "WOK Checker Tool" in NWmax for 3DSMax v8 would always crash for me.  A couple years ago, I fixed that problem so that it displays the bad edges/verts and allows them to be selected from the display box.
Also, I changed some of the Listener display for the "WOK-Check" tool in VelTools.  I can no longer remember why, I just know that it didn't make the results very clear to me.

If either of these would be considered helpful, I would happily make them available.

'Posted
MDA


That would probably help a few folks Michael.  Worst case, it wouldn't get used, best case, it solves some trouble for folks.  Even though aabb split issues are not really that common, they are common enough to cause headaches for folks.