OpenGL ES 3.0 cookbook : over 90 ready-to-serve, real-time rendering recipes on Android and iOS platforms using OpenGL ES 3.0 and GL shading language 3.0 to solve day-to-day modern 3D graphics challenges
معرفی کتاب «OpenGL ES 3.0 cookbook : over 90 ready-to-serve, real-time rendering recipes on Android and iOS platforms using OpenGL ES 3.0 and GL shading language 3.0 to solve day-to-day modern 3D graphics challenges» نوشتهٔ Parminder Singh; TotalBoox,; TBX، منتشرشده توسط نشر Packt Publishing - ebooks Account در سال 2015. این کتاب در 5 صفحه، فرمت pdf، زبان انگلیسی ارائه شده است.
Over 90 ready-to-serve, real-time rendering recipes on Android and iOS platforms using OpenGL ES 3.0 and GL shading language 3.0 to solve day-to-day modern 3D graphics challenges About This Book Explore exciting new features of OpenGL ES 3.0 on textures, geometry, shaders, buffer objects, frame buffers and a lot more using GLSL 3.0 Master intermediate and advance cutting edge rendering techniques, including procedural shading, screen space technique and shadows with scene graphs A practical approach to build the font engine with multilingual support and learn exciting imaging processing and post process techniques Who This Book Is For If you are new to OpenGL ES or have some experience in 3D graphics, then this book will be extremely helpful in raising your expertise level from a novice to professional. The book implements more than 90 recipes to solve everyday challenges, helping you transition from a beginner to a professional. What You Will Learn Learn the essentials and exciting new features of OpenGL ES 3.0 Discover the physics behind fundaments of light and material concepts with easy-to-follow examples Scratch the fragments with procedural shaders and learn how they work Master the basics of texturing, use compressed textures, and learn numerous mapping techniques Manage complex scenes with scene graphs and learn post-processing and image-processing techniques Build your font engine with multilingual support Master the working of recognized anti-aliasing techniques and implement FXAA and adaptive anti-aliasing In Detail "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. 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. Cover 1 Copyright 3 Credits 4 About the Author 5 Acknowledgments 6 About the Reviewers 7 www.PacktPub.com 9 Table of Contents 10 Preface 14 Chapter 1: OpenGL ES 3.0 in Android/iOS 20 Introduction 20 Programming shaders in Open GL ES shading language 3.0 23 Loading and compiling a shader program 27 Linking a shader program 33 Checking errors in OpenGL ES 3.0 36 Using the per-vertex attribute to send data to a shader 37 Using uniform variables to send data to a shader 41 Programming OpenGL ES 3.0 Hello World Triangle 43 Using JNI in Android to communicate with C/C++ 49 Developing an Android OpenGL ES 3.0 application 56 Developing an iOS OpenGL ES 3.0 application 60 Chapter 2: OpenGL ES 3.0 Essentials 66 Introduction 66 Building prototypes using the GLPI framework 67 Implementing touch events 76 Rendering primitives with vertex arrays 80 Drawing APIs in OpenGL ES 3.0 85 Efficient rendering with Vertex Buffer Object 90 Transformations with the model, view, and projection analogies 94 Understanding the projection system in GLPI 105 Culling in OpenGL ES 3.0 108 Depth testing in OpenGL ES 3.0 110 Chapter 3: New Features of OpenGL ES 3.0 114 Introduction 114 Managing variable attributes with qualifiers 118 Grouping uniforms and creating buffer objects 123 Managing VBO with Vertex Array Objects 128 Reading and writing buffer objects with mapping 130 Render multiple objects with geometry instancing 134 Rendering multiple primitives with primitive restart 141 Chapter 4: Working with Meshes 146 Introduction 146 Creating polygon meshes with Blender 147 Rendering the wavefront OBJ mesh model 152 Rendering the 3Ds mesh model 165 Chapter 5: Light and Materials 176 Introduction 176 Implementing the per-vertex ambient light component 181 Implementing the per-vertex diffuse light component 183 Implementing the per-vertex specular light component 188 Optimizing the specular light with the halfway vector 191 Gouraud shading – the per-vertex shading technique 193 Phong shading – the per-fragment shading technique 196 Implementing directional and point light 199 Implementing multiple lights in a scene 202 Implementing two-side shading 205 Chapter 6: Working with Shaders 208 Introduction 208 Implementing the wobble and ripple effect 211 Procedural texture shading with object coordinates 215 Creating a circular pattern and making them revolve 221 Generating a brick pattern 225 Generating the polka dot pattern 229 Discarding fragments 233 Procedural texture shading with texture coordinates 236 Chapter 7: Textures and Mapping Techniques 242 Introduction 242 Applying texture with UV mapping 243 Efficient rendering with the ETC2 compressed texture 256 Applying multiple textures 259 Implementing Skybox with seamless cube mapping 263 Implementing reflection and refraction with environment mapping 268 Implementing render to texture with Frame Buffer Objects 274 Implementing terrain with displacement mapping 281 Implementing bump mapping 289 Chapter 8: Font Rendering 298 Introduction 298 Font rendering with the FreeType project 299 Rendering different languages with Harfbuzz 318 Rendering text on Head Up Display 327 Chapter 9: Postscreen Processing and Image Effects 332 Introduction 332 Detecting scene edges with the Sobel operator 334 Making the scene blur with the Gaussian blur equation 340 Making a scene real-time glow with the bloom effect 347 Painting the scene like a cartoon shading 351 Generating an embossed scene 353 Implementing grayscale and CMYK conversions 356 Implementing fish eye with barrel distortion 360 Implementing the binocular view with procedural texturing 364 Twirling the image 366 Sphere illusion with textured quadrilateral 369 Chapter 10: Scene Management with Scene Graphs 372 Introduction 372 Implementing the first scene using a scene graph 375 Adding local and relative transformations 384 Adding parent-child support in the scene graph 389 Creating complex models with a transformation graph 395 Implementing picking with the ray trace technique 399 Implementing 2D textured button widgets 403 Navigating the scene with a camera system 410 Implementing a scene with multiple views 415 Chapter 11: Anti-aliasing Techniques 420 Introduction 420 Understanding the sampling rate technique 421 Understanding the post processing technique 423 Implementing fast approximate anti-aliasing 424 Implementing adaptive anti-aliasing 431 Implementing an antialiased circle geometry 435 Chapter 12: Real-time Shadows and Particle System 442 Introduction 442 Creating shadows with shadow mapping 443 Softening the shadow edges using PCF 452 Using variance shadow mapping 455 Simulating the particle system 459 Transform feedback particle system with sync objects and fences 470 Chapter 13: Supplementary Information on OpenGL ES 3.0 482 Fixed function and programmable pipeline architecture 482 Software requirements for OpenGL ES 3.0 – Android ADT 486 Developing the Hello World Triangle 491 application on Android Studio with OpenGL ES 3.0 491 Software requirements for OpenGL ES 3.0 - iOS 498 Opening a sample project in Android ADT and iOS 500 Application of the Lambert's cosine law 500 Calculating cosine between two vectors 501 Swizzling 502 Index 504
دانلود کتاب OpenGL ES 3.0 cookbook : over 90 ready-to-serve, real-time rendering recipes on Android and iOS platforms using OpenGL ES 3.0 and GL shading language 3.0 to solve day-to-day modern 3D graphics challenges
About This Book
- Create fast, testable, maintainable web APIs using the fully-featured framework in.NET
- Integrate ServiceStack to add speed and simplicity to your web applications
- Step-by-step recipes that focus on solving real-world problems using ServiceStack
Who This Book Is For
If you are a.NET developer who is looking for a simpler way to build services, this is the book for you. It will show you how to write fast, maintainable APIs that are a pleasure to use and maintain starting from the database to the client and everything in-between.