PlayStation Development: An Introduction ®

PlayStation® Development:
An Introduction
Paul Holman
Vice President, Sony Computer Entertainment
Today
Traditional Console Development
What is PlayStation®Mobile?
Business Opportunity
Developer Program
Technical Overview
Our Existing Platforms
Traditional Console Approach
• Programmers code in C/C++/Assembler
• Gain maximum performance from low-level
libraries and hardware access
• Dedicated Development Hardware:
– PSP DevKit: €1,200
– PS3 DevKit: €1,700
– PS Vita DevKit (similar to PS3)
Examples
• As well as AAA Blockbusters, the “traditional”
approach has also been used to create games by
students as part of our PlayStation®First
initiative:
– Bounceback (September 2012)
• Won three awards at 2012 Game Republic Student Showcase
– Ambassador Kane (Dec 2011)
– Zwap Zap (February 2011)
– Metara (January 2011)
What is PlayStation Mobile?
• PlayStation Mobile (PSM) is SCE's initiative to bring PlayStationlike gaming experiences to open OS based mobile devices
around the world.
PlayStation Mobile Approach
• Developers code in C#
• Code runs on a virtual machine – provides direct
binary compatibility across a range of devices
• Development using a Windows PC
– A consumer PS Vita (less than £200)
– Optionally a PlayStation®Certified Android
Phone/Tablet device OR PC Simulator
Business Opportunity
High
Investment
Time & Money
The PlayStation Ecosystem
Unified by Sony Entertainment
Network (SEN)
Cross-Play
Cross-Controller
Cross-Save
Cross-Goods
Remote Play
€
Lower value mobile gamers
become higher value console gamers
Companion Apps, Common IPs & SEN ID
€
Large User Base
Low Investment
Time & Money
PlayStation Mobile Concept
• “Application Store” Model
–
–
–
–
An open environment
Casual games and non-game applications
Lightweight content approval process
Distinct from existing PSN content but available on all PS Certified
devices and PlayStation Vita
Concept
• “Application Store” Model
–
–
–
–
An open environment
Casual games and non-game applications
Lightweight content approval process
Distinct from existing PSN content but available on all PS Certified
devices and PlayStation Vita
• Target Developers – Homebrew all the way up to professional
Concept
• “Application Store” Model
–
–
–
–
An open environment
Casual games and non-game applications
Lightweight content approval process
Distinct from existing PSN content but available on all PS Certified
devices and PlayStation Vita
• Target Developers – Homebrew all the way up to professional
• PlayStation Mobile SDK
– Cross platform / cross device, binary level compatibility
– Helping to address device fragmentation issues
Why PlayStation Mobile?
 Reach New Markets
– PSM allows your titles to work on PS Vita, and a range of
PlayStation Certified devices using a single code base
PSM
Content
Tablet
Smart Phone
PlayStation Certified Devices
AQUOS Phone ZETA SH-09D
AQUOS Phone SERIE ISW16SH
Coming
Soon
HTC One S
HTC One X
HTC One V
More Sony Devices and
other Non-Sony Devices
Coming soon
Why PlayStation Mobile?
 Open Environment
– A PC is all you need to get started
– You can easily test your code on a standard retail PS Vita, or PS
Certified devices
 PlayStation Values
– PSM brings the trusted PlayStation name and consumer insight to
the Mobile space
 Global reach, local knowledge
– PSM leverages all of PlayStation’s worldwide game business
infrastructure combined with in-country local marketing expertise
PSM – Consumer Benefits
Access to content
 Buy once, play on any PS Certified device
or PS Vita
 Single SEN account can be used across
devices to purchase content
PSM – Publisher Benefits
PlayStation Network
 Large, pre-existing customer base on PSN
 PlayStation Store
 merchandising and content delivery
 PSN Commerce
 customer transactions, billing, services
 No credit card required
PSM – Marketing Opportunities
 Direct access to PSN gamers through:
