diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3865e9b..7c93540 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -39,10 +39,11 @@ mark_as_advanced(_CXX_FILESYSTEM_HAVE_HEADER)
mark_as_advanced(_CXX_FILESYSTEM_HAVE_EXPERIMENTAL_HEADER)
# Dependencies
-find_package(SDL2 REQUIRED)
-find_package(fmt REQUIRED)
-find_package(OpenAL REQUIRED) #find_package(openal-soft CONFIG REQUIRED)
-find_package(Bullet REQUIRED)
+find_package(SDL2 REQUIRED) # https://www.libsdl.org
+find_package(fmt REQUIRED) # https://fmt.dev
+find_package(OpenAL REQUIRED) #find_package(openal-soft CONFIG REQUIRED) # https://github.com/kcat/openal-soft
+find_package(Bullet REQUIRED) # http://www.bulletphysics.com/Bullet/
+find_package(glm REQUIRED) # http://glm.g-truc.net
# Setup an interface library for Bullet, this allows us to target Debug/Release configurations properly.
# This should be resolved once https://github.com/microsoft/vcpkg/pull/9098 is merged.
diff --git a/README.md b/README.md
index b5a2374..b42df18 100644
--- a/README.md
+++ b/README.md
@@ -18,7 +18,7 @@ You still need to have the original game assets in order to use this.
-# Building
+## Building
Clone the code using: `git clone --recursive https://github.com/plowteam/donut.git`
@@ -32,7 +32,7 @@ Linux:~/$ ./vcpkg install sdl2 bullet3 openal-soft fmt
If you don't want to use vcpkg; CMake will fallback on installed system dependencies, or manually specified
package directories.
-## Windows
+### Windows
* Install [Visual Studio 2019](https://visualstudio.microsoft.com/downloads/)
* Install [CMake](https://cmake.org/download/)
@@ -47,7 +47,7 @@ cd donut
cmake -S . -B build -DCMAKE_TOOLCHAIN_FILE=$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows
```
-## Linux
+### Linux
*Note: These instructions are for Ubuntu, but can be easily applied to other distros.*
@@ -61,6 +61,10 @@ cmake --build build -j 5
**Mesa drivers on Linux:** if you are trying to run with Mesa drivers and are getting issues with OpenGL context try messing with `MESA_GL_VERSION_OVERRIDE` when running like so: `MESA_GL_VERSION_OVERRIDE=4.3FC MESA_GLSL_VERSION_OVERRIDE=430 bin/donut`
+## Running
+
+The binary called `donut` should be launched from the root of the original game deployment (similar to original `Simpsons` binary). Additional assets from the `assets` source directory (both `windows` and `shaders`) should also be copied to the root of the original game deployment.
+
## Docs
* [Chunks](dev/Chunks.md)
* [Commands](dev/Commands.md)
diff --git a/src/Character.cpp b/src/Character.cpp
index df957d2..b85f4b1 100644
--- a/src/Character.cpp
+++ b/src/Character.cpp
@@ -41,7 +41,7 @@ void Character::LoadModel(const std::string& name)
case P3D::ChunkType::Texture: Game::GetInstance().GetResourceManager().LoadTexture(*P3D::Texture::Load(*chunk)); break;
case P3D::ChunkType::PolySkin: _skinModel->LoadPolySkin(*P3D::PolySkin::Load(*chunk)); break;
case P3D::ChunkType::Skeleton: _skeleton = std::make_unique(*P3D::Skeleton::Load(*chunk)); break;
- default: fmt::print("unhandled chunk {1} in character {0}\n", name, chunk->GetType()); break;
+ default: fmt::print("unhandled chunk {1} in character {0}\n", name, fmt::underlying(chunk->GetType())); break;
}
}
}
diff --git a/src/Core/MemoryStream.h b/src/Core/MemoryStream.h
index 82ece52..57115b5 100644
--- a/src/Core/MemoryStream.h
+++ b/src/Core/MemoryStream.h
@@ -5,6 +5,7 @@
#include
#include
#include
+#include
namespace Donut
{