After all the trouble I've been through (See Creatures Freeze-framing, and Return of the Freezing Creatures), I decided to REPEAT every trouble-shooting test kindly suggested by community members, since I changed my ATI 3870 for a significantly better Nvidia GTS 250, and the results were bound to be different. I was right.
The main difference is whenever the override folder was empty and there were no haks involved, the freezing problem caused by creatures spawning/coming into view was clearly diminished; oh, it is still present, but with a radically shorter time-span.
So, I tested and tested and tested, and found out the high-res textures, modified WOK, 2da, NCS, ITP, UTP, PLT, etc. files cause no increase in the freeze-framing issue. This leads to a simple conclusion: The lag increases when high-polys come into play.
Now, this may seem obvious to most, but it wasn't really that clear with my older card, which showed freeze-frames of absurd duration even on clean installs of the game.
Now, I usually have about 200 megs of high-polygon models in the override folder alone, and who-knows-how-many more in personal haks, aside of CEP and the like. My NWN looks gorgeous, up to challenge any modern game. The whole point of this customization is to make the game look great, since, let's be honest, the original models were already quite horrible back in 2001, when it came out. What's the point of being able to customize the thing to suit higher standards if it becomes unplayable? I'd rather uninstall it if I had to play it "raw", without model overrides.
Anyway, some have suggested turning models into binaries actually may increase the performance of the game, since, supposedly, they are easier to read. The question is, does anyone have any real experience in this regard? If so, could you explain thoroughly what the difference was in your case? I mean, changing tons of models from ASCII to Binary is no easy and quick feat, and I don't want to do it if there's no real upgrade in perfomrance... Thanks in advance!
Performance: ASCII Vs Binary.
Débuté par
Jedijax
, nov. 20 2010 05:25
#1
Posté 20 novembre 2010 - 05:25
#2
Posté 20 novembre 2010 - 05:37
Well I can't explain exactly the technical reasons, though I guess them, but yes binaries are quicker to read by the program. Thats a fact I've seen by converting "high" poly model from recent games. to NWN. The higher the poly number, the higher performance gain compiled model provides.
I suppose the CEP guys saw the same thing, and why then went through the trouble of compiling everything again.
I suppose the CEP guys saw the same thing, and why then went through the trouble of compiling everything again.
#3
Posté 20 novembre 2010 - 05:40
OOOOhh, so you would recommend the change, Jez? If so, what software would you use? I used to be fond of Carottes for it's bulk-conversion options, but it doesn't seem to be working anymore under windows 7...
#4
Posté 20 novembre 2010 - 06:07
The technical difference is quite simple really, when you use ASCII models the game as to convert them
to binary when it loads the models and when the models are already binary there is no conversion
occurring.
Performance could be affected on module/areas where allot of ASCII models are used, but not to
confuse with having allot of ASCII models available in your "\\\\override" folder or a hakpack. If there are allot of ASCII models in the "\\\\override" that well... "Override" commonly used game resources it would in fact stress the system a bit.
to binary when it loads the models and when the models are already binary there is no conversion
occurring.
Performance could be affected on module/areas where allot of ASCII models are used, but not to
confuse with having allot of ASCII models available in your "\\\\override" folder or a hakpack. If there are allot of ASCII models in the "\\\\override" that well... "Override" commonly used game resources it would in fact stress the system a bit.
Modifié par Lord Sullivan, 20 novembre 2010 - 06:07 .
#5
Posté 20 novembre 2010 - 06:16
Well I never did comparison between compilers so can't tell if one is better than another. I just use old NWNmax compiler (I think its Torlack's one) if 1 by 1. For batches/bulk I only use this one http://nwvault.ign.c....Detail&id=343.
Maybe ask over at Custom Content forum instead?
Maybe ask over at Custom Content forum instead?
#6
Posté 20 novembre 2010 - 07:14
Lord Sullivan: Well, what I meant is if the creatures appearing are ALL override models with high polygon counts, wouldn't there be a performance increase? You see, in my recent tests, overriding creatures increased the freeze-framing issue. So, you wouldn't recommend a complete "binarization" of my models?
Jez_fr: Thanks for the link, Jez, I'll check it right away!... You know, sometimes I spend so much time troubleshooting NWN and visiting forum pages related to it, that I wonder how my life came to this... It's really sad...
Jez_fr: Thanks for the link, Jez, I'll check it right away!... You know, sometimes I spend so much time troubleshooting NWN and visiting forum pages related to it, that I wonder how my life came to this... It's really sad...
Modifié par Jedijax, 20 novembre 2010 - 07:27 .
#7
Posté 20 novembre 2010 - 07:31
I'm not "NOT" recommending a binary conversion, technically it should help that is for sure.
As for high poly models, that depends of how much higher we're talking about. If we're talking
from 3000ish polys to 4000-5000ish... it's not that much higher and we're only talking a bit higher than the standard, but if where talking more then double the standard model, then we're starting to talk higher poly models.
As for high poly models, that depends of how much higher we're talking about. If we're talking
from 3000ish polys to 4000-5000ish... it's not that much higher and we're only talking a bit higher than the standard, but if where talking more then double the standard model, then we're starting to talk higher poly models.
#8
Posté 20 novembre 2010 - 08:31
rethinking, Jedijax, I bet that @200 meg your override is more full of TGA and PLTs than models (they are rather lightweight). Why don't you put all that in a hak, with TGA converted to DDS, they are faster (well usually when I say that, there's a know-better showing up and saying the opposite XD ), and I bet you have a lot in your override?
Even if you play a module with its own haks, you can add your "override" hak on top of the module's hak list, cancel the build, save, and you have you precious override as a hak instead.
Man, you shouldn't have anything in your override. I know its common place, but override should be used only for testing nothing else. Thats a Bioware's rule since day one. Why don't people listen eh?
Even if you play a module with its own haks, you can add your "override" hak on top of the module's hak list, cancel the build, save, and you have you precious override as a hak instead.
Man, you shouldn't have anything in your override. I know its common place, but override should be used only for testing nothing else. Thats a Bioware's rule since day one. Why don't people listen eh?
Modifié par Jez_fr, 20 novembre 2010 - 08:38 .
#9
Posté 20 novembre 2010 - 09:41
Gotcha Lord Sullivan! I just used Carottes to convert all my override models into binaries, and about 30 from the 4000+ files couldn't be turned by the compiler (actually it is merely a front-end, a GUI for Torlack's thingie). I did notice the freeze was shorter, but since most of my creatures are in haks, I'm thinking it will take way longer to turn everything into binaries, and test thoroughly to gain any significant data!
On the other hand, Jez, you're right, the 200 megs were merely model files, the other 900 are a mix of dds, tga, 2da, ptl, etc files. However, the Hak Vs Override issue is something I've discussed with lot's of community members; opinions are quite divided on what is best for performance. Back when I had about 800 megs in override, I was concerned about such, but Cervantes told me he had well over 1 gig, and the game ran silky smooth. So, seeing as most custom modules use haks, I decided to divide my resources; I have 1.18 gigs in override and 852 megs in haks. This haks are at the top of ALL my modules; I go as far as to change about 50% of a module in order to work with my haks.
Also, I had heard having too many haks on a module was counterproductive; perhaps you could clarify this for me?
The DDS matter interests me. I use tga's mostly because I can see them as thumbnails easily in the explorer, without opening an image editor or viewer (yes, I do A LOT of texture editing too... I have no life...), and recently, I get full-size previews of tga's merely by placing the mouse pointer over the file. I am willing to turn them into dds, but there are two issues: First, I don't know what software may do that, and second, Would it really make a difference performance-wise?
Last, but not least, in addition to the thread's main topic about ASCII and Binaries, maybe we could resolve, once and for all, which is best: Hak Vs. Override. I've gone for the "50/50" approach, but what do you guys think?
On the other hand, Jez, you're right, the 200 megs were merely model files, the other 900 are a mix of dds, tga, 2da, ptl, etc files. However, the Hak Vs Override issue is something I've discussed with lot's of community members; opinions are quite divided on what is best for performance. Back when I had about 800 megs in override, I was concerned about such, but Cervantes told me he had well over 1 gig, and the game ran silky smooth. So, seeing as most custom modules use haks, I decided to divide my resources; I have 1.18 gigs in override and 852 megs in haks. This haks are at the top of ALL my modules; I go as far as to change about 50% of a module in order to work with my haks.
Also, I had heard having too many haks on a module was counterproductive; perhaps you could clarify this for me?
The DDS matter interests me. I use tga's mostly because I can see them as thumbnails easily in the explorer, without opening an image editor or viewer (yes, I do A LOT of texture editing too... I have no life...), and recently, I get full-size previews of tga's merely by placing the mouse pointer over the file. I am willing to turn them into dds, but there are two issues: First, I don't know what software may do that, and second, Would it really make a difference performance-wise?
Last, but not least, in addition to the thread's main topic about ASCII and Binaries, maybe we could resolve, once and for all, which is best: Hak Vs. Override. I've gone for the "50/50" approach, but what do you guys think?
Modifié par Jedijax, 20 novembre 2010 - 09:46 .
#10
Posté 20 novembre 2010 - 11:24
wow 1.18 gb in override Oo nice =)
It's amazing how differently one can use NWN.
About the number of hak, sorry, I have no hard evidence one way or another, but as far as performance goes, I think its really secondary compared to actual impact TGA/DDS have (or big mdls). I never bothered with that.
On the other hand, some popular tilesets have very big TGA (like 1024x1024), if you convert those to .dds, you'll feel a difference, no doubt (depend on the area and number of textures loaded in memory of course). I convert systematically all textures to dds, whoever did the original pack (well I resize some of them even...), some authors aren't reasonnable ^^
But you have a point, about editing. Converting to dds, and then to back to TGA etc... is a pain, and you lose a little on quality every time you do it.
My best advice would be, as soon as you're finished editing something, convert it to dds, then move it to a hak. and keep in the override only those you'll edit.
About the Hak vs Override debate, I'm just trusting Bioware original team, in all cases (even if some of them did some stupid things, that happens in all game dev team, the fact remains NWN is a gem and THEY knew what they were doing. It'd need actual performance numbers and stats to convince me otherwise, not speculations). Just my personal preference/experience.
(Just to be a pest, this topic is hardly Tech support relevant
, its custom content really ^^)
It's amazing how differently one can use NWN.
About the number of hak, sorry, I have no hard evidence one way or another, but as far as performance goes, I think its really secondary compared to actual impact TGA/DDS have (or big mdls). I never bothered with that.
On the other hand, some popular tilesets have very big TGA (like 1024x1024), if you convert those to .dds, you'll feel a difference, no doubt (depend on the area and number of textures loaded in memory of course). I convert systematically all textures to dds, whoever did the original pack (well I resize some of them even...), some authors aren't reasonnable ^^
But you have a point, about editing. Converting to dds, and then to back to TGA etc... is a pain, and you lose a little on quality every time you do it.
My best advice would be, as soon as you're finished editing something, convert it to dds, then move it to a hak. and keep in the override only those you'll edit.
About the Hak vs Override debate, I'm just trusting Bioware original team, in all cases (even if some of them did some stupid things, that happens in all game dev team, the fact remains NWN is a gem and THEY knew what they were doing. It'd need actual performance numbers and stats to convince me otherwise, not speculations). Just my personal preference/experience.
(Just to be a pest, this topic is hardly Tech support relevant
Modifié par Jez_fr, 20 novembre 2010 - 11:28 .
#11
Posté 20 novembre 2010 - 06:39
Well, I thought the same thing back when I started it, but since it is meant to discuss the impact of conversion of models (and now even textures) on game performance, I decided it is sufficiently relevant from a technical point of view. I mean, the objective of this topic is to solve a very specific, technical issue, one directly related to game performance, and as you know, we've covered a VERY wide spectrum of possibilities trying to solve it.
By the way, what tool/app do you use to convert TGA's into DDS? You've convinced me to do those too, and since I'm systematically sweeping through all of my added resources... Can it be done "in bulk", or do I have to do it file by file?
By the way, what tool/app do you use to convert TGA's into DDS? You've convinced me to do those too, and since I'm systematically sweeping through all of my added resources... Can it be done "in bulk", or do I have to do it file by file?
#12
Posté 20 novembre 2010 - 07:59
AAAAAAAAAAAAAAAAAAAAHHH!! I converted my TGA's into DDS and it messed up LOTS of tilesets and placeables, so it's a no-go. Besides, I didn't notice any change in the freeze-frame issue. I think I'll refrain from such conversion!
Now, I made extensive tests in a module with no haks, and the freezing issue persists whenever a creature spawns or comes into view. Although the binary conversion diminished the freezing very slightly, the problems is still there, so it seems it cannot be solved by converting models... sigh... guess this particular venue is going nowhere near to solving my dilemma.
Now, I made extensive tests in a module with no haks, and the freezing issue persists whenever a creature spawns or comes into view. Although the binary conversion diminished the freezing very slightly, the problems is still there, so it seems it cannot be solved by converting models... sigh... guess this particular venue is going nowhere near to solving my dilemma.
#13
Posté 20 novembre 2010 - 08:46
The TGA to DDS I use should be this one.
Be aware that TGA must not be RLE compressed for this to work properly (and Im not sure NWN likes that either), otherwise the dds come up fooked up (sort of greenish grid. You can check your dds with NWNExplorer).
What happened that "broke" your tilesets?
Be aware that TGA must not be RLE compressed for this to work properly (and Im not sure NWN likes that either), otherwise the dds come up fooked up (sort of greenish grid. You can check your dds with NWNExplorer).
What happened that "broke" your tilesets?
Modifié par Jez_fr, 20 novembre 2010 - 08:47 .
#14
Posté 20 novembre 2010 - 09:05
Ok first off, have a look at this thread, I had to learn about binary vs ascii once upon a time
Binary model Introduction
Then read this one ASCII vs Binary comparisson
Binary model Introduction
Then read this one ASCII vs Binary comparisson
Modifié par Calvinthesneak, 20 novembre 2010 - 09:07 .
#15
Posté 20 novembre 2010 - 09:51
Fooked? That sounds funny... Sorry, I'm mexican, so maybe the word is lost on me, or I'm just too dumb to get its meaning in context? Hoho! Yes Jez (See? I can rhyme!), many of the textures simply stopped showing, as if the models didn't recognize them; on the other hand, there are many, MANY tga's used for GUI elements and inventory icons, which didn't seem to agree with DDS.
Hey there Calvin! Thanks for the links, I'll take a look right away! By the way, I hope you could tell me a bit about your game experience under the GTX 295, since there may be a remote but possible chance of me getting one!
Hey there Calvin! Thanks for the links, I'll take a look right away! By the way, I hope you could tell me a bit about your game experience under the GTX 295, since there may be a remote but possible chance of me getting one!
#16
Posté 20 novembre 2010 - 10:02
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHHH!!! And then, some AAAAAAAAAAAAAARRRGHH!!! Calvin, the damn thing is utter chaos, I say! The forum says "binarizing" your models is all great and cool, but subsequent posts say it isn't such a big deal, and that you shouldn't do so on override files because it may frak your game... ONLY TO RETURN TO THE WHOLE THING BEING GOD'S GIFT TO US NEVERWINTER NIGHTS FANS!!! What am I supposed to believe or do? I've already binarized 4000+ files in Override, and was about to start converting all of the models in my haks!
#17
Posté 20 novembre 2010 - 11:07
All I can say is I have a GTX 295, and I've not had any issues with performance in NWN other than framerates dropping to maybe 30-50 in heavy graphic situations. I run a E8600 dual core processor, so it does have more horsepower for NWN.
I've run a lot of heavy custom content with high poly counts without issue.
The big issue I've found with compiling models is some things like robes will break them, pretty sure compiling throws off the skin weights on robes.
Compiling models is a good idea for increased performance, but you'll not see that benefit if something exists in both your hak and your override, since hak is > override.
I certainly don't know all there is to know about ASCII vs MDL's, those are just some of the most insightful posts I've read on the subject.
I've run a lot of heavy custom content with high poly counts without issue.
The big issue I've found with compiling models is some things like robes will break them, pretty sure compiling throws off the skin weights on robes.
Compiling models is a good idea for increased performance, but you'll not see that benefit if something exists in both your hak and your override, since hak is > override.
I certainly don't know all there is to know about ASCII vs MDL's, those are just some of the most insightful posts I've read on the subject.
#18
Posté 21 novembre 2010 - 04:19
Thanks for your candor, Calvin. It seems I may get lucky. Santa is willing to bring me a GTX 295 with the 600 watts psu needed to run it!
Now, the thing would be what to do with the gts 250 I just traded for half my manhood... selling it in this god-forsaken country is nearly impossible...
Anyway, I backed up my haks before a whole day of binary conversion, and am just about to test the results; I'll keep you guys posted!
Now, the thing would be what to do with the gts 250 I just traded for half my manhood... selling it in this god-forsaken country is nearly impossible...
Anyway, I backed up my haks before a whole day of binary conversion, and am just about to test the results; I'll keep you guys posted!
#19
Posté 03 décembre 2010 - 12:53
Though there was a slight change in the whole freeze-framing issue I've experienced since... seems like forever,... the issue is still present. I guess I'm going back to the main "Return of the freezing creatures" thread to keep looking for a solution. Thanks everyone!
#20
Posté 05 décembre 2010 - 08:14
A final word on this particular, ladies and gentleman (and no, Xenovant and Pstemarie ain't ladies): Turning my override models into binaries fooked (marvelous word, Jez!) several creatures and a complete override tileset, so I would recommend turning overriding models ONLY in a one by one basis, cause this way you can check the results of the compression on each model, individually, rather than changing thousand of files and later fishing out the ones that don't work right anymore. This should go without saying, but you should also keep an original ASCII version copy of the model, so you don't commit suicide if the binary version kills it!





Retour en haut







