Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon
6. May 2012

 

I just ran in to one of those massive annoyances while working on another PlayStation SDK tutorial covering the SpriteTile class.

 

 

A SpriteTile is used to group multiple sprites together in a single texture.  There are literally dozens of utilities for packing sprites and every single one of them starts at the top left.  For some bizarre reason though, SpriteTile starts from the bottom left!

 

So as I was flipping through my sprite structure, the on screen results were almost inverted… this would be the reason why.  So, if you are working with SpriteTile, be aware of this!

General


30. April 2012

image

 

 

 

Research in Motion, of Blackberry and Playbook fame, recently released Gameplay 1.2, a cross-platform 3D game programming library aimed at Indie developers.  As a game maker, it is easy to ignore RIM these days, especially with their CEO making comments like:

 

"We plan to refocus on the enterprise business and capitalise on our leading position in this segment,"

 

That doesn’t exactly give you the warm and fuzzy about the future of RIM consumer devices now does it?

 

That said, ignoring GamePlay would be a foolish thing to do.  Why?

 

Well first off, it’s free.  I like free.  As in, I really like free.

 

Second and perhaps most amazingly, it is cross platform.  You can target Mac OS, Windows, iOS 5.0 or higher devices, Android 2.3 or greater devices in addition to Blackberry Tablet OS 2.0 and Blackberry 10 devices ( when they arrive ).

 

Third, it’s IDE agnostic, except when required otherwise ( aka, compiling for iOS ).  I can work in my preferred Visual Studio environment.  You however have the choice between Visual Studio, XCode or Momentics IDE ( an Eclipse based IDE Rim inherited from QNX ).

 

Fourth, it’s open source and hosted on GitHub.

 

Here is a screen shot from a demo game in development:

 

 

I have to say, it looks impressive to me.

 

 

Oh, did I happen to mention it’s C++ based?  I think I just heard half of you cheer, while the other half swore! Winking smile

 

 

I do have to say, the folks at Marmalade probably aren’t pleased.  They both fill the same niche… but gameplay is free.  Now the question is, how good is it?

 

Feature-wise, here is what you can expect:

 

Current features in gameplay
  • Written completely in C++ and well documented using doxygen.
  • Solution and workspaces for Visual Studio 2010, XCode 3.2.1 and Momentics IDE’s.
  • Platform-Game abstraction layer separating all operating system code from game engine code.
  • Input system support for Mouse, Keyboard and Touch.
  • Full vector math library with classes for Vector2/3/4, Matrix, Quaternion, Ray, Plane. Also Frustum and BoundingBox/BoundingSphere classes for object culling.
  • Solid OpenGL 3.2+ (for Desktop) and OpenGL ES 2.0 (for Mobile) based rendering system with classes for RenderState, FrameBuffer, Mesh, Material, Effect, Pass and Techniques.
  • Easy-to-use and efficient Font and Sprite classes.
  • Scene-graph components such as Scene, Node, Light, Camera and Model.
  • Binary encoding tool for creating optimized bundles for loading TTF fonts and 3D game assets supporting both COLLADA and FBX formats.
  • Extensible animation system with classes for Animation, AnimationClip and Curve with built-in AnimationTarget’s on Transform and MaterialParameter’s classes.
  • Complete 3D audio system with additional support for compressed audio using OGG and supporting HDMI gaming.

 

New features in gameplay v1.2
  • Newplatforms now supporting:
    • BlackBerry Tablet OS 2.0 and BlackBerry 10 ready!
    • Apple iOS 5.1 for iPhone and iPad
    • Google Android 2.3+
    • Microsoft Windows 7
    • Apple MacOSX
  • New shader-based material system with built-in common shader library.
  • New declarative scene binding.
  • New declarative particle system.
  • Improved physics system with rigid body dynamics and constraints.
  • New character physics and ghost objects.
  • Improved animation system supporting animated skeletal character animation.
  • New declarative user interface system with support for declartive theming and ortho, and 3D form definition with built-in core control classes such as Button, Label, TextBox, Slider, CheckBox, RadioButton. Also includes Layout classes such as Absolute/Vertical and FlowLayout.
  • New cross-platform new game project wizard scripts.
  • New game developer guide.
  • New game samples and tutorials.

 

 

With the following coming soon:

 

The ‘next’ feature branch for v1.3, v1.4, v1.5
  • Optimizations and Performance improvements
  • Shadows
  • Terrain and Sky
  • Gamepad input for Wii, Xbox 360 and Bluetooth® HID controllers
  • Scoreloop Social integration
  • Editor

 

 

Editor hmm?  Wonder what that means?

 

 

