2. Ziele / Agenda
• Konzepte / Vor- und Nachteile von RenderScript
• Entscheidung für den Einsatz von RS im nächsten Projekt
• Überblick RS -> APIs, Architektur, Tools
• RS Basics -> Datenstrukturen, Funktionen
• Berechnungen mit RS -> Beispiel / Performance
• OpenGL refresh
• Grafik mit RS -> Beispiel / Demo
• Grafik & Berechnungen kombinieren
• RS im Context von Canvas, NDK & co.
• Ausblick
3. RS -> The claim
„RenderScript offers a high performance 3D graphics
rendering and compute API at the native level“
Pros Cons
• Portabilität • Complexity
• Performance • Debugging / Tools
• Usability • less Features
http://developer.android.com/guide/topics/renderscript/index.html
4. RS Intro / Overview
• Neue Sprache (basierend auf C99 mit Erweiterungen)
• Neue APIs (im Java-SDK und in RenderScript)
• Tools
• RS in Android 2.1
9. RS Basics: Datastructures
• Element Repräsentiert eine Speicherstelle einer
Allocation, zum Beispiel uchar4
• Type Dimension(en) von Elementen
• Allocation Repräsentiert den allokierten Speicher
Elements und Types können auf SDK und RS level
definiert werden, Allocations nur auf SDK level
10. RS Basics: functions / Syntax
#pragma version(1)
#pragma rs java_package_name(de.inovex.mobi.rsdemos)
void init() Grafik -> Initialisierung
int root(int launchID) Grafik -> wird für jede Aktualisierung
des Screens aufgerufen
void root(...) Berechnungen -> Wird für jedes zu
berechnende Element aufgerufen
void rsForEach(...) Ruft root(..) für jedes zu
berechnende Element auf