logo资料库

Mastering Android NDK..pdf

第1页 / 共416页
第2页 / 共416页
第3页 / 共416页
第4页 / 共416页
第5页 / 共416页
第6页 / 共416页
第7页 / 共416页
第8页 / 共416页
资料共416页,剩余部分请下载后查看
Mastering Android NDK
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Using Command-line Tools
Using Android command-line tools on Windows
Using Android command-line tools on OS X
Using Android command-line tools on Linux
Creating an Ant-based application template manually
Creating a Gradle-based application template manually
Embedding native code
Building and signing release Android applications
Organizing the cross-platform code
Using TeamCity continuous integration server with Android applications
Summary
2. Native Libraries
Dealing with precompiled static libraries
Dynamic linking on Windows platform
Curl
OpenSSL
FreeImage
Loading and saving images
FreeType
Theora
OpenAL
Linking the libraries to your application
Summary
3. Networking
Intrusive smart pointers
Portable multithreading primitives
Task queues
Message pumps and asynchronous callbacks
Asynchronous networking with libcurl
Android licensing in native applications
Flurry analytics
Summary
4. Organizing a Virtual Filesystem
Mount points
Mount points and streams
Accessing files on the host filesystems
In-memory files
Aliasing
Writing files
Accessing the archive files
Accessing application assets
Summary
5. Cross-platform Audio Streaming
Initialization and playback
Streaming sounds
Stringed musical instrument model
Decoding compressed audio
Decoding tracker music using the ModPlug library
Decoding MP3 files
Decoding OGG files
Summary
6. OpenGL ES 3.1 and Cross-platform Rendering
Linear algebra and transformations
Graphics initialization using SDL2
OpenGL API binding
Cross-platform OpenGL abstractions
Feeding the geometry data to OpenGL
Shader programs
Textures
Summary
7. Cross-platform UI and Input System
Rendering
Text rendering
Calculating glyph positions and string size in pixels
Decoding UTF-8
Glyphs rendering
Font initialization and caching
Integrating the text renderer into the canvas
Organizing the UI system
The base UI view
Events
Implementing UI classes
Using views in application
Summary
8. Writing a Rendering Engine
The scene graph
Lighting and shading
Lights and light nodes
Material system
Demo application and a rendering technique
Scene construction
User interaction with 3D scenes
Summary
9. Implementing Game Logic
Boids
Implementation of the flocking algorithms
Digression: helper routines
Collective behaviors
Rendering the swarm
Boids demonstration
The page-based user interface
Summary
10. Writing Asteroids Game
Creating an on-screen joystick
Implementing the particle system
Using particle systems in the game
Using particle systems inside a scene graph
Asteroids game
Summary
Index
Mastering Android NDK
Table of Contents Mastering Android NDK Credits About the Authors About the Reviewers www.PacktPub.com Support files, eBooks, discount offers, and more Why subscribe? Free access for Packt account holders Preface What this book covers What you need for this book Who this book is for Conventions Reader feedback Customer support Downloading the example code Errata Piracy Questions 1. Using Command-line Tools Using Android command-line tools on Windows Using Android command-line tools on OS X Using Android command-line tools on Linux Creating an Ant-based application template manually Creating a Gradle-based application template manually Embedding native code Building and signing release Android applications Organizing the cross-platform code Using TeamCity continuous integration server with Android applications
Summary 2. Native Libraries Dealing with precompiled static libraries Dynamic linking on Windows platform Curl OpenSSL FreeImage Loading and saving images FreeType Theora OpenAL Linking the libraries to your application Summary 3. Networking Intrusive smart pointers Portable multithreading primitives Task queues Message pumps and asynchronous callbacks Asynchronous networking with libcurl Android licensing in native applications Flurry analytics Summary 4. Organizing a Virtual Filesystem Mount points Mount points and streams Accessing files on the host filesystems In-memory files Aliasing Writing files Accessing the archive files Accessing application assets
Summary 5. Cross-platform Audio Streaming Initialization and playback Streaming sounds Stringed musical instrument model Decoding compressed audio Decoding tracker music using the ModPlug library Decoding MP3 files Decoding OGG files Summary 6. OpenGL ES 3.1 and Cross-platform Rendering Linear algebra and transformations Graphics initialization using SDL2 OpenGL API binding Cross-platform OpenGL abstractions Feeding the geometry data to OpenGL Shader programs Textures Summary 7. Cross-platform UI and Input System Rendering Text rendering Calculating glyph positions and string size in pixels Decoding UTF-8 Glyphs rendering Font initialization and caching Integrating the text renderer into the canvas Organizing the UI system The base UI view Events Implementing UI classes
Using views in application Summary 8. Writing a Rendering Engine The scene graph Lighting and shading Lights and light nodes Material system Demo application and a rendering technique Scene construction User interaction with 3D scenes Summary 9. Implementing Game Logic Boids Implementation of the flocking algorithms Digression: helper routines Collective behaviors Rendering the swarm Boids demonstration The page-based user interface Summary 10. Writing Asteroids Game Creating an on-screen joystick Implementing the particle system Using particle systems in the game Using particle systems inside a scene graph Asteroids game Summary Index
分享到:
收藏