This project is a browser-based viewer for Call of Duty maps, specifically supporting maps from Call of Duty 1 and Call of Duty: United Offensive. It uses babylon.js for rendering, allowing you to explore these maps in a 3D environment directly in your browser.
- View maps from Call of Duty 1 and Call of Duty: United Offensive directly in your browser.
- All original assets
- Load and display original assets, including:
- 3D models
- Skyboxes
- Lightmaps
- Ambient audio
Support for Call of Duty 2 and Call of Duty 4 maps could be added with minimal effort.
- Bad character controller
- Z-fighting
- Missing water animations
- Transparency
- Incorrect model rotations: Happens if they were rotated in multiple axes
Contributions are welcome! If you’d like to improve this project, feel free to:
- Open an issue for suggestions or bug reports.
- Submit a pull request with your changes.
Follow these steps to set up the project locally:
- Clone this repo
- Create the
public/cod/
folders. Extract all your.pk3
files into this folder. - Create the file
public/cod/index
. This file should contain a list of all the files in the folder (and sub-folders).- Example linux command to do this:
find . -type f -printf '%P\n' > index
- Example PowerShell command to do this:
Get-ChildItem -Recurse | Where-Object { -not $_.PSIsContainer } | ForEach-Object { $_.FullName.Replace((Get-Location).Path + "\", "").Replace("\", "/") } | Sort-Object | Set-Content index
- Example linux command to do this:
- run
npm install
- run
npm run dev
- A local server should be accessible at
http://localhost:3000
This project relies heavily on the work of these 2 projects:
Original | Author | TS translation |
---|---|---|
LibBSP | wfowler1 | libbsp-js |
Call of Duty asset importer for Blender | mauserzjeh | libxmodel-js |
This project is not affiliated with or endorsed by Activision or any other rights holders of the Call of Duty franchise.