Для сборки проекта у вас должны стоять:
- компилятор Rust (для Windows тестируется только stable версия, для Linux: nightly, beta, stable)
- менеджер пакетов для rust - Cargo
Для Windows необходимо добавить папку с rustc и cargo в PATH
Требуется установить библиотеку sdl2 и sdl2_image.
Для Arch-Linux ставится вот так:
sudo pacman -S sdl2 sdl2_image
Для Ubuntu вот так:
sudo add-apt-repository ppa:zoogie/sdl2-snapshots -y
sudo apt-get update -q
sudo apt-get install libsdl2-dev libsdl2-image-dev
Для Windows:
- качаем SDL2-devel-2.0.4-mingw.tar.gz, распаковываем, ищем файл SDL2-2.0.4\TARGET-w64-mingw32\lib\libSDL2.dll.a и копируем его в RUST_PATH\lib\rustlib\TARGET-pc-windows-gnu\lib\
- качаем SDL2-2.0.4-win32-x86.zip или SDL2-2.0.4-win32-x64.zip в зависимости от платформы, распаковываем и кладем либо в директорию, которая находится в PATH, либо рядом с exe который получится после компиляции проекта
- качаем SDL2_image-devel-2.0.1-mingw.tar.gz, распаковываем, ищем файл SDL2_image-2.0.1\TARGET-w64-mingw32\lib\libSDL2_image.dll.a и копируем его в RUST_PATH\lib\rustlib\TARGET-pc-windows-gnu\lib\
- качаем SDL2_image-2.0.1-win32-x86.zip или SDL2_image-2.0.1-win32-x64.zip в зависимости от платформы, распаковываем и кладем либо в директорию, которая находится в PATH, либо рядом с exe который получится после компиляции проекта
- для x86 платформы качаем gcc-core-4.8.1-4-mingw32-dll.tar.lzma, распоковываем и libgcc_s_dw2-1.dll кладем либо в директорию, которая находится в PATH, либо рядом с exe который получится после компиляции проекта
В связи со сложным процессом установки под Windows - можно просто взять готовые сборки для платформ x86 и x64, для каждой версии приложения.
Из корня проекта выполняем:
cargo build --release
Если нужно сразу скопилировать и запустить, то так:
cargo run --release
16 тыс. случайных треугольников на экране и всего 1 fps:
Низкополигональная модель освещение даже не повершинное, а пограневое, чуть более 2 млн triangle per second:
Высокополигональная модель освещение такое же, tps = 3.3 млн:
Шар с освещением по упрощенному Cook-Torrance:
Кольцо, освещение по модели Фонга-Блина:
Текстурированные модельки:
Дроид, по крайней мере так написал автор модели:
Ужасный монстр в желеных шортиках: