2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

UnityでScratchのコスチュームっぽく画像を変える方法を思いついたので記事にしてみた話。(C#)

Last updated at Posted at 2020-04-16

#概要
題の通り、UnityでScratchのコスチュームっぽく画像を変える方法を思いついたのでというお話。
Unityで見た目を変えようとすると結構色々なサイトでアニメーションを使えって言われるんですよね。
使えれば苦労しないわ!!!( ゚д゚ )クワッ!!
というわけでScratchのコスチュームみたいにあらかじめ登録した画像からテクスチャを書き換える方法を紹介しようかなと思います。
ScratchからUnityに変えようかな....と思っていたりする方の参考になれば幸いです。

#Scratchのコスチュームってなんだっけ?
Scratchから離れていた人は
「Scratchのコスチュームってなんだっけ?」
なんて言う人もいるかも。というわけでそれを一旦思い出していただきます。
Scratchのコス.png
これですね。
コス変えるスクリプトブロックの画像.png
↑こんな感じのブロックを使って画像を変えていたと思います。

これをUnityで似たような感じにやっていくわけです。

#実際にUnityでやっていく
C#で次のコードを書いて下さい。

sample.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class sample : MonoBehaviour {
	SpriteRenderer spriteRendrer;
	public Sprite[] costume = new Sprite[1];

	void Start(){
		spriteRendrer = this.gameObject.GetComponent<UnityEngine.SpriteRenderer> ();	
	}
}

で、これを書いたらコスチューム機能をつけたいゲームオブジェクトにアタッチ。
インスペクター.png
そうするとインスペクターウィンドウに↑みたいなのが増えてると思います。
これの「▶Costume」をクリックして開いて下さい。
開いた.png
するとこんなのが出てきます。

  • Size:使用するコスチュームの数をここで指定します。あとからでも変更できます。
  • Element (数字):使用するコスチュームのIDみたいなものです。Scratchっぽく言うと「◯番目のコスチューム」ってやつです。

これで前準備は完了です!

#コスチュームを変更してみよう!

さてさて、それでは実際に使ってみましょう!
さっきのところでコスチュームの数を指定し、Element (数字)の部分に使用したい画像をドラッグ&ドロップして下さい。
例↓
例.png

これで使用したいコスチュームを登録できました。

ではコスチュームを変更するためのコードを書かないとですね!(終わり際になってテンション上がってます)

spriteRendrer.sprite = costume[0];

はい。これがコスチュームを変更するためのコードです。
上のコードのcostume[0]の数字の部分には変更したいコスチュームのElement (数字)のところに書いてある数字を入れましょう。
kore.png

一行だけで良いんです。楽でいいでしょ。
このコードをコスチュームを変更したいところに突っ込めばOKです。
お疲れさまでした。

2
2
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?