Skip to content

Releases: nerfstudio-project/viser

v1.0.10

14 Sep 06:59
Compare
Choose a tag to compare

What's Changed

  • Support infinite grids, deprecate width_segments and height_segments by @brentyi in #579

Full Changelog: v1.0.9...v1.0.10

v1.0.9

14 Sep 02:36
Compare
Choose a tag to compare

What's Changed

  • Focal length improvements: Gaussian update synchronization, fix orbit crosshair scale by @brentyi in #573
  • Fix docstring on camera position update behavior by @brentyi in #576
  • Consistent shadow API for add_mesh_trimesh(), allow float input for receive_shadow by @brentyi in #578

Full Changelog: v1.0.8...v1.0.9

v1.0.8

06 Sep 07:44
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.0.7...v1.0.8

v1.0.7

05 Sep 08:11
Compare
Choose a tag to compare

What's Changed

  • BVH optimizations for instanced/batched meshes, fix rendering and display bugs by @brentyi in #558
  • Fix [0, 1] <=> [0, 255] conversion bug in RGBA picker component by @brentyi in #564
  • Fix mesh mounting bottlenecks caused by hover outlines by @brentyi in #565
  • Dirty flag for skinned meshes by @brentyi in #566

Full Changelog: v1.0.6...v1.0.7

v1.0.6

21 Aug 06:42
Compare
Choose a tag to compare

Fixes edge case when removing and re-adding clickable scene nodes.

Full Changelog: v1.0.5...v1.0.6

v1.0.5

21 Aug 06:03
Compare
Choose a tag to compare

Performance, dependency, and UI improvements.

What's Changed

  • Remove opencv-python from strict dependencies, add imageio fallback by @brentyi in #537
  • Fix batched mesh edge cases: off-by-one-frame, client.get_render() by @brentyi in #538
  • Performance: optimize add_box() and add_icosphere(), docs on performance tips, refactor state management by @brentyi in #540
  • Switch away from yarn, bump client dependency versions by @brentyi in #545
  • Orbit crosshair, development flags UI, fix Javascript minification by @brentyi in #546
  • Fix developer setting performance issues, RGBA encoding by @brentyi in #547

Full Changelog: v1.0.4...v1.0.5

v1.0.4

07 Aug 08:00
Compare
Choose a tag to compare

What's Changed

  • Fix incorrect argument reference in build_client_entrypoint by @MosesEbere in #530

New Contributors

Full Changelog: v1.0.3...v1.0.4

v1.0.3

04 Aug 14:59
Compare
Choose a tag to compare

Same as 1.0.2 release, but fixed client metadata.

Full Changelog: v1.0.2...v1.0.3

v1.0.1

31 Jul 10:21
Compare
Choose a tag to compare

What's Changed

  • Make tyro an examples-only dependency by @sea-bass in #516
  • Add Python 3.13 to CI by @brentyi in #513
  • Manually end event loop on exit to avoid nanobind reference leak warnings by @brentyi in #519
  • Add fixedDpr debug flag by @brentyi in #520
  • Update docs, add arXiv link by @brentyi in #523
  • Fix RGBA regression for images, revisit media_type / format props by @brentyi in #512

Full Changelog: v1.0.0...v1.0.1

v1.0.0

06 Jul 13:31
Compare
Choose a tag to compare

First stable release of Viser. Thanks to everyone who helped 🙂

We also have a white paper coming soon™, please stay tuned for this!

New Features

