为什么我不能在 Scriptable Objects 检查器中拖放 Sprite?
Why cant I drag and drop a Sprite in a Scriptable Objects inspector?
所以我有一个可编写脚本的对象,它包含一个 public 图像变量。我想将图像拖到检查器中,但我无法让它工作。我已将纹理类型更改为 Sprite(2D 和 UI)。我试图找到有类似问题的人,但我能找到的唯一答案是将纹理类型更改为精灵。我需要将纹理类型用于 UI 用于显示技能冷却时间的前玩家 HUD。
Image Inspector 图片
Scriptable object inspector 图片
在“FireBall.cs”中使用“Texture”或“Sprite”而不是“Image”作为“abilityIcon”的类型。
Image
是 class 继承自 UnityEngine.UI namespace。并且要显示需要 Canvas 组件。
您可以使用包含精灵的图像创建预制件,以便添加到可编写脚本的对象中,然后使用 abiltyIcon.sprite
以便在需要时接收原始精灵。
如果您不想创建预制件,那么解决方案将使用上述 Sprite
class。
只需执行我前面提到的反向路径即可。而不是让 Image
和 Sprite
你会有一个 Sprite
并将它添加到代码中的空 Image
。
考虑到您正在使用可编写脚本的对象,请检查此解决方案是否比第一个更好。
所以我有一个可编写脚本的对象,它包含一个 public 图像变量。我想将图像拖到检查器中,但我无法让它工作。我已将纹理类型更改为 Sprite(2D 和 UI)。我试图找到有类似问题的人,但我能找到的唯一答案是将纹理类型更改为精灵。我需要将纹理类型用于 UI 用于显示技能冷却时间的前玩家 HUD。
Image Inspector 图片
Scriptable object inspector 图片
在“FireBall.cs”中使用“Texture”或“Sprite”而不是“Image”作为“abilityIcon”的类型。
Image
是 class 继承自 UnityEngine.UI namespace。并且要显示需要 Canvas 组件。
您可以使用包含精灵的图像创建预制件,以便添加到可编写脚本的对象中,然后使用 abiltyIcon.sprite
以便在需要时接收原始精灵。
如果您不想创建预制件,那么解决方案将使用上述 Sprite
class。
只需执行我前面提到的反向路径即可。而不是让 Image
和 Sprite
你会有一个 Sprite
并将它添加到代码中的空 Image
。
考虑到您正在使用可编写脚本的对象,请检查此解决方案是否比第一个更好。