iMSTK issueshttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues2018-11-12T11:37:38-05:00https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/181Vulkan viewer doesn't follow same pausing criteria2018-11-12T11:37:38-05:00Nicholas MilefVulkan viewer doesn't follow same pausing criteriaNicholas MilefNicholas Milefhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/182Add multithreaded compilation2018-10-17T13:33:17-04:00Nicholas MilefAdd multithreaded compilationThe build process is very slow, particularly for VTK. To improve the performance, we should add the /MP compiler option via CMake.The build process is very slow, particularly for VTK. To improve the performance, we should add the /MP compiler option via CMake.https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/183Remove scene class dependency for the renderer2021-01-08T17:26:17-05:00Sreekanth ArikatlaRemove scene class dependency for the rendererCurrently, the renderer (VTK and Vulkan) loop over scene objects to access geometry and other attributes to optimize rendering pipeline. This is however not desired. Additional API needs to be created in the renderer to accommodate optim...Currently, the renderer (VTK and Vulkan) loop over scene objects to access geometry and other attributes to optimize rendering pipeline. This is however not desired. Additional API needs to be created in the renderer to accommodate optimization flags, geometry specification etc.
CC: @NickMilefhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/184Prune and add examples2018-12-05T20:12:44-05:00Sreekanth ArikatlaPrune and add examplesCurrently, there are some examples that were written to test a feature when it was created and requires pruning. We need to keep (and add) more comprehensive examples that showcase a subset of related features. A hello world type example...Currently, there are some examples that were written to test a feature when it was created and requires pruning. We need to keep (and add) more comprehensive examples that showcase a subset of related features. A hello world type example (close to Viewer example) will also be helpful.
@NickMilef @alexis\-giraulthttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/185Create more build bots for CI2018-12-04T11:26:20-05:00Sreekanth ArikatlaCreate more build bots for CICreate more build bots for testing additional optionsCreate more build bots for testing additional optionshttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/186Add FCL integration2019-07-04T16:20:55-04:00Sreekanth ArikatlaAdd FCL integrationiMSTK can benefit from a comprehensive library for collision detection like FCL
https://github.com/flexible-collision-library/fcliMSTK can benefit from a comprehensive library for collision detection like FCL
https://github.com/flexible-collision-library/fclhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/187Improve test coverage2019-07-04T16:31:13-04:00Sreekanth ArikatlaImprove test coverageEsp. for the following modules
* Geometry
* Collision detection
* Mesh I/O
* Scene and simulation managementEsp. for the following modules
* Geometry
* Collision detection
* Mesh I/O
* Scene and simulation managementhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/188Add OpenVR support to Vulkan2019-04-01T11:02:05-04:00Nicholas MilefAdd OpenVR support to VulkanNicholas MilefNicholas Milefhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/189Add more nightly build configurations2019-07-28T16:23:55-04:00Sreekanth ArikatlaAdd more nightly build configurationsCurrent builds:
* Windows 10; VS2013; VTK backend; Omni device ON; debug
* Windows 10; VS2013; VTK backend; Omni device ON; release
* Windows 10; VS2017; VTK backend; Omni device ON; debug
* Windows 10; VS2017; VTK backend; Omni device O...Current builds:
* Windows 10; VS2013; VTK backend; Omni device ON; debug
* Windows 10; VS2013; VTK backend; Omni device ON; release
* Windows 10; VS2017; VTK backend; Omni device ON; debug
* Windows 10; VS2017; VTK backend; Omni device ON; release
* Ubuntu 16.04; GCC; VTK backend; Omni OFF; debug
* Ubuntu 16.04; GCC; VTK backend; Omni OFF; release
* Mac OS (latest); ninja; VTK backend; Omni OFF; release
* Mac OS (latest); ninja; VTK backend; Omni OFF; debug
Add more builds esp. for vulkan backend.https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/190Change camera setViewAngle to setFieldOfView2018-11-30T13:38:25-05:00Nicholas MilefChange camera setViewAngle to setFieldOfViewI found a bug where the VTK and Vulkan renderers don't match up. It appears that the Vulkan renderer is calculating the perspective matrix the wrong way. I'm planning to fix this by changing the name of this function and fixing the Vulka...I found a bug where the VTK and Vulkan renderers don't match up. It appears that the Vulkan renderer is calculating the perspective matrix the wrong way. I'm planning to fix this by changing the name of this function and fixing the Vulkan renderer code to account for this.
@sreekanth\-arikatla @alexis\-giraultNicholas MilefNicholas Milefhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/191Merge Constrained Particle Dynamics code into imstk2019-07-04T16:44:26-04:00Sreekanth ArikatlaMerge Constrained Particle Dynamics code into imstkhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/192Test Vulkan back-end on Linux and Mac OS2021-06-01T23:25:31-04:00Sreekanth ArikatlaTest Vulkan back-end on Linux and Mac OSBefore release 1.0, it the back-end works without much effort we will add nightly builds, otherwise, we will add a note.Before release 1.0, it the back-end works without much effort we will add nightly builds, otherwise, we will add a note.Nicholas MilefNicholas Milefhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/193VTK features potentially useful for imstk2019-07-28T15:58:40-04:00Sreekanth ArikatlaVTK features potentially useful for imstkLinks to VTK features that could be useful in the context of medical simulation:
* [CombinePolydata](https://lorensen.github.io/VTKExamples/site/Cxx/Filtering/CombinePolyData/)
* [ConstrainedDelaunay2D](https://lorensen.github.io/VTKEx...Links to VTK features that could be useful in the context of medical simulation:
* [CombinePolydata](https://lorensen.github.io/VTKExamples/site/Cxx/Filtering/CombinePolyData/)
* [ConstrainedDelaunay2D](https://lorensen.github.io/VTKExamples/site/Cxx/Filtering/ConstrainedDelaunay2D/)
* [ExtractVisibleCells](https://lorensen.github.io/VTKExamples/site/Cxx/Filtering/ExtractVisibleCells/)
* [DeformMesh](https://lorensen.github.io/VTKExamples/site/Cxx/Meshes/DeformPointSet/)
* [SplitPolyData](https://lorensen.github.io/VTKExamples/site/Cxx/Meshes/SplitPolyData/)
* [IdentifyHoles](https://lorensen.github.io/VTKExamples/site/Cxx/Meshes/IdentifyHoles/)
* [ExtractEdges](https://lorensen.github.io/VTKExamples/site/Cxx/Meshes/ExtractEdges/)
* [Subdivision](https://lorensen.github.io/VTKExamples/site/Cxx/Meshes/Subdivision/)
* [Triangulate](https://lorensen.github.io/VTKExamples/site/Cxx/Meshes/Triangulate/)
* [Decimation](https://lorensen.github.io/VTKExamples/site/Cxx/Meshes/Decimation/)
* [CleanPolyData](https://lorensen.github.io/VTKExamples/site/Cxx/PolyData/CleanPolyData/)
* [DeleteCells](https://lorensen.github.io/VTKExamples/site/Cxx/PolyData/DeleteCells/)
* [VolumeRendering](https://lorensen.github.io/VTKExamples/site/Cxx/VolumeRendering/FixedPointVolumeRayCastMapperCT/)
* [Video](https://lorensen.github.io/VTKExamples/site/Cxx/Video/FFMPEG/)
* [Charts](https://www.vtk.org/Wiki/VTK/Charts)
* [Useful code snippets](https://lorensen.github.io/VTKExamples/site/Cxx/Snippets/)https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/194Add VisualModel to SceneObject2018-12-04T17:09:39-05:00Nicholas MilefAdd VisualModel to SceneObjectThe current scene object implementation is causing too much data to be placed in the Geometry class. For instance, RenderMaterial and visibility functions should be moved out of the Geometry class. Currently, each SceneObject can only co...The current scene object implementation is causing too much data to be placed in the Geometry class. For instance, RenderMaterial and visibility functions should be moved out of the Geometry class. Currently, each SceneObject can only contain one visual geometry object. In order to overcome this, we proposed that each scene object can contain a vector of the new VisualModel class. Each VisualModel can contain a RenderMaterial and Geometry object.Nicholas MilefNicholas Milefhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/195Add raytracing support to Vulkan renderer2019-07-28T15:59:15-04:00Nicholas MilefAdd raytracing support to Vulkan rendererNVidia released Vulkan extensions for raytracing (unfortunately not for OpenGL). This will help with complex rendering effects.
https://devblogs.nvidia.com/vulkan-raytracing/NVidia released Vulkan extensions for raytracing (unfortunately not for OpenGL). This will help with complex rendering effects.
https://devblogs.nvidia.com/vulkan-raytracing/Nicholas MilefNicholas Milefhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/196Cannot Start in Paused Mode2020-03-08T12:19:26-04:00Sreekanth ArikatlaCannot Start in Paused ModeRelease 2.0.0https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/197Add post-processing module for metrics visualization and analysis2019-07-28T15:59:18-04:00Sreekanth ArikatlaAdd post-processing module for metrics visualization and analysishttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/198Add VisualModel to documentation2018-12-04T17:09:25-05:00Nicholas MilefAdd VisualModel to documentationNicholas MilefNicholas Milefhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/199Update list of contributors associated with 1.0.0 release2022-04-20T08:34:40-04:00Jean-Christophe Fillion-RobinUpdate list of contributors associated with 1.0.0 releaseBased on https://gitlab.kitware.com/iMSTK/iMSTK/graphs/v1.0.0 , it seems the list of contributors listed in [Docs/source/releases.rst](https://gitlab.kitware.com/iMSTK/iMSTK/blob/master/Docs/source/releases.rst) is incomplete.Based on https://gitlab.kitware.com/iMSTK/iMSTK/graphs/v1.0.0 , it seems the list of contributors listed in [Docs/source/releases.rst](https://gitlab.kitware.com/iMSTK/iMSTK/blob/master/Docs/source/releases.rst) is incomplete.https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/200Add Frame Graph Feature2019-07-28T15:59:22-04:00Nicholas MilefAdd Frame Graph FeatureCurrently, it's difficult to add new workloads to the GPU and add new render passes in the Vulkan engine. Currently, render passes are in one big function called `renderFrame()` inside of imstkVulkanRenderer.cpp. This is getting messy, e...Currently, it's difficult to add new workloads to the GPU and add new render passes in the Vulkan engine. Currently, render passes are in one big function called `renderFrame()` inside of imstkVulkanRenderer.cpp. This is getting messy, especially with ensuring correct image layout transitions.
This is also problematic with compute shaders. The compute shader MR currently is asynchronous (async compute) with the render graph, but it only allows CPU read-back. I want to add support for Compute->Graphics transfer to easily allow for GPU physics.
The frame graph concept allows GPU workloads to be scheduled automatically and handle resource transitions/synchronization, particularly for explicit graphics APIs (Vulkan, DirectX 12, Metal, etc.). This is a relatively new (2017) idea for structuring a renderer:
https://www.gdcvault.com/play/1024612/FrameGraph-Extensible-Rendering-Architecture-in
This feature will be slowly integrated into the Vulkan renderer.Nicholas MilefNicholas Milef