diff --git a/Docs/Images/Daytona2_1.gif b/Docs/Images/Daytona2_1.gif new file mode 100644 index 0000000..33de337 Binary files /dev/null and b/Docs/Images/Daytona2_1.gif differ diff --git a/Docs/Images/Daytona2_2.gif b/Docs/Images/Daytona2_2.gif new file mode 100644 index 0000000..1307be4 Binary files /dev/null and b/Docs/Images/Daytona2_2.gif differ diff --git a/Docs/Images/FVipers2.gif b/Docs/Images/FVipers2.gif new file mode 100644 index 0000000..db7d641 Binary files /dev/null and b/Docs/Images/FVipers2.gif differ diff --git a/Docs/Images/LAMachin.gif b/Docs/Images/LAMachin.gif new file mode 100644 index 0000000..3534f84 Binary files /dev/null and b/Docs/Images/LAMachin.gif differ diff --git a/Docs/Images/Real3D_Logo.png b/Docs/Images/Real3D_Logo.png new file mode 100644 index 0000000..97461f7 Binary files /dev/null and b/Docs/Images/Real3D_Logo.png differ diff --git a/Docs/Images/Scud.gif b/Docs/Images/Scud.gif new file mode 100644 index 0000000..14ced6c Binary files /dev/null and b/Docs/Images/Scud.gif differ diff --git a/Docs/Images/StarWars.gif b/Docs/Images/StarWars.gif new file mode 100644 index 0000000..c294270 Binary files /dev/null and b/Docs/Images/StarWars.gif differ diff --git a/README.md b/README.md new file mode 100644 index 0000000..8a166a3 --- /dev/null +++ b/README.md @@ -0,0 +1,70 @@ +# Supermodel +*Copyright 2003-2022 The Supermodel Team* + +## Overview + +Supermodel emulates Sega's Model 3 arcade platform, allowing you to relive state-of-the-art 3D arcade gaming as it existed from 1996 through 1999. It uses OpenGL, SDL2, and can run on Windows, Linux, and macOS. It also supports network play on low-latency network connections. The source code is freely available under the terms of the GNU General Public License. + +

+ + +

+ + +Model 3 first made its debut in 1996 with Virtua Fighter 3 and Scud Race, and for the subsequent three years boasted the most powerful 3D hardware of any gaming platform. Developed by Real3D, then a Lockheed Martin company, and with a heritage rooted in advanced flight simulator technology, Model 3 featured capabilities that would not appear on PCs for several years. Using an on-board scene graph and geometry processor, it could store, transform, light, and rasterize tens of thousands of polygons per frame at a fluid 60 frames per second. + +The aim of the Supermodel project is to develop an emulator that is both accurate and playable. As with virtually all arcade hardware, no public documentation for the Model 3 platform exists. What is known so far has been painstakingly reverse engineered from scratch. + +## Build Instructions + +### Windows + +The preferred method for building Supermodel is to use GCC and MSYS2. After installing [MSYS2](https://msys2.org), open the MSYS2 shell and install the required dependencies using the pacman package manager: + +- GCC (```mingw64/mingw-w64-x86_64-gcc```) +- Make (```mingw64/mingw-w64-x86_64-make```) +- SDL2 (```mingw64/mingw-w64-x86_64-SDL2```, ```mingw64/mingw-w64-x86_64-SDL2_net```) + +This can be done using the following commands: + +``` +pacman -S mingw64/mingw-w64-x86_64-gcc +pacman -S mingw64/mingw-w64-x86_64-make +pacman -S mingw64/mingw-w64-x86_64-SDL2 +pacman -S mingw64/mingw-w64-x86_64-SDL2_net +``` + +At this point, you can continue using either the MSYS2 shell or Windows Command Prompt but ensure that both ```gcc``` and ```mingw32-make``` are in your path. In MSYS2, the location of these binaries will be ```/mingw64/bin``` and for Command Prompt, assuming MSYS2 was installed in the default location, add ```C:\msys64\mingw64\bin``` to your Windows ```PATH``` variable. + +To build Supermodel without network support, use: + +``` +mingw32-make -f Makefiles/Makefile.Win32 +``` + +For network support: + +``` +mingw32-make -f Makefiles/Makefile.Win32 NET_BOARD=1 +``` + +### Linux + +Ensure SDL2 is installed. Most package managers ought to have this available. For example, on Ubuntu, it should be sufficient to run: + +``` +sudo apt install libsdl2-dev +sudo apt install libsdl2-net-dev +``` + +And then build Supermodel: + +``` +make -f Makefiles/Makefile.UNIX +``` + +For network support: + +``` +make -f Makefiles/Makefile.UNIX NET_BOARD=1 +```