我有一个名为play-button的资产文件texture type=sprite2D
和Sprite Mode = Multiple
,它包含2个不同的框架:play-button0
和play-button1
我已为此资产附加了一个c#脚本文件,其中包含以下代码:
using UnityEngine;
using System.Collections;
public class Play_btn : MonoBehaviour {
SpriteRenderer spriteRenderer;
Sprite s1;
Sprite s2;
// Use this for initialization
void Start () {
spriteRenderer = GetComponent<SpriteRenderer>();
if (spriteRenderer.sprite == null)
spriteRenderer.sprite = s1;
}
void OnMouseDown() {
Application.LoadLevel("Levels");
}
void OnMouseEnter() {
spriteRenderer.sprite = s2;
}
void OnMouseExit() {
//spriteRenderer.sprite = sprite1;
}
// Update is called once per frame
void Update () {
}
}
正如您所看到的,我正在尝试更改框架onMouseEnter
和OnMouseExit
但是当mouseEnter
播放按钮发生空引用错误并且正在显示空白对象时屏幕,任何人都可以帮我解决这个问题吗?
答案 0 :(得分:2)
从我看到的,Sprites s1&amp; s2不公开(所以你不能通过检查员分配它),并且没有代码你指定s1&amp; s2变量。
<强>解决方案强>
使Sprite s1和s2公开,然后分配它们。