Author Topic: Compiled vs Decompiled Models - Recent Findings (aka Round 2)  (Read 575 times)

Legacy__six

  • Hero Member
  • *****
  • Posts: 1436
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #15 on: May 20, 2014, 12:04:35 am »


               

You can do non-walkable walkmesh overhangs up to a point and may have a good reason to do it. Trapping the camera inside a ceiling, for instance. A walkable floor, with a non-walkable, downwards-facing walkmesh ceiling above it works perfectly fine. The opposite is not the case, and whilst you can occasionally experiment to find things that sort of work, your mileage will vary.


 


Diademus' spider caves did it just fine, and I implemented it in several unreleased works back in the day too with no problems.


 


That said, if you ever let two vertices exist at the same XY coordinates (or within 1cm) but different Z, you'll get weird teleporting bugs when walking over that tile. I've never fully understood why this should be the case, but it's easy enough to avoid.



               
               

               
            

Legacy_cervantes35

  • Sr. Member
  • ****
  • Posts: 426
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #16 on: May 20, 2014, 03:48:47 am »


               

OMB I pretty sure Paul ran the said tps01_stem_01 tiles thru CM3 before he tried compiling the model.



               
               

               
            

Legacy_Jedijax

  • Hero Member
  • *****
  • Posts: 692
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #17 on: May 20, 2014, 06:41:29 am »


               

Sorry to make a non-technical post, but this is something we have talked about over the years and it never seems to be definitive in its resolution. Do compiled models actually have an impact on performance? Pstemarie says such is in older systems, but I have never actually seemed to find a co-relation between performance and compiling through the years and on three very different systems. Has anyone actually benchmarked this? I even made clean install tests with no overrides or haks, pure vanilla NWN and didn't find any difference from fully modded one.



               
               

               
            

Legacy_OldMansBeard

  • Full Member
  • ***
  • Posts: 245
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #18 on: May 20, 2014, 07:37:09 am »


               


Sorry to make a non-technical post, but this is something we have talked about over the years and it never seems to be definitive in its resolution. Do compiled models actually have an impact on performance? Pstemarie says such is in older systems, but I have never actually seemed to find a co-relation between performance and compiling through the years and on three very different systems. Has anyone actually benchmarked this? I even made clean install tests with no overrides or haks, pure vanilla NWN and didn't find any difference from fully modded one.




Compiliing speeds up loading. It doesn't speed up performance in-game once all the models have loaded. So to see the difference, you have to measure things like area load times or dwell times when objects are being created dynamically.


 


Separately, and slightly paradoxically, if a model is buggy it might load and function correctly if left uncompiled but not if compiled. That's because the engine is fairly robust and can resolve some kinds of bugs by referencing the context into which the model is being loaded, in ways that a compiler can't because the game context isn't present at that time.


 


It's the ramifications of that second phenomenon that were are debating here. Of course, it's better if models aren't buggy in the first place, but that's hard to achieve,


               
               

               
            

Legacy_OldMansBeard

  • Full Member
  • ***
  • Posts: 245
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #19 on: May 20, 2014, 07:44:43 am »


               


OMB I pretty sure Paul ran the said tps01_stem_01 tiles thru CM3 before he tried compiling the model.




Can I download those models somewhere? I'd like to see what CM3 does with them. If it's doing something inappropriate, maybe I can fix it.



               
               

               
            

Legacy_Zarathustra217

  • Sr. Member
  • ****
  • Posts: 322
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #20 on: May 20, 2014, 08:35:43 am »


               

Whenever I've encountered the "SQRT Domain error", it's been because I've compiled a model with a trimesh/skinmesh that had zero faces. The build-in compiler seems to fix this itself whereas the external compiler does not.


 


Could this be related?



               
               

               
            

Legacy_OldMansBeard

  • Full Member
  • ***
  • Posts: 245
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #21 on: May 20, 2014, 09:47:24 am »


               


Whenever I've encountered the "SQRT Domain error", it's been because I've compiled a model with a trimesh/skinmesh that had zero faces. The build-in compiler seems to fix this itself whereas the external compiler does not.


 


Could this be related?




Yes, that's an example of a buggy model that the loader can handle but the compiler can't.


 


