the powervr insider sdk - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... ·...

28
The PowerVR Insider SDK PowerVR Developer Technology Nov 2012

Upload: others

Post on 10-Jun-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

The PowerVR Insider SDK PowerVR Developer Technology

Nov 2012

Page 2: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

First, An Introduction!

Page 3: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

Who Am I?

Who?

Guillem Vinals

Developer Technology Engineer, PowerVR Graphics

What?

An introduction to our PowerVR SDK 3.0

© 2012 Imagination Technologies Ltd. 3

Page 4: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

Who is Imagination?

Leading silicon, software & cloud IP supplier

Graphics/video, comms, processor, cloud technologies

Licensing and royalty business model

Licensed to many top 20 semis & OEMs

Servicing high volume, high growth markets

Shipped by most major consumer brands

Smartphones, tablets, low-power PC’s

TVs/STBs, games consoles, Connected/broadcast audio devices

Automotive dashboards, navigation

Strategic product division: Pure Digital radio, internet connected audio, home automation

IP business pathfinder, market maker/driver

Established technology powerhouse

Founded 1985; London FTSE250 (IMG.L)

Employees: 1,200+

UK HQ; operations world-wide

Global customer base

GPU

VPU

R

P

U

CPU

Page 5: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

5 © 2012 Imagination Technologies

The PowerVR Insider SDK Overview

Page 6: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

What is the PowerVR Insider SDK?

© 2012 Imagination Technologies Ltd. 6

Asset creation Developing Debugging and profiling

+ PVRTexTool

PVRGeoPOD

+ PVRShaderEditor

PVRShaman

PVRVFrame

+ PVRTrace

PVRTune

PVRScope

Enables rapid application development & analysis

Develop on Windows, Linux or Mac OS

Available for OpenGL ES 1.1, 2.0 & 3.0

It’s completely FREE!

Page 7: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

What is the PowerVR Insider SDK?

• Educational resource

• Covers a range of general graphics techniques, as well as PowerVR specific optimizations

• Step by step guide from the basics of computer graphics to advanced effects tailored for mobile devices

© 2012 Imagination Technologies Ltd. 7

Page 8: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

Utilities

Asset optimization

Page 9: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

© 2012 Imagination Technologies Ltd. 9

PVRGeoPOD

• What is POD? - POD is the PowerVR Object Data format

- Optimized deployment format for PowerVR hardware

• Provided as… - Plug-in (Blender, Maya and 3D Studio)

- Standalone GUI

- Standalone command-line

• Features - Triangle sorting

- Vertex sorting

- Data stripping

- PVRTools loading code provided

Page 10: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

PVRTexTool

• Texture compressor and converter

• Provided as… - Stand-alone GUI

- Command-line tool

- PVRTexLib

- Photoshop plugin

• Features - Support for all core file formats for

OpenGL ES 1.x, 2.0 & 3.0 as well as DirectX 9, 10, 11

- Support for a variety of optional file formats, but most importantly, PVRTC

© 2012 Imagination Technologies Ltd. 10

Page 11: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

© 2012 Imagination Technologies Ltd. 11

PVRTC Texture Compression

• What is PVRTC?

- High quality, high ratio texture compression format, designed for PowerVR hardware

- Two variations

- 4 bits per pixel (high quality, medium storage requirements) – 8x saving

- 2 bits per pixel (medium quality, low storage requirements) – 16x saving

- Both variations support alpha channels

PVRTC 2bpp DXT/S3TC 4bpp

PVRTC 4bpp Original 32bpp

Page 12: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

Utilities

Development

Page 13: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

Shader verification and profiling tool

• Provided as…

- Command-line tool

• Exposes GLSL ES shader profiling information. - Estimated per-line cycle count

- Emulated total cycle count

• Compiler provided for every family of PowerVR GPU.

© 2012 Imagination Technologies Ltd. 13

Page 14: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

PVRShaderEditor

• GUI interface for the PowerVR shader verification and profiling tool

• Provided as…

- Stand-alone GUI

• Features

- Powerful source code editor with syntax highlighting for GLSL, GLSL ES, HLSL and PFX (PowerVR effect) formats as well as Open CL kernels

- Profiling with overall and per line cycle counts for GLSL ES

© 2012 Imagination Technologies Ltd. 14

Page 15: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

PVRShaman

• Provided as… - Stand-alone GUI

• Features - Shader development environment.

- Integrated PVRShaderEditor & Profiler

- Works with POD scenes and can import Collada files

- Immediate scene visualisation

- Support for OpenGL and OpenGL ES graphics APIs.

