PSVita 2D Core

July, 2019 - August, 2019

PSVita 2D Core is a simple 2D Framework using Vita2D, SoLoud and the open-source vitaSDK. The framework is heavily based on SDL and has an event loop quite similar to it. There's also a sample project that includes all the features that this package supports of the PSVita. This was mainly a summer project to see what I could do with this device and what I could share with others that could help them make something of their own.

Used Skills

Development Process

  • Research

    The PlayStation Vita is quite different than a PC, so I was required to research how exactly I would be able to develop for this device with the resources I had. 

  • Research - VitaSDK

    While researching, I found out about the open-source VitaSDK which was put together by the homebrew community. I started reading up on the documentation to look for ideas on how I was going to tackle creating this framework.

  • Research - Additional Libraries

    After even more research, I had a look at what libraries I could use for graphics, sound, etc. I didn't go for SDL as I wanted something new and instead went for Vita2D for 2D Graphics and SoLoud for sounds and music. All other features were part of the main VitaSDK.

  • Code - Framework

    Now it was time to put all that research into a good framework that included input, game loop, rendering and so much more. For this framework specifically, I tried to base myself off of SDL for the general game loop. However, in the end I wasn't a big fan of it anymore, but it did function correctly and as expected.

Struggles

Imititating SDL

Initially, I thought the loop was good from SDL, but as time went on, I could see its flaws. However, I stuck with it for this project as it was still the initial goal and it would be usable.

Creating input

Creating input similar to SDL was a bit of a challenge as I had to partially guess the behaviour it was doing. I worked it out with some help and looking deeper into how SDL functioned.

Examples

Inversion

Inversion was going to be a game built on the framework, but due to other work and the next college year starting, I was unable to continue working on it. However, you can see a menu demo here that was recorded straight from my own PSVita.

PSVita 2D Core Samples

There's also several samples available on Github that show off the different parts of the framework. You can test the input, touch, sound, etc.