A modern, high-performance framework for visualization and vision tasks, built on proven industry foundations. The framework aims to seamlessly integrate native AI modules, enabling high-performance vision processing and real-time AI capabilities directly within the graphics pipeline.
VizMotive Engine is a professional-grade graphics and computation framework, incorporating design principles from established engines while introducing innovative features for contemporary visualization and vision applications.
- High-performance rendering pipeline based on modern graphics architecture
- COM-based high-level API design for robust integration
- Comprehensive engine-level APIs with clean abstractions
- First-class support for DirectX 12 and Vulkan
- Modular architecture enabling flexible extension
The engine builds upon the architectural strengths of Wicked Engine and Filament, while introducing advanced rendering capabilities and vision-specific optimizations.
VizMotive/
├── EngineCore/ # Core engine implementation
├── GraphicsBackends/ # Graphics API implementations (DX12, Vulkan)
├── EngineShaders/ # Shader system implementation
├── EnginePlugins/ # Modular plugin system
├── Examples/ # Sample applications and demos
└── BUILD/ # Build configuration for Windows 10+
- Operating System: Windows 10 or later
- Development Environment: Visual Studio 2019 or later with C++17 support
- Graphics Hardware: DirectX 12 compatible GPU
- Version Control: Git (for cloning and submodule management)
git clone <repository-url>
cd VizMotive2The engine depends on external libraries managed as git submodules. Initialize them before building:
git submodule update --init --recursiveImportant: This step downloads the Assimp library required by the AssetIO plugin. Skipping this will cause build failures.
- Open
VizMotive2.slnin Visual Studio - In Solution Explorer, locate the Install project (under the InstallPackage folder)
- Right-click the Install project and select Rebuild
- The build system will automatically compile all dependencies in the correct order:
Engine_Windows- Core engine DLLGBackendDX12- DirectX 12 graphics backendGBackendVulkan- Vulkan graphics backend (optional)ShaderEngine- Shader compilation engineAssetIO- Asset importer plugin
Open a Developer Command Prompt for Visual Studio and run:
cd BUILD
build_install.batThis batch file builds all essential modules in both Debug and Release configurations.
Alternatively, build individual projects:
msbuild BUILD\Engine_Windows.vcxproj /p:Configuration=Release /p:Platform=x64
msbuild GraphicsBackends\GBackendDX12.vcxproj /p:Configuration=Release /p:Platform=x64
msbuild EngineShaders\ShaderEngine\ShaderEngine.vcxproj /p:Configuration=Release /p:Platform=x64
msbuild EnginePlugins\AssetIO\AssetIO.vcxproj /p:Configuration=Release /p:Platform=x64After a successful build, the compiled binaries will be located in:
bin/x64_Debug/ # Debug builds
├── VizEngined.dll # Core engine (debug)
├── GBackendDX12.dll # DirectX 12 backend
├── GBackendVulkan.dll # Vulkan backend
├── ShaderEngine.dll # Shader compiler
└── AssetIO.dll # Asset importer
bin/x64_Release/ # Release builds
├── VizEngine.dll # Core engine (release)
├── GBackendDX12.dll
├── GBackendVulkan.dll
├── ShaderEngine.dll
└── AssetIO.dll
The Install project also packages headers and binaries into VizMotive-root/Install for distribution.
Sample applications demonstrating engine features are located in the Examples/ directory:
# Build a specific example
msbuild Examples\Sample001\Sample001.vcxproj /p:Configuration=Release /p:Platform=x64
# Or build all examples via Visual Studio by building the entire solutionExamples range from Sample001 (basic setup) to Sample014 (advanced features).
If you encounter errors like fatal: repository not found when initializing submodules:
-
Verify the submodule URL in
.gitmodules:[submodule "EnginePlugins/AssetIO/External/assimp"] path = EnginePlugins/AssetIO/External/assimp url = https://github.com/assimp/assimp.git branch = v5.4.3 -
Sync and update:
git submodule sync git submodule update --init --recursive
- Ensure all submodules are properly initialized
- Verify Visual Studio 2019+ with C++17 support is installed
- Check that the platform is set to x64 (Win32 is not supported)
- Clean the solution and rebuild if encountering incremental build issues
If msbuild is not found in your PATH, use the Developer Command Prompt for Visual Studio which automatically configures the build environment.
The engine is structured to provide clear separation of concerns while maintaining high performance:
- Core functionality is isolated in the engine layer
- Graphics backends are implemented as pluggable modules
- Shader system provides a unified interface across graphics APIs
- Plugin architecture enables extensibility without core modifications