I am going to download and play with the SDK, and if I get some time ( something I am chronically short of lately ) I may post a walk around and possibly a tutorial or two.  Has anyone out there been playing with this technology?  Any opinions?

 

 

If you are interested, check out the announcement blog post as well as the source on GitHub.  Oh and perhaps most impressive of all for an open source gaming product… there is actually documentation. The documentation is available here including this development guide[direct pdf link].

 

I have to say, congratulations to Sean Paul Taylor and Steve Grenier on this impressive release!

General


27. April 2012

 

 

The LUA based Corona SDK is one of those things I have really been intending to check out forCoronaBook a very long time now.  One of the biggest reasons I haven’t looked closer ( other than time ) was the complete lack of published materials.  Today however, I logged in to Safari and low and behold, Corona SDK Mobile Game Development is right there in the new releases section.

 

 

This is perhaps the worst timing ever, I am still throwing myself quite fully at PlayStation SDK development as well as working on a Titanium based app… but, but… this is shiny and new! (well, the book is new anyways…)

 

 

Actually, Corona and more specifically LUA are two products I have heard nothing but rave reviews of, so this certainly is of interest to me.  I’ve skim read the book and it seems quite impressive.  If I dive in, I will be sure to put up a review.  I have to say, I am quite impressed with Packt press lately and the range of books they are putting out.  The book is also available on Amazon but oddly enough shows a May 31st publish date( it’s April 27th at the time of this post), but also lists it as being in stock so I am guessing it’s available to order.

 

 

Have you worked with LUA/Corona?  Is the hype justified? Is it substantially better than the free Moai SDK, which is also LUA based?

General


23. April 2012

 

 

Photoshop has always been the big boy in the 2D imaging world and I have always found it a bit too expensive at the @ 800$ a license.  What would you say though if you could insteadimage buy Photoshop CS on a subscription basis for 50$ a month?

 

How about if I threw in some cloud based features like online storage?  Still not sold?

 

Ok, how about if I threw in Photoshop Touch as well?  Still not convinced?

 

Oh, how about I threw in say… Illustrator, Lightroom, InDesign, Muse, Acrobat Pro, Flash Pro, Flash Builder Premium, Dreamweaver, Edge, Fireworks, Premiere, After Effects, Audition, SpeedGrade, Prelude, Encore, Bridge, Encoder, Proto, Ideas, Debut, Collage and Kuler?  Did that get your attention?

 

 

Because that is exactly what Adobe just did!

 

 

The newly announced Creative Cloud appears to be a an all you can eat subscription to pretty much everything Adobe makes, coupled with their fairly new web services, like 2GB of cloud storage.

 

Pricing starts at 50$ on a annual commitment basis, rises to 75$ on a month by month basis.  If you are already paying for one or more CS products, this represents a massive discount.  Oh, speaking of already paying, if you are an existing subscriber, it is available until August 31 at 30$ a month!.

 

 

 

Tempted yet? Winking smile

 

 

 

EDIT: I suppose I should point out, you can’t actually buy it yet, its in pre-order at the moment. 

General Art


22. April 2012

 

 

This post is going to take a look at what’s included with the PS SDK, PlayStation Suite Studio and all the various included tools and tutorials.  So if you are wondering what is included in the PSSDK or have downloaded it and are trying to figure out what exactly you’ve got, this post is for you!  It assumes you’ve installed to default directories, so if you haven’t you have to adjust all locations accordingly.

 

 

image

 

 

Where is everything?

 

 

The PS Suite SDK installs to two different locations.  First check out

C:\Users\Public\Documents\Pss

This is where all the documentation and samples are installed.  The samples are amazingly comprehensive, but we will cover that later.  The samples are in the “samples” sub-directory.  The documentation are in the “doc\en” sub-directory.  The most important file is pss_sdk_doc_e.chm, which is the primary source of documentation and should soon become your best friend.  On the other hand “index.html” brings up the html document, which appears to be system generated class reference documentation and duplicates a lot of the information in the chm file.  Of course, both of these can be launched from the start menu.  Just do yourself a favour now, open pss_sdk_doc_e.chm now and leave it open! Winking smile

 

 

The next important folder is C:\Program Files (x86)\SCE\Pss, assuming you are running a 64 bit Windows ( drop the (X86) if not ).  The mono and software directories can be pretty much ignored.  Within the “target\win32” is pss.exe, which is the PlayStation Suite simulator which of course can be launched from Studio.  The source directory contains 4 helper libraries with full source code, GameEngine2D, Model, Physics2D and UI.  Most are documented in the main documentation already, so I won’t go into further details on these.

 

Perhaps most important is the tools sub-directory and the key files being:


 

adb This is the Android debugging bridge, it’s normally part of the Android SDK, but apparently PSS uses it for debugging too.

