Unity(2D)で、SpriteRendererから画像を変更するコードの書き方です。
成果物
土台をクリックすると、上のキツネの画像が変化するスクリプトを作ります。
SpriteRendererから画像の変更
やってることはテキストの変更と大体同じです。
変数を宣言して、SpriteRendererを取得して、そこに値を入れ込みます。
変数を宣言して、SpriteRendererを取得して、そこに値を入れ込みます。
ただし、今回は「値」にあたるスプライトも変数として宣言します。
スクリプトをアタッチしたオブジェクトのインスペクターを確認すると、(勝手に日本語化されてますが)宣言した変数が現れていることが確認できるので、
SpriteRendererはヒエラルキーから変化させたい画像をドラッグし、Spriteはアセットにある画像をドラッグするか、右の丸をクリックして選びます。
クリックした時にspriteRenderer.sprite = sprite;という命令を実行すると、
変数spriteRendererに登録した「オブジェクトのSpriteRenderer」のspriteプロパティが、変数spriteに「登録した画像」に変わります。
変数の宣言は複数できるので、
クリックするたび別々の画像にすることなどもできます。
//Unity C#
public class changepicture : MonoBehaviour
{
//宣言
public SpriteRenderer spriteRenderer;
public Sprite sprite;
public Sprite sprite2;
void OnMouseDown()
{
//表示されてる画像によって処理を変える
if (spriteRenderer.sprite == sprite2)
{
//画像切り替え①
spriteRenderer.sprite = sprite;
}
else
{
//画像切り替え②
spriteRenderer.sprite = sprite2;
}
}
}
やりたいことから逆引きするUNITYの使い方まとめ
Unityをやりたいことから学習していけるよう、機能・用途別にまとめたページです。C#の命令別の逆引きは現時点で作っていません。2019の時期に書き始めているので、それより前のバージョンについては言及しません。
コメント