読者です 読者をやめる 読者になる 読者になる

(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

Texture2DからSpriteを生成する【Unity】

Unity

このエントリーをはてなブックマークに追加

この記事でのバージョン
Unity 5.5.0p1


はじめに

今回はタイトル通り、Texture2DからSpriteを生成する方法のご紹介です。


Sprite.Create

方法はとても簡単、SpriteのCreateというメソッドにTexture2Dを渡すだけ。



実際に使ってみると以下のような感じ。

なお、Sprite.CreateではRectとPivotも最低限、指定する必要があります。

//Texture2D作成
Texture2D texture2D = new Texture2D (
  width  : 128,
  height : 128,
);

//Texture2DからSpriteを作成
Sprite sprite = Sprite.Create(
  texture : texture2D,
  rect    : new Rect(0, 0, texture2D.width, texture2D.height),
  pivot   : new Vector2(0.5f, 0.5f)
);

//生成したSpriteをSpriteRendererに設定
GetComponent<SpriteRenderer>().sprite = sprite;


rectとpivotを上記の通りにすると、SpriteRendererに画像ファイルを

ドラッグ&ドロップした時と同じように、中央に画像全体が表示されます。


f:id:kan_kikuchi:20170104143141p:plain