RPI Pico 2 3D Engine - work in progress
Hi. I'm working on 3D engine for Raspberry Pi Pico 2. Currently it uses screen based on ST7789VW screen with MicroSD card reader connected via SPI. All code is written in C. Already implemented features: 1. Reading MicroSD card. I use FatFS lib by ChaN. Currently I can read obj and bmp files. Bitmaps can be return as structure or just draw to screen. Bitmaps must be saved to RGB565. 2. Loading models from obj. 3. Materials for models that can have texture or color. 4. Fixed point numbers arithemtics. 5. Vectors arithemtics. 6. Texture mapping. 7. Point lights. Light source can have set color, intensity and position. 8. Flat shading. 9. Models can be moved, rotate and scaled. 10. Camera can have different positions. 11. Zbuffer. 12. DMA is using to send buffer to the screen. 13. Triangles are drawn with using rasterization.
It won't be a game engine. I need it to make demos for demoparties (check what is Demoscene). Let me know what do you think. It's my first RPI Pico project. Everything started as port of my Pico-8 demo. I want to implement loading mtl files, that contain material of models in obj files. Also change flat shading to gouraud but this require buying different board with more RAM.