It's possible, however, that nwnmdlcomp (assuming that's what you were using) handles this particular bug less well than the BW model compiler would have done. In binary files, there are internal pointers to data arrays (you can see this if you look at the binary data in NWNExplorer). If you have a trimesh with no faces, the face array would have zero elements but there would still be a binary pointer to where the face array would have been. The BW compiler sets the pointer to where the next pointer would have been, which is a vaild place to point to, but nwnmdlcomp sets it to hex zero. Maybe this is what is confusing the loader and causing the error. I'm speculating, though.


               
               

               
            

Legacy_Pstemarie

  • Hero Member
  • *****
  • Posts: 4368
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #22 on: May 20, 2014, 11:32:00 am »


               


Can I download those models somewhere? I'd like to see what CM3 does with them. If it's doing something inappropriate, maybe I can fix it.




 


No need. The last time I rant the tileset through CM3 was in August 2013. I just ran it through CM3 3.52 last night and all is good. The tile compiles.


 


I love CM3 - never found a model yet that some iteration of that program can't fix - and, like good wine, CM3 gets better with age.


 


Just to clarify - when I used the term "performance" in the OP, I was referring to, as noted by OMB, load time not actual "ingame" performance. I'll try to be clearer in the future.


 


For reference here is the CM3 output for that tile. Note the line in bold red - confirms what Zarathustra stated above (thanks for that) :


 


