Skip to content

coelacant1/ProtoTracer

Repository files navigation

ProtoTracer: 3D Rendering and Animation Engine

This project is a live 3D rendering and animation engine designed for use on microcontrollers.

Demonstration:

As a quick way to showcase the capabilities of this software, here is a demo showing a live rendering of a rotating and textured .OBJ file:

SpyroExample

Recommended platform requirements:

  • 32-bit FPU
  • 200MHz+ processor
  • At least 80KB dynamic memory
  • Recommended Microcontrollers: Teensy 4.0/4.1

This codebase has been tested on an Arduino Mega (smaller .OBJ file with a 89 pixel matrix) and on a Teensy 4.0 (2000 triangle scene with a 2,804 pixel matrix).

Usage:

The following links give a detailed description on how to import files, set up controllers, manipulate objects, and render to displays:

Questions?

Any recommendations on additional information to add can be requested in the discussions tab. If you have additional questions, you can @ me in my Discord server or direct message me on Twitter.

Contributing:

Pull requests are very welcome. Any issues found should be reported first to open a discussion. Any recommendations can be requested in the discussions tab. For contributing, please follow the following steps:

  • Fork the repository on GitHub.
  • Commit your changes (git commit -m 'Add some YourFeature').
  • Push to the branch (git push origin main).
  • Submit a pull request through the GitHub website.

If you would like to help me keep this project going, any support on Patreon would be greatly appreciated: https://www.patreon.com/coelacant1

License Agreement:

For this project, AGPL-3.0 is used for licensing as a means to make sure any contributions or usage of the software can benefit the community. If you use and modify this software for a product, you must make the modified code readily available as per the license agreement.