Awesome
Here is the Rust implementation of Wolf
Wolf Engine
<img src="https://raw.githubusercontent.com/WolfEngine/WolfEngine/main/Logo.png" width="256" height="256" alt="WolfEngine"/> <p><b>Welcome to the Wolf Engine source code.</b></p> <p>The <b>Wolf Engine</b> is the next generation of <a href="https://github.com/PooyaEimandar/PersianEngine">Persian Game Engine</a> which is a cross-platform open source game engine created by <a href="https://pooyaeimandar.github.io/">Pooya Eimandar</a>. The Wolf is a comprehensive set of C++ open source libraries for realtime rendering, realtime streaming and game developing, which is support <b>Lua</b> and <b>WASM</b> as an embedded scripting languages.</p>Build
- Prerequisites - For windows, make sure install the latest Windows 11/10 SDK
then make sure get the main branch
git clone https://github.com/WolfEngine/WolfEngine.git --branch main --depth 1
CMakePresets
To list configure presets: cmake . --list-presets
To list build presets: cmake --build --list-presets
To install wolf: cmake --install <build-dir> --prefix <prefix>
For example for building wolf for android:
cmake . --preset android-arm64-release
cmake --build --preset android-arm64-release
For example for building wolf for windows:
cmake . --preset win-x64-release
cmake --build --preset win-x64-release
cmake --install C:/WolfEngine/build/win-x64-release --prefix C:/wolf
Recent Sample
<p>Dynamic LOD Generation using <a href="https://www.simplygon.com/" target="_blank">Simplygon</a></p> <img src="https://raw.githubusercontent.com/WolfEngine/WolfEngine/wolf-2/samples/03_advances/07_lod/doc/view.gif" width="640" height="360" alt="Dynamic LOD Generation gif"/>Supported platforms
Not Supported | Planned | In Progress | Done |
---|---|---|---|
:x: | :memo: | :construction: | :white_check_mark: |
Supported platforms and APIs for render module
API | Windows | Linux | macOS | iOS | Android | Wasm |
---|---|---|---|---|---|---|
GPU | Vulkan/OpenGL ES :construction: | Vulkan/OpenGL ES :memo: | MoltenVK :memo: | MoltenVK :memo: | Vulkan/OpenGL ES :memo: | WebGL/WebGPU :memo: |
Supported platforms and APIs for media module
API | Windows | Linux | macOS | iOS | Android | Wasm |
---|---|---|---|---|---|---|
Bitmap | :white_check_mark: | :white_check_mark: | :memo: | :memo: | :memo: | :x: |
FFmpeg | :white_check_mark: | :white_check_mark: | :memo: | :memo: | :memo: | :x: |
JPEG | :white_check_mark: | :white_check_mark: | :memo: | :memo: | :memo: | :x: |
OpenAL | :white_check_mark: | :white_check_mark: | :memo: | :memo: | :memo: | :x: |
PNG | :white_check_mark: | :white_check_mark: | :memo: | :memo: | :memo: | :x: |
WebP | :memo: | :memo: | :memo: | :memo: | :memo: | :x: |
Supported platforms and APIs for stream module
API | Windows | Linux | macOS | iOS | Android | Wasm |
---|---|---|---|---|---|---|
gRPC | :memo: | :x: | :x: | :x: | :x: | :x: |
Janus | :construction: | :x: | :x: | :x: | :x: | :white_check_mark: |
QUIC | :white_check_mark: | :memo: | :memo: | :memo: | :memo: | :x: |
RIST | :white_check_mark: | :memo: | :memo: | :memo: | :white_check_mark: | :x: |
RTMP | :memo: | :x: | :x: | :x: | :x: | :x: |
RTSP | :white_check_mark: | :memo: | :memo: | :memo: | :memo: | :x: |
SRT | :white_check_mark: | :memo: | :memo: | :memo: | :memo: | :x: |
webRTC | :memo: | :memo: | :memo: | :memo: | :memo: | :memo: |
WebSocket | :white_check_mark: | :white_check_mark: | :memo: | :memo: | :memo: | :memo: |
Supported platforms and APIs for system module
API | Windows | Linux | macOS | iOS | Android | Wasm |
---|---|---|---|---|---|---|
Coroutine | :white_check_mark: | :white_check_mark: | :memo: | :x: | :x: | :x: |
GameTime | :white_check_mark: | :white_check_mark: | :memo: | :memo: | :memo: | :white_check_mark: |
Gamepad | :white_check_mark: | :white_check_mark: | :memo: | :memo: | :memo: | :white_check_mark: |
Virtual Gamepad | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
Log | :white_check_mark: | :white_check_mark: | :construction: | :construction: | :construction: | :construction: |
LuaJit | :memo: | :memo: | :memo: | :memo: | :memo: | :x: |
LZ4 | :white_check_mark: | :white_check_mark: | :memo: | :memo: | :memo: | :x: |
LZMA | :white_check_mark: | :white_check_mark: | :memo: | :x: | :x: | :x: |
OpenTelemetry | :memo: | :memo: | :memo: | :x: | :x: | :x: |
RAFT | :memo: | :memo: | :memo: | :memo: | :memo: | :memo: |
Screen Capture | :memo: | :construction: | :construction: | :x: | :x: | :x: |
Signal Slot | :white_check_mark: | :white_check_mark: | :construction: | :x: | :x: | :x: |
Stacktrace | :white_check_mark: | :white_check_mark: | :construction: | :construction: | :construction: | :x: |
Sycl | :memo: | :memo: | :memo: | :x: | :x: | :x: |
TCP | :white_check_mark: | :white_check_mark: | :memo: | :memo: | :memo: | :x: |
Trace | :white_check_mark: | :white_check_mark: | :memo: | :memo: | :memo: | :x: |
UDP | :construction: | :memo: | :memo: | :memo: | :memo: | :x: |
Wasm3 | :memo: | :memo: | :memo: | :memo: | :memo: | :memo: |
Projects using Wolf</h2>
- Wolf.Playout, a playout automation software
- Falcon, a real time 3D monitoring system
- PlayPod, the first cloud gaming platform launched in Middle East
- RivalArium, play and rival other users via our leagues and duels from any device, any location and let your skills generate income
Youtube
Wolf Engine © 2014-2023 Pooya Eimandar