• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

PlayStation Mobile Developer Program (Vita & Android)

Mondriaan

Member
I'm having extremely weird problems with the PS Suite emulator. Basically, unless I minimize the window, memory usage will keep going up and up until it crashes the application.

For quite a long time, I thought I had a memory leak in my code, but in reality, whenever the garbage collector frees memory, that memory isn't freed to the OS until I minimize the emulator window.

In short, it's really buggy for me, for no real reason.
I've seen PS Suite emulator demo applications crash out from running out of memory, and, so far in my experience, the same thing will eventually happen when that demo runs on my vita.

I've mostly noticed this in the garden puzzle game demo.

The other thing I've noticed is that Sir Awesomelot is a much easier game when played on the vita than in the emulator due to the controls.
 
I've seen PS Suite emulator demo applications crash out from running out of memory, and, so far in my experience, the same thing will eventually happen when that demo runs on my vita.

I've mostly noticed this in the garden puzzle game demo.

The other thing I've noticed is that Sir Awesomelot is a much easier game when played on the vita than in the emulator due to the controls.

The thing is, I posted my code on the PS Suite forums, and someone else tried my code and reported no memory leaks. It's pretty annoying, especially considering my code is the only one that gives me memory leaks, and I'm the only one who experiences them. :(
 
Couple of work days coming up so won't have as much time to work on it for a little while, but here's the latest status. Next week I hope to come up with a first test package (set of dlls) so that people can use this in their own projects.

In preparation of that, apart from adding some more controls (CheckBox, Date and Time) I've tested the layout as an overlay of an existing background (e.g. for your game), and even without lowering the Alpha of the background it seems to come over pretty ok. Only when you have a very light / yellow background, you will want to change the font-color to Black, but nearly everything else seems to work quite well (though a background with both white/yellow and black will be difficult with no Alpha adjustment)


2012-04-30-184851 by niwrA, on Flickr


2012-04-30-184902 by niwrA, on Flickr


2012-04-30-184340 by niwrA, on Flickr

Note that there are a few style things I cannot adjust, like the font of the time and date selector values, and color for the sliders and checkbox. I've reported these to Sony on the Dev forums.
 

bluemax

Banned
So - can someone with some programming chops tell us what sort of impact this suite might have for dual iOS/PS Suite development?

It seems to me that the whole point is to steal some iOS thunder, and give it to Android/Vita. Which it looks like it could very well do. But I don't know enough about the latest state of iOS programming (I assume they are allowing more than Obj-C/X-Code development now?). But if it is easy to have devs make both an iOS and PS Suite version of a game then this really could be a big deal.

If you could compile C++ code for PSVita then things would be a little easier but since its only C# for now it would require a complete rewrite of your entire app.

iOS lets you compile C++, and you can sort of compile it on Android with the NDK, both of which make it easier to write cross platform software. They also both use OpenGL ES for graphics, so you only have to write your renderer once.
 

Mondriaan

Member
If you could compile C++ code for PSVita then things would be a little easier but since its only C# for now it would require a complete rewrite of your entire app.

iOS lets you compile C++, and you can sort of compile it on Android with the NDK, both of which make it easier to write cross platform software. They also both use OpenGL ES for graphics, so you only have to write your renderer once.
There is MonoTouch, which lets you go with C# on iOS. There's MonoDroid for Android, but I have no idea how portable code is across platforms (but I would guess java levels of portability, heh). I don't have any experience with mono.

PS Suite is the first time I'm taking a serious look at C#.
 

Bollocks

Member
I just finished the gui tool for my game, took the class library where the save/load function is, imported it into the suite project and it just works :)
Makes testing game code very easy.
All I needed was to remove the Debug.Ident calls and I was set.
The same codebase for tools and game, feels good man.
 
Progress report:

- Created two Libraries, one for the Wizard logic, and one for the Wizard UI components and moved all code there. They are called WizardEngine and WizardEngine.UI. So I should soon be able to post some dlls and instructions for you guys to beta-test if you're interested.
- Style objects created and mostly also implemented/supported. This will take a little thinking and time to get right, but it's good to have the basic functionality there now (font, background and foreground colors, etc.)
- Experimented with Effects, which was really easy to implement (Kudos Sony!) and will probably allow for effects relative to moving a page forward or backward, and allow you to specify them in the Style

