回答編集履歴

1

コード修正

2020/01/28 01:25

投稿

sakura_hana
sakura_hana

スコア11427

test CHANGED
@@ -4,10 +4,32 @@
4
4
 
5
5
  この部分を
6
6
 
7
- `this.GetComponent<Renderer>().sharedMaterials[0] = _material[i];`
7
+ ~~`this.GetComponent<Renderer>().sharedMaterials[0] = _material[i];`~~
8
8
 
9
9
  こう変えればいいんじゃないでしょうか。
10
10
 
11
11
 
12
12
 
13
13
  ちなみにマテリアルを複製する(共有しない)なら`sharedMaterials`ではなく`materials`でよいかと。
14
+
15
+
16
+
17
+ ---
18
+
19
+
20
+
21
+ (2020/01/28追記)コードが適切でなかった為修正します。
22
+
23
+ ```C#
24
+
25
+ Material[] materials = this.GetComponent<Renderer>().sharedMaterials;
26
+
27
+ materials[0] = _material[i];
28
+
29
+ this.GetComponent<Renderer>().sharedMaterials = materials;
30
+
31
+ ```
32
+
33
+ 参考:
34
+
35
+ [c# - How to replace element in MeshRenderer.sharedMaterials - Stack Overflow](https://stackoverflow.com/questions/55849541/how-to-replace-element-in-meshrenderer-sharedmaterials)