Pirate Island: The Lone Pirate Problem

As an extension of fixing the issue with bad frame rates for the VR game, one of the things I’m having to also deal with is the fact that the island is very devoid of other pirate figures.

The paradox is that the addition of animated figures/pirates, unless I really reuse the same figure over and over again, will result in frame rate drops, especially is multiple pirates are on the scene preforming animations or having discussions, etc.

I’ve tried a couple different approaches to the problem.  For the pirate that has to actually talk, I’ve been utilizing Daz Studio figures (with the purchased gaming licenses to use the figure), which has also been synchronized with Mimic-generated dialogue to explain how to pick up items and take putts on the intro screen.  I was frankly kind of surprised at how much overhead this generated, even though I used tools to decrease how many polygons were in the figures.  Having more than one in a scene dropped down the frame rate significantly, I’m guessing due to the complexity of the figure or the size of the texture atlases that these figures carry. But, if I leave it at one singular figure, I’m able to get ~50-60 FPS if there’s nothing else significant on the screen.

Frustrating, especially given the sharpness I’m seeing in redesigned games like the FF7.

The main problem that now seems to be driving the framerate problem is the sheer number of different texture maps I’m using in this game (from the reflective water to the various objects/items that can be carried or viewed to the trees themselves).  Adding in the texture maps for the pirate characters is just too much for the engine to handle and while the game will run with 5 different pirates standing around dancing a jig, the frame rate drops back down to the values that were originally there prior to me fixing the issue a couple months back.

I’m still puzzling out a way to get this to work.  One idea I’ve been tinkering with is to reuse the actual figure and have it teleport around based on where the player is located (performing set animations based on the current locale).  But that’s only shines a light on the problem of having the same guy appear everywhere rather than variety among the pirate characters.

So for the moment, the island remains empty, except for the starter screen where the only pirate that the player will meet gives a brief tutorial is given explaining how to pick up an item or take a putt.

It’s not the ideal solution, but until I can find a better one, that’s what I have to work with. However, the game’s overall frame rate is -significantly- improved (50-60 with the occasional single-frame spike dropping it down to ~30 instead of the perpetual 15-30 FPS that was in place previously) so I still consider it a major win.

Hope all of you are having a great week so far.  I’ll be updating again soon!