Skip to content

Releases: google/model-viewer

v0.3.0

20 Apr 00:04
Compare
Choose a tag to compare

New features

  • 🆕 <model-viewer> now features built-in, customizable progress bars. See #487 for details.

Bug fixes

  • A pixel-rounding bug was fixed that sometimes let to unsightly margins around the edge of <model-viewer> #489

Other notable changes

  • We have added new CSS custom properties to our docs #493
  • ✋BREAKING CHANGE: The reveal-when-loaded attribute has been removed in favor of the new reveal attribute and related semantics #487
  • ✋BREAKING CHANGE: As of #487 the scene is now obscured by a poster by default until loading and rendering has completed. If no poster image is specified, the poster will be a solid color. You can revert to the previous default with CSS. For example:
<style>
model-viewer {
  --poster-color: transparent;
}
</style>
  • ✋BREAKING CHANGE: The default lighting conditions have changed. We recommend that you remove any lighting-related attributes (stage-light-intensity, environment-intensity, exposure etc) and review the new default lighting with your models before adding further customizations. Check here for a detailed description of the lighting changes.

v0.2.0

05 Apr 18:24
Compare
Choose a tag to compare

New features

  • 🆕camera-orbit: attribute lets you specify where the camera is positioned #452
  • 🆕getCameraOrbit(): method lets you access the camera position in real time #452
  • 🆕interaction-prompt-threshold: attribute lets you control how much time passes before the user is prompted to interact #452

Bug fixes

  • Stopped screen readers from focusing uninteresting elements in #452
    • Thanks to @svinkle for related a11y research
  • The interaction prompt now waits for the model to load before starting its internal timer #452
  • @pushmatrix ensured that auto-rotate does not begin until the model is loaded #471

Other notable changes

  • ✋BREAKING CHANGE: The controls attribute has been renamed to camera-controls #452
  • ✋BREAKING CHANGE: The default camera position when controls are disabled has changed #452
    • To use the old default, add camera-orbit="0 90deg auto" to your <model-viewer> markup
  • @yuinchien gave our docs an updated look at feel #474
  • @mikkoh improved dev build times #468
  • Per-frame compositing performance was improved by selectively disabling SVG animations #452

v0.1.2

26 Mar 01:34
Compare
Choose a tag to compare

New features

  • Animation support, and public API for controlling animations #421
  • align-model: attribute to control whether model is aligned by center of bounding volume or its root node position #441

Bug fixes

  • Materials were not being cloned correctly in some cases #440
  • Cleaned up 404s on the docs page #427

Other notable changes

  • Docs have updated with some nice informational tables related to browser feature support
  • Many memory leaks were cleaned up in our test suite #438

v0.1.1

06 Mar 05:57
Compare
Choose a tag to compare

This is a hotfix release to address two small regressions released in v0.1.0:

  • Fix PMREM rendering regressions from environment generator refactor #410
  • Fix focus ring overhanging from <model-viewer> bounding box #411

v0.1.0

05 Mar 22:27
Compare
Choose a tag to compare

This release marks the largest <model-viewer> update since it was launched publicly, and includes a ton of great work from our contributors. The following is a summary of that work:

New features

Thanks to a ton of foundational work by @jsantell, we have landed the following huge rendering improvements:

  • HDR environment map support #323
  • Environment-base radiance map (PMREM) support #338
  • ✋BREAKING CHANGE: Normalize lighting with Filament #387
    • Considered breaking because default lighting levels have changed

Additionally, we have landed the following new public API for controlling lighting details:

  • Configurable shadow-intensity attribute #388
  • Configurable exposure attribute #389
  • Configurable stage-light-intensity attribute #391
  • Configurable environment-image and environment-intensity attributes #392

We have also landed a bunch of improvements to accessibility for <model-viewer> overall:

  • ✋BREAKING CHANGE: Improved mobile scrolling behavior #311
    • Previously it was possible to become "trapped" by <model-viewer> swallowing events while scrolling
    • Considered breaking because the default interaction model is different now, see PR for details
  • Make poster focusable / dismissable via keyboard #313
  • Resize the scene correctly when zooming #314
  • Substantially improved a11y for camera controls #319
  • Added screen reader announcements related to loading status #345

Bug fixes

  • Make sure <model-viewer> works when WebGL is not available #329
    • In particular, this makes <model-viewer> compatible with Googlebot, which has WebGL disabled
  • We no longer light unlit materials #377

Other notable changes

  • ✋BREAKING CHANGE: We upgraded Three.js from r99 to r101 #312 #331
  • Intersection Observer support is now optional, we will use it if it is available #398
  • ✋BREAKING CHANGE: Our default bundle is now an ECMAScript module #401
    • If you prefer the old format, you can change your script source from dist/model-viewer.js to dist/model-viewer-umd.js to load a compatible bundle
    • We now recommend a new snippet for loading the bundles. Please refer to README.md for details!

We have added a new category of testing: fidelity testing. These tests will help us to keep rendering results in line with ourselves and other model viewers over time. Check out our live fidelity test results for an example of how different viewers are being compared!

  • Fidelity test regime has been introduced #305
  • Screenshot collection for golden reference images has been automated #351
  • We test against most of the Khronos glTF Sample Models #375

Since the last release, our docs have undergone a lot of changes, including a complete visual overhaul courtesy of @yuinchien :

  • Example snippet added for better docs samples #307
  • Docs received a major design overhaul #320
  • We (finally) added a screenshot to the README #332
  • Docs were further revised for v0.1.0 release #402

v0.0.7

09 Jan 01:55
1071306
Compare
Choose a tag to compare
v0.0.7 Pre-release
Pre-release

⌨️Keyboard controls for camera orientation
🙋‍♀️AR hologram faces the user when placed
🍦Smoother default camera controls
🦊Bugfixes for Android Firefox and IE11
💡Improved built-in lighting
👴Legacy bundles published to NPM
🆙Three.js upgraded to r99
🏎Performance tuning for mobile browser usages
✨Updated to use the latest WebXR APIs

v0.0.6

29 Nov 03:33
Compare
Choose a tag to compare
v0.0.6 Pre-release
Pre-release
  • Better AR Quick Look detection on iOS (thanks to @mikkoh for the contribution)
  • Error event when models fail to load or parse (thanks to @frankiefu for pointing this out)
  • Fixed memory leak when changing background images
  • Improved default a11y qualities
  • IE11 support