3d games

Android Everywhere - GDC 2012 Presentation

At GDC 2012, I will be presenting with Ian Ni-Lewis (from Google) on best practices for writing cross-platform native Android games. This presentation will discuss some lesson we have learned creating native Android apps that run on the widest range of hardware possible.

Since I work at Intel, I'll obviously be discussing some experiences porting ARM apps to x86 :)
Session Description

Building a highly scalable 3D particle system

Particle systems are an ideal candidate for multi-threading in games. Most games have particle systems and their general nature of independent entities lends well to parallelism. However, a naïve approach won’t load balance well on modern architectures. There are two complementary approaches, task-based threading and SSE, which are ideally suited for particle systems and will obtain maximum performance from multi-core processors.

Task-based threading

GPA 2.1 Feature Highlight: Configurable X and Y Axes in the Bar Chart

In 2.1, GPA allows you to configure both the X and Y axis to any available metric within the bar chart. This allows you to visually see the relationship between multiple per-draw call metrics at the same time. For example, you can select vertex shader duration in the X-axis and pixel shader duration in the Y-axis.

After configuring the bar chart this way, the wider the bar is - the more vertex shader heavy it is, the taller, the more pixel shader heavy it is.

See the screenshots below for a view of this feature in action...

GPA 2.1 Feature Highlight: Buffer Histograms

GPA 2.1 includes a feature to allow you to better view render targets and textures. Let's say you have a texture with a very narrow dynamic range, all values in the texture are nearly white. When you select this texture to view, by default - it looks white The GPA histogram feature allows you not only to see where the data falls in any buffer, but also to increase the dynamic range of the buffer for viewing purposes.

订阅 3d games