a cross-platform 3D graphics engine
C GLSL HTML C++ JavaScript Makefile
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
android-app
fonts
nanovg
sample
README.md
catgl.h
catgl_android.h
catgl_android_camera.h
catgl_android_camera.h.java
catgl_android_hardware.h
catgl_glfw.h
catgl_obj.h
catgl_ui.h
catgl_ui_button.h
catgl_ui_checkbox.h
catgl_ui_colorwheel.h
catgl_ui_dropdown.h
catgl_ui_editbox.h
catgl_ui_entypo.h
catgl_ui_eyes.h
catgl_ui_label.h
catgl_ui_msgbox.h
catgl_ui_paragraph.h
catgl_ui_searchbox.h
catgl_ui_slider.h
catgl_ui_spinner.h
catgl_ui_thumbnail.h
catgl_ui_window.h

README.md

catgl

Catgl is a cross-platform 3D graphics engine intended to be easy-to-use and high performance, which also supports the features for game development, such as animation, input device handling and sound playing. This application is designed for Android, iOS, Linux, Windows.

Technologies

Install

  • for Linux
    • dnf install glfw-devel
  • for Android
    • Download android-sdk-linux and install it.
      • tools/android update sdk
        • Android SDK Tools
        • Android SDK Platform-tools
        • Android SDK Build-tools
        • API 10 SDK Platform
        • Android Support Library
    • Download android-ndk
    • dnf install ant

Examples

  • Linux
cd sample/box
make
  • Android
cd sample/box
make android

How to use

#define CATGL_IMPLEMENTATION
#include "catgl.h"

void caInit(int width, int height)
{
}

void caRender()
{
}

void caEnd()
{
}

clang -std=c11 -Os -MMD -MP -Wall -Wextra -Winit-self -Wno-unused-parameter -Wno-float-equal -Wno-missing-braces -I../../ -I../../nanovg -o obj/main.o -c main.c
clang++ -o hello obj/main.o /lib/libglfw.so /lib/libGL.so /lib/libm.so 

Screenshot

Screenshot Screenshot Screenshot Screenshot Screenshot Screenshot