바이드럼(Bidrum in korean) is a rhythm game with janggu(korean traditional drum)-style controller.
- Install
git-lfsbefore you clone - Install rust
- Install ffmpeg 7.*, sdl2, sdl2_image, gtk4 development libraries.
- For instructions on sdl2 installation, see rust-sdl2 README.
- Run
cargo build- If there's an error related to FFmpeg library building, try installing EVERY libraries related to libclang, INCLUDING development libraries. this may fix the problem.
- When running the game,
assetsdirectory andmusicdirectory should be in the working directory.
- Install
git-lfsbefore you clone - Install rust
- Install ffmpeg 7.*, sdl2, sdl2_image, gtk4 development libraries.
- For instructions on sdl2 installation, see rust-sdl2 README.
- Type
export LIBRARY_PATH="$LIBRARY_PATH:$(brew --prefix)/lib"to your terminal. - Run
cargo build - When running the game,
assetsdirectory andmusicdirectory should be in the working directory.
It's not recommended to build on Windows because development is usually done on Linux and Mac OS.
Due to difficulties on building Rust FFmpeg library on Windows, The GNU toolchain is used instead of MSVC toolchain.
- Install MSYS2
- Install Rust with rustup
- Run following command on MSYS2 SHELL. (NOT POWERSHELL / CMD / GIT BASH)
- Append
--noconfirmparameter if you want to say "yes" to all the questions automatically
pacman -S mingw-w64-x86_64-toolchain mingw-w64-x86_64-ffmpeg mingw-w64-x86_64-clang mingw-w64-x86_64-SDL2 mingw-w64-x86_64-SDL2_image mingw-w64-x86_64-gtk4 mingw-w64-x86_64-gettext mingw-w64-x86_64-libxml2 mingw-w64-x86_64-librsvg mingw-w64-x86_64-pkgconf mingw-w64-x86_64-gcc
- Append
- (Optional) Run the following commands in PowerShell or cmd and remember default host and default toolchain.
- You can use the default host and default toolchain remembered here after building bidrum, with
rustup set default-hostandrustup defaultcommands.
rustup toolchain list rustup show
- You can use the default host and default toolchain remembered here after building bidrum, with
- Run following commands in PowerShell or cmd. If you had ran these commands before, you can skip this step.
rustup toolchain install stable-gnu rustup target add x86_64-pc-windows-gnu
- Run following commands in PowerShell or cmd
- Please note that
rustup set default-hostandrustup defaultcommand is permanent.
rustup set default-host x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu
- Please note that
- Create
.cargo/config.tomlfile and write the following to the file.- For location of
.cargo/config.toml, Read The Cargo Book.- If you have no idea about it, the root directory of bidrum (where there is
README.mdfile which you're reading now) may be good for location of.cargo/config.toml.
- If you have no idea about it, the root directory of bidrum (where there is
- The following assumes that MSYS2 installation path is
C:\msys64. If the installation path is different, Modify it.
[target.x86_64-pc-windows-gnu] linker = "C:\\msys64\\mingw64\\bin\\gcc.exe" ar = "C:\\msys64\\mingw64\\bin\\ar.exe"
- For location of
- Add
(MSYS2 installation path)\mingw64\bin,(MSYS2 installation path)\mingw64\include,(MSYS2 installation path)\mingw64\libtoPATHenvironment variable - Run
cargo build --target x86_64-pc-windows-gnuon PowerShell or cmd - When running the game,
assetsdirectory andmusicdirectory should be in the working directory.
Copyright (C) 2024 Yeonjin Shin, Homin Lee, Habin Song. All rights reserved.
This program, including source code, cannot be used/copied/redistributed/modified without permission.
- Noto Sans KR: Copyright (C) Google, licensed under SIL Open Font License
- Press Start: Copyright (c) 2011, Cody "CodeMan38" Boisclair (cody@zone38.net), licensed under SIL Open Font License (OFL)
- Janggu free icon: Korea icons created by Freepik - Flaticon
- Title background video: Seoul Korea - Free Paper Style Background Loop