Jump to content

Porting NWN animations - a work in progress


Recommended Posts

Well, that’s definitely helpful. And yeah, I’ve been zigzagging between whether I’d prefer the shadows to be more defined or more translucent, but those shadows definitely do not look good in game.

I’ll produce some kind of tutorial and a starter kit when I’ve made this method as efficient and simple as possible.

Link to comment

*sigh* So after taking the whole day just reading all sorts of guides and Q/As and fiddling with things to see what works, not to mention wasting an absolute ton of time out of ignorance (like not realizing I had not been using my GPU to render frames the entire time) I think I've finally made the most efficient setup I can manage in terms of balancing render time and quality. I'm completely mentally drained at this point, but I'll be done soon. Assuming I don't find some major issue or learn something else, I might be ready to put together a step-by-step guide like I've been asked to.

Base-Profile-2021_12.03---05_23.png.cbe9002ae3c50e58c98f9b5e6e77b390.png

Edited by Artemius I
Link to comment
On 12/3/2021 at 9:36 AM, Artemius I said:

I might be ready to put together a step-by-step guide like I've been asked to.

Yes, that'd be much appreciated.

Also, the next version of Infinity Animations is supposed to add some NWN animations, so I guess that @Gwendolyne has something useful to say about this topic...

Link to comment

The main thing holding me back is that I still have several inefficient processes that I feel could be solved but I lack the knowledge how.

For starters, there's basically no point without having a machine with a decent GPU. I have rendering settings as low as I can allow and with my GPU I can get a speed of 2-4s per frame of animation. Without my GPU it can take up to 12-15s. When you have 3000+ frames to render, the latter just takes too long.

Then, after that, actually importing the frames into a .bam is annoying because NearInfinity's BAMConverter seems to struggle accepting up to a certain filesize's worth of images, and will freeze horribly if too many are added. Each frame of rendered animation is ~100kb in size and adding up to around 200 at once seems to be around its limit. I have to add a reasonable number of .pngs first, roughly 150, save the bam, which compresses the size, then add the rest gradually. Rinse, repeat. It takes a huge amount of time and attention.

To avoid this, I have to use a third-party tool to compress the images to 1/10 of their filesize without hurting quality, but this makes it take even more time than the above in exchange for being automated. But all this in total means it can take up to 5-6 hours just for one animation. I can imagine someone out there knows how to make it faster, so trying to write a guide for such a slow method feels like sharing misinformation.

Edit: by the way, I have tried alternatives like using bammer instead of NearInfinity, but I have no idea how to use it efficiently even just to compile my .pngs into one .bam file.

Edited by Artemius I
Link to comment
1 hour ago, Artemius I said:

Then, after that, actually importing the frames into a .bam is annoying because NearInfinity's BAMConverter seems to struggle accepting up to a certain filesize's worth of images, and will freeze horribly if too many are added. Each frame of rendered animation is ~100kb in size and adding up to around 200 at once seems to be around its limit. I have to add a reasonable number of .pngs first, roughly 150, save the bam, which compresses the size, then add the rest gradually. Rinse, repeat. It takes a huge amount of time and attention.

NI's BAM Converter should have no difficulty importing hundreds or thousands of .png files at once, provided there's enough memory available.

Make sure you have a 64-bit Java Runtime installed. The legacy 32-bit version uses horrible memory allocation settings, which were fine 15 years ago when systems were equipped with 256 MB RAM or less, but will only cripple Java apps on modern systems.

To speed up BAM creation you could also use the Session import/export feature of the BAM Converter. It uses text files for frame, center and cycle definitions, which may be easier to create or update than doing everything in the GUI.

Link to comment
On 12/2/2021 at 7:09 PM, Artemius I said:

And yeah, I’ve been zigzagging between whether I’d prefer the shadows to be more defined or more translucent, but those shadows definitely do not look good in game.

You will receive the best results by assigning a unique shadow color to your shadow catchter material, for example a strong red (RGB 255.0.0). BAMWorkshop 2 used a pink color to determine where shadows are present. That way the shadows are assigned to palette entry #1 (the 2nd palette colour) and there are no "false" shadows in the darker portions of the creature.

@argent77:  Is there a way to tell NI which color should be considered as the shadow color?

Link to comment
3 hours ago, Jarno Mikkola said:

I would remember it to be the second one in the palette. First being the invisible one.... I said "I would remember", as it's been far too long to know.

The count starts at 0.

 

3 hours ago, Acifer said:
On 12/2/2021 at 12:09 PM, Artemius I said:

And yeah, I’ve been zigzagging between whether I’d prefer the shadows to be more defined or more translucent, but those shadows definitely do not look good in game.

You will receive the best results by assigning a unique shadow color to your shadow catchter material, for example a strong red (RGB 255.0.0). BAMWorkshop 2 used a pink color to determine where shadows are present. That way the shadows are assigned to palette entry #1 (the 2nd palette colour) and there are no "false" shadows in the darker portions of the creature.

This makes a lot of sense, however, depending on which games you intend to use the animations in, there are definitive reasons to ensure the shadow color is in palette entry 1 and that it is set back to pure black.  For greatest compatibility with all engine and graphics settings variants, no other entry in the palette should be pure black.

Link to comment

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...