Bringing SSX to Android Alex Aptekar, EA
Omar A Rodriguez, Intel
Legal
Copyright © 2014 Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
A "Mission Critical Application" is any application in which failure of the Intel Product could result, directly or indirectly, in personal injury or death. SHOULD YOU PURCHASE OR USE INTEL'S PRODUCTS FOR ANY SUCH MISSION CRITICAL APPLICATION, YOU SHALL INDEMNIFY AND HOLD INTEL AND ITS SUBSIDIARIES, SUBCONTRACTORS AND AFFILIATES, AND THE DIRECTORS, OFFICERS, AND EMPLOYEES OF EACH, HARMLESS AGAINST ALL CLAIMS COSTS, DAMAGES, AND EXPENSES AND REASONABLE ATTORNEYS' FEES ARISING OUT OF, DIRECTLY OR INDIRECTLY, ANY CLAIM OF PRODUCT LIABILITY, PERSONAL INJURY, OR DEATH ARISING IN ANY WAY OUT OF SUCH MISSION CRITICAL APPLICATION, WHETHER OR NOT INTEL OR ITS SUBCONTRACTOR WAS NEGLIGENT IN THE DESIGN, MANUFACTURE, OR WARNING OF THE INTEL PRODUCT OR ANY OF ITS PARTS.
Intel may make changes to specifications and product descriptions at any time, without notice.
All products, dates, and figures specified are preliminary based on current expectations, and are subject to change without notice.
Intel processors, chipsets, and desktop boards may contain design defects or errors known as errata, which may cause the product to deviate from published specifications. Current characterized errata are available on request.
Any code names featured are used internally within Intel to identify products that are in development and not yet publicly announced for release. Customers, licensees and other third parties are not authorized by Intel to use code names in advertising, promotion or marketing of any product or services and any such use of Intel's internal code names is at the sole risk of the user.
Intel product plans in this presentation do not constitute Intel plan of record product roadmaps. Please contact your Intel representative to obtain Intel’s current plan of record product roadmaps.
Performance claims: Software and workloads used in performance tests may have been optimized for performance only on Intel® microprocessors. Performance tests, such as SYSmark and MobileMark, are measured using specific computer systems, components, software, operations and functions. Any change to any of those factors may cause the results to vary. You should consult other information and performance tests to assist you in fully evaluating your contemplated purchases, including the performance of that product when combined with other products. For more information go to http://www.Intel.com/performance
Iris™ graphics is available on select systems. Consult your system manufacturer.
Intel, Intel Inside, the Intel logo, Intel Core and Iris are trademarks of Intel Corporation in the United States and other countries.
2
Which AAA console title would make a
great tablet experience?
3
It has to translate well to touch input
It has to be accessible, easy to play, and fun
It has to still look great with less horsepower
It has to be built on internal tech
4
SSX is timeless and fun series!
SSX is a timeless, fun series that translates well into a touch experience.
5
So how do we go from SSX console to
Android?
What are the technical challenges and limitations?
What are our goals?
Fidelity!
6
Stay faithful to the core console experience
No compromise on gameplay – same tracks, tricks, feeling of speed
Look as good as the console version
From console to mobile - First steps
7
Console to Mobile – Tech
What we had
Great in-house framework powered by
central tech and the dev community
In-house cross platform renderer
3rd party libraries (Autodesk)
Getting to mobile
Get the system and game Android
ready: compile, run the main loop,
load data.
Renderer and the shader pipeline to
run on PC with OpenGL subset.
Android code path to do the same but
with OpenGL ES.
Work with Autodesk or replace
8
9
Optimization
10
Tech Optimization – CPU Load
11
Build in tools and measure
What came up on the radar
Ray casting for camera and boarder, surface analysis
Animation blending
Audio simplification, voice reduction
UI chatter (too much messaging between Scaleform and the game each frame)
You have 4 cores, use them wisely
Lua runtime, replaced with C++
Scaleform runtime: work with Autodesk
Tech Optimization – Graphics
12
Tech Optimization – Graphics
13
Rendering and GPU load, bandwidth
Shader optimization
Ambient occlusion, no shadows just yet
Binary shaders
Improved draw order to minimize overdraw
Terrain SubDs: bake them in
Render 500m in front
1 snow layer instead of 4
Tech Optimization – Other Considerations
14
Build size, make 9GB smaller!
Compress media, textures, and cutting content
Memory, we tried but couldn’t compromise
Original Assets Before Optimization
Vast terrain size – Hundreds of kilometers of
trail
High-detail character models – Detailed meshes
and bone structure
Character animations – Complex blending trees
Integrated asset pipeline – Great tool, but
complex for mobile games
15
Optimizing the Assets
16
Character bone animation and mesh simplification
Reduced the bones in the character, head, and jackets from 300 to 150
Reduce the complexity of the meshes, while maintaining visual fidelity
Terrain simplification
Poly-reduce by 50% while maintaining mountain topography
Reduce tree and rock instances where they are not essential for gameplay
Sky boxes
Create a number of skyboxes instead of real time weather effects
17
Redesigning for Mobile Experience
10 characters, 9 regions, two game
modes, equipment upgrades and
special gear for the regions
Extensive UI system
Gamepad controls
4 characters, 7 regions – redesign
around hardware and build size
limitations
Menu system remained, redesigned
for touch
18
Redesigning for Mobile Fun
19
Touch controls
Give your focus group a movie and see how
they try to control it
We loved the accelerometer, everyone else
hated it.
Offer two types of control schemes
SSX on Intel Bay Trail
20
Our Hardware Target
21
Bay Trail
4 core x86 CPU
Intel HD Graphics
System RAM: 2 GB
Enhancements on Bay Trail
22
Intel’s CPU and GPU profiling tools
Android - x86 pipeline for our framework and 3rd party libraries
No CPU optimization was required, great level of horsepower
GPU
o Instancing
o 4 types of snow: interpolate between the types
o And more!
Bay Trail – Particles
23
Particles: snow spray, falling snow, important details for a winter game
Bay Trail – Normal Maps
24
Normal maps: now the light is falling properly, you can see geographic details
Bay Trail – Lights
25
Lighting: we were able to have up to 4 lights per scene. Flare lights reflect on the
snow
SSX Mobile – Sorting terrain geometry
26 www.intel.com/software/gpa
The end result
27
SSX on Bay Trail Tablet
28
Ready for More? Look Inside™.
29
Keep in touch with us at GDC and beyond:
• Game Developer Conference Visit our Intel® booth #1016 in Moscone South
• Intel University Games Showcase Marriott Marquis Salon 7, Thursday 5:30pm RSVP at bit.ly/intelgame
• Intel Developer Forum, San Francisco September 9-11, 2014 intel.com/idf14
• Intel Software Adrenaline @inteladrenaline
• Intel Developer Zone software.intel.com @intelsoftware
Up Next…
30
11:30 – 12:30
Achieving the Best Performance with Intel Graphics: Tips,
Tricks, and Clever Bits
Presented by:
Blake Taylor - Intel
Thank you for attending!
Any questions?
31
All the images are property of Electronic Arts.
32