A Windows desktop 3D model viewer built with WPF, OpenTK, and OpenGL. The project combines a WPF control surface with an OpenTK rendering window to inspect mesh geometry, adjust placement, and preview models in a print-bed style workspace.
- Load and inspect
STLandGLBmodels. - Orbit, pan, and zoom the camera in real time.
- Move, rotate, scale, reset, and clone loaded models.
- Show a printer-bed volume to check model fit against configured build dimensions.
- Open a model from the command line or by using the in-app import workflow.
- C#
- .NET 10
- WPF for the desktop UI
- OpenTK
4.9.4for OpenGL integration
To build and run the project, you will need:
- Windows 10 or later
- .NET 10 SDK
- Visual Studio with WPF and .NET desktop development support
- Clone the repository.
- Open
OpenGL3DViewerMVVM.csprojin Visual Studio. - Restore packages and build the solution.
- Run the project.
- The viewer opens sample assets from the
Testfilesfolder, including bothSTLandGLBexamples. - Viewer settings are persisted under the current user's application data folder.
- Shortcuts:
- Mouse drag: Orbit camera
- Scroll wheel: Zoom camera
- Alt + Mouse drag: Move the selected model
- Shift + Mouse drag: Pan camera
Draw/OpenGL drawing and render helpersMeshIOLib/mesh loading code for supported file formatsModelLib/geometry, model, and utility typesView/WPF windows and UI panelsResources/icons, images, and localization assetsTestfiles/sample models for quick testing
Created by Charles Chang (charles.chang@live.com).
Third-party library:
This project is licensed under the MIT License.
