Time for action – loading a PNG image

Now that libpng is compiled, let's read a real PNG file with it:

  1. Edit jni/GraphicsManager.hpp and include the Resource header file.

    Create a new structure named TextureProperties containing:

    • A resource representing the texture asset
    • An OpenGL texture identifier (which is a kind of handle)
    • A width and a height
      ...
      #include "Resource.hpp"
      #include "Types.hpp"
      ...
      
      struct TextureProperties {
          Resource* textureResource;
          GLuint texture;
          int32_t width;
          int32_t height;
      };
      ...
  2. Append a method loadTexture() to the GraphicsManager to read a PNG and load it into an OpenGL texture.

    Textures are saved in an mTextures array to cache and finalize them.

    ... class GraphicsManager { public: ... status start(); void stop(); status update(); ...

Get Android NDK Beginner's Guide - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.