Most important things to do now is to add Events that give feedback on when values are being changed live, and when the UI is 'done', as well as seeing about implementing 'custom' widgets and datasources that are provided as needed by the host app. When I've got all that done, I intend to do the following for testing:

1. Create a test App that allows you to test changing styles in realtime (select different colors, alfa, font, effects and see the changes in realtime by reloading the page UI)
2. Implement the UI in some of the demos and hook it up to variables in that demo (e.g. sound level, speed, etc.). One of the advantages I see with this setup is that it could help create a 'test' menu where you can tweak your application/game's parameters in realtime very quickly.
3. Implement a PropertyPanel type control that allows you to just set an object and then generate UI elements to change its settings automatically.

When the first two work as expected, I'll post the first version here. Hope to have that done by Sunday at the latest, but we'll see.
 
I'm getting there, but right now I'm at the point of 'man, where am I getting myself into?" ... oh well, I guess I learn at least. My UIs on PC will be all the better for this exercise, and I'm pretty sure this will help improve my WPF efforts.

EDIT: got myself out of most of it. :) Styles are now working and configurable in Xml, automatically cached, etc. Running to bed now.
 
Hurray! I've achieved my first major milestone :) If anyone is interested, this is now ready for testing in a foreign location. I'm going to hook it up to various stuff myself now, demos and other test stuff, but the basics are now done:

WizardEngine
Contains a serializeable object-hierarchy that defines the user interface. You instantiate the WizardManager, optionally with a url to a serializeable xml file that will automatically create the wizard, otherwise start with an empty wizard object that you can build out in code.

The WizardManager also controls navigation (FirstPage, NextPage, PreviousPage) and setting values of individual elements (SetElementValueByName), and will raise events when actual changes occur (ValueChanged, PageChanged) with event arguments containing the relevant information (e.g. NewValue, OldValue, Element and NewPage, OldPage, Direction respectively).

WizardEngine.UI
Contains a WizardPanel and a WizardElementPanel, as well as a StyleManager. The StyleManager works similar to the WizardManager, and can serialize and de-serialize its Styles from a file. It handles all the basic settings for Widgets, but as best practice I have setup the WizardElementPanel to distinguish between Label, Widget, and Text, always falling back to Default whenever there is no explicit style defined.

I'll write a full manual and will unquestionably add more features, but for now, this is a good start and I'm very happy.
 
Hooked it up in the BackGroundMusic example successfully, linking the start-stop buttons to checkboxes and a slider to the volume, and everything worked, in paralel with the original buttons.

Its there and from hereon out it's gravy :)

Now a lot of sleep to catch up.
 

Gaspode_T

Member
IMO The future of anything but AAA games is to have a layer that is super easy to write for 2D UI/menus and some sort of underlying graphics layer...for Windows 8 this is done with XAML + DirectX. So what he's doing is kind of providing a nice menu system as far as I can tell. It's an important thing for games that many people underestimate or do a bad job on. The menu systems for XNA games are only pretty decent because there are so many samples available that people borrow from, for Windows Phone games people use Silverlight sometimes...for iOS and Android it's trickier in my opinion, sometimes people even buy controls from 3rd party companies just to not have to mess with menu system stuff.
 
Vid of a Android->Suite port, Meltdown Moon, 6 hours work:

http://www.youtube.com/watch?v=s9QgqynMMPA

I wonder how good the motion sensor data is. Interesting to note that the docs state that not all devices will necessarily have gyro data. I wonder if you can make a game that depends on gyro data or would Sony reject it?

Please anyone who started any project even in pre-pre-pre-alpha stage, post a download link so we can test it on PS Vita before this SDK officially releases and then it will cots 100$ to use it.
 
IMO The future of anything but AAA games is to have a layer that is super easy to write for 2D UI/menus and some sort of underlying graphics layer...for Windows 8 this is done with XAML + DirectX. So what he's doing is kind of providing a nice menu system as far as I can tell. It's an important thing for games that many people underestimate or do a bad job on. The menu systems for XNA games are only pretty decent because there are so many samples available that people borrow from, for Windows Phone games people use Silverlight sometimes...for iOS and Android it's trickier in my opinion, sometimes people even buy controls from 3rd party companies just to not have to mess with menu system stuff.

That's exactly it! And I'm trying to do it a little cleaner than WPF/XAML and most of the other things I know, as that really still allows you to mess up the 'model-view' model very easily, by creating something that has a much more strict separation of logic and layout.

