WaleedYaser / rex

3D software rasterizer using C/ C++

Home Page:https://waleedyaser.github.io/rex-wasm/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

REX

unit-tests Total alerts Language grade: C/C++

Project Status: Initial development is in progress, but there has not yet been a stable, usable release suitable for the public. Lines of code GitHub repo size

Rex is a side project I'm working on now for the purpose of learning more about graphics programming and rendering. Currently it's just a 3D software rasterizer.

Supported platforms

Build and install

  • Download and install CMake (at least version 3.12): https://cmake.org/download/

  • On Linux make sure to install these dependencies:

     sudo apt install -y libxcb1-dev libxcb-util-dev libxcb-keysyms1-dev libxcb-image0-dev
    
  • Configure and build the project by executing the following commands:

     cmake -B build -DCMAKE_BUILD_TYPE=Release
     cmake --build build --config Release -j
    
  • The output (rex-viewer.exe) will be in build/bin/Release/ directory.

  • You can install binaries to any folder by executing the following command:

     cmake --install build --prefix INSTALL_PATH
    

    replace INSTALL_PATH with the path you want.

  • You can package the binaries to a zip file using the following steps:

     cd build
     cpack -G ZIP
    

    You should have rex-VERSION-win64.zip file in the build directory.

Setup emscripten for windows (TODO)

emsdk activate mingw-4.6.2-32bit

cmake -G "MinGW Makefiles" -B build-wasm -DCMAKE_TOOLCHAIN_FILE=D:/code/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake

External

Resources

About

3D software rasterizer using C/ C++

https://waleedyaser.github.io/rex-wasm/

License:MIT License


Languages

Language:C++ 63.6%Language:C 35.5%Language:CMake 0.7%Language:HTML 0.2%