Skip to content

Latest commit

 

History

History
33 lines (21 loc) · 1.05 KB

README.md

File metadata and controls

33 lines (21 loc) · 1.05 KB

Nova

Screenshot

Nova is a simple 3D renderer written as a learning exercise with the following features:

  • Portable and idiomatic C code (C99)

  • All 3d math and rendering done in software (i.e. no outside libraries used)

  • Matrix and vector data structures with support for rotations, translations, perspective projections

  • Adjustable render size and field-of-view

  • Perspective correct texture mapping

  • Vertex based lighting

  • Barymetric based traiangler rasterization

  • Loading of .obj, .mtl, and .bmp files

  • Project files for Visual Studio 2015 and XCode 7

    • Windows app features-

      • Basic Win32 functionality
      • Direct2D used to render raw pixel buffer to window
      • FPS calculation
    • OS X app features-

      • Written in Objective-C
      • Basic Cocoa functionality
      • CoreGraphics used to render raw pixel buffer to window
      • Time independent animation (unlike the windows app, this version rotates the model at the same rate no matter the FPS)