A downloadable le3d

Download NowName your own price

Simple C++ 3D software engine

This is open source software released under the MIT License, please refer to LICENCE file for more information.
Therefore the use of the engine code in any project is royality-free.

Documentation:
https://marzac.github.io/le3d/

Source code / examples / documentation
Copyright (c) 2015 - 2018 Frédéric Meslin
Twitter: @marzacdev
Email: fred@fredslab.net

CMake scripts / MacOS support
Andreas Streichardt
Twitter: @m0ppers
Email: andreas@mop.koeln

Renderer (C++ / ASM code)

The renderer:

  • Renders meshes
  • Renders billboard sets
  • Does simple transformations (rotation, scaling, translation)
  • Performs 3D clipping
  • Performs 2D clipping
  • Performs projection
  • Does backculling
  • Performs Z-sorting

The rasterizer:

  • Draws textured triangles
  • Handles mipmapping
  • Handles alpha blending
  • Applies solid color per triangle
  • Applies quadratic fog per fragment
  • Performs perspective correction
  • Does not perform texture filtering
  • Does not draw anti-aliased edges
  • Align vertex coordinates to nearest pixel coordinates

The lighting system:

  • Handles point lights
  • Handles directional lights
  • Handles ambient lights

Backends (Native OS code)

window / draw / gamepad / timing

The backend - Windows version:

  • Handles windows creation / management
  • Handles mouse events
  • Handles keyboard events
  • Handles graphic contexts with GDI
  • Handles joysticks with rumble support (with Microsoft XInput V1.3 drivers)
  • Supports Windows XP / 7 / 8 and 10 OS
  • Supports fullscreen mode

The backend - Linux version:

  • Handles windows creation / management (with X11)
  • Handles mouse events (with X11)
  • Handles keyboard events (with X11)
  • Handles graphic contexts (with X11)
  • Handles joysticks with rumble support (with evdev interface)
  • Supports virtually all Linux based OS

The backend - MacOS version:

  • Similar to Linux version
  • Needs X11 (XQuartz) for MacOS
  • No native COCOA support
  • No joysticks support yet (soon)

File formats

Supported bitmap / texture formats:

  • Uncompressed 24bit RGB windows bitmap
  • Uncompressed 32bit RGBA windows bitmap
  • Import & export functions

Supported 3D model formats:

  • Wavefront OBJ
  • Import & export functions

Limitations

  • No Z-buffer
  • No anti-aliasing
  • Single core support

Download

Download NowName your own price

Click download now to get access to the following files:

https://github.com/Marzac/le3d
External

Comments

Log in with itch.io to leave a comment.

It compiled correctly but won't run. Gives 2 windows: A command line and a black screen and then closes a few seconds after launching. I'm on Windows 10.

Hi GoldenThumbs.

Which example are you running, which compiler are you using?

Does my "Destroy the Destroyer" game runs on your machine? 

Fred

Sorry it took so long to respond lol. I've tried running both examples, I'm using Visual Studio 2017. None of the examples run.