Upload
nasscom
View
634
Download
1
Embed Size (px)
DESCRIPTION
Stage 3D - Changing the game - Adobe: NGDC 2012
Citation preview
Stage3DChanging the Game
Hemanth SharmaGaming Evangelist, Adobe
http://[email protected]@hemanthsharma
Friday, 2 November 12
Direction & Focus
Flash Player on Mobiles
Adobe AIR and Gaming
Flash Player for Desktop-web
Friday, 2 November 12
facebook.com/AngryBirds
Audience
The audience
Approximately 500M people have already opted into using the silent auto update feature.
500M$is$more$than$2"#mes"the"number"of"Xbox360,"PS3"and"Wii"ever"sold.
We can update these 500 million people to new versions of the runtime in less than 48 hours.
facebook.com/AngryBirds
Tuesday, October 9, 12Friday, 2 November 12
facebook.com/AngryBirds
Audience
Approximately 500M people
The audience
Approximately 500M people have already opted into using the silent auto update feature.
500M$is$more$than$2"#mes"the"number"of"Xbox360,"PS3"and"Wii"ever"sold.
We can update these 500 million people to new versions of the runtime in less than 48 hours.
facebook.com/AngryBirds
Tuesday, October 9, 12Friday, 2 November 12
facebook.com/AngryBirds
Audience
Approximately 500M people
That’s more than 2x Consoles ever sold
The audience
Approximately 500M people have already opted into using the silent auto update feature.
500M$is$more$than$2"#mes"the"number"of"Xbox360,"PS3"and"Wii"ever"sold.
We can update these 500 million people to new versions of the runtime in less than 48 hours.
facebook.com/AngryBirds
Tuesday, October 9, 12Friday, 2 November 12
facebook.com/AngryBirds
Audience
Approximately 500M people
That’s more than 2x Consoles ever sold
Less than 48 hours to Upgrade
The audience
Approximately 500M people have already opted into using the silent auto update feature.
500M$is$more$than$2"#mes"the"number"of"Xbox360,"PS3"and"Wii"ever"sold.
We can update these 500 million people to new versions of the runtime in less than 48 hours.
facebook.com/AngryBirds
Tuesday, October 9, 12Friday, 2 November 12
facebook.com/KingsRoadGame
Top Games
9 of the top 10 games
* This list was compiled by looking at the top games on Facebook with more than 100,000 monthly active users and giving priority to those games with the highest user satisfaction scores.
facebook.com/KingsRoadGame
Tuesday, October 9, 12Friday, 2 November 12
facebook.com/KingsRoadGame
Top Games
9 of the top 10 Facebook games
* This list was compiled by looking at the top games on Facebook with more than 100,000 monthly active users and giving priority to those games with the highest user satisfaction scores.
9 of the top 10 games
* This list was compiled by looking at the top games on Facebook with more than 100,000 monthly active users and giving priority to those games with the highest user satisfaction scores.
facebook.com/KingsRoadGame
Tuesday, October 9, 12Friday, 2 November 12
* Chrome Only
Go DRY
Reuse AS3 code
No Shared Runtime Required
*
Same Code (ActionScript 3)
Friday, 2 November 12
Powered by Stage3DPowered by
Stage3DUse one set of platform agnostic GPU APIs to target the browser and mobile devices (iOS, Android)
just converted a small project to Starling+AIR and am getting solid 60fps... super impressive.
I'm quite impressed. Am doing a 3-month project using AIR + Starling and I'm totally looking forward to it thanks to this.
Yeah its an AIR game. Using stage3d you get pretty close to native nowadays.
Tuesday, October 9, 12
just converted a small project to Starling+AIR and am getting solid 60fps... super impressive.
Yeah its an AIR game. Using stage3d you get pretty close to native nowadays.
““
Friday, 2 November 12
Powered by Stage3D
One set of platform agnostic GPU APIs
Powered by Stage3DUse one set of platform agnostic GPU APIs to target the browser and mobile devices (iOS, Android)
just converted a small project to Starling+AIR and am getting solid 60fps... super impressive.
I'm quite impressed. Am doing a 3-month project using AIR + Starling and I'm totally looking forward to it thanks to this.
Yeah its an AIR game. Using stage3d you get pretty close to native nowadays.
Tuesday, October 9, 12
just converted a small project to Starling+AIR and am getting solid 60fps... super impressive.
Yeah its an AIR game. Using stage3d you get pretty close to native nowadays.
““
Friday, 2 November 12
Powered by Stage3D
One set of platform agnostic GPU APIs
Target browser & mobile devices (iOS and Android)
Powered by Stage3DUse one set of platform agnostic GPU APIs to target the browser and mobile devices (iOS, Android)
just converted a small project to Starling+AIR and am getting solid 60fps... super impressive.
I'm quite impressed. Am doing a 3-month project using AIR + Starling and I'm totally looking forward to it thanks to this.
Yeah its an AIR game. Using stage3d you get pretty close to native nowadays.
Tuesday, October 9, 12
just converted a small project to Starling+AIR and am getting solid 60fps... super impressive.
Yeah its an AIR game. Using stage3d you get pretty close to native nowadays.
““
Friday, 2 November 12
Powered by Stage3D
//compile vertex shader var vertexShader:Array =
["dp4 op.x, va0, vc0", //4x4 matrix transform from 0 to output clipspace "dp4 op.y, va0, vc1","dp4 op.z, va0, vc2","dp4 op.w, va0, vc3","mov v0, va1.xyzw" //copy texcoord from 1 to fragment program
];var vertexAssembler:AGALMiniAssembler = new AGALMiniAssembler(); vertexAssembler.assemble(flash.display3D.Context3DProgramType.VERTEX, vertexShader.join("\n"));
//compile fragment shader var fragmentShader:Array =
["mov ft0, v0\n",
"tex ft1, ft0, fs1 <2d,clamp,linear>\n", //sample texture 1
"mov oc, ft1\n" ];
var fragmentAssembler:AGALMiniAssembler = new AGALMiniAssembler(); fragmentAssembler.assemble(flash.display3D.Context3DProgramType.FRAGMENT, fragmentShader.join("\n"));
_shaderProgram = _context3D.createProgram(); _shaderProgram.upload(vertexAssembler.agalcode, fragmentAssembler.agalcode);
_indexBuffer = _context3D.createIndexBuffer(6); _indexBuffer.uploadFromVector(Vector.<uint>([0, 1, 2, 0, 2, 3]), 0, 6);
var bitmap:Bitmap = new MolePeople();_texture = _context3D.createTexture(256, 256, Context3DTextureFormat.BGRA, false); _texture.uploadFromBitmapData(bitmap.bitmapData);
Friday, 2 November 12
Frameworks
Starling Framework
Box2D, NAPE
Away3D
Flare3D
Alternativa3D
and more...
Friday, 2 November 12
Starling Framework
Open Source
2D Games
GPU Accelerated
www.starling-framework.org
Friday, 2 November 12
Starling Framework
Open Source
2D Games
GPU Accelerated
Funded by Adobewww.starling-framework.org
Friday, 2 November 12
Starling Framework
//compile vertex shader var vertexShader:Array =
["dp4 op.x, va0, vc0", //4x4 matrix transform from 0 to output clipspace "dp4 op.y, va0, vc1","dp4 op.z, va0, vc2","dp4 op.w, va0, vc3","mov v0, va1.xyzw" //copy texcoord from 1 to fragment program
];var vertexAssembler:AGALMiniAssembler = new AGALMiniAssembler(); vertexAssembler.assemble(flash.display3D.Context3DProgramType.VERTEX, vertexShader.join("\n"));
//compile fragment shader var fragmentShader:Array =
["mov ft0, v0\n",
"tex ft1, ft0, fs1 <2d,clamp,linear>\n", //sample texture 1
"mov oc, ft1\n" ];
var fragmentAssembler:AGALMiniAssembler = new AGALMiniAssembler(); fragmentAssembler.assemble(flash.display3D.Context3DProgramType.FRAGMENT, fragmentShader.join("\n"));
_shaderProgram = _context3D.createProgram(); _shaderProgram.upload(vertexAssembler.agalcode, fragmentAssembler.agalcode);
_indexBuffer = _context3D.createIndexBuffer(6); _indexBuffer.uploadFromVector(Vector.<uint>([0, 1, 2, 0, 2, 3]), 0, 6);
var bitmap:Bitmap = new MolePeople();_texture = _context3D.createTexture(256, 256, Context3DTextureFormat.BGRA, false); _texture.uploadFromBitmapData(bitmap.bitmapData);
..........
Friday, 2 November 12
Starling Framework
//compile vertex shader var vertexShader:Array =
["dp4 op.x, va0, vc0", //4x4 matrix transform from 0 to output clipspace "dp4 op.y, va0, vc1","dp4 op.z, va0, vc2","dp4 op.w, va0, vc3","mov v0, va1.xyzw" //copy texcoord from 1 to fragment program
];var vertexAssembler:AGALMiniAssembler = new AGALMiniAssembler(); vertexAssembler.assemble(flash.display3D.Context3DProgramType.VERTEX, vertexShader.join("\n"));
//compile fragment shader var fragmentShader:Array =
["mov ft0, v0\n",
"tex ft1, ft0, fs1 <2d,clamp,linear>\n", //sample texture 1
"mov oc, ft1\n" ];
var fragmentAssembler:AGALMiniAssembler = new AGALMiniAssembler(); fragmentAssembler.assemble(flash.display3D.Context3DProgramType.FRAGMENT, fragmentShader.join("\n"));
_shaderProgram = _context3D.createProgram(); _shaderProgram.upload(vertexAssembler.agalcode, fragmentAssembler.agalcode);
_indexBuffer = _context3D.createIndexBuffer(6); _indexBuffer.uploadFromVector(Vector.<uint>([0, 1, 2, 0, 2, 3]), 0, 6);
var bitmap:Bitmap = new MolePeople();_texture = _context3D.createTexture(256, 256, Context3DTextureFormat.BGRA, false); _texture.uploadFromBitmapData(bitmap.bitmapData);
..........
var bird:Sprite = new Sprite();bird.x = 200;bird.y = 200;
hero.addEventListener(TouchEvent.TOUCH, onTouch); addChild(bird);
Friday, 2 November 12
Delta Strike: “Fleet”
Away3DAway3DLightweight open-source 3D framework. Huge community contributing. Funded by Adobe.
away3d.com
Tuesday, October 9, 12
Friday, 2 November 12
Delta Strike: “Fleet”
Away3D
Light Weight
Away3DLightweight open-source 3D framework. Huge community contributing. Funded by Adobe.
away3d.com
Tuesday, October 9, 12
Friday, 2 November 12
Delta Strike: “Fleet”
Away3D
Light Weight
Open Source
Away3DLightweight open-source 3D framework. Huge community contributing. Funded by Adobe.
away3d.com
Tuesday, October 9, 12
Friday, 2 November 12
Delta Strike: “Fleet”
Away3D
Light Weight
Open Source
Funded by Adobe
Away3DLightweight open-source 3D framework. Huge community contributing. Funded by Adobe.
away3d.com
Tuesday, October 9, 12
Friday, 2 November 12
Delta Strike: “Fleet”
Away3D
Light Weight
Open Source
Funded by Adobe
away3d.com
Away3DLightweight open-source 3D framework. Huge community contributing. Funded by Adobe.
away3d.com
Tuesday, October 9, 12
Friday, 2 November 12
FeathersFeathersCreate 2D UI on the GPU with Feathers. A lightweight open-source 2D UI component extension for Starling.
feathersui.com
Tuesday, October 9, 12Friday, 2 November 12
Feathers
Light Weight
FeathersCreate 2D UI on the GPU with Feathers. A lightweight open-source 2D UI component extension for Starling.
feathersui.com
Tuesday, October 9, 12Friday, 2 November 12
Feathers
Light Weight
Open Source
FeathersCreate 2D UI on the GPU with Feathers. A lightweight open-source 2D UI component extension for Starling.
feathersui.com
Tuesday, October 9, 12Friday, 2 November 12
Feathers
Light Weight
Open Source
Built on Starling
FeathersCreate 2D UI on the GPU with Feathers. A lightweight open-source 2D UI component extension for Starling.
feathersui.com
Tuesday, October 9, 12Friday, 2 November 12
Feathers
Light Weight
Open Source
Built on Starling
www.feathersui.com
FeathersCreate 2D UI on the GPU with Feathers. A lightweight open-source 2D UI component extension for Starling.
feathersui.com
Tuesday, October 9, 12Friday, 2 November 12
The Stack
The stack2 of these frameworks are funded and supported by Adobe (Starling and Away3D)
By funding these, we also want to make sure they integrate between each other beautifully.
Away3D (3D) Starling (2D)
Open-source, free and vibrant community
Feathers (2D)
Integration
Tuesday, October 9, 12Friday, 2 November 12
The Stack
2 Funded(Staling & Away3D)
The stack2 of these frameworks are funded and supported by Adobe (Starling and Away3D)
By funding these, we also want to make sure they integrate between each other beautifully.
Away3D (3D) Starling (2D)
Open-source, free and vibrant community
Feathers (2D)
Integration
Tuesday, October 9, 12Friday, 2 November 12
The Stack
2 Funded(Staling & Away3D)
Well integrated
The stack2 of these frameworks are funded and supported by Adobe (Starling and Away3D)
By funding these, we also want to make sure they integrate between each other beautifully.
Away3D (3D) Starling (2D)
Open-source, free and vibrant community
Feathers (2D)
Integration
Tuesday, October 9, 12Friday, 2 November 12
The Stack
OpenGL, OpenGL ES 2.0, Direct3D
GPU
Stage3D
Starling Away3D
Feathers(Button, List, ProgressBar, CheckBox, etc.)
Friday, 2 November 12
Profiling
Project “Monocle”Revolutionize the way you pro!le Flash content across desktop and mobile devices.
Monocle exposes granular information never exposed before to Flash developers.
Tuesday, October 9, 12Friday, 2 November 12
Profiling
Project “Monocle”
Project “Monocle”Revolutionize the way you pro!le Flash content across desktop and mobile devices.
Monocle exposes granular information never exposed before to Flash developers.
Tuesday, October 9, 12Friday, 2 November 12
Profiling
Project “Monocle”
Extreme Profiling
Project “Monocle”Revolutionize the way you pro!le Flash content across desktop and mobile devices.
Monocle exposes granular information never exposed before to Flash developers.
Tuesday, October 9, 12Friday, 2 November 12
Extensible (ANE)
Extensible (ANE)Extend the AIR runtime by using native code in your applications.
Interact easily with native APIs (Game Center, iAd, In-App payment, etc.)
Tuesday, October 9, 12
Friday, 2 November 12
Extensible (ANE)
Extensible (ANE)Extend the AIR runtime by using native code in your applications.
Interact easily with native APIs (Game Center, iAd, In-App payment, etc.)
Tuesday, October 9, 12
Friday, 2 November 12
Runtimes
Flash Player 11.4
AIR 3.4
Stage3D
Support for more hardware-accelerated video cards
Friday, 2 November 12
Runtimes
Flash Player 11.4
AIR 3.4
Stage3D
Support for more hardware-accelerated video cards
Compressed texture with alpha support
Friday, 2 November 12
Runtimes
Flash Player 11.4
AIR 3.4
Stage3D
Support for more hardware-accelerated video cards
Compressed texture with alpha support
ActionScript Native Extensions
Friday, 2 November 12
Runtimes
Flash Player 11.4
AIR 3.4
Stage3D
Support for more hardware-accelerated video cards
Compressed texture with alpha support
ActionScript Native Extensions
AIR Direct Deployment
Friday, 2 November 12