Code Monkey home page Code Monkey logo

dudethecrude / doom3-ios Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tomkidd/doom3-ios

0.0 0.0 0.0 80.44 MB

DOOM 3 for iOS and tvOS for Apple TV

Home Page: http://schnapple.com/doom-3-for-ios-and-tvos-for-apple-tv/

Shell 1.03% JavaScript 0.05% C++ 51.09% Python 0.05% Perl 0.06% C 43.65% Objective-C 1.70% Java 0.52% Assembly 0.09% PowerShell 0.04% Objective-C++ 0.38% Swift 0.12% Makefile 0.08% HTML 0.02% CMake 0.41% Batchfile 0.01% Metal 0.01% M4 0.67% Roff 0.01%

doom3-ios's Introduction

DOOM 3 for iOS and tvOS for Apple TV

ย 

This is my port of DOOM 3 for iOS, running in modern resolutions including the full width of the iPhone X. I have also made a target and version for tvOS to run on Apple TV.

screenshot

Features

  • Tested and builds on Xcode 10.
  • Runs single player campaigns at full screen and full speed on iOS
  • Support for original campaign and expansion pack campaigns via separate apps.
  • MFi controller support (reccomended) and on-screen control options
  • Second project target for tvOS that takes advantage of focus model and removes on-screen controls.
  • Limited support for native menus of original game

This commit does not need any placeholder resources as it is not an update of an existing id Software port.

NOTE: this is a port of the original DOOM 3 from 2004, not the DOOM 3: BFG Edition from 2012

You will need to provide your own copies of the base and d3xp directories from an existing instalation of DOOM 3. The latter directory is only needed if you want to run the expansion. You can buy DOOM 3 on Steam here. You can buy the expansion pack DOOM 3: Resurrection of Evil on Steam here. Note that GOG does not sell the original game, they only sell the BFG Edition which is incompatible with this release.

There are two Xcode project files, one for DOOM 3, DOOM3-iOS.xcodeproj, and one for the expansion pack, DOOM3xp-iOS.xcodeproj. You will need to drag your directories into the project and select "Create Folder References". The base folder needs to be added to the DOOM 3 project and target, while both the base and d3xp folders need to be added to the expansion pack project. The folders will be blue if you've done it right:

folders

foldersxp

You can read a lengthy blog article on how I did all this here.

This port was based on dhewm3 and uses SDL for iOS. I also referenced to this fork for WebAssembly/WebGL from Gabriel Cuvillier for OpenGL ES code. On-screen joystick code came from this repo by Brad Howe. Font Diablo Heavy available here. I also studied the iOS port of Hedgewars for information on how to use UIKit alongside SDL.

Video of DOOM 3 running on an iPhone X

I have also made apps for Wolfenstein 3-D, DOOM, DOOM II and Final DOOM, Quake, Quake II, Quake III: Arena and Return to Castle Wolfenstein.

Have fun. For any questions I can be reached at [email protected]

doom3-ios's People

Contributors

tomkidd avatar dnicolson avatar yoshisuga avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.