-
Notifications
You must be signed in to change notification settings - Fork 11
Definition
罐子 edited this page Apr 27, 2022
·
2 revisions
- 红色禁止图标:对比项存在差异
- 橙色警告图标:对比项缺失
- 绿色正确图标:对比项内容完全一致
- 同级之间根据对象名称进行对比
- 如果找到名字对应的,作为一个对比组,进行属性对比
- 如果找不到名字对应的,则当前对比组为Miss类型(缺失左边或者右边)
对比前
Mine对象: Their对象:
- Root - Root
- A - A
- B - C
- E - D
- F - E
- G
对比后:
Mine对象: Their对象:
- Root - Root
- A - A
- B
- C
- D
- E - E
- F
- G
- 相同Component类型的作为一个对比组
- 将对比组的Component转换成SerializedObject
- 获取其所有SerializedProperty
- 然后一一对SerializedProperty的值进行判断是否相等
- SerializedPropertyType.Generic:忽略
- SerializedPropertyType.ObjectReference:
- 判断是否都存在引用
- 判断引用对象的GUID是否一样
- 判断引用对象类型是否一致
- 判断引用对象在Prefab中的路径是否一致(处理结构属性一致的两个Prefab,但GUID不一致的情况)
- 其他:使用SerializedProperty.DataEquals进行判断
- CompareSetting界面可以设置需要忽略的属性字段
- 忽略采用正则匹配,匹配中的将不进行对比。
- 具体可参考CompareSetting界面