Your SlideShare is downloading. ×
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
CEDEC2012 Starling開発
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

CEDEC2012 Starling開発

1,304

Published on

Flashを使ったPC、Android、iOS向けにハードウェアアクセラレーション対応の2Dゲーム開発

Flashを使ったPC、Android、iOS向けにハードウェアアクセラレーション対応の2Dゲーム開発

Published in: Technology, Business
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,304
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
18
Comments
0
Likes
5
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Flashを使った PC、Android、iOS 向けに GPU アクセラレーション対応の 2Dゲーム開発 Andy Hall Adobe Japan© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 2. Andy Hall アンディ ホール Game Evangelist ゲームエバンジェリスト Adobe Japan アドビ システムズ 株式会社 @fenomas© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 3. Agenda 1. Flash、ゲームの背景的な話 2. Stage3D、AGALについて 3. Starlingについて 4. 開発に飛び込もう© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 4. Flash and Games© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 5. Why Flash? • パフォーマンス • ツール • リーチ© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 6. Why Flash? • パフォーマンス • ツール サイレント 自動アップデート • リーチ ユーザ数: 4億人 (!!!)© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 7. Why Flash? • パフォーマンス • ツール サイレント 自動アップデート • リーチ ユーザ数: 4億人 (!!!) 400M Wii PS3 Xbox 360 95.56M 63.9M 67.2M© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. sales numbers as of April-June 2012. Source: Wikipedia
  • 8. 採用状況 9 of 10 top Angry Birds Friends Ruby Blast Facebook games (Rovio) (Zynga)© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 9. About Flash • Flash is: • 柔軟で応用が利く • クロスプラットフォーム • モバイルに最適(Android、iOS 他) • Flash isn’t: • 「ドラッグ・ドロップでゲーム!」 • 完全ネイティブパフォーマンス© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 10. Why the GPU? Tablets, mobiles, retina displays. Pushing pixels through software isn’t an option.© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 11. Stage3D Vector 3D Video Display List© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 12. Stage3D Flash コンテンツ (ActionScript) シェーダー Stage3D (AGAL) パイプライン OpenGL or DirectX GPU© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 13. AGALとは m44 op, va0, vc0 dp4 op.x, va0, vc0 dp4 op.y, va0, vc1 dp4 op.z, va0, vc2 dp4 op.w, va0, vc3 m44 op, va0, vc0 mov v0, va1 (ヒトリデハキケンジャ!)© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 14. Starlingの場合 import starling.display.Sprite; var hero:Sprite = new Sprite(); hero.x = 200; hero.y = 200; addChild(hero); (コレヲ サズケヨウ! )© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 15. Stage3D ライブラリー • オフィシャルライブラリー (free, open source): • Starling (2D) • Away3D • ニーズによって他にも様々… N2D2 Genome2D© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 16. Starling Flash Player Display List API (AS3) Sparrow フレームワーク (ObjC) Starling (AS3)© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 17. Starling + Stage3D Flash コンテンツ (ActionScript) Starling Stage3D (AGAL) OpenGL or DirectX GPU© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 18. Starlingが送ること • Starling gives you: • 生産性 • 親しみのある習得の早いAPI • 拡張性 • 活発的なコミュニティー • Starling doesn’t give you: • GPUは何ぞよ、と気にしなくて良いほど の安全性 • GPUには優しく!© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 19. コードを見せろってば!© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 20. Starling core API starling.events.EventDispatcher starling.display.* DisplayObject DisplayObjectContainer Quad Image Button Stage Sprite TextField MovieClip© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 21. Starling core API starling.events.EventDispatcher starling.display.* DisplayObject DisplayObjectContainer Quad Image Button Stage Sprite TextField MovieClip© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 22. • Just vertices with a color but no texture • Color interpolated on the GPU Quad • Simple primitive Example : q = new Quad(200, 200); q.setVertexColor(0, 0x000000); q.setVertexColor(1, 0xAA0000); q.setVertexColor(2, 0x00FF00); q.setVertexColor(3, 0x0000FF); addChild (q); Solid color : q.color = 0x00FF00;© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 23. • Image is textured quad (extends Quad) • Textures should be uploaded and pooled, Image rather than created when needed • State tracking (setTexture – expensive) • Compressed textures Example : // create a texture, then an image var myBitmap:Bitmap = new MyBitmapClass(); var texture:Texture = Texture.fromBitmap(myBitmap); var image:Image = new Image ( texture ); addChild ( image ); Tint : image.color = 0xFF0000;© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 24. • The lightest container available (just like with standard Flash display list) Sprite • Can be flattened, to display a complex tree quickly • However, all children’s textures need to be in the same texture (or atlas) to see really great performance Example : // freeze the children container.flatten(); // assign changes to a child container.child.scaleX = .5; // refresh container.flatten(); // or unflatten();© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 25. Sprite, with a timeline MovieClip • • A different texture on each frame • Is not a container. • Does not support scripts on frames. • Completely controllable (custom fps, addFrame, etc). Example : // retrieve frames from a Flash MC var frames:Vector.<Texture> = sTextureAtlas.getTextures("running_"); // creates a MovieClip playing at 40fps mMovie = new MovieClip(frames, 40);© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 26. TextureAtlas • Packaged sets of sprite sheets • To optimize, make sure GPU calls each use one Atlas Example : // get all textures with a common prefix myTextureAtlas.getTextures(“fly_”);© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 27. ではコードを書いてみよう。© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 28. 拡張の例 Particle Editor http://onebyonedesign.com/flash/particleeditor/© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 29. Starlingの最適化 • Flatten containers if their contents won’t change: container.flatten(); • Prevent unnecessary touch event handling: container.touchable = false; • Use object pools: s = pool.getSprite(); pool.returnSprite(s);© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 30. 今後のトピック Adobe Texture Format (ATF) • A compressed texture format created specially for Stage3D • The player understand ATF natively, which brings performance benefits Tools and libraries are coming.© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 31. ご清聴ありがとうございました。 andhall@adobe.com @fenomas© 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 32. © 2012 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

×