And yeah, now that I've managed to get the most important stuff working, I'll write a manual and I'll create some videos too.

Here's a screenshot of my first own integration of it in an existing project, the BGM example (starting modestly ;) ). For testing I've left the original UI in there. When I make a video I'll show the whole process and remove the original layout in the end. I also need to find a nicer alternative for the checkbox, because I'm not happy with how that looks. I think I'll make something like a CheckButton that merges the checkbox and the button into one or something similar. I'll also add logic soon that allows you to link buttons and such, so that when you press Play that button gets disabled until Stop is pressed and vice versa.

It's an extensible setup though so everyone should be able to make new controls for it, or special one-off controls meant for their particular application. But we'll get to that.


2012-05-06-032721 by niwrA, on Flickr
 

Burai

shitonmychest57
Please anyone who started any project even in pre-pre-pre-alpha stage, post a download link so we can test it on PS Vita before this SDK officially releases and then it will cots 100$ to use it.

Maybe you can just wait a few months and buy the finished apps rather than pretending to want to help so you can get free games?
 

ReaperXL7

Member
Please anyone who started any project even in pre-pre-pre-alpha stage, post a download link so we can test it on PS Vita before this SDK officially releases and then it will cots 100$ to use it.

I think thats been debunked at this point...it will only cost you money to be allowed to publish your games to the service no? That was the last I heard anyway...
 

androvsky

Member
Oh, that reminds me, I'm no longer sure people will be able to test on the Vita for free after the Beta is over. There was another clarification post from one of the Sony guys buried in the dev forums (from a few weeks ago that I missed originally), so I make no guarantees.

Edit: Yeah, the Sony guy posted again. The SDK and PC simulator will be free, but in order to publish or test on any physical devices, you'll need to pay the $99.
 

Gaspode_T

Member
I've been dreaming about this kind of thing since the Yaroze

Since it was released there have been something like 2,700 games released for Xbox Indie Games using XNA...also Windows Phone 7 has received a few hundred games with XNA too, so you can find a lot of information about writing games in C# online if you research about XNA. It will take a year or two at least for the amount of tutorials etc online to get even close to that level. The only confusing thing about XNA is that they had a big revamp in API between XNA 3.1 and 4.0 so you pretty much have to ignore examples that aren't 4.0, but it's entirely possible that someone will make a layer (MonoGame, whatever) that is pretty portable between PS Suite and Xbox Indie Games.
 

Gaspode_T

Member
A lot of the Japanese XNA devs seem to be latching upon PS Suite, because basically they are already a strange breed in using C# in Japan and they feel almost blessed that there is suddenly this new way for them to continue using C#. I think you'll see a lot of ports of the Japanese Xbox Indie games, because I've even seen them tweet that they are already working on ports. Get ready for games like "Maid's Caving Adventure"...
 
Oh, that reminds me, I'm no longer sure people will be able to test on the Vita for free after the Beta is over. There was another clarification post from one of the Sony guys buried in the dev forums (from a few weeks ago that I missed originally), so I make no guarantees.

Edit: Yeah, the Sony guy posted again. The SDK and PC simulator will be free, but in order to publish or test on any physical devices, you'll need to pay the $99.

Slight bummer, but at least that's not two separate payments like it is on iOS.
 
Making people pay just to run their code on hardware would be an incredibly dumb move on Sony's part.

Don't they want people to learn programming for their systems without being forced to make money with it? The simulator is not a complete simulation (no motion controls, color rendition is not the same as on the Vita, analog controls are not the same etc.)

They could change it to only work then the hardware is connected to the development system (and maybe you could only register the hardware to one developer system via the internet).
 
Only just found this today, utterly amazed.
I've been dreaming about this kind of thing since the Yaroze, and i've also wanted to try iOS coding but no way am i paying for a Mac (and lack the exact hardware for a Hackintosh), this really scratches a "i must learn how games are made" itch.

Sure, i could have done this kind of thing with my PC and Visual Studio or something, but that is BORING. Loading in a demo, fiddling with the code, and clicking "Run on Vita" to see the results on my actual handheld console...... crazy shit. The demos are excellent too.
I'll be playing with this for months.
*looks up books on C#*

What kind of developing skill set did you previously have before fiddling around with code on the vita?
 
Making people pay just to run their code on hardware would be an incredibly dumb move on Sony's part.

