
Status rilis: pra-rilis/beta
Versi mesin: 0.10
Mesin Rendering 3D Realtime. Harapkan bug dan ketidakstabilan karena masih dalam pengembangan. Mesinnya gratis dan open source (dilisensikan di bawah MPL-2.0). Silakan hubungi saya tentang pertanyaan atau masalah yang Anda miliki!
(Model 3D: Intel Sponza)

(Model 3D: Bistro)

(Model 3D: San Miguel)
(Model 3D: Cornell Box)
-> gulungan fitur video
-> gulungan fitur gambar grafis
-> Tinjauan Arsitektur Tingkat Tinggi
-> Bagaimana bingkai ditampilkan
Proyek ini dibuat sebagai proyek penelitian hobi untuk mempelajari pengembangan mesin tingkat rendah dan menerapkan teknik grafis modern.
Pada intinya Stratus adalah mesin rendering pertama dengan fitur minimal yang ditemukan di mesin tujuan umum. Fokusnya adalah pada kemampuan grafis 3D modern. Karena ini ia memiliki dua kasus penggunaan utama:
Orang -orang mengambilnya dan menggunakannya sebagai sumber belajar.
Integrasi ke mesin tujuan umum lainnya (baru atau sudah ada) dan alat pemodelan.
Karena lisensi MPL, setiap perubahan komunitas yang dibuat pada kode rendering akan terus membantu orang lain dalam proyek baru dan yang sudah ada yang menggunakannya.
| Jenis | Persyaratan |
|---|---|
| Os | Windows 10/11 atau Linux |
| Penyusun | Dukungan untuk C ++ 17 |
| Grafik | Dukungan untuk OpenGL 4.6 |
| Jenis | Minimum |
|---|---|
| CPU | Ryzen 3 1200 (quad core) |
| Ram | 8 GB |
| GPU | Nvidia gtx 1050 ti |
File zip yang berisi sponza, ruang interogasi, san miguel, bistro, kamar mandi, dll. Dapat ditemukan di sini: https://drive.google.com/file/d/1nvkeuhdask61xmtsonouuu5a-u-mtko/view?usp=share_link
Ekstrak folder sumber daya.zip ke dalam akar stratusgfx. Kemudian akan berada pada level yang sama dengan bin/, contoh/, sumber/, tes/. Pastikan bahwa struktur folder terlihat seperti stratusGFX/sumber daya/ * di mana * akan menjadi folder seperti sponza, bistro, dll.
(Lihat lebih jauh ReadMe ini untuk daftar kredit lengkap dari mana data model 3D berasal)
Basis kode ini saat ini tidak akan berfungsi pada macOS. Linux dan Windows keduanya baik -baik saja selama driver grafis mendukung OpenGL 4.6 dan kompiler mendukung C ++ 17.
Pertama mengatur repo
git clone --recursive https://github.com/KTStephano/StratusGFX.git
cd StratusGFX
Pastikan driver grafis Anda terkini.
Di Linux Anda mungkin perlu menginstal paket berikut:
libgl1-mesa-dev
libxext-dev
(atau setara dengan distro Anda)
Ini adalah build yang disukai jika yang ingin Anda lakukan adalah membangun contoh dan menjalankannya.
python3 ./build_examples.py --assimp
-> Linux Catatan: Jika Anda mendapatkan kesalahan selama pembangunan Assip dari langkah di atas, gunakan manajer paket lokal Anda untuk menginstal AssImp sebagai gantinya. Kemudian menjalankan kembali langkah di atas sebagai:
python3 ./build_examples.py
Sekarang Anda harus dapat masuk ke stratusgfx/ bin/ folder dan menjalankan contohnya!
Gunakan ini jika Anda berencana untuk membuat perubahan kode sumber pada apa pun dalam contoh/ sumber/ atau tes/. Anda hanya perlu membangun dependensi sekali dan kemudian setelah itu Anda dapat menjalankan kembali langkah build cmake setiap kali Anda membuat perubahan.
Bangun dependensi pihak ke -3 -> seharusnya hanya perlu melakukan ini sekali per klon
python3 ./dependency_build.py --assimp
-> Linux Catatan: Jika Anda mendapatkan kesalahan saat membangun AssImp, gunakan manajer paket lokal Anda untuk menginstal Assimp sebagai gantinya. Kemudian menjalankan kembali langkah di atas sebagai:
python3 ./dependency_build.py
Sekarang bangun sumber stratusgfx
cmake -Bbuild -S. -DBUILD_TESTS=ON
cmake --build build/ -j 8 --config RelWithDebInfo
cmake -Bbuild -S. -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_TESTS=ON
cmake --build build/ -j 8
Semua executable akan dimasukkan ke folder StratusGFX/Bin. Pastikan Anda menjalankannya saat berada di dalam stratusgfx/bin/. Yang bagus untuk lari untuk melihat apakah itu berhasil
Ex00_StartupShutdown.exe (runs through initialize, run one frame, shutdown sequence)
Ex01_StratusGFX.exe (you should see a forest of red cubes since textures aren't bundled with source)
StratusEngineUnitTests.exe
StratusEngineIntegrationTests.exe
Jika Anda mengalami masalah dengan pengunduhan aset 3D atau menjalankan contoh, tempat yang baik untuk memeriksa ada di sini:
https://github.com/ktstephano/stratusgfx/wiki/examples
Jika ini tidak membantu maka jangan ragu untuk mengirimi saya email ([email protected]) atau buka masalah.
Kredit untuk aset 3D yang digunakan dalam contoh/demo adalah sebagai berikut:
Crytek Sponza
Intel Sponza
San Miguel
Bistro
Toko sampah
Kamar mandi
Ruang interogasi
Gudang yang ditinggalkan
Anda dapat memeriksa tinjauan arsitektur tingkat tinggi, atau Anda dapat mulai dengan melihat melalui kode di bawah contoh/exampleEnv00 dan contoh/contohEnv01. Keduanya bergantung pada kode yang ada di dalam contoh/umum yang merupakan tempat lain yang baik untuk melihat -lihat.
Tidak ada adegan uji yang dibundel dengan sumber ini sehingga seluruh lingkungan akan benar -benar kosong saat berjalan.
Wasd untuk bergerak
Mouse kiri untuk terbang, mouse kanan untuk terbang ke bawah
Anda membuka kunci pencarian/lihat ke bawah untuk kamera
F Mengalok lampu kamera
E mengubah cahaya arah
G mengotak pencahayaan global
R mengkompiring ulang semua shader