<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Articles on Learn OpenGL ES</title><link>https://www.learnopengles.com/category/articles/</link><description>Recent content in Articles on Learn OpenGL ES</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Thu, 03 Sep 2026 18:13:44 +0000</lastBuildDate><atom:link href="https://www.learnopengles.com/category/articles/index.xml" rel="self" type="application/rss+xml"/><item><title>How Powerful Is Your Nexus 7?</title><link>https://www.learnopengles.com/how-powerful-is-your-nexus-7/</link><pubDate>Thu, 03 Apr 2014 18:09:46 +0000</pubDate><guid>https://www.learnopengles.com/how-powerful-is-your-nexus-7/</guid><description>The following post is based on a paper generously contributed by Jerome Huck, a senior aerospace/defence engineer, scientist, and author. A link to figures and the code can be found at the bottom of this post. So you want to run some heavy-duty algorithms on your Android device, and you’re wondering what is the best environment …</description></item><item><title>Finishing Up Our Native Air Hockey Project With Touch Events and Basic Collision Detection</title><link>https://www.learnopengles.com/finishing-up-our-native-air-hockey-project-with-touch-events-and-basic-collision-detection/</link><pubDate>Fri, 08 Nov 2013 14:51:43 +0000</pubDate><guid>https://www.learnopengles.com/finishing-up-our-native-air-hockey-project-with-touch-events-and-basic-collision-detection/</guid><description>In this post in the air hockey series, we’re going to wrap up our air hockey project and add touch event handling and basic collision detection with support for Android, iOS, and emscripten. Prerequisites This lesson continues the air hockey project series, building upon the code from GitHub for ‘article-3-matrices-and-objects’. Here are the previous posts in this series: …</description></item><item><title>Adding a 3d Perspective and Object Rendering to Our Air Hockey Project in Native C Code</title><link>https://www.learnopengles.com/adding-a-3d-perspective-and-object-rendering-to-our-air-hockey-project-in-native-c-code/</link><pubDate>Wed, 18 Sep 2013 11:45:27 +0000</pubDate><guid>https://www.learnopengles.com/adding-a-3d-perspective-and-object-rendering-to-our-air-hockey-project-in-native-c-code/</guid><description>For this post in the air hockey series, we’ll learn how to render our scene from a 3D perspective, as well as how to add a puck and two mallets to the scene. We’ll also see how easy it is to bring these changes to Android, iOS, and emscripten. Prerequisites This lesson continues the air …</description></item><item><title>Loading a PNG into Memory and Displaying It as a Texture with OpenGL ES 2: Adding Support for Emscripten</title><link>https://www.learnopengles.com/loading-a-png-into-memory-and-displaying-it-as-a-texture-with-opengl-es-2-adding-support-for-emscripten/</link><pubDate>Thu, 25 Jul 2013 00:45:49 +0000</pubDate><guid>https://www.learnopengles.com/loading-a-png-into-memory-and-displaying-it-as-a-texture-with-opengl-es-2-adding-support-for-emscripten/</guid><description>In the last two posts in this series, we added support for loading a PNG file into OpenGL as a texture, and then we displayed that texture on the screen: Loading a PNG into Memory and Displaying It as a Texture with OpenGL ES 2, Using (Almost) the Same Code on iOS, Android, and Emscripten. …</description></item><item><title>Loading a PNG into Memory and Displaying It as a Texture with OpenGL ES 2: Adding Support for iOS</title><link>https://www.learnopengles.com/loading-a-png-into-memory-and-displaying-it-as-a-texture-with-opengl-es-2-adding-support-for-ios/</link><pubDate>Wed, 24 Jul 2013 16:12:24 +0000</pubDate><guid>https://www.learnopengles.com/loading-a-png-into-memory-and-displaying-it-as-a-texture-with-opengl-es-2-adding-support-for-ios/</guid><description>In the previous post, we looked at loading in texture data from a PNG file and uploading it to an OpenGL texture, and then displaying that on the screen in Android. To do that, we used libpng and loaded in the data from our platform-independent C code. In this post, we’ll add supporting files to …</description></item><item><title>Loading a PNG into Memory and Displaying It as a Texture with OpenGL ES 2, Using (Almost) the Same Code on iOS, Android, and Emscripten</title><link>https://www.learnopengles.com/loading-a-png-into-memory-and-displaying-it-as-a-texture-with-opengl-es-2-using-almost-the-same-code-on-ios-android-and-emscripten/</link><pubDate>Tue, 23 Jul 2013 18:41:58 +0000</pubDate><guid>https://www.learnopengles.com/loading-a-png-into-memory-and-displaying-it-as-a-texture-with-opengl-es-2-using-almost-the-same-code-on-ios-android-and-emscripten/</guid><description>In the last post in this series, we setup a system to render OpenGL to Android, iOS and the web via WebGL and emscripten. In this post, we’ll expand on that work and add support for PNG loading, shaders, and VBOs. TL;DR We can put most of our common code into a core folder, and …</description></item><item><title>Calling OpenGL from C on the Web by Using Emscripten, Sharing Common Code with Android and iOS</title><link>https://www.learnopengles.com/calling-opengl-from-c-on-the-web-by-using-emscripten-sharing-common-code-with-android-and-ios/</link><pubDate>Mon, 15 Jul 2013 02:05:25 +0000</pubDate><guid>https://www.learnopengles.com/calling-opengl-from-c-on-the-web-by-using-emscripten-sharing-common-code-with-android-and-ios/</guid><description>In the last two posts, we started building up a simple system to reuse a common set of C code in Android and iOS: OpenGL from C on Android by using the NDK Calling OpenGL from C on iOS, Sharing Common Code with Android In this post, we’ll also add support for emscripten, an LLVM-to-JavaScript compiler …</description></item><item><title>Calling OpenGL from C on iOS, Sharing Common Code with Android</title><link>https://www.learnopengles.com/calling-opengl-from-c-on-ios-sharing-common-code-with-android/</link><pubDate>Sun, 14 Jul 2013 00:21:48 +0000</pubDate><guid>https://www.learnopengles.com/calling-opengl-from-c-on-ios-sharing-common-code-with-android/</guid><description>In the last post, we covered how to call OpenGL from C on Android by using the NDK; in this post, we’ll call into the same common code from an Objective-C codebase which will run on an iOS device. Prerequisites A Mac with a suitable IDE installed. An iOS emulator, or a provisioned iPhone or …</description></item><item><title>Calling OpenGL from C on Android, Using the NDK</title><link>https://www.learnopengles.com/calling-opengl-from-android-using-the-ndk/</link><pubDate>Sat, 13 Jul 2013 01:32:20 +0000</pubDate><guid>https://www.learnopengles.com/calling-opengl-from-android-using-the-ndk/</guid><description>For this first post in the Developing a Simple Game of Air Hockey Using C++ and OpenGL ES 2 for Android, iOS, and the Web series, we’ll create a simple Android program that initializes OpenGL, then renders simple frames from native code. Prerequisites The Android SDK &amp;amp; NDK installed, along with a suitable IDE. An …</description></item><item><title>Understanding OpenGL’s Matrices</title><link>https://www.learnopengles.com/understanding-opengls-matrices/</link><pubDate>Wed, 03 Oct 2012 14:37:48 +0000</pubDate><guid>https://www.learnopengles.com/understanding-opengls-matrices/</guid><description>I often get questions related to OpenGL’s matrices: how do they work, how do they get built, and so forth. This is a topic that I have been frequently confused by, myself, and I feel that it warrants further explanation. To better understand OpenGL’s matrices, and how and why we use them, we first need …</description></item><item><title>How to Use OpenGL ES 2 in an Android Live Wallpaper</title><link>https://www.learnopengles.com/how-to-use-opengl-es-2-in-an-android-live-wallpaper/</link><pubDate>Sat, 14 Jul 2012 20:41:36 +0000</pubDate><guid>https://www.learnopengles.com/how-to-use-opengl-es-2-in-an-android-live-wallpaper/</guid><description>I’ve recently been looking into creating my first Live Wallpaper for Android as an opportunity to learn more about OpenGL ES and hopefully create something neat at the same time. Throughout our entire series of Android tutorials, we’ve been using GLSurfaceView to take care of the hard work of threading and initialization for us; imagine …</description></item><item><title>Rotating An Object With Touch Events</title><link>https://www.learnopengles.com/rotating-an-object-with-touch-events/</link><pubDate>Mon, 27 Feb 2012 08:00:40 +0000</pubDate><guid>https://www.learnopengles.com/rotating-an-object-with-touch-events/</guid><description>Rotating an object in 3D is a neat way of letting your users interact with the scene, but the math can be tricky to get right. In this article, I’ll take a look at a simple way to rotate an object based on the touch events, and how to work around the main drawback of …</description></item><item><title>Listening to Android Touch Events, and Acting on Them</title><link>https://www.learnopengles.com/listening-to-android-touch-events-and-acting-on-them/</link><pubDate>Sat, 25 Feb 2012 21:00:20 +0000</pubDate><guid>https://www.learnopengles.com/listening-to-android-touch-events-and-acting-on-them/</guid><description>We started listening to touch events in Android Lesson Five: An Introduction to Blending, and in that lesson, we listened to touch events and used them to change our OpenGL state. To listen to touch events, you first need to subclass GLSurfaceView and create your own custom view. In that view, you create a default …</description></item><item><title>How to Embed Webgl into a WordPress Post</title><link>https://www.learnopengles.com/how-to-embed-webgl-into-a-wordpress-post/</link><pubDate>Wed, 28 Sep 2011 05:00:34 +0000</pubDate><guid>https://www.learnopengles.com/how-to-embed-webgl-into-a-wordpress-post/</guid><description>Embedding into WordPress This information was originally part of WebGL Lesson One: Getting Started, but I thought it would be more useful if I also broke it out into a post on its own. Embedding WebGL into WordPress can be a little tricky, but if you use the right tags and the HTML editor it …</description></item></channel></rss>