Top Git Project

Freecodecamp

freeCodeCamp.org's open-source codebase and curriculum....

React

A declarative, efficient, and flexible JavaScript library...

Tensorflow

An Open Source Machine Learning Framework for Everyone

Bootstrap

The most popular HTML, CSS, and JavaScript framework for...

System design-primer

Learn how to design large-scale systems. Prep for the...

Ohmyzsh

🙃 A delightful community-driven (with 1900+...

Flutter

Flutter makes it easy and fast to build beautiful apps...

Javascript

JavaScript Style Guide

Python

All Algorithms implemented in Python

Javaguide

「Java学习+面试指南」一份涵盖大部分 Java 程序员所需要掌握的核心知识。准备 Java 面试,首选...

Ezgfx

Graphics engine / library

ezGfx

What is ezGfx ?

ezGfx is a project of mine I work on in my spare time as a learning experience. It is a library, or a collection of sublibraries / "modules". It is intented to be used as a graphics engine for games and other small applications.

It uses a minimal amount of dependencies which should all be standard (for instance alsa and X11 on Linux, wingdi on windows...). Since everything is made from scratch, it has limited performance and asset-loading functions only support a few basic file formats.

Modules

Module Description
ezErr Errors handling, wrapper and utility macros
ezMat 3x3 and 4x4 matrix math
ezImg Image manipulation and primitive drawing
ez3D 3D renderer and obj files
ezWin Window, keyboard and mouse IO
ezSfx Sound engine

Configuration

In order to compile on your system, you have to configure some things. Edit config.mk, everything should be explained.

Building

Note: You will need a Unix-like build environnement, on windows you can use Cygwin, MSYS2 or WSL.

From the main ezGfx directory, Run make all and everything should appear inside the output directory (or the configured one). You can also use the following compilation targets :

Command Action
make clean Remove temporary files and binaries
make clean-output Remove everything from output/include/ and output/lib/
make output Create the output directory and its subdirectories
make all Compile all modules and demos
make modules Compile all modules
make demos Compile all demos
make [module_name] Compile only module_name and its dependencies

Run the demos

Executables are located in demo/[DEMO]/bin/main.

Installation (Linux)

After having compiled the modules, you can add it to the relevent environnement variables in order to compile other programs.

EZLIB="/home/user/ezLib/output"
export C_INCLUDE_PATH="$C_INCLUDE_PATH:$EZLIB/include"
export LIBRARY_PATH="$LIBRARY_PATH:$EZLIB/lib"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$EZLIB/lib"

Alternatively, headers inside output/include could be linked to /usr/include and lib files in output/lib to /usr/lib/.

Godot

Godot Engine – Multi-platform 2D and 3D game engine

Themachinery books

This repository contains the source of "The Machinery book " and some other books.

Young40.github.com

Peter Young's Blog

Research.kihonenginerewritegamelogic

Research for Kihon Engine game logic rewrite

Reng

Visual-Novel-Engine

Hitagiengine

DirectX12 game engine