Batched Mesh Rendering

  • High-performance batched rendering for meshes and GLB files (#391, #438, #439, #449, #466, #467, #503, #504) - by @chungmin99
  • Per-instance transformations, colors, and scales
  • Automatic LOD (Level of Detail) for improved performance

Shadow Rendering

Fast 2D Plotting

  • Integrated uPlot for fast, real-time data visualization (#486) - by @slecleach

Collision Meshes for URDFs

  • Support both visual and collision meshes when loading URDF (#487) - by @sea-bass

Latency Compensation

  • Framerate compensation for poor network connections (#495, #505)

API Changes

Breaking Changes

  • add_box() and add_icosphere() now return BoxHandle and IcosphereHandle instead of MeshHandle (#475)
  • Batched axes props now consistent with add_batched_axes() signature (#418)

Deprecations

  • Most methods now require keyword arguments - positional arguments deprecated with warnings (#509)
    • Warnings will be printed if the old API is used.
  • Renamed APIs:
    • positionspoints for splines (#493)
    • point_ball_normpoint_shape for point clouds (#429)
    • set_environment_map()configure_environment_map() (#428)
    • auto_closeauto_close_seconds for notifications timeout (#508)

Additions

  • gui.add_html() - render custom HTML content (#387)
  • gui.add_text() - now supports multiline text (#431) - by @zerolover
  • add_point_cloud() - added precision="float16"/"float32" argument (#427) - by @ArthurAllshire
  • Transform controls callbacks: on_drag_start and on_drag_end (#479)
  • File downloads with save_immediately= flag (#386)
  • Canvas size configuration support (#422) - by @zerolover
  • Camera frustum variants option (#500)
  • add_box and add_icosphere now have default arguments (#501)

Bug Fixes

This is a full list of merged PRs. Many of them address recent regressions, so it's not representative of bugs in prior releases.

Rendering & Display

  • Fixed static analysis for button handles (#384)
  • Fixed visibility toggle for directional lights and edge cases (#423, #434)
  • Fixed uniform initialization in Gaussian splat shader (#447)
  • Fixed point cloud shader compatibility for Firefox (#454)
  • Fixed regression for broadcasted point cloud shape (#445)
  • Fixed prop updates for batched meshes (#466)
  • Fixed button rendering artifacts when varying control_width (#507)

Transform Controls & Scene Updates

  • Fixed pose updates for re-added scene nodes (#490)
  • Ensure transform control pose is updated after remounting (#492) - by @hongsukchoi
  • Transform controls now flush update messages on drag end (#485)

Client/Server Communication

  • Suppress key error when flushing disconnected clients (#440)
  • Fixed slow image encoding in _encode_image_binary() (#494) - by @alberthli
  • Position notifications correctly when dummyWindowDimensions is set (#442)
  • Fixed gui.configure_theme(show_share_button=False) (#426)
  • Improved file transfer robustness (#471)
  • Client/server version consistency checking via WebSocket subprotocol (#441)

URDF & File Handling

  • Fixed package name in error message (#410) - by @sea-bass
  • Local import for pyliblzfse to avoid dependency issues (#498)

Performance Improvements

  • Faster prop updates for meshes and point clouds (#388, #420)
  • Faster GLB loading (#430)
  • More efficient scene tree implementation (#478)
  • Optimized control panel rendering (#484, #496, #497)

UI/UX Enhancements

  • Redesigned control panel with improved organization (#484)
  • Re-added visibility painting for scene tree table (#389)
  • Minor GUI whitespace adjustments (#394)
  • Support for non-literal colors in GUI components (#456)
  • Added dummyWindowDimensions= and dummyWindowTitle= search parameters (#402)

Infrastructure & Dependencies

  • Upgraded to React 19, r3f v9, three r174, Mantine 7.17.2 (#409)
  • Updated @react-three/drei to ^10.0.5 (#419, #425)
  • Converted documentation from Markdown to RST (#421)
  • Removed Google Analytics tag for privacy (#407) - by @kikislater
  • Fixed Python 3.8 compatibility (#395)
  • Upper-bounded dependency versions for stability (#502)

Examples & Documentation

  • Added vertex selector to SMPL example (#433)
  • Improved URDF documentation (#472)
  • Reorganized examples and documentation (#474, #499, #506)
  • Updated example code to avoid breaking pip installations (#446)

New Contributors