Getting Started with iOS Development Part6:iOS Scripting iOS Hardware Guide

iOS Hardware Guide

Hardware models

Following table summarizes iOS hardware available in devices of various generations:

 

Common to all iOS devices

  • Screen: 320x480 pixels, LCD at 163ppi (unless stated otherwise)
  • Built-in accelerometer
  • Wi-Fi

Original iPhone

  • ARM11, 412 Mhz CPU
  • PowerVR MBX Lite 3D graphics processor
  • 128MB of memory
  • 2 megapixel camera
  • Speaker and microphone
  • Vibration support
  • Silent switch
 

iPhone 3G

  • ARM11, 412 Mhz CPU
  • PowerVR MBX Lite 3D graphics processor
  • 128MB of memory
  • 2 megapixel camera
  • Speaker and microphone
  • Vibration support
  • Silent switch
  • GPS support
 

iPhone 3GS

  • ARM Cortex A8, 600 MHz CPU
  • PowerVR SGX graphics processor
  • 256MB of memory
  • 3 megapixel camera with video capture capability
  • Speaker and microphone
  • Vibration support
  • Silent switch
  • GPS support
  • Compass support
 

iPhone 4

  • ARM Cortex-A8 Apple A4 CPU
  • ARM Cortex-A8 Apple A4 graphics processor
  • 512MB of memory
  • Cameras
    • Rear 5.0 MP backside illuminated CMOS image sensor with 720p HD video at 30 fps and LED flash
    • Front 0.3 MP (VGA) with geotagging, tap to focus, and 480p SD video at 30 fps
  • Screen: 960x640 pixels, LCD at 326 ppi, 800:1 contrast ratio.
  • Speaker and microphone
  • Vibration Support
  • Silent switch
  • GPS support
  • Compass Support

iPod Touch 1st generation

  • ARM11, 412 Mhz CPU
  • PowerVR MBX Lite 3D graphics processor
  • 128MB of memory
 

iPod Touch 2nd generation

  • ARM11, 533 Mhz CPU
  • PowerVR MBX Lite 3D graphics processor
  • 128MB of memory
  • Speaker and microphone
 

iPad

  • 1 GHz Apple A4 CPU
  • Wifi + Blueooth + (3G Cellular HSDPA, 2G cellular EDGE on the 3G version)
  • Accelerometer, ambient light sensor, magnetometer (for digital compass)
  • Mechanical keys: Home, sleep, screen rotation lock, volume.
  • Screen: 1024x768 pixels, LCD at 132 ppi, LED-backlit.

Graphics Processing Unit and Hidden Surface Removal

The iPhone/iPad graphics processing unit (GPU) is a Tile-Based Deferred Renderer. In contrast with most GPUs in desktop computers, the iPhone/iPad GPU focuses on minimizing the processing required to render an image as early in the processing of a scene as possible, so that only the pixels that actually will be seen consume processing resources.

The GPU's frame buffer is divided up into tiles and rendering happens tile by tile. First, triangles for the whole frame are gathered and assigned to the tiles. Next, visible fragments of each triangle are chosen. Finally, the selected triangle fragments are passed to rasterizer (triangle fragments occluded from the camera are rejected at this stage).

In other words iPhone/iPad GPU implements Hidden Surface Removal operation at reduced cost. Such architecture consumes less memory bandwidth, has lower power consumption, and utilizes texture cache better. Tile-Based Deferred Rendering allows the device to reject occluded fragments before actual rasterization which is effective to keep overdraw low.

For more information see also:

  • POWERVR MBX Technology Overview
  • Apple Notes on iPhone/iPad GPU and OpenGL ES
  • Apple Performance Advices for OpenGL ES in General
  • Apple Performance Advices for OpenGL ES Shaders

SGX series

Starting from iPhone 3GS and newer devices are equipped with SGX series of GPUs. SGX series features support for OpenGL ES2.0 rendering API, vertex and pixel shaders. Fixed-function pipeline is not supported natively on such GPUs, instead it is emulated by generating vertex and pixel shaders with analogous functionality on the fly.

SGX series fully supports MultiSample anti-aliasing.

 

MBX series

Older devices such as iPhone, iPhone 3G, iPod Touch 1st and 2nd Generation are equipped with MBX series of GPUs. MBX series supports only OpenGL ES1.1, fixed function Transform&Lighting pipeline and 2 textures per fragment.

 

Texture Compression

The only texture compression format supported by iOS is PVRTC. PVRTC provides support for RGB and RGBA (color information + alpha channel) texture formats and can compress single pixel to 4 or 2 bits.

PVRTC format is essential to save memory footprint and to reduce consumption of memory bandwidth (rate at which data can be read from memory, usually very limited on Mobile devices).

 

Vertex Processing Unit

The iPhone/iPad has a dedicated unit responsible for vertex processing. It runs calculations in parallel with rasterization. In order to achieve better parallelization, the iPhone/iPad processes vertices one frame ahead of the rasterizer.

Unified Memory Architecture

Both CPU and GPU on the iPhone/iPad share the same memory. The advantage is that you don't need to worry about running out of video memory for your textures (unless, of course, you run out of main memory too). The disadvantage is that you share same memory bandwidth for gameplay and graphics. The more memory bandwidth you dedicate to graphics, less you will have for gameplay and physics.

 

Multimedia CoProcessing Unit

The iPhone/iPad main CPU is equipped with a powerful SIMD (Single Instruction, Multiple Data) coprocessor either supporting VFP or NEON architectures. The Unity iOS run-time takes advantage of these units for multiple tasks such as calculating skinned mesh transformations, geometry batching, audio processing and other calculation-intensive operations.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值