|
1 | | -## Latest updated |
| 1 | +## VTK 9.5 is out |
| 2 | + |
| 3 | +__June 24, 2025__ |
| 4 | + |
| 5 | +The [9.5.0 release](https://www.kitware.com/vtk-9-5-0/) includes many improvments regarding the integration of WASM. In addition to observing VTK objects on the client side, you can also invoke methods on VTK objects. This enables us to implement client/server calls for handling picking with client side objects. The other hidden improvement is related to the increased number of vtk objects available in WASM which should help in reproducing more complex VTK scene more accurately. |
| 6 | + |
| 7 | +You can install the equivalent python wheel with the command |
| 8 | + |
| 9 | +```sh |
| 10 | +pip install "vtk==9.5.0" --extra-index-url https://wheels.vtk.org |
| 11 | +``` |
| 12 | + |
| 13 | +The WASM bundle is available here: |
| 14 | + |
| 15 | +[vtk-9.5.0-wasm32-emscripten.tar.gz](https://gitlab.kitware.com/vtk/vtk/-/package_files/5327/download) |
| 16 | + |
| 17 | +## Fix serialization for RenderingAnnotation module |
| 18 | + |
| 19 | +__June 23, 2025__ |
| 20 | + |
| 21 | +See [vtk/vtk!12192](https://gitlab.kitware.com/vtk/vtk/-/merge_requests/12192) |
| 22 | +- Fix deserialization of `vtkAlgorithm` inputs |
| 23 | +- Fix serialization of `vtkDataSetMapper` inputs |
| 24 | +- Enables (de)serialization of necessary indexed properties in _RenderingAnnotation_ |
| 25 | +- Fix (de)serialization of `vtkLabelPlacementMapper` and `vtkLabelHierarchy` |
| 26 | + |
| 27 | +## Add serialization for vtkGraph and ViewsInfovis module |
| 28 | + |
| 29 | +__June 23, 2025__ |
| 30 | + |
| 31 | +See [vtk/vtk!12199](https://gitlab.kitware.com/vtk/vtk/-/merge_requests/12199) |
| 32 | + |
| 33 | +- Added manual (de)serialization helper for `vtkGraph` |
| 34 | +- Enable auto serialization for subclasses of `vtkGraph` |
| 35 | +- Enable serialization in _ViewsInfovis_ |
| 36 | + - Expose relevant properties, exclude redundant ones |
| 37 | +- Serialize child items in vtkContextTransform |
| 38 | + - Cannot do this in `vtkAbstractContextItem` since some subclasses (like `vtkDendrogramItem`) add items to themselves, leading to extra child items after deserialization and errors when rendering those child items. |
| 39 | +- A few unrelated serialization fixes (`vtkFramebufferPass`, `vtkMapperCollection`) |
| 40 | + |
| 41 | +## 9.5.20250621 is now available! |
| 42 | +__June 21, 2025__ |
| 43 | + |
| 44 | +You can install the equivalent python wheel with the command |
| 45 | + |
| 46 | +```sh |
| 47 | +pip install "vtk==9.5.20250621.dev0" --extra-index-url https://wheels.vtk.org |
| 48 | +``` |
| 49 | + |
| 50 | +The WASM bundle is available here: |
| 51 | + |
| 52 | +1. [vtk-9.5.20250621-wasm32-emscripten.tar.gz](https://gitlab.kitware.com/vtk/vtk/-/package_files/5329/download) |
| 53 | +2. [vtk-9.5.20250621-wasm64-emscripten.tar.gz](https://gitlab.kitware.com/vtk/vtk/-/package_files/5328/download) |
| 54 | + |
| 55 | +## 9.5.20250614 is now available! |
| 56 | +__June 14, 2025__ |
| 57 | + |
| 58 | +You can install the equivalent python wheel with the command |
2 | 59 |
|
3 | | -Clipping planes on mapper is now supported. Which allow us to implement that demo in plain client side. |
| 60 | +```sh |
| 61 | +pip install "vtk==9.5.20250614.dev0" --extra-index-url https://wheels.vtk.org |
| 62 | +``` |
| 63 | + |
| 64 | +The WASM bundle is available here: |
| 65 | + |
| 66 | +1. [vtk-9.5.20250614-wasm32-emscripten.tar.gz](https://gitlab.kitware.com/vtk/vtk/-/package_files/5323/download) |
| 67 | +2. [vtk-9.5.20250614-wasm64-emscripten.tar.gz](https://gitlab.kitware.com/vtk/vtk/-/package_files/5322/download) |
| 68 | + |
| 69 | +## 9.5.20250607 is now available! |
| 70 | +__June 7, 2025__ |
| 71 | + |
| 72 | +You can install the equivalent python wheel with the command |
| 73 | + |
| 74 | +```sh |
| 75 | +pip install "vtk==9.5.20250607.dev0" --extra-index-url https://wheels.vtk.org |
| 76 | +``` |
| 77 | + |
| 78 | +The WASM bundle is available here: |
| 79 | + |
| 80 | +1. [vtk-9.5.20250607-wasm32-emscripten.tar.gz](https://gitlab.kitware.com/vtk/vtk/-/package_files/5261/download) |
| 81 | +2. [vtk-9.5.20250607-wasm64-emscripten.tar.gz](https://gitlab.kitware.com/vtk/vtk/-/package_files/5262/download) |
| 82 | + |
| 83 | +## Clipping planes in WASM/WebGL |
| 84 | + |
| 85 | +__June 6, 2025__ |
| 86 | + |
| 87 | +Clipping planes on mapper is now supported by [vtk/vtk!12176](https://gitlab.kitware.com/vtk/vtk/-/merge_requests/12176). This allow us to implement the TIE fighter clip plane demo in client side. |
4 | 88 |
|
5 | 89 | <iframe src="/vtk-wasm/demo/viewer-starfighter2.html" height="592" width="100%" frameborder="0" allowfullscreen="" title="Rendering clipping"></iframe> |
6 | 90 |
|
7 | | -## Add support for 32 and 64 bits WASM bundle |
| 91 | +## Fix serialization for 3D widgets |
| 92 | + |
| 93 | +__June 5, 2025__ |
| 94 | + |
| 95 | +- [vtk/vtk!12162](https://gitlab.kitware.com/vtk/vtk/-/merge_requests/12162) fixes serialization errors of classes |
| 96 | +in the _InteractionWidgets_ module. |
| 97 | +- Enable auto serialization for `vtkResliceCursorRepresentation`, `vtkDistanceRepresentation`, `vtkTextRepresentation`, and related classes. |
| 98 | + |
| 99 | +## Fix serialization of various classes |
| 100 | + |
| 101 | +__June 4, 2025__ |
| 102 | + |
| 103 | +- [vtk/vtk!12167] fixed serialization for various classes and enables serialization for more classes in the _ImagingCore_, _ImagingColor_, _RenderingGridAxes_, and the _RenderingImage_ modules. |
| 104 | +- The `vtkSignedCharArray` class now has serialization enabled. |
| 105 | +- The redundant width/height properties of vtkActor2D are now excluded from (de)serialization. |
| 106 | + |
| 107 | +## 9.5.20250531 is now available! |
| 108 | + |
| 109 | +__May 31, 2025__ |
| 110 | + |
| 111 | +You can install the equivalent python wheel with the command |
| 112 | + |
| 113 | +```sh |
| 114 | +pip install "vtk==9.5.20250531.dev0" --extra-index-url https://wheels.vtk.org |
| 115 | +``` |
| 116 | + |
| 117 | +The WASM bundle is available here: |
8 | 118 |
|
9 | | -.... |
| 119 | +1. [vtk-9.5.20250531-wasm32-emscripten.tar.gz](https://gitlab.kitware.com/vtk/vtk/-/package_files/5198/download) |
| 120 | +2. [vtk-9.5.20250531-wasm64-emscripten.tar.gz](https://gitlab.kitware.com/vtk/vtk/-/package_files/5197/download) |
| 121 | + |
| 122 | + |
| 123 | +## Add get/set functions in vtkRemoteSession |
| 124 | + |
| 125 | +__May 27, 2025__ |
| 126 | + |
| 127 | +`vtkRemoteSession::getState` is deprecated in favor of `vtkRemoteSession::get`. The new `vtkRemoteSession::set` lets you |
| 128 | +apply properties from JSON in bulk on a VTK object. See [vtrk/vtk!12155](https://gitlab.kitware.com/vtk/vtk/-/merge_requests/12155) |
10 | 129 |
|
11 | 130 | ## Add runtime support for WebGL2 and WebGPU |
12 | 131 |
|
| 132 | +__May 24, 2025__ |
| 133 | + |
13 | 134 | You can now choose the backend to use for rendering your VTK scene. The WebGPU is still work in progress but is now available for testing via runtime configuration option. |
14 | 135 |
|
15 | | -## Helper JavaScript library |
| 136 | +WebGPU classes in VTK are now serialized and available in the vtkWebAssemblyAsync.{mjs,wasm} files. Subsequent packages will distribute both vtkWebAssemblyAsync.{mjs,wasm} and vtkWebAssembly.{mjs,wasm} files. The async package will only work in browsers that enable JavaScript Promise Integration ([JSPI](https://github.com/WebAssembly/js-promise-integration)). See [vtk/vtk!12143](https://gitlab.kitware.com/vtk/vtk/-/merge_requests/12143) |
16 | 137 |
|
17 | | -A new JavaScript library is available under `@kitware/trame-vtklocal` which delivers a set of helper tools for VTK.wasm and JavaScript. |
18 | | -This include a standalone viewer for a VTK scene dump, a wrapper for pure JavaScript usage and some core handler when creating a widget (i.e. React, Svelt, Angular...) for interating with a trame-vtklocal server implementation. |
| 138 | +## Fix serialization for RenderingVolume module |
19 | 139 |
|
20 | | -## API refactor with remote and standalone capabilities |
| 140 | +__May 27, 2025__ |
21 | 141 |
|
22 | | -bla |
| 142 | +[vtk/vtk!12142] fixes serialization errors that arise when serializing classes in the _RenderingVolume_ module. |
23 | 143 |
|
24 | | -## VTK 9.5 is out |
| 144 | +## Add standalone and remote session API |
| 145 | + |
| 146 | +__May 19, 2025__ |
| 147 | + |
| 148 | +The `vtkWebAssembly.mjs` library now provides two new classes `vtkRemoteSession` and `vtkStandaloneSession`. |
| 149 | +- Remote session API is concerned with use cases where a "server" creates VTK |
| 150 | + objects and sends the state to a WASM "client" that deserializes the state |
| 151 | + into objects to mimic the visualization pipeline on the "server". |
| 152 | + This API does not allow creating objects in the WASM world. It is possible, |
| 153 | + although very difficult and prone to bugs. |
| 154 | + |
| 155 | +- Standalone API is important when one wants to directly create and manipulate objects |
| 156 | + in the local context in the absence of a server. |
| 157 | + |
| 158 | +See [vtk/vtk!12110](https://gitlab.kitware.com/vtk/vtk/-/merge_requests/12110) |
| 159 | + |
| 160 | +## Fix vtkFieldData deserialization when no. of arrays is the same but some or all individual arrays have changed |
| 161 | + |
| 162 | +__May 19, 2025__ |
| 163 | + |
| 164 | +[vtk/vtk!12129](https://gitlab.kitware.com/vtk/vtk/-/merge_requests/12129) fixed a bug where the arrays had their values updated only when the total number of arrays in the vtkFieldData changed between deserializations. Now, it always update the array list because even though the number of arrays remain the same, the arrays themselves might be different. |
| 165 | + |
| 166 | +## Add support for 32 and 64 bits WASM bundle |
| 167 | + |
| 168 | +__May 14, 2025__ |
| 169 | + |
| 170 | +Build and distribute artifacts for wasm64. This package allows rendering large meshes bigger than 4GB. It requires a web browser that supports 64-bit wasm memories. |
| 171 | + |
| 172 | +## 9.5.20250513 is now available! |
| 173 | +__May 13, 2025__ |
25 | 174 |
|
26 | | -The 9.5 release includes many improvment regarding the integration of WASM. With this new release, on top of observing VTK objects on the client side, you can also perform methods call. This enables us to implement some client/server calls for handling picking with client side resolution. The other hidden improvement is related to the increased number of vtk objects available in WASM which should help in reproducing more complex VTK scene more accurately. |
| 175 | +You can install the equivalent python wheel with the command |
| 176 | + |
| 177 | +```sh |
| 178 | +pip install "vtk==-9.5.20250513-wa" --extra-index-url https://wheels.vtk.org |
| 179 | +``` |
| 180 | + |
| 181 | +The WASM bundle is available here: |
| 182 | + |
| 183 | +[vtk-9.5.20250513-wasm32-emscripten.tar.gz](https://gitlab.kitware.com/vtk/vtk/-/package_files/5101/download) |
| 184 | + |
| 185 | +## 9.5.20250510 is now available! |
| 186 | +__May 10, 2025__ |
| 187 | + |
| 188 | +You can install the equivalent python wheel with the command |
| 189 | + |
| 190 | +```sh |
| 191 | +pip install "vtk==-9.5.20250510-wa" --extra-index-url https://wheels.vtk.org |
| 192 | +``` |
| 193 | + |
| 194 | +The WASM bundle is available here: |
| 195 | + |
| 196 | +[vtk-9.5.20250510-wasm32-emscripten.tar.gz](https://gitlab.kitware.com/vtk/vtk/-/package_files/5067/download) |
| 197 | + |
| 198 | +## Add serialization for pickers |
| 199 | + |
| 200 | +__May 5, 2025__ |
| 201 | + |
| 202 | +[vtk/vtk!12095](https://gitlab.kitware.com/vtk/vtk/-/merge_requests/12095) enables auto serialization for pickers in the _RenderingCore_ module, as well as `vtkAssemblyNode`, `vtkAssemblyPath`, and `vtkProp3DCollection` for properties of certain pickers. |
| 203 | + |
| 204 | +## Fix serialization of VTK classes |
| 205 | + |
| 206 | +__April 25, 2025__ |
| 207 | + |
| 208 | +Many serialization issues were fixed in [vtk/vtk!12012](https://gitlab.kitware.com/vtk/vtk/-/merge_requests/12012). Serialization capability was also added to some classes. Here's a list of classes |
| 209 | +that were affected: |
| 210 | + |
| 211 | +- vtkActor2D |
| 212 | +- vtkBitArray |
| 213 | +- vtkDataArray |
| 214 | +- vtkDiscretizableColorTransferFunction |
| 215 | +- vtkFieldData |
| 216 | +- vtkInformation |
| 217 | +- vtkLabeledContourMapper |
| 218 | +- vtkLogLookupTable |
| 219 | +- vtkMultiBlockDataSet |
| 220 | +- vtkOpenGLLabeledContourMapper |
| 221 | +- vtkPolyDataMapper2D |
| 222 | +- vtkProp3DFollower |
| 223 | +- vtkProperty |
| 224 | +- vtkRenderWindow |
| 225 | +- vtkScalarsToColors |
| 226 | +- vtkShaderProperty |
| 227 | +- vtkStructuredGrid |
| 228 | +- vtkTextPropertyCollection |
| 229 | +- vtkTexture |
| 230 | +- vtkVariant |
| 231 | +- vtkVariantArray |
| 232 | +- vtkWindow |
| 233 | + |
| 234 | +## Helper JavaScript library |
| 235 | + |
| 236 | +__October 7, 2024__ |
| 237 | + |
| 238 | +A new JavaScript library is available under `@kitware/trame-vtklocal` which delivers a set of helper tools for VTK.wasm and JavaScript. |
| 239 | +This include a standalone viewer for a VTK scene dump, a wrapper for pure JavaScript usage and some core handler when creating a widget (i.e. React, Svelt, Angular...) for interating with a trame-vtklocal server implementation. |
0 commit comments