質問: 使用できるデータ型について OnMonobitSerializeViewでColor32型を送受信したいのですが下記のリンク先に表記されているデータ型しか使用できないのでしょうか? 使用できるデータ型をカスタムする等の方法がありましたらご教授お願いいたします。 もしデータ型がカスタム不可でしたら、送信側で一時的にColor32をVector4に変換し、受信側でVector4をColor32に変換する方法をとろうかと思っているのですが、少し手間のかかる方法だと思っており他に良い方法があればご教授お願いいたします。
回答: Color32はbyte要素で成り立っているため、float要素で成り立つVector4型に変換するのは「多分ですが」お勧めできません。 (プログラム上のどこかで非数判定が入った場合、正常に動かなくなる可能性があるので) StackOverflowからの引用ですが ここにある Color32Array というクラスを使い、 1. 送信側クライアントでは Color32Array.colors にデータを代入し、Color32Array.byteArray で「byte[] 型に変換して」送信する(byte[] に変換できれば、MUNで送信可能なデータ形式になるので問題ない) 2. 受信側クライアントでは受け取った byte[] データを Color32Array.byteArray にデータを代入し、使用する場合には Color32Array.colors で「Color32[] 型に変換して」使用する とすれば、問題なく相互変換可能なデータで受け取ることができると思います。 Color32 を配列にしたくなければ、上述の引用元の Color32Array について public Color32[] colors; を public Color32 colors; に変更すれば行けるのではないかと。