BlackPearl Engine is a dynamic GI rendering engine to simulate different dynamic GI algorithm,such as light probe based GI,voxel cone tracing GI, image based lighting, SDF DDGI.You can select the algorithm you want to simulate in SandBox.
Supports Windows and Android platforms. Currently, the lighting system on the Android platform is still relatively simple, and GI is still under planning.
Platform | Graphics API |
---|---|
Windows | OpenGL ,Vulkan |
Android | GLES |
Windows
- NVIDIA GeForce RTX 2060/PCIe/SSE2
- Windows 10
- OpenGL Version :4.5.0
Android: Test on two devices: Android 10 Mali/ Android 12 Adreno
- IBL
- voxel cone tracing
- light probe GI
- SDF DDGI
- Gpu Driven
- Batch rendering
- Forward pipeline
- Deffered pipeline
- PBR material
- Simple Shadowmap, PCSS
- Terrain
- SSR
- RHI support Vulkan, OpenGL, GLES
Dynamic Global illumination PPT-DXT00 Master thesis
Wiki
: https://github.com/DXT00/BlackPearl-Rendering-Engine/wiki/Global-DF-Based-DDGI
batch rendering only need 9 drawcalls,and maintain 60 fps. improve (objs num/batch num) performance
since the transform matrix needs to be updated every frame ,can only reach 20 fps
upload all data to gpu once, can reach 60 fps
Before starting, you need to download the third-party libraries and Assets. see BlackPearl vendor
- Open the directory: app/src/main/cpp
- select render API, modify the RenderAPI Settings in GenerateProject.bat:
call vendor\bin\premake\premake5.exe vs2022 --RenderAPI=opengl
PAUSE
You can choose RenderAPI from the following three options:
{ "opengl", "OpenGL" },
{ "vulkan", "Vulkan (Windows only)" }
-
run
GenerateProject.bat
to set up visual studio project -
set
Sandbox
orSandboxVK
as the startup project.
- compile
BlackPearl
andSandBoxAndroid
using Clion.
ANDROID_NDK | ANDROID_PLATFORM |
---|---|
25.1.8937393 | android-26 Or any of the above versions |
camke settings:
cmake -DCMAKE_BUILD_TYPE=Debug -G Ninja -DCMAKE_SYSTEM_NAME=Android -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_SYSTEM_VERSION=26 -DANDROID_PLATFORM=android-26 -DANDROID_ABI=arm64-v8a -DCMAKE_ANDROID_ARCH_ABI=arm64-v8a -DANDROID_NDK=${Path-to-AndroidSDK}\ndk\25.1.8937393 -DCMAKE_ANDROID_NDK=${Path-to-AndroidSDK}\ndk\25.1.8937393 -DCMAKE_TOOLCHAIN_FILE=${Path-to-AndroidSDK}\ndk\25.1.8937393\build\cmake\android.toolchain.cmake -DCMAKE_CXX_FLAGS=-std=c++11
-
open blackpearl app by Android Studio
-
run the app
Please download the vendor library at the following link: url:https://pan.baidu.com/s/1JtBzMzp5xZo1HRNRfrIkHQ?pwd=1234 Extract code:1234
copy to app\src\main\cpp\BlackPearl\vendor
Please download the assets library at the following link: https://pan.baidu.com/s/1qclUPOsQ73bas0TnDH_gNA?pwd=1234 Extract code:1234
copy to app\src\main\cpp\assets