PlayStation Suite Open Beta Goes Live, Develop Apps for Vita

by Mike Bendel April 18, 2012 @ 11:55 pm

As promised, Sony’s cross-platform PlayStation Suite SDK has officially reached open beta status. Anyone, without having to enter in a contractual agreement with Sony, can now develop apps that target PlayStation Certified devices — including the PS Vita.

Currently at version 0.98, the SDK includes a wealth of tools to get started, including samples of games and applications using 2D and 3D graphics.

Hit up Sony’s website to access the SDK now.

Follow this author on .

slicer4ever says:

THANK YOU!, i've been waiting forever for this to come out. couldn't get in for the closed beta=-(

luiscesjr says:

Will they let me port and publish a psone or a gba

emulator? If not, then this sdk for me is useless =)

x3sphere says:

Technically, yes, you can port it. Publish it? No. However anyone with the Suite SDK can build your source code, so there's a way around the publishing limitation.

luiscesjr says:

I didn't read the documentation more than 2-3 lines but, can I really

throw the source code on the web? It would contain also code from the

suite since it has tools for developing UIs, I would use it and so, it would be

partially Sony's property, no? I don't know if you get what I mean.

x3sphere says:

I've looked over the license agreement that's shown when downloading the SDK and didn't see any restrictions over distributing source code. As long as you don't share files from the SDK itself, should be fine...

Although if you tried distributing an emulator that way I guess it wouldn't be too viable once the SDK is out of beta, since it'll cost $99 annually to access it.

luiscesjr says:

Well, that's good and bad. Good I can throw it over to anyone with enough

patience to build, and bad that soon the fun will be over =)

TheRaiderNation says:

yes! I'm actually really excited to start toying around with it. Also glad that Sony finally released this, this is exactly what they need if they plan on having the Vita compete with smartphones.

Hellcat says:

Make own things instead of just making the millionth copy of the same emulator.

You can publish that, then :)

I'll have some fun with this, testing the code directely on the Vita rocks :D

I just a new 3DSmax->Vertexarray-(Source)Code converter as PSS uses indexed vertex array.... my current converter only does nonindexed.

Meh, a day more or two and I'll have made myself one :D

slicer4ever says:

no it doesn't, don't pass an index array, and you can use non-indexed vertex array's, here's a snippet of a version i whipped together when i was figuring out how to draw images:

namespace TestA{

public struct Vertex{

public float m_x { get; set; }

public float m_y { get; set; }

public float m_z { get; set; }

public float m_u { get; set; }

public float m_v { get; set; }

public void SetPosition(float x, float y, float z){






public void SetTexCoord(float u, float v){





public void Set(float x, float y, float z, float u, float v){

m_x = x; m_y = y; m_z = z; m_u = u; m_v = v;




public class AppMain{

public static void Main (string[] args){

GraphicsContext Graphics = new GraphicsContext();


ShaderProgram SP = new ShaderProgram("/Application/shaders/Texture.cgx");

Font fnt = new Font(FontAlias.System, 12, FontStyle.Regular);

FontMap FMap = new FontMap(fnt);

GamePadData Pad;

float Width=Tex.Width;

float Height=Tex.Height;

Vertex[] v = new Vertex[6];

v[0].Set(0.0f, 0.0f, 0.0f, 0.0f, 0.0f);

v[1].Set(Tex.Width, 0.0f, 0.0f, 1.0f, 0.0f);

v[2].Set(0.0f, Tex.Height, 0.0f, 0.0f, 1.0f);

v[3].Set(Tex.Width, 0.0f, 0.0f, 1.0f, 0.0f);

v[4].Set(Tex.Width, Tex.Height, 0.0f, 1.0f, 1.0f);

v[5].Set(0.0f, Tex.Height, 0.0f, 0.0f, 1.0f);

VertexBuffer vb = new VertexBuffer(6, VertexFormat.Float3, VertexFormat.Float2);

vb.SetVertices(0, v, 0, 20); //sizeof in c# was giving me errors

vb.SetVertices(1, v,12, 20); //sizeof in c# was giving me errors

Matrix4 Proj = Matrix4.Ortho(0.0f, Graphics.Screen.Width, Graphics.Screen.Height, 0.0f, 0.0f, 1.0f);

Matrix4 View = Matrix4.Translation(20.0f, 20.0f, 0.0f);

Graphics.SetVertexBuffer(0, vb);


Graphics.SetTexture(0, Tex);

SP.SetUniformValue(SP.FindUniform("ProjMat"), ref Proj);

float xS=0.0f;

float yS=0.0f;

while (true) {

SystemEvents.CheckEvents ();

Pad = GamePad.GetData(0);



if((Pad.Buttons&GamePadButtons.Square)!=0) xS=-1.0f;

else if((Pad.Buttons&GamePadButtons.Circle)!=0) xS=1.0f;

if((Pad.Buttons&GamePadButtons.Cross)!=0) yS=1.0f;

else if((Pad.Buttons&GamePadButtons.Triangle)!=0) yS=-1.0f;

View*=Matrix4.Translation(xS, yS, 0.0f);

SP.SetUniformValue(SP.FindUniform("ViewMat"), ref View);


Graphics.DrawArrays(DrawMode.Triangles, 0, 6);


if((Pad.Buttons&GamePadButtons.Start)!=0) break;








Hellcat says:

Oh nice :D

I'll stick with nonindexed for now then, very nice, might do a little "benchmark" later on though if there's a difference in performance.

As the PSP drops down in performance when using indexed vertex arrays....

you say: