Optimizing 3D Graphics For Mobiles Mobiles Madan Kandula Director - - PowerPoint PPT Presentation

optimizing 3d graphics for mobiles mobiles
SMART_READER_LITE
LIVE PREVIEW

Optimizing 3D Graphics For Mobiles Mobiles Madan Kandula Director - - PowerPoint PPT Presentation

Optimizing 3D Graphics For Mobiles Mobiles Madan Kandula Director Introduction Cross-Platform games and apps using our engine PlayStation VITA, PlayStation 3 iOS (iPhone, iPad) Android Windows Core expertise is real time


slide-1
SLIDE 1

Optimizing 3D Graphics For Mobiles Mobiles

Madan Kandula Director

slide-2
SLIDE 2

Introduction

  • Cross-Platform games and apps using our engine

– PlayStation VITA, PlayStation 3 – iOS (iPhone, iPad) – Android – Windows

  • Core expertise is real time 3D graphics

– openGL + GLES2, DirectX

  • Provide custom graphic solutions to our clients
slide-3
SLIDE 3

3D Graphics

slide-4
SLIDE 4

Do I need 3D graphics ?

  • Of course YES !!
  • why ?

– GPU is very efficient in using power -> MORE BATTERY LIFE BATTERY LIFE – using the native 3D layer makes your app be extremely responsive – Competitive edge for your app !

slide-5
SLIDE 5

GPU Information

  • Mobiles use GPU’s which are usually tile based

deferred rendering

– screen is split into tiles – Each tile processed on a GPU core – Each tile processed on a GPU core

slide-6
SLIDE 6

Graphics Tips : Culling

slide-7
SLIDE 7

Level of Detail

slide-8
SLIDE 8

Batch Your Rendering

  • draw opaque objects first and then

transparent objects afterwards

– DO NOT MIX THEM for a tile based GPU

  • draw objects of the same shader material
  • draw objects of the same shader material

together

– otherwise too many context switch occurs – these take a lot of processing time – Difficult to detect unless capture/analysis tools are used

slide-9
SLIDE 9

Use hardware depth culling

  • Enable depth culling to avoid rendering of
  • bstructed objects

– glEnable (GL_DEPTH_TEST)

  • This culling takes place at pixel level after
  • This culling takes place at pixel level after

raster stage and is automatically taken care by hardware

slide-10
SLIDE 10

Finally..

  • Optimize your shader code

– Check cycle count

  • Check for glError after every context call
  • Try avoiding memory management
  • Try avoiding memory management

– Allocate once and reuse

  • Submit render calls from a single thread
slide-11
SLIDE 11

Thank YOU !!

  • References

– Check PowerVR SDK and samples

  • PowerVR Series 5.SGX Architecture Guide for

Developers.1.0.13.External

  • http://www.imgtec.com/downloads.asp

– Android NDK

  • http://developer.android.com/tools/sdk/ndk/index.html