tps01_stem01.mdl loaded.

  in emitter em_smoke06, "opacity" interpreted as "alpha"

  in emitter em_smoke05, "opacity" interpreted as "alpha"

  in emitter em_smoke04, "opacity" interpreted as "alpha"

  in emitter em_smoke03, "opacity" interpreted as "alpha"

  in emitter em_smoke02, "opacity" interpreted as "alpha"

  in emitter em_smoke01, "opacity" interpreted as "alpha"

  deleted faceless trimesh node(s) [line08,line09]

  aabb node walkmesh01 set to render 0

  aabb node walkmesh01 set to shadow 0

  decimal snap applied to node positions and mesh vertices

  tverts snapped to 1/512

  tverts welded in [cylinder04_5]

  warning - tverts of mesh12 are fragmented in 21 groups 

  warning - tverts of mesh20 are fragmented in 15 groups 

  renormalized tverts in 188 objects

  warning - aabb node walkmesh01 has 1 downward-pointing face(s) [102] 

  face 102: [[1.64,-3.01,2.5],[2.21,-2.73,2.45],[2.16,-2.94,8.21]]

  aabb data rebuilt

  warning - object191_3 is positioned off-tile at [12.883333333333335,7.908333333333334] 

  warning - object191_2 is positioned off-tile at [12.7475,7.345] 

  warning - object191_1 is positioned off-tile at [13.196666666666667,6.56] 

  warning - mesh436_4 is positioned off-tile at [5.265000000000001,-1.7958333333333327] 

  warning - mesh436_2 is positioned off-tile at [5.550000000000001,-2.1424999999999996] 

  warning - mesh26_3_3 is positioned off-tile at [11.180833333333332,9.424166666666666] 

  warning - mesh26_3_2 is positioned off-tile at [11.435416666666667,8.088333333333333] 

  warning - mesh26_3_1 is positioned off-tile at [10.114285714285714,10.77190476190476] 

  warning - mesh26_3 is positioned off-tile at [10.567948717948717,7.761538461538463] 

  warning - mesh26_2 is positioned off-tile at [12.545666666666667,6.587666666666666] 

  warning - mesh26_1 is positioned off-tile at [12.173888888888888,4.947222222222223] 

  warning - mesh22_3 is positioned off-tile at [7.3075,-0.7775000000000001] 

  warning - mesh22_2 is positioned off-tile at [8.48611111111111,-0.885] 

  warning - mesh22_1 is positioned off-tile at [6.584444444444444,-1.615] 

  warning - mesh21_5 is positioned off-tile at [2.0693333333333332,12.632666666666667] 

  warning - mesh21_4 is positioned off-tile at [2.594,11.824666666666666] 

  warning - mesh21_3 is positioned off-tile at [1.9853333333333336,11.075333333333333] 

  warning - mesh21_2 is positioned off-tile at [1.0853333333333333,11.422666666666666] 

  warning - mesh21_1 is positioned off-tile at [1.7760000000000002,11.868666666666666] 

  warning - mesh10_7 is positioned off-tile at [1.6516666666666668,5.746666666666667] 

  warning - mesh10_3 is positioned off-tile at [5.60095238095238,-2.036666666666666] 

  warning - mesh10_2 is positioned off-tile at [8.448333333333334,-0.1161111111111111] 

  warning - mesh09_2 is positioned off-tile at [9.628333333333334,2.1341666666666668] 

  warning - mesh09_1 is positioned off-tile at [9.651333333333334,0.09000000000000002] 

  warning - mesh08_9 is positioned off-tile at [4.012499999999999,7.727499999999999] 

  warning - mesh08_8 is positioned off-tile at [8.610555555555557,-1.3711111111111112] 

  warning - mesh08_7 is positioned off-tile at [6.8966666666666665,8.399166666666666] 

  warning - mesh08_5 is positioned off-tile at [8.545555555555557,7.301666666666667] 

  warning - mesh08_4 is positioned off-tile at [9.412500000000001,4.793333333333333] 

  warning - mesh08_3_2 is positioned off-tile at [4.316666666666666,10.203333333333335] 

  warning - mesh08_3_1 is positioned off-tile at [2.3833333333333333,8.642] 

  warning - mesh08_3 is positioned off-tile at [4.557777777777778,5.689444444444445] 

  warning - mesh08_2 is positioned off-tile at [9.275833333333335,0.8766666666666667] 

  warning - mesh08_1 is positioned off-tile at [7.526666666666666,0.226] 

  warning - line05_1 is positioned off-tile at [1.8283333333333334,11.8525] 

  warning - cylinder601_2 is positioned off-tile at [0.8720000000000003,-5.008] 

  warning - cylinder601_1 is positioned off-tile at [0.8300000000000001,-5.172] 

  warning - cylinder94_4 is positioned off-tile at [-0.4305555555555556,9.221666666666666] 

  warning - cylinder94_3 is positioned off-tile at [-0.044666666666666674,9.524] 

  warning - cylinder94_2 is positioned off-tile at [-0.22833333333333333,9.138888888888888] 

  warning - cylinder94_1 is positioned off-tile at [-0.01611111111111141,9.280555555555555] 

  warning - cylinder93_4 is positioned off-tile at [-2.2516666666666665,5.6066666666666665] 

  warning - cylinder93_3 is positioned off-tile at [-2.12,6.076666666666667] 

  warning - cylinder93_2 is positioned off-tile at [-2.0394444444444444,5.657777777777778] 

  warning - cylinder93_1 is positioned off-tile at [-1.9522222222222223,5.897222222222222] 

  warning - cylinder90_4 is positioned off-tile at [5.709444444444444,12.517777777777775] 

  warning - cylinder90_3 is positioned off-tile at [6.085,12.416111111111112] 

  warning - cylinder90_2 is positioned off-tile at [5.762777777777778,12.370555555555555] 

  warning - cylinder90_1 is positioned off-tile at [5.95,12.32] 

  warning - cylinder76_4 is positioned off-tile at [6.336111111111111,11.334444444444443] 

  warning - cylinder76_3 is positioned off-tile at [6.833333333333333,11.19111111111111] 

  warning - cylinder76_2 is positioned off-tile at [6.414444444444444,11.122222222222222] 

  warning - cylinder76_1 is positioned off-tile at [6.662222222222223,11.049444444444443] 

  warning - cylinder75_5 is positioned off-tile at [20.575833333333332,4.970833333333334] 

  warning - cylinder75_4 is positioned off-tile at [20.225833333333334,5.685] 

  warning - cylinder75_3 is positioned off-tile at [20.48,5.018333333333333] 

  warning - cylinder75_2_4 is positioned off-tile at [20.036666666666665,5.6658333333333335] 

  warning - cylinder75_2_3 is positioned off-tile at [19.50333333333333,5.394166666666667] 

  warning - cylinder75_2_2 is positioned off-tile at [20.245833333333334,5.6466666666666665] 

  warning - cylinder75_2_1 is positioned off-tile at [19.751666666666665,5.295833333333333] 

  warning - cylinder75_2 is positioned off-tile at [19.779999999999998,5.5287500000000005] 

  warning - cylinder75_1_7 is positioned off-tile at [19.97111111111111,5.821666666666667] 

  warning - cylinder75_1_6 is positioned off-tile at [20.32111111111111,5.854444444444444] 

  warning - cylinder75_1_5 is positioned off-tile at [20.593888888888888,5.6305555555555555] 

  warning - cylinder75_1_4 is positioned off-tile at [20.628333333333334,5.279444444444445] 

  warning - cylinder75_1_3 is positioned off-tile at [20.40277777777778,5.006111111111111] 

  warning - cylinder75_1_2 is positioned off-tile at [20.051111111111112,4.969444444444445] 

  warning - cylinder75_1_1 is positioned off-tile at [19.779444444444444,5.193888888888888] 

  warning - cylinder75_1 is positioned off-tile at [19.74722222222222,5.547777777777778] 

  warning - cylinder74_9 is positioned off-tile at [15.9475,12.972499999999998] 

  warning - cylinder74_8 is positioned off-tile at [15.004166666666666,13.269166666666667] 

  warning - cylinder74_7 is positioned off-tile at [16.601666666666667,12.585833333333333] 

  warning - cylinder74_6 is positioned off-tile at [16.815833333333334,12.815833333333334] 

  warning - cylinder74_5 is positioned off-tile at [16.916666666666664,13.098000000000003] 

  warning - cylinder74_4 is positioned off-tile at [17.1175,13.064166666666667] 

  warning - cylinder74_3 is positioned off-tile at [16.774166666666666,12.619166666666667] 

  warning - cylinder74_2_1 is positioned off-tile at [16.58416666666667,12.369166666666667] 

  warning - cylinder74_2 is positioned off-tile at [16.744666666666664,12.344] 

  warning - cylinder74_1 is positioned off-tile at [15.87166666666667,13.208333333333332] 

  warning - cylinder73_5 is positioned off-tile at [14.684166666666666,11.205] 

  warning - cylinder73_4 is positioned off-tile at [14.171666666666667,11.744166666666667] 

  warning - cylinder73_3 is positioned off-tile at [14.628333333333334,11.190833333333334] 

  warning - cylinder73_2_4 is positioned off-tile at [14.61,11.285] 

  warning - cylinder73_2_3 is positioned off-tile at [14.175,10.860000000000001] 

  warning - cylinder73_2_2 is positioned off-tile at [14.606666666666667,11.463333333333333] 

  warning - cylinder73_2_1 is positioned off-tile at [14.237499999999999,10.9775] 

  warning - cylinder73_2 is positioned off-tile at [14.39625,11.077916666666667] 

  warning - cylinder73_1_7 is positioned off-tile at [13.951666666666668,11.338888888888889] 

  warning - cylinder73_1_6 is positioned off-tile at [14.082777777777777,11.671111111111111] 

  warning - cylinder73_1_5 is positioned off-tile at [14.493333333333332,11.802916666666668] 

  warning - cylinder73_1_4 is positioned off-tile at [14.888333333333334,11.35888888888889] 

  warning - cylinder73_1_3 is positioned off-tile at [14.758333333333333,11.025555555555556] 

  warning - cylinder73_1_2 is positioned off-tile at [14.429444444444444,10.881666666666666] 

  warning - cylinder73_1_1 is positioned off-tile at [14.095555555555556,11.011666666666667] 

  warning - cylinder73_1 is positioned off-tile at [14.746666666666668,11.645] 

  warning - cylinder70_4 is positioned off-tile at [8.672777777777778,9.899444444444445] 

  warning - cylinder70_3 is positioned off-tile at [8.995,9.501666666666667] 

  warning - cylinder70_2 is positioned off-tile at [8.608888888888888,9.691666666666666] 

  warning - cylinder70_1 is positioned off-tile at [8.769444444444446,9.493888888888888] 

  warning - cylinder15_2_4 is positioned off-tile at [17.469166666666666,5.8950000000000005] 

  warning - cylinder15_2_3 is positioned off-tile at [16.78333333333333,5.835] 

  warning - cylinder15_2_2 is positioned off-tile at [17.49,5.726666666666667] 

  warning - cylinder15_2_1 is positioned off-tile at [16.817500000000003,5.565833333333334] 

  warning - cylinder15_2 is positioned off-tile at [17.13041666666667,5.8575] 

  warning - cylinder15_1_7 is positioned off-tile at [16.73111111111111,5.771111111111111] 

  warning - cylinder15_1_6 is positioned off-tile at [17.083888888888886,5.966111111111111] 

  warning - cylinder15_1_5 is positioned off-tile at [17.518333333333334,5.738333333333333] 

  warning - cylinder15_1_4 is positioned off-tile at [17.555555555555554,5.118888888888889] 

  warning - cylinder15_1_3 is positioned off-tile at [17.202222222222222,4.9255555555555555] 

  warning - cylinder15_1_2 is positioned off-tile at [16.814444444444444,5.0361111111111105] 

  warning - cylinder15_1_1 is positioned off-tile at [16.620555555555555,5.385555555555555] 

  warning - cylinder15_1 is positioned off-tile at [17.669166666666666,5.555833333333332] 

  warning - cylinder07_11 is positioned off-tile at [12.4925,5.774166666666668] 

  warning - cylinder07_10 is positioned off-tile at [12.584999999999999,5.230833333333334] 

  warning - cylinder07_9_1 is positioned off-tile at [11.600833333333334,5.469166666666667] 

  warning - cylinder07_9 is positioned off-tile at [12.309999999999999,5.605833333333334] 

  warning - cylinder07_8 is positioned off-tile at [11.6925,5.608333333333333] 

  warning - cylinder07_7 is positioned off-tile at [11.774166666666668,5.1075] 

  warning - cylinder07_6_1 is positioned off-tile at [11.641666666666666,5.218333333333334] 

  warning - cylinder07_6 is positioned off-tile at [12.354166666666666,5.3341666666666665] 

  warning - cylinder07_5 is positioned off-tile at [11.314166666666665,5.399166666666666] 

  warning - cylinder07_4 is positioned off-tile at [11.349166666666667,5.1625000000000005] 

  warning - cylinder07_3 is positioned off-tile at [10.681666666666668,5.280833333333334] 

  warning - cylinder07_2 is positioned off-tile at [10.852857142857143,5.22904761904762] 

  warning - cylinder07_1 is positioned off-tile at [10.72,5.043333333333333] 

  warning - cylinder04_10 is positioned off-tile at [1.72,13.28] 

  warning - cylinder04_9 is positioned off-tile at [3.015,12.5325] 

  warning - cylinder04_8 is positioned off-tile at [3.0149999999999997,11.035] 

  warning - cylinder04_7 is positioned off-tile at [1.72,10.29] 

  warning - cylinder04_6 is positioned off-tile at [0.4224999999999999,11.035] 

  warning - cylinder04_5 is positioned off-tile at [2.3430952380952386,11.15095238095238] 

  warning - cylinder04_4 is positioned off-tile at [0.8426666666666668,12.670666666666666] 

  warning - cylinder04_3 is positioned off-tile at [1.719444444444444,11.782777777777776] 

  warning - cylinder04_2_11 is positioned off-tile at [0.21944444444444444,13.302222222222222] 

  warning - cylinder04_2_10 is positioned off-tile at [1.181111111111111,13.847777777777777] 

  warning - cylinder04_2_9 is positioned off-tile at [2.286111111111111,13.840555555555554] 

  warning - cylinder04_2_8 is positioned off-tile at [3.237222222222222,13.281111111111109] 

  warning - cylinder04_2_7 is positioned off-tile at [3.7805555555555554,12.318888888888887] 

  warning - cylinder04_2_6 is positioned off-tile at [3.7727777777777782,11.21722222222222] 

  warning - cylinder04_2_5 is positioned off-tile at [3.216111111111111,10.267777777777779] 

  warning - cylinder04_2_4 is positioned off-tile at [2.257222222222222,9.722222222222221] 

  warning - cylinder04_2_3 is positioned off-tile at [1.1522222222222223,9.729444444444445] 

  warning - cylinder04_2_2 is positioned off-tile at [0.1988888888888889,10.28888888888889] 

  warning - cylinder04_2_1 is positioned off-tile at [-0.34666666666666657,11.246111111111112] 

  warning - cylinder04_2 is positioned off-tile at [-0.3383333333333333,12.347777777777779] 

  warning - cylinder04_1 is positioned off-tile at [1.7188888888888887,11.78277777777778] 

  warning - cylinder01_2_6 is positioned off-tile at [14.200000000000001,1.3541666666666667] 

  warning - cylinder01_2_5 is positioned off-tile at [14.555,1.6827777777777773] 

  warning - cylinder01_2_4 is positioned off-tile at [14.053333333333335,1.4841666666666666] 

  warning - cylinder01_2_3 is positioned off-tile at [14.0425,1.6966666666666668] 

  warning - cylinder01_2_2 is positioned off-tile at [14.171666666666667,1.8641666666666667] 

  warning - cylinder01_2_1 is positioned off-tile at [14.3675,1.8883333333333334] 

  warning - cylinder01_2 is positioned off-tile at [14.406666666666666,1.4372222222222222] 

  warning - cylinder01_1 is positioned off-tile at [14.428333333333335,1.63] 

  warning - box04_4 is positioned off-tile at [14.933333333333332,8.674166666666666] 

  warning - box04_3_2 is positioned off-tile at [16.51,7.0424999999999995] 

  warning - box04_3_1 is positioned off-tile at [16.670666666666666,7.492] 

  warning - box04_3 is positioned off-tile at [16.6875,7.510833333333334] 

  warning - box04_2_7 is positioned off-tile at [16.38666666666667,9.001666666666667] 

  warning - box04_2_6 is positioned off-tile at [16.71333333333333,9.190833333333334] 

  warning - box04_2_5 is positioned off-tile at [16.98,9.166666666666666] 

  warning - box04_2_4 is positioned off-tile at [16.677222222222223,8.342777777777778] 

  warning - box04_2_3 is positioned off-tile at [17.0275,8.760833333333334] 

  warning - box04_2_2 is positioned off-tile at [16.658,8.802000000000001] 

  warning - box04_2_1_1 is positioned off-tile at [16.090666666666667,8.369333333333332] 

  warning - box04_2_1 is positioned off-tile at [15.851666666666663,8.598333333333333] 

  warning - box04_2 is positioned off-tile at [16.634166666666665,8.490833333333333] 

  warning - box04_1 is positioned off-tile at [16.054933333333338,8.456133333333334] 

  warning - windowbars04 is positioned off-tile at [12.818958333333335,8.279583333333335] 

  warning - window04 is positioned off-tile at [12.569666666666667,8.212] 

  warning - sphere01 is positioned off-tile at [1.8215277777777779,11.842916666666666] 

  warning - plane13 is positioned off-tile at [-2.0116666666666667,5.949999999999999] 

  warning - plane12 is positioned off-tile at [5.918333333333333,12.246666666666666] 

  warning - plane11 is positioned off-tile at [6.43,11.196666666666667] 

  warning - plane10 is positioned off-tile at [8.826666666666668,9.5] 

  warning - plane09 is positioned off-tile at [10.45,5.0649999999999995] 

  warning - plane03 is positioned off-tile at [11.995000000000001,5.425] 

  warning - plane02 is positioned off-tile at [0.020000000000000046,9.206666666666667] 

  warning - plane01 is positioned off-tile at [13.67,0.27] 

  warning - object191 is positioned off-tile at [12.348749999999999,8.95125] 

  warning - object190 is positioned off-tile at [12.047333333333333,7.680666666666667] 

  warning - object189 is positioned off-tile at [12.804930555555558,8.307638888888889] 

  warning - object188 is positioned off-tile at [13.194,9.349333333333334] 

  warning - object187 is positioned off-tile at [13.397333333333334,9.642666666666667] 

  warning - object186 is positioned off-tile at [13.973333333333334,7.042] 

  warning - object184 is positioned off-tile at [12.993333333333332,8.377916666666664] 

  warning - object43 is positioned off-tile at [1.76,-5.145833333333333] 

  warning - object16 is positioned off-tile at [14.299666666666667,6.977777777777778] 

  warning - object01 is positioned off-tile at [17.138333333333335,12.61595238095238] 

  warning - mesh464 is positioned off-tile at [-0.3011111111111112,9.251111111111111] 

  warning - mesh463 is positioned off-tile at [0.007500000000000007,9.181666666666667] 

  warning - mesh462 is positioned off-tile at [-2.1644444444444444,5.707777777777778] 

  warning - mesh461 is positioned off-tile at [-2.025,5.870833333333333] 

  warning - mesh458 is positioned off-tile at [5.846666666666668,12.555555555555555] 

  warning - mesh457 is positioned off-tile at [5.9025,12.3025] 

  warning - mesh451 is positioned off-tile at [6.480833333333334,11.1775] 

  warning - mesh450 is positioned off-tile at [6.688888888888888,11.162222222222221] 

  warning - mesh449 is positioned off-tile at [8.78,9.5525] 

  warning - mesh448 is positioned off-tile at [8.714444444444444,9.773333333333333] 

  warning - mesh440 is positioned off-tile at [0.5920000000000001,-5.051] 

  warning - mesh29 is positioned off-tile at [14.379999999999999,1.6083333333333332] 

  warning - mesh28 is positioned off-tile at [14.394761904761907,-0.14019047619047623] 

  warning - mesh27 is positioned off-tile at [16.981851851851854,5.266851851851851] 

  warning - mesh26 is positioned off-tile at [12.290606060606063,6.634545454545454] 

  warning - mesh25 is positioned off-tile at [11.67688888888889,7.8420000000000005] 

  warning - mesh24 is positioned off-tile at [1.7750000000000001,11.867999999999999] 

  warning - mesh23 is positioned off-tile at [1.776,11.866999999999999] 

  warning - mesh22 is positioned off-tile at [7.385333333333335,-0.9030000000000002] 

  warning - mesh21 is positioned off-tile at [1.1373333333333333,12.385333333333332] 

  warning - mesh20 is positioned off-tile at [1.7745555555555557,11.867555555555555] 

  warning - mesh19 is positioned off-tile at [10.659,7.589166666666667] 

  warning - mesh18 is positioned off-tile at [18.12547619047619,12.398809523809524] 

  warning - mesh14 is positioned off-tile at [10.45,5.1225000000000005] 

  warning - mesh13 is positioned off-tile at [14.468333333333334,1.2822222222222222] 

  warning - mesh12 is positioned off-tile at [5.268688524590164,4.356174863387978] 

  warning - mesh11 is positioned off-tile at [0.04999999999999999,7.569166666666667] 

  warning - mesh10 is positioned off-tile at [5.226182795698924,3.8976881720430123] 

  warning - mesh09 is positioned off-tile at [5.1672881355932185,7.327062146892659] 

  warning - mesh06 is positioned off-tile at [9.073333333333334,-0.5616666666666665] 

  warning - mesh05 is positioned off-tile at [12.578888888888889,5.521111111111111] 

  warning - mesh04 is positioned off-tile at [5.614056603773584,6.1637106918238995] 

  warning - mesh03 is positioned off-tile at [1.3307407407407408,12.17074074074074] 

  warning - mesh02 is positioned off-tile at [11.756923076923076,7.7150427350427355] 

  warning - mesh01 is positioned off-tile at [12.155277777777778,0.24277777777777773] 

  warning - line07 is positioned off-tile at [1.8250000000000002,11.85] 

  warning - line06 is positioned off-tile at [1.825,11.848333333333333] 

  warning - line05 is positioned off-tile at [1.8283333333333334,11.852500000000001] 

  warning - line04 is positioned off-tile at [1.8150000000000002,11.841666666666667] 

  warning - line03 is positioned off-tile at [1.8216666666666668,11.855] 

  warning - line02 is positioned off-tile at [1.828888888888889,11.838888888888889] 

  warning - groundplane04 is positioned off-tile at [11.336693657219975,4.932672064777329] 

  warning - grime04 is positioned off-tile at [12.593333333333334,8.236666666666668] 

  warning - doorbase is positioned off-tile at [13.179999999999998,7.858333333333333] 

  warning - cylinder601 is positioned off-tile at [0.746,-5.102666666666666] 

  warning - cylinder95 is positioned off-tile at [0.09312500000000001,9.0975] 

  warning - cylinder94 is positioned off-tile at [-0.2789743589743589,9.517948717948718] 

  warning - cylinder93 is positioned off-tile at [-2.303846153846154,5.935897435897435] 

  warning - cylinder92 is positioned off-tile at [-1.908125,5.855625] 

  warning - cylinder91 is positioned off-tile at [0.42800000000000005,7.4675] 

  warning - cylinder90 is positioned off-tile at [5.939722222222223,12.600277777777778] 

  warning - cylinder89 is positioned off-tile at [5.895,12.21] 

  warning - cylinder77 is positioned off-tile at [6.45875,11.06125] 

  warning - cylinder76 is positioned off-tile at [6.632777777777778,11.449722222222222] 

  warning - cylinder75 is positioned off-tile at [20.273333333333333,5.52875] 

  warning - cylinder74 is positioned off-tile at [13.53,13.721666666666666] 

  warning - cylinder73 is positioned off-tile at [14.246250000000002,11.622916666666669] 

  warning - cylinder72 is positioned off-tile at [18.27907894736842,12.528947368421052] 

  warning - cylinder71 is positioned off-tile at [8.705,9.46] 

  warning - cylinder70 is positioned off-tile at [8.986944444444443,9.816666666666668] 

  warning - cylinder69 is positioned off-tile at [10.331875,5.12375] 

  warning - cylinder68 is positioned off-tile at [14.481388888888889,1.6551388888888887] 

  warning - cylinder67 is positioned off-tile at [14.296666666666667,1.369861111111111] 

  warning - cylinder66 is positioned off-tile at [4.357373737373737,5.998383838383838] 

  warning - cylinder65 is positioned off-tile at [14.135468750000001,1.5663541666666667] 

  warning - cylinder26 is positioned off-tile at [1.8255555555555556,11.85] 

  warning - cylinder15 is positioned off-tile at [17.104833333333335,5.235500000000001] 

  warning - cylinder11 is positioned off-tile at [1.77475,11.868833333333333] 

  warning - cylinder10 is positioned off-tile at [11.723212121212121,7.947939393939395] 

  warning - cylinder07 is positioned off-tile at [12.02392156862745,5.386470588235293] 

  warning - cylinder04 is positioned off-tile at [0.4225,12.5325] 

  warning - cylinder01 is positioned off-tile at [14.1025,1.6491666666666664] 

  warning - box04 is positioned off-tile at [14.753333333333334,9.19111111111111] 

  warning - box03 is positioned off-tile at [6.213333333333334,-2.1327777777777777] 

  warning - model tps01_stem01 contains data that will be ignored by the NWN engine [lightningsubdiv] 

  warning - model tps01_stem01 contains data that NWMax 0.8b cannot handle [blurlength,sizeend_y,sizestart_y,threshold] 

  Fixes made = 2289

