~zjm/Moon3D

3D Graphics Engine
add unoptimized depth buffering
rename things a little
add Pineda rasterization!

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~zjm/Moon3D
read/write
git@git.sr.ht:~zjm/Moon3D

You can also use your local clone with git send-email.

#Moon3D

Concept art

Moon3D is a custom 3D graphics library I wrote, just for fun. I intend to support the to-be-released Playdate handheld console.

builds.sr.ht status

#TODO

  • Use ints for rasterization
  • Use guard-band clipping
  • Add sub-pixel precision
  • Gouraud shading
  • Make spheres
  • Make craters

#Acknowledgements

Most of the 3D stuff was learned through Ken Joy's 2009 UC Davis Computer Graphics lectures, and a copy of Computer Graphics: Principles and Practice (2nd ed, in C) by Foley, van Dam, Feiner, and Hughes (which is a beautiful textbook).

My implementation of vector is just STB's stretchy buffer.