Don't they want people to learn programming for their systems without being forced to make money with it? The simulator is not a complete simulation (no motion controls, color rendition is not the same as on the Vita, analog controls are not the same etc.)

They could change it to only work then the hardware is connected to the development system (and maybe you could only register the hardware to one developer system via the internet).

I'm not sure it is dumb - it is as open as just about any other system, same as XNA on 360 for instance, and more open than iOS (where you have to pay before you can even download an SDK and use the simulator).

I have been coding far too deep into the night, yesterday, trying to extend my dynamic user interface / menu system to the ListPanel. It took a bit of figuring out (some tricky gotchas, and a dumb thing on my part), but I now have the basis working for Xml data, so quite pleased with that. Now it's a matter of extending that with styling features, and I'll have a look if I can hook up collection of objects 'WPF' style. I think that with how I have it working right now, that shouldn't actually be too hard. From the way things are going, I may develop it so that it could theoretically evolve into something similar to WPF in terms of feature set. The low-level hybrid of graphics and UI components that PS Suite offers actually should make that relatively easy to do.
 
Here's a current status update. Here you see the listpanel in action, but interesting about it is that the listpanel itself can be dynamically built up by nested wizard panels (again, much like WPF):


2012-05-12-005825 by niwrA, on Flickr

The listpanel contents are based on an example rss stream. Some items are empty, partly because I haven't implemented hierarchical xml data binding yet, but that shouldn't be too hard. I hope to get quite far coming monday when I have a full day to work on this.
 

dogmaan

Girl got arse pubes.
Here's a current status update. Here you see the listpanel in action, but interesting about it is that the listpanel itself can be dynamically built up by nested wizard panels (again, much like WPF):


2012-05-12-005825 by niwrA, on Flickr

The listpanel contents are based on an example rss stream. Some items are empty, partly because I haven't implemented hierarchical xml data binding yet, but that shouldn't be too hard. I hope to get quite far coming monday when I have a full day to work on this.

Have you got a way of Databinding like WPF MVVM?
 
Have you got a way of Databinding like WPF MVVM?

Yeah, it will end up being pretty close to that. I'm not 100% sure if I'll do it exactly like that right down to the observablecollections and such, but we'll see, may well happen. Right now everything is slightly more high level: you get a single line of events (also much easier to debug) of any changes done in the user interface. So you subscribe to the wizard's value changed event, and then you get the reference to the originating element, its new / current content object and its previous content state. From there you can respond and distribute to wherever you need in your application.

I think I'll keep that as a default way of working because it is so much easier to manage and debug, but then allow direct property binding later where necessary.
 
Has anyone got something complete/almost complete and running on Vita yet? Just wondering how quick development is if you've got a design doc and the building blocks already in place.

Would be great if the platform launched with a fuck-ton of useful apps and games.
 

Turfster

Member
Got my Vita, finally got time to try and port something simple to the suite...
Holy hell, this SDK is a mess.

Why is something basic like color constants hidden away in Sce.Pss.HighLevel.GameEngine2D.Base?
Of course, now that I've included this, EVERY SINGLE FUCKING MATH REFERENCE needs to be changed to System.Math because otherwise Studio complains that it's 'ambiguous' with Sce.Pss.HighLevel.GameEngine2D.Base.Math, even though most of the stuff isn't even in there.
 

Chesskid1

Banned
messed around with an nes emulator. ran at 15 fps and had no audio support, but was cool to mess around with i guess, haha.

was prolly a rush job and i dont know anything about programming so seems cool to me.
 

spwolf

Member
Has anyone got something complete/almost complete and running on Vita yet? Just wondering how quick development is if you've got a design doc and the building blocks already in place.

Would be great if the platform launched with a fuck-ton of useful apps and games.

some dev posted 6 hours to port android game to PS Vita... it was simple game but it shows that service will be quite full soon enough.
 

Turfster

Member
Huh. Has anyone gotten ANY formats besides PNG to load for Texture2D/Image? The docs claim they support BMP and others too, but they usually give a "file not found" error (or just a blank Image)
 
Got my Vita, finally got time to try and port something simple to the suite...
Holy hell, this SDK is a mess.

Why is something basic like color constants hidden away in Sce.Pss.HighLevel.GameEngine2D.Base?
Of course, now that I've included this, EVERY SINGLE FUCKING MATH REFERENCE needs to be changed to System.Math because otherwise Studio complains that it's 'ambiguous' with Sce.Pss.HighLevel.GameEngine2D.Base.Math, even though most of the stuff isn't even in there.

