View License

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from
Operation Eigenfaust 3D (Tech Demo)

  • Operation Eigenfaust 3D DemoA playable first-person shooting game demo featuring a real-time discrete ray casting engine. Possibly the coolest MATLAB game demo ever.
  • opeigopeig - The main file for Operation Eigenfaust 3D for MATLAB
  • View all files
5.0 | 6 ratings Rate this file 20 Downloads (last 30 days) File Size: 1.37 MB File ID: #42251 Version: 1.4
image thumbnail

Operation Eigenfaust 3D (Tech Demo)


Mingjing Zhang (view profile)


17 Jun 2013 (Updated )

A playable first-person shooter demo featuring interative objects and real-time ray casting.

| Watch this File

File Information

Operation Eigenfaust 3D Tech Demo for MATLAB v0.80
Mingjing Zhang, Stellari Studio, 2013
Simon Fraser University

This is the first 3D game (demo) ever made with 'pure' MATLAB available on MATLAB Central.
In this demo, you can freely roam in a quasi-3D environment. The game runs at 40~60 FPS on my three year old Lenovo G460.

The sole purpose of this demo is to show off the discrete ray-casting engine I have written, which is an implementation of the ray casting algorithm on this page:

Right now the engine is almost fully functional. It even renders half-opened doors and objects behind them properly. You can interact with the doors by pressing space while standing in front of them. There is also perfect collision detection.

There is a switch hidden somewhere in this level, but you won't be able to interact with it...

How to play:
WASD - move //
Left/Right arrow - rotate //
Enter - mouse on/off //
ESC - quit demo//
Move mouse - mouselook (when mouse is on) //
mouse wheel - zoom in/out


MATLAB release MATLAB 8.1 (R2013a)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (9)
02 Jun 2014 Mr Smart

11 Mar 2014 Guan

Guan (view profile)

dear all.I'm not familiar with ray-casting algorithm,could anybody submit the code of ray-casting.Or send the code to my mailbox,Thank you all.

16 Dec 2013 Kerem tezcan

01 Oct 2013 Timothy

Wow. You have imagination. Thanks!

19 Jul 2013 Sean de Wolski

Well Done!

22 Jun 2013 Mingjing Zhang

Mingjing Zhang (view profile)

1. unzip all files to a folder,
2. set "current directory" to that folder
3. run wolf3d.m
install the app file

Comment only
22 Jun 2013 shashi

shashi (view profile)

I am unable to install the Demo.
Please help me

Comment only
18 Jun 2013 Mingjing Zhang

Mingjing Zhang (view profile)

Thank you for your support, Ryan. I probably won't be able to expand it to a full game any time soon since I still have to focus on my thesis. Also there are some problems to solve before I could use this engine in a real game. For instance, it does not handle walls that are not located on integer locations. In other words, the engine cannot render sliding doors, which are not located on the same plane as regular walls, as seen in the real Wolfenstein game.

Comment only
18 Jun 2013 Ryan G

Ryan G (view profile)

Really cool. Are you going to upload any full games (or playable levels) with this?

24 Jun 2013 1.1

*Updated to v0.50
Now supports arbitrary resolution;
Added mouse wheel support

12 Jul 2013 1.2

Upgraded to Ver 0.75:
* Added collision detection
* Added rendering for doors

16 Jul 2013 1.3

* Upgraded to ver 0.80
* Now doors are fully interactive

19 Jul 2013 1.4

* Upgraded to ver0.85
* Renamed to 'Operation Eigenfaust 3D'
and several file/variable names were changed accordingly
* Used a customized icon for the app
* Removed textures with controversial content

Contact us