質問編集履歴
6
test
CHANGED
File without changes
|
test
CHANGED
@@ -28,7 +28,7 @@
|
|
28
28
|
|
29
29
|
|
30
30
|
|
31
|
-
こちらで躓いてます
|
31
|
+
こちらで躓いてます(想定してる形状になりません)
|
32
32
|
|
33
33
|
エラーは出てないので、そもそもの考え方のアドバイスをいただけると助かります。
|
34
34
|
|
5
test
CHANGED
File without changes
|
test
CHANGED
@@ -30,7 +30,7 @@
|
|
30
30
|
|
31
31
|
こちらで躓いてます。
|
32
32
|
|
33
|
-
エラー
|
33
|
+
エラーは出てないので、そもそもの考え方のアドバイスをいただけると助かります。
|
34
34
|
|
35
35
|
|
36
36
|
|
@@ -40,7 +40,7 @@
|
|
40
40
|
|
41
41
|
|
42
42
|
|
43
|
-
こちらは以下の方法で
|
43
|
+
こちらは以下の方法で認識相違ないでしょうか?(それっぽい配列は取得できているようです)
|
44
44
|
|
45
45
|
```
|
46
46
|
|
4
test
CHANGED
File without changes
|
test
CHANGED
@@ -40,7 +40,7 @@
|
|
40
40
|
|
41
41
|
|
42
42
|
|
43
|
-
こちらは下
|
43
|
+
こちらは以下の方法で取得できますでしょうか?(それっぽい配列は取得できてます)
|
44
44
|
|
45
45
|
```
|
46
46
|
|
@@ -48,7 +48,7 @@
|
|
48
48
|
|
49
49
|
|
50
50
|
|
51
|
-
gltfLoader.load(
|
51
|
+
gltfLoader.load(hoge.glb, (gltf) => {
|
52
52
|
|
53
53
|
const model = gltf.scene;
|
54
54
|
|
@@ -106,7 +106,7 @@
|
|
106
106
|
|
107
107
|
const particle = new THREE.Points(geometry, material);
|
108
108
|
|
109
|
-
|
109
|
+
scene.add(particle);
|
110
110
|
|
111
111
|
```
|
112
112
|
|
3
タイトルの修正
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
three.jsで
|
1
|
+
three.jsで3Dモデルの座標データにパーティクルを配置する方法
|
test
CHANGED
@@ -4,13 +4,13 @@
|
|
4
4
|
|
5
5
|
### やりたいこと
|
6
6
|
|
7
|
-
blenderでエクスポートした3
|
7
|
+
blenderでエクスポートした3Dモデルの座標データにパーティクルを撒き散らす
|
8
8
|
|
9
9
|
|
10
10
|
|
11
11
|
### やろうとしている流れ
|
12
12
|
|
13
|
-
1. blenderで3
|
13
|
+
1. blenderで3Dモデルの座標データをglb形式でエクスポート
|
14
14
|
|
15
15
|
2. three.jsのGLTFLoaderでglbファイルを読み込む
|
16
16
|
|
2
コードの修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -96,7 +96,7 @@
|
|
96
96
|
|
97
97
|
|
98
98
|
|
99
|
-
geometry.vertices.push(
|
99
|
+
geometry.vertices.push(vertex);
|
100
100
|
|
101
101
|
}
|
102
102
|
|
@@ -106,7 +106,7 @@
|
|
106
106
|
|
107
107
|
const particle = new THREE.Points(geometry, material);
|
108
108
|
|
109
|
-
const scene.add(
|
109
|
+
const scene.add(particle);
|
110
110
|
|
111
111
|
```
|
112
112
|
|
1
コードの修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -44,15 +44,15 @@
|
|
44
44
|
|
45
45
|
```
|
46
46
|
|
47
|
-
t
|
47
|
+
const gltfLoader = new GLTFLoader();
|
48
48
|
|
49
49
|
|
50
50
|
|
51
|
-
|
51
|
+
gltfLoader.load(logo.glb, (gltf) => {
|
52
52
|
|
53
53
|
const model = gltf.scene;
|
54
54
|
|
55
|
-
const mesh =
|
55
|
+
const mesh = model.children[2];
|
56
56
|
|
57
57
|
const geometry = mesh.geometry;
|
58
58
|
|
@@ -76,33 +76,37 @@
|
|
76
76
|
|
77
77
|
```
|
78
78
|
|
79
|
+
const scene = new THREE.Scene();
|
80
|
+
|
79
|
-
t
|
81
|
+
const geometry = new THREE.Geometry();
|
80
82
|
|
81
83
|
|
82
84
|
|
83
85
|
for (let i = 0; i < 3000; i++) {
|
84
86
|
|
85
|
-
t
|
87
|
+
const vertex = new THREE.Vector3();
|
86
|
-
|
87
|
-
this.vertex.x = ???????????; // glbの座標データをランダムに代入したい
|
88
|
-
|
89
|
-
this.vertex.y = ???????????; // glbの座標データをランダムに代入したい
|
90
|
-
|
91
|
-
this.vertex.z = ???????????; // glbの座標データをランダムに代入したい
|
92
88
|
|
93
89
|
|
94
90
|
|
91
|
+
vertex.x = ???????????; // glbの座標データをランダムに代入したい
|
92
|
+
|
93
|
+
vertex.y = ???????????; // glbの座標データをランダムに代入したい
|
94
|
+
|
95
|
+
vertex.z = ???????????; // glbの座標データをランダムに代入したい
|
96
|
+
|
97
|
+
|
98
|
+
|
95
|
-
|
99
|
+
geometry.vertices.push(this.vertex);
|
96
100
|
|
97
101
|
}
|
98
102
|
|
99
103
|
|
100
104
|
|
101
|
-
t
|
105
|
+
const material = new THREE.PointsMaterial();
|
102
106
|
|
103
|
-
t
|
107
|
+
const particle = new THREE.Points(geometry, material);
|
104
108
|
|
105
|
-
t
|
109
|
+
const scene.add(this.particle);
|
106
110
|
|
107
111
|
```
|
108
112
|
|