–
–
–
–
PlayStation Store marketing & merchandising
Targeted emails & promotions
PlayStation.com
PlayStation community blogs
 Strong retail presence
 Strong brand advertising presence
Content Submission and Approval Process
 Content Guidelines are lightweight
 Most content not failing Objectionable Content Criteria or
commercial exceptions likely to get through
 QA will be lightweight, typically a few days of checking
 Self service, single global submission publishing process
PlayStation Mobile – Business Model
• Choose from pre-selected wholesale price tiers
– In-game ads are not allowed
– Links to outside sales are not allowed
• EU Example
– If a developer selects a wholesale price tier of €4.50,
the PlayStation Store retail price* will be set around
€7.99
* The retail price will be set at the retailer’s discretion
PSM : Latest News
• Sales of PSM titles started on 3rd October 2012
• 37 titles have been released (as of 14th November)
– PSM DevPortal wasn’t available at launch, titles
manually added
• Publisher Portal launched 20th November
• Majority of sales are for PS Vita
– "PlayStation®Mobile for Android“ currently needs to be
downloaded from playstation.com/psm/store
– Over time, will be pre-installed
Where is Development Taking Place ?
1.
2.
3.
4.
5.
United States
China
Japan
France
Great Britain
6. Spain
7. Russian Federation
8. Germany
9. Mexico
10. Canada
What about this Region ?
1.
2.
3.
4.
5.
6.
Turkey (#19 in the World)
Saudi Arabia
UAE
Morocco
Egypt
Jordan
Early Hits - Americas
• Super Crate Box
(£2.49/$3.49)
– Port of a hit arcade action game
– Pocket Gamer : 8/10
• Beats Trellis ($0.79 / £0.65)
– Music application
– PSM-only
• Aqua Kitty - Milk Mine Defender
– 2D scrolling shoot-em-up
– Pocket Gamer : 8/10
Early Hits – Europe and Australia
• Super Crate Box
• Flick Hockey ($2.29 / £1.79)
– 3D air hockey simulation
• Beats Trellis
Early Hits - Japan
• Relaxing Foot Reflexology Massage (200 yen)
• Everybody's Arcade (1,000 yen)
– Set of minigames
• 'Merican Mail (500 Yen)
Developer Program
PSM Developer Program
• Registration (free) is needed for
– Technical Resources (SDK, Forum)
– Development
• Publisher License ($99/year) needed
for
– Content submission/approval process
– Sales/Financial Reports
https://psm.playstation.net/portal/
Developer Community
•
Sharing Environment
Developer Community
•
Sharing Environment
•
Forum Based Support
Developer Community
•
Sharing Environment
•
Forum Based Support
•
Your Suggestions
Developer Community
•
Sharing Environment
•
Forum Based Support
•
Your Suggestions
•
Twitter
@PSMDevSupport
Technical Overview
Programming language
• Main programming language is C#
– Runs on a Mono virtual machine, provides direct binary compatibility
– A single .exe file will run unmodified across all devices
• Using native code is not allowed
– Provides better security
– Predictable output
– Cross-platform portability
• SCE may support other languages in the future
– Based on user feedback and if it makes sense…
Mono™ Virtual Machine
PSM Application
Managed
HighLevel API
(GameEngine2D, UI, Physics, ...)
Core API
Other
Assembly
(Graphics, Audio, Input, ...)
Mono Virtual Machine
Native
Hardware
Android API Binding
PS Vita API Binding
Android
PS Vita
Memory Configuration
• Total Available is 96MB RAM
– Sandboxed
• You decide split between:
– Managed heap – dynamically allocated
– Resource heap – for data such as textures/audio
• The 96MB does not include the Mono VM
– So you app will take more than 96MB in total
– Total not controllable from within app
Multi-Threading
• C# supports multiple threads
– VM will schedule threads across all available cores
• We recommend using multithreading
– For CPU intensive games
• Many of the devices are multi-core
– Multi-threaded code still runs on single core devices
PSM Studio (IDE)
Executing Code
1.
2.
3.
4.
User builds game in C# through PSM Studio.
Game is compiled by the C# compiler into 1 single binary
Binary is transferred onto a device (Simulator, PS Vita, Xperia, etc.)
Mono runtime performs a JIT compilation of binary during execution
PSM Development Assistant
PC Simulator
SDK Contents
•
•
•
•
•
PSM Studio
PSM UI Composer (UI Design Tool)
PC Simulator
Tools
Library
– Core APIs, High Level APIs
• C# Toolchain (compiler, linker, etc.)
• Documentation
• Samples
– Demo Games, Demo Applications
Samples
Core APIs
•
•
•
•
•
•
Graphics
– OpenGLES 2.0 equivalent
Audio
– SoundEffect, Bgm
Input
– Game Pad, Touch, Motion
Imaging
– Image Processing, Font
VectorMath
– Vector/Matrix calculation
Environment
– System, Shell, storage etc
PSM Application
HighLevel API
(GameEngine2D, UI, Physics, ...)
Core API
Other
Assembly
(Graphics, Audio, Input, ...)
Mono Virtual Machine
Android API Binding
PS Vita API Binding
Android
PS Vita
Graphics
• Textures
– PNG, JPEG, GIF, BMP
• Programmable shaders
– vertex and fragment
• API similar to OpenGLES2.0
• Shaders written in Cg
– glsl converter provided
On Screen Controller
On Screen Controller
High-level APIs
•
•
•
•
Model
GameEngine2D
Physics2D
UIToolkit
PSM Application
HighLevel API
(GameEngine2D, UI, Physics, ...)
Core API
Other
Assembly
(Graphics, Audio, Input, ...)
Mono Virtual Machine
Android API Binding
PS Vita API Binding
Android
PS Vita
GameEngine2D
• Basic functionality needed to create simple 2D games
– Sprite system, scene graph, scheduler, actions, Plane3D, particles,
isometric scenes
– API is conceptually similar to Cocos2D (http://www.cocos2d-iphone.org/)
• Source code is provided
Physics
• Physics
– 2D-based physics library based on Box2D
– Works in conjunction with GameEngine2D
UI Composer
Widget
List
Window
Object
Tree
Window
Property
Window
Overview
Window
Layout
Window
Asset
Window
Technology Roadmap
• Features coming in the future (date to be announced)
•
•
•
•
•
•
•
•
PSN (and other Network Services)
Visual Studio integration
Support for model data output from 3D tools other than Maya
Low-level audio API
Camera API
Location API
Video playback
DRM and packaging support
• Other features to be driven by community feedback
Open Beta
• Many developers were showing ported XNA
games/game engines within days of the open beta
starting
Summary
Summary
“Traditional “ Approach
PlayStation Mobile
Concept Approval
Yes
Lightweight (EULA)
Programming Language
C/C++/Assembler
C#, Cg
Technical Support
Included in costs of development
hardware. Technical support,
consultancy & training.
Support is forum based, strong
community
“Field of Use”
Games (some exceptions)
Games or Non-Games Application
Graphical Performance
High (low level libraries available, high
levels of control)
Lower (runs on virtual machine ) but
OK for most genres
Sales Channel
Either as a PS Vita card and/or via
main PlayStation®Store for PS Vita
PlayStation Mobile area of PS Store
for PS Vita and PlayStation Certified
devices
Data Formats
• Model
– Custom format, but converter is provided for
COLLADA, FBX, XSI, X
• Texture
– PNG, JPEG, GIF, BMP
• Audio (SFX)
– WAV
• Audio (BGM)
– MP3
Tools
• UIComposer
– Quickly build UIs through the UI Toolkit API
• ModelConverter
– Convert models to MDX, compatible with PSM
• AnimationConverter
– From Motion XML or XFL (Flash XML)
• OscCustomizeTool
– Customize the look of the On Screen Controller
• PSMStudio
– IDE for application development
Download it now!
http://www.playstation.com/psm
Thanks!
Questions? Comments?
http://www.playstation.com/psm