© 2012 Imagination Technologies Ltd. 15

Page 16: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

PVRVFrame (PC Emulation)

• PowerVR OpenGL ES (1.1, 2.0 & 3.0) emulator

• Provided as… - Library

- Companion stand-alone GUI

• Features - Allows applications to be developed and

debugged without PowerVR hardware

- Supports all IMG extensions

- Includes hardware profiles to match the capabilities of specific cores and devices

- Passes conformance tests for OpenGL ES (1.1 & 2.0)

- Standalone GUI can display debugging output from GL

© 2012 Imagination Technologies Ltd. 16

Page 17: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

Utilities

Debug and profiling

Page 18: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

PVRTrace

• OpenGL ES (1.1, 2.0 and 3.0) API call tracing

• Provided as… - Stand-alone GUI

- Recorder libraries

- Linux installer application

- Android controller apk

• Features - Records GL calls, data and the

render state for any number of frames

- Playback frames, calls, and ranges of calls

- Profiling and analysis functionality

- Can record over the network if the recording libraries are set to do so

© 2012 Imagination Technologies Ltd. 18

Page 19: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

What is PVRScope? (and why should I use it )

• Provided as… - Static library

• Features - Provides hardware and software counters for

GPU monitoring in real-time

- Minimal impact in performance

© 2012 Imagination Technologies Ltd. 19

1. Save the data for off-line performance comparison - Script the performance analysis!

2. Graph the data in real time - Just copy/paste from our PVRScope

example

- Quickly identify performance spikes while in-game testing

3. Send data to custom profiling tools

4. Send custom data to PVRTune - Use custom counters, custom markers

and editable data

Page 20: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

PVRTune

• PowerVR performance analyser based on PVRScope

• Provided as… - Stand-alone GUI

- Per-platform PVRPerfServer application

• Features - Provides hardware and software counters for

GPU monitoring in real-time

- Minimal impact in performance

- So small its on by default in most drivers

- Uses a network connection to transfer information between host & client applications

- No special builds of application required to do performance analysis

- Can remotely edit data registered with PVRScope

- Can display custom marks and counters to enable analysis of custom data

© 2012 Imagination Technologies Ltd. 20

Page 21: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

Source Code

PVRTools and PVRShell

Page 22: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

© 2012 Imagination Technologies Ltd. 22

Source Code PVRShell

• Graphics-focused OS abstraction framework

• Allows application development without worrying about the platform complexities underneath

• Enables quick and easy application porting with a consistent implementation across each API and OS

• Supports all PowerVR platform configurations

Application OpenGL

OpenGL ES

PVRShell

Page 23: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

© 2012 Imagination Technologies Ltd. 23

Source Code PVRTools

• Tackles common functionality required during graphics development - Texture, model and shader runtimes

- Vector, matrix, and Quarternion maths

- 3D text display functions

- Extension retrieval

- Etc.

• Cross platform tools library - Entire commented source code provided

- Consistent implementation across each graphics API

Page 24: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

Examples Beginner/Intermediate/Advanced

• Step by step guide from the basics of computer graphics to advanced effects tailored for mobile devices

• PVRShell abstraction layer and PVRTools helper library used consistently across all the examples

• Same examples across all APIs (OpenGL ES 1.1, 2.0 and 3.0)

© 2012 Imagination Technologies Ltd. 24

Page 25: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

Documentation

• Wide range of documentation to support development - Architecture Guide

- Performance recommendations

- User Manuals

- Etc.

• Whitepapers for specific technologies & techniques - Water effects

- UI Render

- Etc.

© 2012 Imagination Technologies Ltd. 25

Page 26: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

Summary

• PowerVR Software Development Kit - Utilities, tools, tutorials, demos and documentation

- Designed to enable developers and customers to produce applications that make optimal usage of PowerVR hardware

- Develop on Windows, Mac OS and Linux

• Available for all PowerVR enabled platforms, for free!

• Modern GUI and fully featured applications

• Reflects the unique PowerVR architecture

© 2012 Imagination Technologies Ltd. 26

Page 27: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

Download it today!

• How to get it? - Register at www.powervrinsider.com

- Download the installer.

- Next, next, next…

- Done!

© 2012 Imagination Technologies Ltd. 27

Page 28: The PowerVR Insider SDK - eetrend.comimgtec.eetrend.com/sites/imgtec.eetrend.com/files/... · Enables rapid application development & analysis ... while in-game testing 3. Send data

Contact: [email protected]

The PowerVR Insider SDK PowerVR Developer Technology