I think rearranging the order of the imports will fix that.

Also, I think it's supposed to be pretty barebones, so a lot of things that some people won't need are hidden away in HighLevel. Though it wouldn't kill to include them...
 

Turfster

Member
Got a flash of inspiration and managed to convert a very very old opengl font renderer I did like, 10 years ago. Now I have workable debug output, woo.

The actual porting of my XNA procedural street map generator went pretty smoothly, I spent more time trying to get debug text on screen without having to go the retarded Image.Drawtext->Texture->Sprite way than anything else.
 
FIRST *BETA* RELEASE

Hi All,

Those interested can try the UI Wizard libs now. It's not nearly finished, and there is plenty of work to do on the documentation as well ;) but the basics are there, and as I had a question from someone if he could try it, and I am off for a week not able to work on this, it seemed like a good moment to share some results.

There's a manual in there detailing how to add the UI Wizard to your project, and there's a modifield SampleModelDemo from the PSS that shows the end result of integrating it, that you can use for reference and testing. I also made a little crappy video, that shows some of the project and code that I will post whenever it is done.

You can download the whole package from here, it's the only file in the shared folder at the moment:
https://skydrive.live.com/redir.asp...2D62D5DD0C4DBD0C!101&authkey=!AF7p8S7AydwyuVM

Hope to see some cool stuff from you guys. ;) Feel free to post questions here. I will be answering those promptly.

Short Video:
http://www.youtube.com/watch?v=i3_l0_aKLtM&feature=youtu.be

Long Video:
http://www.youtube.com/watch?v=aB4dD5vgYYI&feature=youtube_gdata_player
 

Benedict

Member
I've not followed this that closely, but how does this work?
Can I, as a user, download what's necessary to my Vita and try what people have made without any hassle?

Or does it require skillz?

Anything worth trying?

Is there any site that you can recommend that cover Ps Suite?
Like Homebrew-sites?
 

Turfster

Member
I've not followed this that closely, but how does this work?
Can I, as a user, download what's necessary to my Vita and try what people have made without any hassle?
Pretty sure you'd have to recompile whatever people have made, so they'd have to give you the full source and all the content data. Don't think I've seen anyone do that yet ;)

Is there any site that you can recommend that cover Ps Suite?
Like Homebrew-sites?

There's hardly any coverage as far as I've been able to find. There's the pss forums and a few simple hello world tutorials, but that's it. (please feel free to correct me, people, I'd love to see more active discussions about the PSS)
 
Derp.
So the simulator defaults to 854x480, but the Vita actually defaults to 960x544... Thanks, Sony!

You can set the simulator to any resolution you like when you create the graphics context. PS Suite isn't just for the Vita, but potentially for any Android phone or tablet. It already ran on several Sony phones and tablets before the Vita version of PS Suite was even out. It's one of the reasons a scaleable user interface is important, hence my project. ;)

I haven't looked yet but apparently the easiest port to PS Suite is from XNA so perhaps there' ssome discussion there, apart of course from the official Sony beta forums.
 

androvsky

Member
You can set the simulator to any resolution you like when you create the graphics context. PS Suite isn't just for the Vita, but potentially for any Android phone or tablet. It already ran on several Sony phones and tablets before the Vita version of PS Suite was even out. It's one of the reasons a scaleable user interface is important, hence my project. ;)

We probably won't be able to target devices on the store according to the Sony rep in the beta forum, so people with any PS Suite device will be able to buy any PS Suite game or app. Therefore it's pretty important that anything we make scales to the different resolutions.
 

Turfster

Member
You can set the simulator to any resolution you like when you create the graphics context. PS Suite isn't just for the Vita, but potentially for any Android phone or tablet. It already ran on several Sony phones and tablets before the Vita version of PS Suite was even out.

I know, but there's sweet f-all feedback from it. It would be nice if the simulator could actually be set to a device type and it would then give you the default res of the screen. An example of the actual speed your code would run like on the given device would also be nice, instead of just running at the speed of the system you're devving on.

I doubt many people are going to be buying multiple PS Certified devices to test their code on, so some kind of indication how fast/native res of each device would be welcome. Hell, it's not like there's more than 10 devices that are certified already.
 
Top Bottom