Cases

TECHNICAL ART: LAST PIRATE

Last Pirate: Island Survival is an awesome mobile survival game from our long-time partner RSG. Project features a complete 360o degree of player freedom: Survival, Crafting, Hunting and Base-Building mechanics inside detailed open world.

  •  Retro Style Games

  •  Ukraine

  •  2018 - Present

  •  Technical Art

  •  Unity, Houdini, CG Programming, Shading, Optimization, LRPL

PIRATES-app-icon-11.png
 


TASK OVERVIEW

We came along to assist with technical challenges encountered along the development process:

  • Optimize open world environment to run on wide range of low-end devices.

  • Develop shaders for Ocean and Island Environment.

  • Research and Implement engaging resource gathering mechanic.

image-asseta.png
image-asset.png
 

 

PERFORMANCE OPTIMIZATION

We began by establishing optimization goal with specific low-end device and target fps count. This way we get a static target to focus on, which is necessary for effective optimization work. Generic CPU profiling comes next: making sure game logic is not a performance bottleneck, at any point, is required before work on rendering performance can start. In Last Pirate’s case we discovered few minor problems that were promptly fixed before we proceeded with next step.

We approached GPU optimization by replacing all game shaders with minimalist, bare-bones implementations to discover what could be the best theoretically possible performance. Again, this helps establish clear targets to move from and towards; Since all aspects of application can be optimized to work faster, it is easy to fall in to common pitfall of optimization work - miss prioritization of optimization targets. Having a clear view of maximum possible optimization benefits allows for effective decisions based on time spent to performance gained.

Case_LP_Church.jpg

After optimization targets were defined and prioritized we created a set of environment shaders. We come-up with shaded environment that both provided a significant FPS increase, and look exactly the same as the initial one. This is achieved by removing redundant shader operations, simplifying and backing shading data. In the end Last Pirate turned out to be a great optimization case: we reach the goal of stable 40 fps from the initial 7 fps on low-end device.

 

 

RESOURCE GATHERING

A well-designed resource gathering system is paramount for the success of any survival game, where the player spends a significant portion of their time interacting with these systems. Our aim was to create an interactive model that is both reusable and engaging, capable of being applied to a diverse range of game gathering nodes.

It's important to note that an overly complex interaction system is not necessary. Instead, our main objective is to create emotional variance for the player, breaking the monotony of clicking on resource nodes and ultimately leading to a more engaging game flow. This can be easily achieved by implementing Unity physics, decals, simple particles, and sounds.

 

 

DELIVERED

Cases_LP_Boat.jpg
 
  • Improved game logic performance.

  • Significant rendering performance improvement for terrain and environment.

  • Developed performant shader replacement pack.

  • FPS increase from 7 to 40. Increased 60 FPS stability on mid range and higher devises.

  • Significant Resource Gathering look-and-feel improvement resulting in improved retention after update.

  • Solution delivered in an initially estimated deadline of two weeks.

  • Continuous support for implemented solution.

 
Leo Kruts
Got a project?
Let's talk