tps01_stem01.mdl written.

tps01_stem01.wok written


               
               

               
            

Legacy_OldMansBeard

  • Full Member
  • ***
  • Posts: 245
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #23 on: May 20, 2014, 01:58:41 pm »


               


 


No need. The last time I rant the tileset through CM3 was in August 2013. I just ran it through CM3 3.52 last night and all is good. The tile compiles.


 


I love CM3 - never found a model yet that some iteration of that program can't fix - and, like good wine, CM3 gets better with age.


 


Just to clarify - when I used the term "performance" in the OP, I was referring to, as noted by OMB, load time not actual "ingame" performance. I'll try to be clearer in the future.


 




 


That's great.


 


Could you try something? Could you take the buggy version, with the faceless trimeshes still in it, and compile it with the BW compiler? See how that behaves in the toolset? If my theory about the zero pointers is right, it won't show the SQRT Domain error,


               
               

               
            

Legacy_Pstemarie

  • Hero Member
  • *****
  • Posts: 4368
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #24 on: May 21, 2014, 12:07:09 am »


               

BioWare compiler failed to compile it. I might be doing something wrong. You just put the tiles in the "Inbox" then hit the BAT file, right?



               
               

               
            

Legacy_Jedijax

  • Hero Member
  • *****
  • Posts: 692
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #25 on: May 21, 2014, 05:40:28 am »


               

Thanks for the explanation OMB! It was most enlightening and satisfying!



               
               

               
            

Legacy_OldMansBeard

  • Full Member
  • ***
  • Posts: 245
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #26 on: May 21, 2014, 07:32:52 am »


               


BioWare compiler failed to compile it. I might be doing something wrong. You just put the tiles in the "Inbox" then hit the BAT file, right?




You might need to edit the .bat file. Take out the 2nd and 3rd line ?


               
               

               
            

Legacy_Pstemarie

  • Hero Member
  • *****
  • Posts: 4368
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #27 on: May 21, 2014, 12:13:40 pm »


               


You might need to edit the .bat file. Take out the 2nd and 3rd line ?




 


That did the trick - AND the BioWare compiler was able to compile the model that nwncompdcomp could not.


               
               

               
            

Legacy_OldMansBeard

  • Full Member
  • ***
  • Posts: 245
  • Karma: +0/-0
Compiled vs Decompiled Models - Recent Findings (aka Round 2)
« Reply #28 on: May 21, 2014, 12:38:33 pm »


               


That did the trick - AND the BioWare compiler was able to compile the model that nwncompdcomp could not.




Good '<img'>


 


Now, If you let CM3 read that binary file, you'll find that it knows which compiler you used. ':ph34r:'