@needle-tools/gltf-progressive 1.2.2-alpha.2 → 1.2.2-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -6,6 +6,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
6
6
 
7
7
  ## [1.2.2-alpha.2] - 2023-06-20
8
8
  - Add: Register version in global "GLTF_PROGRESSIVE_VERSION" variable
9
+ - Add: `<model-viewer>` elements added document at any time are now properly registered
9
10
  - Fix: LOD updates for multiple `<model-viewer>` elements
10
11
  - Fix: Initial render tick for a few frames for `<model-viewer>` to trigger LOD updates when the model-viewer element is not animated or interacted with
11
12
  - Change: `<model-viewer>` elements will fetch a slightly higher texture LOD
@@ -4,6 +4,12 @@
4
4
  <meta charset="UTF-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
6
  <title>gltf-progressive & model-viewer</title>
7
+
8
+ <link rel="preconnect" href="https://fonts.googleapis.com">
9
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
10
+ <link href="https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap"
11
+ rel="stylesheet">
12
+
7
13
  <script type="importmap">
8
14
  {
9
15
  "imports": {
@@ -12,41 +18,101 @@
12
18
  }
13
19
  }
14
20
  </script>
15
- <script type="module" src="https://ajax.googleapis.com/ajax/libs/model-viewer/3.4.0/model-viewer.min.js"></script>
16
21
  <script type="module" src="https://www.unpkg.com/@needle-tools/gltf-progressive@latest"></script>
22
+ <script type="module" src="https://ajax.googleapis.com/ajax/libs/model-viewer/3.4.0/model-viewer.min.js"></script>
17
23
  </head>
18
24
 
19
25
  <div class="layout">
20
- <model-viewer src="https://engine.needle.tools/demos/gltf-progressive/assets/church/model.glb" ar
26
+ <div class="card">
27
+ <h1>glTF Progressive</h1>
28
+ <h3><a href="https://www.npmjs.com/package/@needle-tools/gltf-progressive"
29
+ target="_blank">@needle-tools/gltf-progressive</a></h3>
30
+ <p>Load high quality assets in model-viewer without having to worry about loading times, bandwidth or
31
+ performance.</p>
32
+ <p>Get started now at <a href="https://cloud.needle.tools">cloud.needle.tools</a></p>
33
+ </div>
34
+ <model-viewer src="https://api.cloud.needle.tools/v1/public/9162350/2b4509376/" ar auto-rotate shadow-intensity=".5"
35
+ camera-controls touch-action="pan-y" autoplay></model-viewer>
36
+
37
+
38
+ <model-viewer src="https://engine.needle.tools/demos/gltf-progressive/assets/vase/model.glb" ar
39
+ shadow-intensity=".5" camera-controls touch-action="pan-y"></model-viewer>
40
+
41
+ <model-viewer src="https://api.cloud.needle.tools/v1/public/908aa03/29b3b3743/" ar auto-rotate shadow-intensity=".5"
42
+ camera-controls touch-action="pan-y" autoplay></model-viewer>
43
+
44
+ <model-viewer src="https://engine.needle.tools/demos/gltf-progressive/assets/church/model.glb" ar auto-rotate
21
45
  shadow-intensity="1" camera-controls touch-action="pan-y" auto-rotate autoplay field-of-view="10deg"
22
46
  max-camera-orbit="auto 90deg auto"></model-viewer>
23
- <model-viewer src="https://engine.needle.tools/demos/gltf-progressive/assets/putti gruppe/model.glb" ar
47
+
48
+ <model-viewer src="https://engine.needle.tools/demos/gltf-progressive/assets/putti gruppe/model.glb" ar auto-rotate
24
49
  shadow-intensity="1" camera-controls touch-action="pan-y" auto-rotate autoplay
25
50
  max-camera-orbit="auto 90deg auto"></model-viewer>
51
+
52
+ <model-viewer src="https://engine.needle.tools/demos/gltf-progressive/assets/jupiter_und_ganymed/model.glb" ar
53
+ auto-rotate shadow-intensity=".5" camera-controls touch-action="pan-y"></model-viewer>
54
+
26
55
  <model-viewer src="https://engine.needle.tools/demos/gltf-progressive/assets/cyberpunk/model.glb" ar auto-rotate
27
- shadow-intensity=".5" camera-controls autoplay rotation-per-second="60deg"></model-viewer>
28
- <model-viewer src="https://engine.needle.tools/demos/gltf-progressive/assets/vase/model.glb" ar
29
- shadow-intensity=".5" camera-controls></model-viewer>
56
+ shadow-intensity=".5" camera-controls touch-action="pan-y" autoplay rotation-per-second="60deg"></model-viewer>
57
+
30
58
  </div>
31
59
 
60
+ <script>
61
+ // Example if a model is loaded after the page has loaded
62
+ document.addEventListener('DOMContentLoaded', () => {
63
+ setTimeout(() => {
64
+ const element = document.createElement('model-viewer');
65
+ element.src = "https://api.cloud.needle.tools/v1/public/9191068/261b4395b/";
66
+ element.setAttribute("camera-controls", "");
67
+ const layout = document.querySelector('.layout');
68
+ layout.appendChild(element);
69
+ }, 2000)
70
+ });
71
+
72
+ </script>
73
+
32
74
  <style>
33
75
  body {
34
76
  margin: 0;
77
+ background-color: rgba(245, 245, 245, 1);
78
+ font-family: "Open Sans", sans-serif;
79
+ font-optical-sizing: auto;
80
+ }
81
+
82
+ * {
83
+ box-sizing: border-box;
84
+ }
85
+
86
+ a {
87
+ text-decoration: none;
88
+ color: #cb0000;
35
89
  }
36
90
 
37
91
  .layout {
38
92
  position: relative;
39
93
  width: 100%;
40
- height: 100%;
94
+ min-height: 100%;
41
95
 
42
96
  display: grid;
43
- grid-template-columns: 1fr 1fr;
97
+ grid-template-columns: repeat(auto-fill, minmax(460px, 2fr));
98
+ gap: 1rem;
99
+ padding: 1rem;
44
100
  }
45
101
 
46
- model-viewer {
102
+ .layout>* {
47
103
  width: 100%;
48
- height: 100%;
104
+ height: auto;
105
+ aspect-ratio: 1;
49
106
  flex: 1;
107
+ background: white;
108
+ border-radius: .3rem;
109
+ box-shadow: 0 0 1rem rgba(0, 0, 0, .1);
110
+ outline: 1px solid white;
111
+ }
112
+
113
+ .card {
114
+ padding: 1rem;
115
+ max-width: calc(100vw - 2rem);
50
116
  }
51
117
 
52
118
  @media screen and (max-width: 800px) {