Skip to content

3dgoose/WIPE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WIPE

Work In Progress Engine, or WIPE for short, is a 3D graphics engine written in pure C99 with little dependencies.

It aims to be fast and portable : it should work fine on any machine having OpenGL 2.1 and SDL2.

greenCube

Features

  • Written in C99
  • Works on any machine with OpenGL 2.1 or higher
  • Custom map and models
  • Nuklear UI
  • Post-processing

External dependencies

To compile, you must have :

Libraries used

Thanks to the developers of SDL2, tomlc17 and Nuklear ! Every lib is the copyright of its respective... copyright holder?

Getting the engine

Compiling

You can compile using CMake, and if on Windows, MinGW makefiles :

UNIX:

cmake -B build
cmake --build build --config Release

Windows :

cmake -B build -G "MinGW Makefiles"
cmake --build build --config Release

Installing

On Windows, you can compile from source as described above or use the Windows installer.

Technical info

Maps and models

WIPE got its own map and model system : wm (wipe models), a binary format tailored for this engine, and toml maps that contain the path, coordinates, orientation, etc.. of these models.

Map editing is done through Blender or Blockbench.

First game

This engine is everything but production-ready, but if you want to try it anyways, you'll need to define a couple variables (you can find them in game.c), otherwise they'll be filled with garbage.

Also make sure to place camApply(); and clearBuffers(); before drawing anything !

Progress so far

  • Camera
  • Movement
  • Coordinates display
  • VBO drawing
  • Transform function
  • Wipe Models
  • Maps
  • Light
  • Post-process
  • Optimize engine

License and contribution

This project is published under the Zlib license. Feel free to contribute by forking or patchsets. Credits and mention is not mandatory, though greatly appreciated.

Releases

No releases published