Book Image

OpenGL ES 3.0 Cookbook

By : Parminder Singh
Book Image

OpenGL ES 3.0 Cookbook

By: Parminder Singh

Overview of this book

<p>"Write once, use anywhere" is truly the power behind OpenGL ES and has made it an embedded industry standard. The library provides cutting-edge, easy-to-use features to build a wide range of applications in the gaming, simulation, augmented-reality, image-processing, and geospatial domains.</p> <p>The book starts by providing you with all the necessary OpenGL ES 3.0 setup guidelines on iOS and Android platforms. You'll go on to master the fundamentals of modern 3D graphics, such as drawing APIs, transformations, buffer objects, the model-view-project analogy, and much more. The book goes on to deal with advanced topics and offers a wide range of recipes on the light shading, real-time rendering techniques with static and procedure textures to create stunning visualizations and runtime effects.</p>
Table of Contents (21 chapters)
OpenGL ES 3.0 Cookbook
Credits
About the Author
Acknowledgments
About the Reviewers
www.PacktPub.com
Preface
Index

Rendering different languages with Harfbuzz


The FreeType library performs the rasterization operation in which each character is associated with a glyph index; this glyph index maps to the bitmap image. This information is more or less sufficient for simple scripts like English, which does not change its shape with the context. For example, based on the context, Arabic language has four different types of shape forms, where a character may change its shape depending on the own location or surrounding characters. With Unicode, there was a need for different languages to allow them to create complex transformations of glyphs, such as substitution, positioning, bi-directional text, context-sensitive shaping, and ligatures. Therefore, we need some special library that understands the context of the language and does the job of shaping for us; this is where Harfbuzz comes into the picture.

Harfbuzz is a text shaping engine that manages complex text; it performs the shaping job on the given Unicode...