Microcontroller with 3D graphics capable of filling VRAM - Page 1
Forum section: electronics / beginners

author: MrB
author_rank: Newbie
timestamp: February 26, 2015, 12:32:01 pm
content: I'm attempting to design and build my own console, that's capable of SNES like graphics performance.Two screens will be written to using a Nexys 2 (Spartan 3E FPGA) over VGA, 800x600 resolution with a color depth of 16 bits. The FPGA will get its frames from (V)RAM. The games will be simple, using two static camera's in a static world with few moving objects. Simple shapes, vector calculations and collision detection would suffice. No shaders, special lightning or textures are required.I'm aware it's possible to make games in VHDL/Verilog, but I would prefer to be able to write them using an 3D engine on a microcontroller, possibly in combination with a GPU. This allow for greater flexibility in the long run and is more fun as it's a bigger challenge.There doesn't seem much information available online regarding embedded 3D rendering/engines, especially ones that are able to write frames to RAM memory.Are there options that would make this possible? In what direction do I have to think. I'm rather flexible regarding languages, possible operating systems etc. Just exploring possibilities here.Thanks in advance

author: Wilksey
author_rank: Super Contributor
timestamp: February 26, 2015, 12:48:08 pm
content: Have you looked at the FTDI graphics chip, I think they use it in the new "Gameduino 2"?

author: tszaboo
author_rank: Super Contributor
timestamp: February 26, 2015, 01:19:00 pm
content: I would look for something along the ARM9 architectures. Lots of consoles used a derivate of the ARM9. On the other hand, I dont really see the reason to do this, I would rather spend my time hacking a PSP or writing extensions to a modern say Cortex M4 or A5 DSP library. An M4 running at 100 Mhz+ with DSP and Floating point should be faster than a 16 bit ~3.5Mhz CPU, even if the latter one has a GPU.

author: Mechanical Menace
author_rank: Super Contributor
timestamp: February 26, 2015, 02:27:33 pm
content: Quote from: MrB on February 26, 2015, 12:32:01 pmIf you're going to use an SoIC with a GPU to do the video why bother with the FPGA? I'd either implement the GPU features you need on the FPGA or just not bother with one.If you do try implement things on the FPGA though it could be cool if the MPU/MCU could upload bitstreams as needed. You want a 2D powerhouse? The FPGA is a 2D VPU. You only want a couple of simple 3D GPU features implemented really fast? Your FPGA becomes that without the features you don't need, allowing more say T&L units to run in parallel.QuoteI'm pretty certain all embedded GPUs used shared system RAM. But to use them you will pretty much be limited to using Linux or whatever MS call their newer embedded Windows offerings. Broadcom are the only ones who have anything like open documentation for their GPUs but just try get a datasheet or even source the chips without selling your soul and signing a mountain of NDAs.

author: that_guy
author_rank: Contributor
timestamp: February 26, 2015, 02:33:59 pm
content: Your probably looking at the Cortex-A8 space for embedded 3D capabilities. e.g. the TISitara AM335x range. They're not bargain-basement price but they're not expensive compared to an FPGA. In fact what would you need an FPGA for if you had one of those?

author: amyk
author_rank: Super Contributor
timestamp: February 26, 2015, 09:23:32 pm
content: This might be of interest:http://www.linusakesson.net/scene/parallelogram/

author: katzohki
author_rank: Frequent Contributor
timestamp: February 26, 2015, 11:43:33 pm
content: Look into the graphics Mode 7 of the Super Nintendo and the Super FX for some ideas on how you can get faux 3D / 2.5 D and simple polygon rendering respectively.