AnimationConverter This command line application is used to convert animations authored in Adobe Flash into a PS Suite compatible format.

OscCustomizeTool This tool is used to create onscreen joystick controls for Android ( but not the simulator or Vita ).  The output is a cfg file.

PssStudio This is where the Studio is located, which is a customized version of MonoDevelop and we will see it in more details later.

ModelConverter Is a command line utility to convert from dae, fbx, xsi and x formats to mdx format for use in PS Suite, I will cover this process in an upcoming tutorial.

Vita This folder contains the device driver needed for your computer to see your Vita.

ShaderConverter Used to convert cg shaders to a PS compatible formats.

UIComposer Used for making GUIs, will look at this in a bit more detail later

 


 

Playstation Suite Studio

 

 

This is where the magic happens.  PlayStation Suite Studio is a modified version of MonoDevelop, which is a code editor, project manager and debugger all in one.  You create, debug and compile your code all from within Studio, which is capable of launching the Simulator or deploying and debugging on your actual device.  This is as screenshot Studio in action:

 

image

 

On the left is the project manager window, to the right is the tabbed area where you edit or debug your source code.  The windows change based on your current activity.  Perhaps the most important modifications to MonoDevelop, are the new PlayStation Studio specific projects.

 

image

 

Until the Visual Studio add-in is released, PlayStation Suite Studio is where you are going to spend the majority of your waking hours.  I will cover parts of it in more detail in later tutorials.

 

 

 

PlayStation Suite UI Composer

 

 

UI Composer is where you put together your User Interfaces, which are then saved in .uic XML format.  If you are familiar with building UIs in Visual Studio, Interface Builder, Qt Designer or various other similar UI generators, you will feel right at home here.  Here is a shot of UI Composer in action:

 

image

 

 

There’s a pretty good selection of widgets available, illustrated below:

 

image

 

 

UI Composer can be used to generate Scenes, Panels, Dialogs and ListPanels.  Once you have drawn your UI, you then “Build” it, which then generates cs code to be included in your project.  The code generated uses partial classes, meaning you can add your code, but if you make changes, it will not overwrite them.

 

 

 

OscCustomizeTool

 

 

This is a neat tool for creating onscreen controls for Android tablets.  The end result is a cfg file that controls how the, um, controls will be created.  However it doesn’t work on Vita ( makes sense… ) and doesn’t work on the simulator ( doesn’t make sesne ), so I haven’t really got a chance to use it.  The UI seems quite evident though, you pick what capabilities to enable:

 

image

 

 

Then you select the layout and form factor you want to use:

 

image

 

I look forward to trying this out a bit more, so hopefully they will add compatibility with the simulator, even if just single touch at first ( or better yet, give the ability to remote control using a device, or map to a keyboard ).

 

 

The Demos

 

 

Ok, wow, this is the part Sony really got right.  There are full source code demos, many many many demos.

 

 

As to the demos, there are lots of little ones you would expect to demonstrate individual aspects, such as playing music, math usage, clipboard, storage, networking, physics, input, UI, model loading, imaging, etc.  Then some are extremely impressive and detailed, like the following:

 

 

A flight game:

image

 

 

A Arkanoid-ish Game:

image

 

 

A 3D Tower defense game:

image

 

 

A fully 3D RPG!

image

 

 

A 3D R-Type style game:

image

 

 

An Angry Birds Style game:

image

 

 

A 2D Side Scroller:

image

 

 

A Puzzle Game:

image

 

 

An RSS Reader:

image

 

 

And many more.  Seriously Sony, bang up job on the samples!  This is where you will spend a lot of your time, reading through the source examples, which I need to warn are often documented in Japanese, as are some of the tooltips.

 

 

The SDK

 

So that’s the tools and demos included, what about the actual code libraries themselves?  Well, PlayStation Suite SDK is based on Mono, so you get most of the libraries you would expect from it, which means most of the .NET runtime which is pretty comprehensive.

 

Additionally, as I mentioned earlier, they provided full sample projects, including a 2D Game Engine and a physics implementation.  On top, here is the class hierarchy of the current SDK:

 

 

 

ClassListPS

 

Over all, I am extremely impressed with what is included.  I wish Visual Studio support was ready, but PlayStation Studio (MonoDevelop) is pretty impressive if a bit sloppy at times.  You basically have everything you need to get started, it’s just a matter of finding it.

 

 

In a nutshell, that’s what you get when you install PlayStation Suite SDK. If you are just starting out, I highly recommend you jump into the CHM help file, or more importantly, start running through the samples.  There is a ton of great content in there and they have been my main source of information so far, as the documentation can be a bit… lacking at times.

General


AppGameKit Studio

See More Tutorials on DevGa.me!

Month List