Helix Toolkit is a collection of 3D components for .NET Framework.
HelixToolkit.WPF: Adds variety of functionalities/models on the top of internal WPF 3D model (Media3D namespace).
HelixToolkit.SharpDX.WPF: 3D Components and XAML/MVVM compatible Scene Graphs based on SharpDX(DirectX 11) for high performance usage.
HelixToolkit.UWP: 3D Components and XAML/MVVM compatible Scene Graphs based on SharpDX(DirectX 11) for Universal Windows App.
Description | Value |
---|---|
License | The MIT License (MIT) |
Web page | http://helix-toolkit.org/ |
Documentation | http://docs.helix-toolkit.org/ |
Forum | http://forum.helix-toolkit.org/ |
Chat | https://gitter.im/helix-toolkit/helix-toolkit |
Source repository | http://github.com/helix-toolkit/helix-toolkit |
Latest build | http://ci.appveyor.com/project/objorke/helix-toolkit |
Issue tracker | http://github.com/helix-toolkit/helix-toolkit/issues |
NuGet packages | http://www.nuget.org/packages?q=HelixToolkit |
MyGet feed | https://www.myget.org/F/helix-toolkit |
StackOverflow | http://stackoverflow.com/questions/tagged/helix-3d-toolkit |
https://twitter.com/hashtag/Helix3DToolkit |
Visual Studio 2017. Windows 10 SDK.
Missing fxc.exe issue with newest Windows 10 SDK:
Copy fxc.exe in C:\Program Files (x86)\Windows Kits\10\Bin\10.0.xxx\x86 to C:\Program Files (x86)\Windows Kits\10\bin\x86 to fix this issue. Because the HLSL compile tool hard coded the path.
Auto adapter selection in EffectsManager does not guarantee to use external Nvidia graphic card for rendering. To make sure using the Nvidia graphic card, add static NVOptimusEnabler nvEnabler = new NVOptimusEnabler();
in MainWindow.xaml.cs
.
2. Using RenderDoc for SharpDX render profiling
To use RenderDoc, following settings must be set on Viewport3DX.
EnableSwapChainRendering = true;
EnableD2DRendering = false;
We are currently working on HelixToolkit 2.0 under develop branch. Mainly focus on HelixToolkit.SharpDX.WPF and HelixToolkit.UWP.
Unstable prereleased UWP nuget package is available in MyGet Feed.
All 1.x.x related pull requests, please use 1.1.0/Release branch.
- New architecture for backend rendering and shader management. No more dependency from obsoleted Effects framework. EffectsManager is mandatory to be provided from ViewModel for resource live cycle management by user to avoid memory leak.
- Many performance improvements. Viewports binding with same EffectsManager will share common resources. Models binding with same geometry3D will share same geometry buffers. Materials binding with same texture will share same resources.
- Support basic direct2d rendering and layouts arrangement. (Still needs a lot of implementations)
- No more HelixToolkit.WPF project dependency.
- Unify dependency property types. All WPF.SharpDx model's dependency properties are using class under System.Windows.Media. Such as Vector3D and Color. More Xaml friendly.
- Post effect support.
- Supports transparent meshes rendered after opaque meshes. IsTransparent property is added in MaterialGeometryModel3D.
- Rendering order by RenderType flag:
- Core implementation are separated from platform dependent controls(Element3D) into its own Scene Node classes. Scene Node serves as complete Scene Graph for traversal inside render host. Element3D will only be used as a wrapper to manipulate scene node properties from XAML.
- Other on going changes.
V1.1.0 release is available.
https://www.nuget.org/packages/HelixToolkit.Wpf/1.1.0
https://www.nuget.org/packages/HelixToolkit.Wpf.SharpDX/1.1.0
V1.1.0 Relase source code is under : https://github.com/helix-toolkit/helix-toolkit/tree/release/1.1.0