Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
299 commits
Select commit Hold shift + click to select a range
9d0a000
fix withCredentials (#4098)
elalish Feb 3, 2023
43013dc
added surface updating (#4099)
elalish Feb 3, 2023
f25b9fa
fix video texture on Firefox (#4104)
elalish Feb 7, 2023
166b1f9
fix firefox video framerate (#4105)
elalish Feb 7, 2023
1811263
fix other SVG example (#4107)
elalish Feb 8, 2023
5e9f5c6
fix: model-viewer@v3 uses lottie-web as a dev dependency (#4108)
robertsLando Feb 10, 2023
bfedac8
Safari lottie (#4113)
elalish Feb 10, 2023
b749064
Fix lottie update (#4114)
elalish Feb 11, 2023
309b154
update DRACO version (#4115)
elalish Feb 11, 2023
f2c4b9a
Update three-gpu-pathtracer to v0.0.13 (#4118)
gkjohnson Feb 13, 2023
bb543ef
switch unpkg to ajax (#4121)
elalish Feb 14, 2023
16e708b
Fixing some models being rendered black (#4120)
Popov72 Feb 14, 2023
1d6243a
updated goldens (#4123)
elalish Feb 14, 2023
84f3b19
bump version (#4131)
elalish Feb 15, 2023
fc61c5d
remove lottie-web dependency (#4132)
elalish Feb 16, 2023
8c14189
three.js -> peer dependency (#4135)
elalish Feb 17, 2023
28497c2
v3.0.2 (#4137)
elalish Feb 21, 2023
ca3f198
Update Filament to 1.31.5 and re-render goldens (#4138)
bejado Feb 22, 2023
efdc045
updated three.js to r150 (#4140)
elalish Feb 24, 2023
390c1cd
fix video texture on iOS (#4141)
elalish Feb 24, 2023
6030865
fix annotations example bug (#4151)
y-71 Mar 3, 2023
640b554
updated to three.js r151 (#4186)
elalish Mar 31, 2023
866c03f
Revert "updated to three.js r151 (#4186)" (#4191)
elalish Mar 31, 2023
2846fee
R151 redux (#4192)
elalish Apr 1, 2023
e4b6899
Remove references to unpkg.com and update to jsDelivr.com for stabili…
cpiggott Apr 4, 2023
4184014
add web3dsurvey (#4200)
elalish Apr 5, 2023
8b13a5b
bump version (#4201)
elalish Apr 5, 2023
ab644f1
Make peer dependency relationship clear in readme (#4202)
johnnyshankman Apr 5, 2023
aa94742
Remove focus-visible polyfill (#4224)
elalish Apr 18, 2023
8205097
Point cloud improvements (#4228)
elalish Apr 19, 2023
f22963d
fixed setting currentTime (#4231)
elalish Apr 19, 2023
6583b25
fix: Remove doubled period from start of alt text. (#4237)
ashleahhill Apr 21, 2023
6c8216b
robustify pointing (#4238)
elalish Apr 21, 2023
8b095b4
bump version (#4249)
elalish Apr 25, 2023
abbc1a0
Post processing (#3948)
Beilinson Apr 25, 2023
0f55b43
Added postinstall script that updates the three importmap version (#4…
Beilinson Apr 28, 2023
ed3ffd1
three.js r152 (#4259)
elalish Apr 28, 2023
3345a0a
Get and Set texture transform (#4209)
diegoteran May 4, 2023
7fdf88c
Playwright CI (#4268)
elalish May 9, 2023
8546f41
Add BoxTextured and sort deployable files. (#4310)
diegoteran Jun 7, 2023
ddef677
Removal of canonical GLTF copy + EmissiveStrength and Clearcoat exten…
diegoteran Jun 28, 2023
f2805fa
R154 (#4314)
elalish Jul 5, 2023
a86ac42
Add PBR Next properties API (#4330)
diegoteran Jul 7, 2023
5f6e761
fix: add webpackIgnore for import(this.lottieLoaderUrl) (#4350)
annahassel Jul 11, 2023
e020b1b
Add pbr iridescence API (#4348)
diegoteran Jul 11, 2023
415c4aa
v3.2.0 (#4358)
diegoteran Jul 11, 2023
b81a0f2
fix postinstall (#4359)
elalish Jul 12, 2023
6af7342
check postinstall file exists https://github.com/google/model-viewer/…
btopro Jul 13, 2023
8c09930
Remove lerna (#4368)
elalish Aug 1, 2023
6e3af76
await openIOSARQuickLook (#4405)
heatblayze Aug 1, 2023
e88f462
fix deployment (#4406)
elalish Aug 1, 2023
e9c4eaa
update deployments again (#4407)
elalish Aug 1, 2023
ec08a05
recursive copy (#4408)
elalish Aug 1, 2023
7aed150
v3.2.1 (#4409)
diegoteran Aug 1, 2023
74d7ac4
Add zoom sensitivity and pan sensitivity attributes (#4412)
nicolas-daures Aug 4, 2023
498497a
First commit: Add details to the invalid gltf example (#4420)
samaneh-kazemi Aug 16, 2023
d10c010
Update scenegraph examples (#4436)
samaneh-kazemi Aug 23, 2023
4a9dca3
r156 (#4471)
elalish Sep 20, 2023
c4a69a7
Convert to ThreeJS.Vector2 internally in public api.
diegoteran Sep 21, 2023
74f774d
Revert "Convert to ThreeJS.Vector2 internally in public api."
diegoteran Sep 21, 2023
bd4a846
Convert to ThreeJS.Vector2 internally in public api. (#4473)
diegoteran Sep 22, 2023
5354010
Variant normal flip (#4476)
elalish Sep 22, 2023
a706f2e
Fix glTF lights (#4477)
elalish Sep 22, 2023
d2461fe
V-Ray CPU render fidelity tests. (#4487)
jasondavies Oct 3, 2023
b48087e
r157 (#4489)
elalish Oct 4, 2023
4f10202
Commerce tone mapper (#4495)
elalish Oct 5, 2023
dbd5ada
Add fix for Wrapping exposed (#4499)
diegoteran Oct 6, 2023
f8d5fac
updated encoding to colorspace (#4500)
elalish Oct 6, 2023
d458983
cleanup (#4501)
elalish Oct 6, 2023
87794cc
Fix API exposing threejs properties (#4502)
diegoteran Oct 6, 2023
b002ee0
v3.3 (#4507)
elalish Oct 9, 2023
8ddc3e8
Add V-Ray support for KHR_materials_emissive_strength. (#4509)
jasondavies Oct 11, 2023
79f9318
Fix examples (#4514)
elalish Oct 12, 2023
7126a3d
Add href to AR button, improve accessibility (#4524)
Technickel-Dev Oct 23, 2023
da2b837
Editor open graph metadata (#4527)
Technickel-Dev Oct 25, 2023
53e54ef
update render fidelity main page to list renderers in a table. (#4539)
bhouston Oct 26, 2023
d76e411
Switch from glTF-Sample-Models to the newer glTF-Sample-Assets (#4534)
bhouston Oct 26, 2023
df26025
Reduce time for fidelity test CI locally by 50s, Github CI by 130s (#…
bhouston Oct 26, 2023
49fd9e4
Enable transparencyAsCoverage in Babylon Viewer (#4531)
bghgary Oct 27, 2023
9fbe7a0
Update example assets (#4546)
elalish Oct 27, 2023
9e475c8
enable complex arguments for "npm run render-goldens" command (#4542)
bhouston Oct 27, 2023
b312f46
add submodules (#4547)
elalish Oct 27, 2023
81a5542
Fix materials example (#4548)
elalish Oct 27, 2023
741a18a
Added example to toggle between mesh variants (#4528)
samaneh-kazemi Oct 27, 2023
25c51e7
Add anisotropy tests to render-fidelity-tests (and update Babylon + F…
bhouston Nov 8, 2023
cab00c1
updated three, still need to update postprocessing (#4563)
elalish Nov 8, 2023
2b13bdd
r159 (#4584)
elalish Dec 5, 2023
99fa9a8
UltraHDR lighting support (#4578)
elalish Dec 8, 2023
ff13ec1
Remove IE11-specific code (#4603)
Frank3K Dec 20, 2023
a35cafc
added Grounded Skybox option (#4604)
elalish Dec 22, 2023
174ef31
Fix webxr skybox (#4609)
elalish Dec 27, 2023
c6fe261
r160 (#4610)
elalish Dec 27, 2023
734aff3
Update to commerce tone mapper (#4614)
elalish Dec 29, 2023
2a217a7
Add AgX tone mapping (#4615)
elalish Dec 29, 2023
acfb155
fixed reversal (#4624)
elalish Jan 9, 2024
2acefd8
small refactor (#4623)
elalish Jan 9, 2024
6505f06
fixed texture flip (#4626)
elalish Jan 11, 2024
c20627f
fixed a couple small issues with examples (#4627)
elalish Jan 11, 2024
c9d3cb0
added faq (#4633)
elalish Jan 12, 2024
7281314
Tone mapping docs & update (#4637)
elalish Jan 13, 2024
d206a78
Add CreateVideoTextureOptions to support crossOrigin videos (#4635)
navidadelpour Jan 16, 2024
f290b91
revert landing page (#4645)
elalish Jan 16, 2024
2da8180
Add a reason property to help the users track why the progress event …
alexdaube Jan 17, 2024
81b2f92
fixed exposure bug and added figures (#4648)
elalish Jan 17, 2024
72e0a8a
final edits (#4650)
elalish Jan 17, 2024
096bd39
v3.4.0 (#4651)
elalish Jan 17, 2024
b1ed967
small version updates (#4654)
elalish Jan 22, 2024
1c68fad
fix: small typo in README (#4664)
squat Jan 31, 2024
ebd55ed
OCIO profile for commerce tone mapper (#4666)
elalish Feb 1, 2024
6e7fc85
PBR Neutral docs (#4687)
elalish Feb 28, 2024
4daf1c7
Fix color in USDZ export (#4690)
elalish Feb 29, 2024
6c16da3
Upgrade three-gpu-pathtracer, screenshots (#4686)
gkjohnson Feb 29, 2024
df6306f
Propagate event reason in loading.ts [onProgress], to ensure event.de…
rsleyland Mar 11, 2024
442195d
updated Blender OCIO config (#4708)
elalish Mar 11, 2024
17ebe09
Add explicit file extensions to relative imports of model-viewer and …
chamby Mar 11, 2024
3acda15
Add missed file extensions to relative imports of model-viewer and mo…
chamby Mar 13, 2024
0f779ca
New three-gpu-pathtracer screenshots (#4696)
gkjohnson Mar 13, 2024
8a047c5
Blender Cycles Fidelity Test (#4492)
vis-prime Mar 13, 2024
abf849e
Make Khronos PBR Neutral invertable (#4716)
elalish Mar 15, 2024
5859769
Update scene-viewer intent (#4720)
elalish Mar 21, 2024
8e9fe53
remove webxr from SV example (#4721)
elalish Mar 22, 2024
5c23a13
fix DPR for iframes (#4723)
elalish Mar 22, 2024
b8df887
A11y implementation for WCAG compliance. (#4715)
cybmiper Apr 3, 2024
501f4e2
update SV check (#4737)
elalish Apr 4, 2024
99b50ff
r163 (#4738)
elalish Apr 4, 2024
b3987ed
parse_hotspot_config.ts DOM text reinterpreted as HTML (#4748)
Shivam7-1 Apr 15, 2024
c9b75ba
Fix Postprocessing for r163 (#4745)
elalish Apr 15, 2024
69d3689
fix grounded skybox rotation (#4752)
elalish Apr 15, 2024
7263a43
fixed USDZ rotation (#4753)
elalish Apr 15, 2024
f9a06ea
fixed offscreen toBlob (#4754)
elalish Apr 16, 2024
62e6682
load the renderer only when <model-viewer> is present (#4758)
Arecsu Apr 17, 2024
9fa1fa2
fix USDZ positioning (#4759)
elalish Apr 17, 2024
4ea2784
update commerce to neutral (#4760)
elalish Apr 17, 2024
8d40716
v3.5 (#4761)
elalish Apr 18, 2024
4a31350
updated effects version (#4762)
elalish Apr 18, 2024
9407f03
update CDN version (#4767)
elalish May 1, 2024
5476def
update model documentation (#4776)
elalish May 15, 2024
b547092
Expunge fidelity (#4779)
elalish May 17, 2024
17dd775
cleanup and redirect (#4782)
elalish May 17, 2024
70c119a
Upgrade to latest threejs (r164) (#4787)
aardvarkk May 29, 2024
c23aea9
fix: tone mapping dropdown used the wrong value (5: Custom instead of…
hybridherbst Jul 1, 2024
4358b53
Presentation (#4842)
elalish Jul 25, 2024
43ec97a
Fixed presentation title (#4844)
mrdoob Jul 31, 2024
8b9ef5d
Fixes code example (#4851)
Hamidrzash Aug 7, 2024
626e975
Modularize rollup.config.js to improve readability (#4852)
samaneh-kazemi Aug 7, 2024
4f7e758
fixed surface hotspot updates (#4867)
elalish Aug 12, 2024
2edbce1
updated to r167 (#4869)
elalish Aug 14, 2024
9f978e7
Fix variants with multiple internal materials (#4882)
elalish Sep 6, 2024
2fd5094
updated to r168 (#4885)
elalish Sep 12, 2024
3ed05fa
make PBR Neutral our default tone mapper (#4886)
elalish Sep 13, 2024
291c9d1
Set the aces value in the tone-mapping item (#4890)
rsax Sep 23, 2024
5604ec8
remove DPR cap (#4896)
elalish Sep 23, 2024
953cd4a
Fix withCredentials (#4892)
elalish Sep 25, 2024
ce88f65
make getCameraTarget consistent with getCameraOrbit (#4895)
elalish Sep 25, 2024
4c0db33
Add model dragging and resizing in XR headsets by controllers or hand…
FluorescentHallucinogen Oct 17, 2024
d86c111
update three.js to r169 (#4907)
elalish Oct 21, 2024
9b6779a
update render-fidelity dependencies (#4898)
elalish Oct 21, 2024
e7e1865
allow top and bottom view by default (#4916)
elalish Oct 23, 2024
3f20473
update version (#4891)
elalish Oct 23, 2024
d7af231
update CDN to v4.0 (#4920)
elalish Oct 24, 2024
b8d6b32
update rollup (#4921)
elalish Oct 28, 2024
976796f
Update Lit and chai (#4922)
elalish Oct 28, 2024
db15d9f
r170 (#4928)
elalish Nov 6, 2024
dd354f6
fixed two examples bugs (#4932)
elalish Nov 8, 2024
cc65ec4
npm badges (#4951)
swift502 Nov 20, 2024
807241a
expand NPM install instructions (#4952)
swift502 Nov 20, 2024
a43bb47
set shadow depth material side to double (#4950)
swift502 Nov 20, 2024
0637b91
Added the ability to run and combine multiple animations simultaneous…
mohammadbaghaei Feb 10, 2025
c61dd14
fix modelviewer.dev deployment error (#5001)
mohammadbaghaei Feb 24, 2025
0abf0d5
Fix UI bugs and improve code structure (#5008)
mohammadbaghaei Apr 8, 2025
8661bb5
v4.1.0 (#5017)
diegoteran Apr 8, 2025
15cff34
set correct peerdependency (#5019)
WAKayser Apr 9, 2025
4efaf8e
Code improvements after 4.1.0 release (#5022)
Frank3K Apr 14, 2025
cbe3f0e
✨ New Features & Improvements: (#5020)
samaneh-kazemi Apr 17, 2025
172446f
Fix Deploy Documentation issue (#5029)
diegoteran Apr 17, 2025
4efcf2e
remove indicator box for controllers (#5031)
samaneh-kazemi Apr 29, 2025
48cd1de
feat(ar): Introduce Basic XR Menu Panel and Exit Functionality
samaneh-kazemi May 13, 2025
4f51296
add xrmenupanel only in xr, avoid ar (#5040)
samaneh-kazemi May 13, 2025
2d13cb7
Use the right camera to position menupanel in xr (#5048)
samaneh-kazemi Jun 4, 2025
b1ed32f
Update xrpanel opacity to match SVXR (#5049)
samaneh-kazemi Jun 5, 2025
9f8b9d6
move updatePosition logic from arrenderer to xrmenupanel
samaneh-kazemi Jun 6, 2025
37935aa
refactor ARREnderer to imrpveo readablity and code structure
samaneh-kazemi Jun 7, 2025
0084be0
small refactor to reduce duplication code (#5050)
samaneh-kazemi Jun 7, 2025
0548040
Fix regression caused by the refactor which had disabled scaling in A…
samaneh-kazemi Jun 10, 2025
64167d4
fix rotation which twisting happens with two fingers in ar mode (#5058)
samaneh-kazemi Jun 23, 2025
2a6b88c
feat: Implement Scene Viewer XR-style AR placement and scale toggle f…
samaneh-kazemi Jul 11, 2025
527bfd0
Update Piping Server instance source (#5063)
samaneh-kazemi Jul 11, 2025
0fedbd6
Revert "Update Piping Server instance source (#5063)" (#5069)
samaneh-kazemi Jul 11, 2025
8407a99
update Piping server instance (#5070)
samaneh-kazemi Jul 18, 2025
cae8383
migrate to https://ppng.io (#5075)
samaneh-kazemi Jul 22, 2025
6384d7b
Update XRMenuPanel icones to use svg and improved code readability (#…
samaneh-kazemi Jul 29, 2025
a2ed3f7
implemented distance based scaling so panel always look the same size…
samaneh-kazemi Jul 29, 2025
914fdaf
fix: hide menu panel during model drag in world-space AR (#5080)
samaneh-kazemi Jul 31, 2025
e536080
Enhance PlacementBox with stable interaction and improved visuals (#5…
samaneh-kazemi Aug 5, 2025
ae9ba60
make XR Menu Panel positioning based on placementbox radius (#5084)
samaneh-kazemi Aug 5, 2025
01e0e42
To fix issue #5009, add width attribute to .sidebar (#5107)
mohammadbaghaei Feb 2, 2026
e98649d
Add test for append animation and detach animation methods (#5103)
mohammadbaghaei Feb 3, 2026
73cd096
fix issue #5009 (#5121)
diegoteran Feb 11, 2026
e613e66
add version sync script (#5102)
mohammadbaghaei Feb 12, 2026
7905254
Update dependencies (#5123)
diegoteran Feb 27, 2026
305e07c
fix #5026 issue and refactor ModelScene.ts (#5101)
mohammadbaghaei Feb 27, 2026
1598ea4
Format files (#5125)
diegoteran Feb 27, 2026
388f94b
Upgrade node version in .nvmrc to latest LTS (#5127)
Frank3K Mar 4, 2026
4a2bd04
Fix some vulnerability warnings (#5128)
diegoteran Mar 4, 2026
43a008d
Update dev-server.js (#5129)
diegoteran Mar 10, 2026
0f659be
Update effect-composer.ts (#5131)
diegoteran Mar 11, 2026
cc79ea8
4.2.0 (#5130)
diegoteran Mar 11, 2026
5a4ba10
Upgrade GitHub Actions for Node 24 compatibility (#5133)
salmanmkc Mar 12, 2026
19a751a
feat: make options for appendAnimation and detachAnimation optional (…
Frank3K Mar 12, 2026
ecace7f
Multi-model in one scene (#5134)
diegoteran Mar 25, 2026
ca80698
docs: Note that extra-model is only available in 4.3.0 (unreleased)
diegoteran Mar 26, 2026
af20dbc
Revert "docs: Note that extra-model is only available in 4.3.0 (unrel…
diegoteran Mar 26, 2026
8d26acf
remove multi-model documentation for now (#5137)
diegoteran Mar 27, 2026
edf2f3f
Replace RGBELoader with HDRLoader to fix deprecation warning (#5139)
diegoteran Apr 1, 2026
63a4eae
feat: add KTX2 texture support to createTexture() API (#5141)
douglasholm Apr 2, 2026
0da8942
Rename pivot to pivotEl to not conflict with new Object3D.pivot in th…
vincentfretin Apr 3, 2026
6fa0f87
Rename pivot to scenePivot in ModelScene and ARRenderer to avoid conf…
diegoteran Apr 6, 2026
e6ac9dd
fix: enable export of scenes with KTX2 compressed textures (#5142)
douglasholm Apr 7, 2026
9396323
Fix AR button overlap on Dynamic Scaling page and resolve HDR bundle …
diegoteran Apr 15, 2026
56d00bc
prevent iOS WebGL memory leak by converting gainmap to DataTexture(#5…
diegoteran May 21, 2026
98c3817
prevent mobile viewport auto-zoom on input focus (#5152)
diegoteran May 22, 2026
de662ad
fix(ar): prevent WebXR select events on DOM overlay inputs and adapt …
diegoteran May 26, 2026
6260fd0
fix(docs): resolve mobile layout overlap between hamburger menu and s…
diegoteran May 26, 2026
87c6793
Fix AR button layout overlap on Transforms and Dynamic Scaling examples
diegoteran May 27, 2026
ea981bc
fix(scenegraph): suppress Gboard autofill prompts on model transform …
diegoteran May 27, 2026
92abad1
Resolve a coordinate target misalignment and event-swallowing bug on …
diegoteran May 27, 2026
d1f55c9
resolve exit button touch responsiveness bug inside WebXR DOM Overlay…
diegoteran May 27, 2026
24c03ac
resolve path redirect flash and enable iOS Chrome AR support (#5159)
diegoteran May 27, 2026
abf1e45
initialize visibility on re-slotted/re-attached hotspot elements (#5161)
diegoteran May 28, 2026
5f97ef5
fix: secure iOS third-party and GSA browser AR Quick Look selections …
diegoteran Jun 1, 2026
3b51013
chore: upgrade three to ^0.183.0 (#5163)
diegoteran Jun 1, 2026
7fa5398
v4.3.0 (#5164)
diegoteran Jun 1, 2026
da46f5f
fix shadow mapping on models larger than 1x1 by scaling projection bo…
diegoteran Jun 3, 2026
6ff88e3
Multi model example (#5169)
diegoteran Jun 3, 2026
ad084f6
fix documentation
diegoteran Jun 3, 2026
5e07053
Update custom-select.js (#5170)
diegoteran Jun 4, 2026
deab32d
Update index.html (#5171)
diegoteran Jun 4, 2026
2c91f44
v4.3.1 (#5172)
diegoteran Jun 4, 2026
35f9466
Update libraries to 4.3.1 (#5173)
diegoteran Jun 5, 2026
33e5562
fix: apply orientation to extra-model elements (#5177)
Frank3K Jun 11, 2026
ff3f3ca
fix: don't warn with 'Invalid repetitionCount value: 1. Using default…
vincentfretin Jun 16, 2026
111348d
fix: emit finished event for one time animation (#5179)
vincentfretin Jun 16, 2026
819b798
Remove leftover debug console.log statements (#5182)
tiagonrodrigues Jun 18, 2026
d8721e5
feat: support length units in extra-model offset (#5180)
Frank3K Jun 18, 2026
22d48e4
feat: enforce hex color digit counts in css parser (#5176)
rajkandula Jun 18, 2026
fae2a75
feat: type writer property as GLTFWriter in VariantMaterialExporterPl…
rajkandula Jun 18, 2026
1cea201
feat: define typescript interfaces for gltf accessor sparse property …
rajkandula Jun 18, 2026
8dfcf8a
prevent parallel deployment collisions in documentation workflow (#5183)
diegoteran Jun 19, 2026
e33ab46
update 3D scene when an <extra-model> is removed (#5187)
diegoteran Jun 30, 2026
297ed2b
fix: enable Quick Look AR in third-party iOS browsers without ios-src…
Frank3K Jul 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
**/node_modules
scripts/**/*.js
packages/*/dist
packages/**/*.d.ts
packages/*/src/*-css.ts

packages/*/karma.*.js

packages/model-viewer/**/*
packages/model-viewer-effects/**/*
packages/modelviewer.dev/**/*
packages/render-fidelity-tools/**/*
packages/shared-assets/**/*
Expand Down
36 changes: 11 additions & 25 deletions .github/workflows/deploy-documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,53 +5,39 @@ on:
branches:
- master

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

permissions:
contents: write

jobs:
deploy_github_pages:
runs-on: ubuntu-latest
timeout-minutes: 60

steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
- uses: actions/checkout@v6
with:
node-version: '12.x'
submodules: true

- name: Get npm cache directory
id: npm-cache
run: |
echo "::set-output name=dir::$(npm config get cache)"

- name: Cache npm packages
uses: actions/cache@v2
with:
path: ${{ steps.npm-cache.outputs.dir }}
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-
- uses: actions/setup-node@v6

- name: NPM install
run: npm ci

# - name: Lint TypeScript sources
# run: npm run lint

- name: Bootstrap packages
run: npm run bootstrap

- name: Build packages
run: npm run build

- name: Generate fidelity artifacts
continue-on-error: true
uses: GabrielBB/xvfb-action@v1.0
with:
run: ./node_modules/.bin/lerna run --scope @google/model-viewer-render-fidelity-tools test --stream

- name: Stage documentation artifacts
run: ./packages/modelviewer.dev/scripts/ci-before-deploy.sh

- name: Deploy to Github Pages
uses: peaceiris/actions-gh-pages@v3
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_branch: gh-pages
Expand Down
30 changes: 7 additions & 23 deletions .github/workflows/fidelity-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,42 +5,26 @@ on: pull_request
jobs:
compare_renders:
runs-on: ubuntu-latest
timeout-minutes: 60
timeout-minutes: 90

steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
- uses: actions/checkout@v6
with:
node-version: '12.x'
submodules: true

- name: Get npm cache directory
id: npm-cache
run: |
echo "::set-output name=dir::$(npm config get cache)"

- name: Cache npm packages
uses: actions/cache@v2
with:
path: ${{ steps.npm-cache.outputs.dir }}
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-
- uses: actions/setup-node@v6

- name: NPM install
run: npm ci

# - name: Lint TypeScript sources
# run: npm run lint

- name: Bootstrap packages
run: npm run bootstrap

- name: Build packages
run: |
./node_modules/.bin/lerna run --scope @google/model-viewer build --stream
./node_modules/.bin/lerna run --scope @google/model-viewer-render-fidelity-tools build --stream
npm run build --workspace=@google/model-viewer --workspace=@google/model-viewer-render-fidelity-tools

- name: Fidelity tests
uses: GabrielBB/xvfb-action@v1.0
uses: coactions/setup-xvfb@v1
with:
run: ./node_modules/.bin/lerna run --scope @google/model-viewer-render-fidelity-tools test --stream
run: npm run test --workspace=@google/model-viewer-render-fidelity-tools -- --quiet
44 changes: 0 additions & 44 deletions .github/workflows/unit-tests-third-party.yml

This file was deleted.

44 changes: 19 additions & 25 deletions .github/workflows/unit-tests.yml
Original file line number Diff line number Diff line change
@@ -1,50 +1,44 @@
name: Unit tests

on: [push]
on: pull_request

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
full_test_run:

env:
USE_BROWSER_STACK: true

runs-on: ubuntu-latest
timeout-minutes: 60

steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
- uses: actions/checkout@v6
with:
node-version: '12.x'
submodules: true

- name: Get npm cache directory
id: npm-cache
run: |
echo "::set-output name=dir::$(npm config get cache)"
- uses: actions/setup-node@v6

- name: NPM install
run: npm ci

- name: Cache npm packages
uses: actions/cache@v2
- name: Cache Playwright browsers
uses: actions/cache@v4
id: playwright-cache
with:
path: ${{ steps.npm-cache.outputs.dir }}
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
path: ~/.cache/ms-playwright
key: ${{ runner.os }}-playwright-${{ hashFiles('package-lock.json') }}
restore-keys: |
${{ runner.os }}-npm-
${{ runner.os }}-playwright-

- name: NPM install
run: npm ci
- name: Install playwright browsers
run: npx playwright install --with-deps

# - name: Lint TypeScript sources
# run: npm run lint

- name: Bootstrap packages
run: npm run bootstrap

- name: Build packages
run: npm run build

- name: Unit tests
env:
BROWSER_STACK_USERNAME: ${{ secrets.BROWSER_STACK_USERNAME }}
BROWSER_STACK_ACCESS_KEY: ${{ secrets.BROWSER_STACK_ACCESS_KEY }}
BROWSER_STACK_BUILD_NAME: ${{ format('{0} / {1}', github.ref, github.run_id) }}
run: npm run test:ci
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "packages/shared-assets/models/glTF-Sample-Assets"]
path = packages/shared-assets/models/glTF-Sample-Assets
url = https://github.com/KhronosGroup/glTF-Sample-Assets.git
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
12
24
16 changes: 9 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# The `<model-viewer>` project

This is the main Github repository for the `<model-viewer>` web component and
This is the main GitHub repository for the `<model-viewer>` web component and
all of its related projects.

**Getting started?** Check out the [`<model-viewer>`](packages/model-viewer) project!
Expand All @@ -10,12 +10,16 @@ Check out the README.md files for specific projects to get more details:

👩‍🚀 **[`<model-viewer>`](packages/model-viewer)** • The `<model-viewer>` web component (probably what you are looking for)

✨ **[`<model-viewer-effects>`](packages/model-viewer-effects)** • The PostProcessing plugin for `<model-viewer>`

🌐 **[modelviewer.dev](packages/modelviewer.dev)** • The source for the `<model-viewer>` documentation website

🖼 **[render-fidelity-tools](packages/render-fidelity-tools)** • Tools for testing how well `<model-viewer>` renders models

🎨 **[shared-assets](packages/shared-assets)** • 3D models, environment maps and other assets shared across many sub-projects

🚀 **[space-opera](packages/space-opera/)** • The source of the `<model-viewer>` [editor](https://modelviewer.dev/editor/)

## Development

When developing across all the projects in this repository, first install git,
Expand All @@ -27,7 +31,6 @@ Then, perform the following steps to get set up for development:
git clone --depth=1 git@github.com:google/model-viewer.git
cd model-viewer
npm install
npm run bootstrap
```

Note: depth=1 keeps you from downloading our ~3Gb of history, which is dominated by all the versions of our golden render fidelity images.
Expand All @@ -36,7 +39,7 @@ The following global commands are available:

Command | Description
------------------------------ | -----------
`npm run bootstrap` | Bootstraps the project for development and cross-links sub-projects
`npm ci` | Install dependencies and cross-links sub-projects
`npm run build` | Runs the build step for all sub-projects
`npm run serve` | Runs a web server and opens a new browser tab pointed to the local copy of modelviewer.dev (don't forget to build!)
`npm run test` | Runs tests in all sub-projects that have them
Expand All @@ -57,7 +60,6 @@ To clone via HTTPS in WSL (there are known file permissions issues with SSH keys
git clone --depth=1 https://github.com/google/model-viewer.git
cd model-viewer
npm install
npm run bootstrap
```

To run tests in WSL, you need to bind `CHROME_BIN`:
Expand All @@ -66,7 +68,7 @@ export CHROME_BIN="/mnt/c/Program Files/Google/Chrome/Application/chrome.exe"
npm run test
```

Note that you should be able to run the `packages/model-viewer` tests with that setup, but running fidelity tests requires GUI support which is only available in WSL on Windows 11.
Note that you should be able to run the `packages/model-viewer` and `packages/model-viewer-effects` tests with that setup, but running fidelity tests requires GUI support which is only available in WSL on Windows 11.

<details>
<summary>Additional WSL Troubleshooting – provided for reference only</summary>
Expand All @@ -81,7 +83,7 @@ export CHROME_BIN="/mnt/c/Program Files/Google/Chrome/Application/chrome.exe"
npm run test
```

Tests in `packages/model-viewer` should now run properly; fidelity tests might still fail (see errors and potential workarounds below).
Tests in `packages/model-viewer` and `packages/model-viewer-effects` should now run properly; fidelity tests might still fail (see errors and potential workarounds below).

### Error: `/bin/bash^M: bad interpreter: No such file or directory`
**Symptom**
Expand Down Expand Up @@ -122,4 +124,4 @@ Running `npm run dev` in `packages/model-viewer` on Windows throws error `ERROR:
**Solution**
(if you have one please make a PR!)

</details>
</details>
6 changes: 0 additions & 6 deletions lerna.json

This file was deleted.

Loading