66% or better

3D games for the Arduino with raycasting

For all the Arduino-based video game builds we’ve seen, we’re really only left with a bunch of 2D platformers and other sprite-based games. [Reimecker] wasn’t satisfied with this level of computational complexity, so he ported the 3D game engine made famous by Duke Nukem 3D to the Arduino (German, Google translation).

[Reimecker]‘s project is based on the very popular Build Engine written by [Ken Silverman] and used in games such as Duke Nukem 3D,  Shadow Warrior,  Blood, and TekWar. The Build Engine can be used to make a first person shooter, but more on the level of Wolfenstein 3D instead of Half-Life.

The hardware [Reimecker] used is a regular ‘ol 8-bit Arduino with an attached LCD touch screen displaying 320×240 pixels of a ray cast environment. From the videos of the build (available after the break), [Reimecker] has a fairly decent game engine capable of displaying a 2.5D environment. The frame rate might not be very high, but it’s still an amazing build considering the hardware [Reimecker] is working with.

Comments

  1. Philip says:

    I wonder if this might benefit from switching to a ChipKIT Uno32…

  2. Denbo says:

    Looking forward to Myst and F-19 Stealth Fighter pots.

  3. Paul says:

    I’m surprised he went with Arduino for this…not that I have anything against it. Just that for a project like this, something like the MSP430 seems like a more natural choice (faster clock, 16 bit CPU).

    Kudos on a really neat project though.

  4. MrX says:

    Now let’s stack a bunch of arduinos and do multi-uC processing to accelerate that frame rate :)

  5. willrandship says:

    That is one slow raycaster.

    PS Raycasters aren’t really “3D” engines, in that they don’t allow 3D movement, and can therefore cheat on a lot of the math. Depending on whether you allow variable-height walls, you can cheat on even more (wolfenstein vs. Doom)

  6. rj says:

    On the topic of raycasters, there have been rather impressive ones made for old video game systems like the NES or the C64 or the ColecoVision

  7. I Found a RAM extansion for the Arduino with 1 MB of Workram directly addressable.But my problem at the time is i can’t wrote a hole Buffer to the Display because it has a bad controller.Have everyone a got alternate for a display in full color with this resolution but connected 8 Bit direct ?? Sorry Guy for my Bad english i hop everyone understand this here :-) Thanks before !!

  8. Mastax says:

    This reminds me of the Rbox from Rossum:
    http://rossum.posterous.com/building-the-rbox

    It’s LPC11x based and the entire thing fits on the proto area of an lpcxpresso, or on a board under a psp thumbstick.

  9. Yes its Nice but the difference is , I copy 320×240 full Colored Pixel each frame, and your Version a smaller Resolution an only 2 Color . Now say it to me what is the one with the better Framerate ???

    The Fully Color or the 2 COlor ?????

  10. Draget says:

    Oh come on, the reference to the Build-Engine is pretty unessecary. Raycasting has been done by many games, and Ken Silverman’s Build engine has alot of advance features compared to plain raycasting.

    Eventho it is nicely done, it makes little to no sense to compare it the Build engine.

  11. xai says:

    so what is the specs. we need to build the platform ?..

  12. https://www.youtube.com/watch?v=BxW5ZtcXx0E

    Last night i done the floor Texture i make a video if i wake up !!!! Good sleep !!!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s