Skip to content
 
 

Repository files navigation

Krypton Wrapper (NG-GL4ES)

Build NG-GL4ES for Android License: MIT Release

Krypton Wrapper (aka NG-GL4ES) is an OpenGL-to-OpenGL ES translation layer, forked from gl4es and gl4es-114-extra, with modern enhancements targeting Android.

Features

  1. Capability to handle more advanced shaders (GLSL → SPIR-V → ESSL via glslang & SPIRV-Cross);
  2. Capability to run Minecraft in almost all versions;
  3. More advanced OpenGL features on GLES hardware.

Project Structure

NG-GL4ES/
├── CMakeLists.txt        # CMake build entry
├── include/              # Public headers (GL/EGL/GLES/KHR, version.h, ...)
├── src/
│   ├── gl/               # Core translation layer
│   └── glx/              # GLX / platform glue
├── 3rdparty/             # Submodules: glslang, SPIRV-Cross
├── external/             # MetalANGLE.framework (macOS/iOS)
├── docs/                 # COMPILE.md (build guide), USAGE.md (env vars)
└── tools/                # Spec-based code generation tools

Building

Android (NDK)

git clone https://github.com/Uniaball/NG-GL4ES.git
cd NG-GL4ES
git submodule update --init --recursive

cmake -B build \
  -DANDROID_ABI=arm64-v8a \
  -DANDROID_PLATFORM=android-29 \
  -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_HOME/build/cmake/android.toolchain.cmake \
  -DANDROID_TOOLCHAIN=clang

cmake --build build --config Release --parallel

The output library is build/libng_gl4es.so.

For other platforms and detailed options, see docs/COMPILE.md. For runtime environment variables, see docs/USAGE.md.

Change Log

See CHANGELOG.md and Releases.

Credits & Upstream

This project stands on the shoulders of:

Third-party components

Sponsor

ptitSeb (gl4es): paypal

License

MIT License — see LICENSE.

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages