Final Project – Blacktrade

I am in the final 26 weeks of my bachelor now, and so it was time to start on a project I have had in my mind, for the purpose of bringing it to life as my final project.

Blacktrade is a game where you play as the skipper of a treasure salvage ship, where you and your crew sail rich but treacherous waters for spoils on the sea bed, selling what you haul on the black market!

While I had been given the option of working within a group further on O.O.T, I have made the decision to develop solo, as a final test to myself and my resolve, to truly show myself I can do this. I hope you will follow the development and growth of Blacktrade with me and see what I can do over the next 26 weeks of madness.


Blacktrade Devblog 004 – The Crew

Similarly to the ship layouts, the crew roles use the same thought process and intention in their design. The roles represented may not be all the crew truly involved in a salvage operation, but for the purpose of the game and aiding it’s gameplay, the current list works well.

I spent some time sketching out possible avatars for the different crew roles, making sure to to portray a wide variety of cultural representations.

CharacterPortraits_003 CharacterPortraits_004 CharacterPortraits_005 CharacterPortraits_006 CharacterPortraits_007 CharacterPortraits_008

The end of the line, for now.

A surprise advance in enemy model progress, as it would seem. I have completed them, with a little assistance the refined and polished finishing details have been added to the textures, and all before the test play date!
These are some nice final renders of the three models i’ve seen through from my own concept, to sketches, models, all with animations, unwraps and now textures.
From here, it’s all implementation and revising based on feedback!


Enemy model’s base texturing

Play testing the game was a vital milestone in our development timeline, with the perfect chance to gain some essential feedback I have made sure to have the base textures down and in place. The importance of having the base textures in place showed immediately, adding to the cohesion and feel to the in game views.


The unwrapping process

Recapping on the past few weeks in this post, with the unwrapping process for the enemy models. Starting with the Juggernaut and repeating for each, I started the process off with a basic automatic projection. From there, I manually set my desired UV seams on the model, planning for the best optimization of texturing manageable.

UE4 the animation murderer

There were many headaches and halts in progress on the unwrapping process this week with animation’s for the skitterer and pawn playing off kilter. Through inspection, I determined that it was the pivot points being offset from their positions as set in Maya. In itself, that doesn’t sound like too hard a problem to fix, however the truth had me stumped for a solution. At first it was a matter of trying the obvious, ensuring that transforms were frozen prior to exporting in Maya… nope.
Next was ensuring that all history was deleted before export…. nope Then I checkedĀ all frames were baked into the animation… they were all baked but still nope.
I tried even re-importing the model into maya to check it was exporting properly, all animations were playing correctly on the import.

At this stage, I was befuddled. It was time to bring in professional assistance. After many ideas were exhausted between the two of us, we found the problem!

In UE4, when importing a model with animations, you must ensure to check one hidden away checkbox, named ‘preserve local transforms’.

Suddenly, a week of woes disappeared, and now i may unwrap again in peace.

Enemy Attack animation pass

With the walk cycles down and pacing set for all three enemies, I set out to animate the attacks for each.

Skitterer: The small enemy was intended to act as a self destructing unit. The turbine was animated to wind up to a fast face of spinning as the legs of the unit tucked in one by one to form a ball like shape.

Pawn: The mid enemy took a more traditional approach to attacking, I animated the preparation and execution of a double arm forward strike.

Juggernaut: The large enemy acts as battering ram for its animation, as pictured below. It takes a few steps back, raising itself in preparation for a heavy impact lunge forward.