首页 > 其他分享 >Unity 二维数组序列化

Unity 二维数组序列化

时间:2024-10-07 22:00:20浏览次数:6  
标签:rectArray1 二维 Unity RectArray new 序列化 public Rect

unity 中,二维以上的数量是不支持序列化的,如:

using System.Collections.Generic;
using UnityEngine;
public class TestArray : MonoBehaviour {
    // 不支持序列化(在Inspector面板无法显示)
    public Rect[][] rect2Ds;
    // 不支持序列化(在Inspector面板无法显示)
    //public List<List<Rect>> rect2Ds;
}

可以使用以下方式代替:

using UnityEngine;
public class TestArray : MonoBehaviour {
    public RectArray[] rectArrays;

    private void Awake() {
        var rectArray1 = new RectArray(2);
        rectArray1[0] = new Rect(0, 0, 0, 0);
        rectArray1[1] = new Rect(1, 1, 1, 1);

        rectArrays = new RectArray[1];
        rectArrays[0] = rectArray1;
    }
}

[System.Serializable]
public class RectArray {

    public Rect[] rects;

    public RectArray(int length) {
        rects = new Rect[length];
    }

    public Rect this[int index] {
        get { return rects[index]; }
        set { rects[index] = value; }
    }
}

标签:rectArray1,二维,Unity,RectArray,new,序列化,public,Rect
From: https://www.cnblogs.com/kingBook/p/18450740

相关文章

  • 序列化器中拿到request
    classUpdateMobileSerializer(serializers.ModelSerializer):old=serializers.CharField(write_only=True,validators=[RegexValidator(r"\d{11}",message="格式错误")])mobile=serializers.CharField(write_only=True,validators=[RegexV......
  • Java - 10 二维数据
    Java-10二维数据一维数组的每个元素又是一个一维数组静态初始化int[][]arr={{0,0,0,0},{1,1,1,1},{2,2,2,2},{3,3,3,3}};publicclassTwoDimensionArray{ publicstaticvoidmain(String[]args){ int[][]arr......
  • 序列化对象输出
    publicclassSerializableObj{publicstaticvoidmain(String[]args){ObjectOutputStreamoos=null;try{//1.创建ObjectOutputStream输出流oos=newObjectOutputStream(newFileOutputStream("D:\\doc\\person.ba......
  • 序列化器ser.validated_data、ser.initial_data、ser.data
    1.ser.data示例:在视图中返回序列化后的数据returnResponse(serializer.data)2.ser.validated_dataifserializer.is_valid():validated_data=serializer.validated_data3.ser.initial_data原始数据4.示例:classLoginPwdSerializer(serializers.Serializer):m......
  • java 反序列化 cc6 复现
    复现环境:common-collections版本<=3.2.1,java版本随意.我们观察java高于8u71的版本会发现sun.reflect.annotation.AnnotationInvocationHandler类被进行了修改,其中的readObject不去调用setvalue方法,而是创建了一个LinkedHashMapvar7去重新进行操作,使我们之前的利用链中断.p......
  • 全网最适合入门的面向对象编程教程:55 Python字符串与序列化-字节序列类型和可变字节字
    全网最适合入门的面向对象编程教程:55Python字符串与序列化-字节序列类型和可变字节字符串摘要:在Python中,字符编码是将字符映射为字节的过程,而字节序列(bytes)则是存储这些字节的实际数据结构,字节序列和可变字节字符串的主要区别在于其可变性和用途,bytearray是可变的字节序列......
  • 【春秋招必看】Unity相关笔试面试题(内有完整答案)第12期
    欢迎来到光光的奇妙冒险,我是你们的煎饼光子老师。今天是我们的第12期试题总结。C#部分:(前四题为字节跳动面试问题)1、List是链表还是数组答案:数组2、上一题追问:当list满了的时候,我再加入一个元素它的效率会比较低啊,它内部大概是一个什么样的执行过程呢?答案:数组搬家,会......
  • pbootcms模板自动生成当前页面二维码
    在PbootCMS中,可以使用 {pboot:qrcode} 标签来生成文本的二维码图片。这在产品列表页或详情页中非常有用,可以为每个产品生成二维码。使用方法html {pboot:qrcodestring=***}其中,string 参数用于指定生成二维码的内容。示例代码假设你需要为每个产品生成一个包含产......
  • unity性能优化(有关图集)
    1.什么是图集?首先,你必须把你的美术资源TextureType改为Sprite(精灵类型),因为SpriteAltas只支持Sprite这种TextureType格式。官方:2D项目使用精灵和其他图形来创建其场景的视觉效果。这意味着单个项目可能包含许多纹理文件。Unity通常会为场景中的每个纹理发出一个绘制调用;但是,......
  • leetcode刷题day34|动态规划Part03 背包问题(01背包问题 二维、01背包问题 一维、416.
    0-1背包问题二维动规五部曲1、确定dp数组以及下标的含义dp[i][j]表示从下标为[0-i]的物品里任意取,放进容量为j的背包,价值总和最大是多少。(取物品时可以是取0-i的任意一个,或者是他们的组合)2、确定递推公式不放物品i:背包容量为j,里面不放物品i的最大价值是dp[i-1][j]......