P3EmptyGame

(Note: This tech tip was written when the latest version of the SDK was P3_SDK_V0.8. P3EmptyGame is obsolete because P3SampleApp in P3_SDK_V0.9 is already trimmed-down with no dead code or unused resources. It also includes many bug fixes. New projects should start by copying P3SampleApp instead of P3EmptyGame.) 

The P3 SDK has a steep learning curve and hopefully P3EmptyGame can serve as an easier first game to learn on the P3.

P3EmptyGame is a trimmed down version of P3SampleApp. The goal is to remove as much functionality as possible while still allowing a complete game to be played. The idea originated from the EmptyGame example in SkeletonGame.

P3EmptyGame has a very short list of features: side target completion, lower lane target completion, target and hole scores. Everything else is inherited from the SDK.

Once you have mastered P3EmptyGame, it can be the baseline to study other P3 applications. Since P3EmptyGame consists almost entirely of boilerplate code, any difference must be the code specific to that other application. This can quickly identify the interesting code. An obvious game to compare against would be P3SampleApp.

P3EmptyGame can also be useful when implementing a new game. Since dead code and unused assets have been removed from P3EmptyGame, it is a cleaner basis to start a new application compared to P3SampleApp.

P3EmptyGame can be downloaded from here. The current version is P3EmptyGame_V0.8.1, which indicates it is the first release based on P3_SDK_V0.8

P3EmptyGame itself is MIT licensed, but it contains a lot of code from P3SampleApp which has a proprietary license.

P3EmptyGame is distributed as a patch. The patch was created with P3Distrib which tries very hard not to copy any code from P3SampleApp. The patch must be applied against an unmodified copy of P3SampleApp to recreate the P3EmptyGame Unity project. The instructions are in the Readme.