Quadを使用して背景を移動させる方法
画像の取り込み
- png画像をドラッグアンドドロップでScriptsフォルダなどにUnityに取り込む
- importした画像を選択、Inspector内のTexture TypeをDefaultに変更する
- InspectorでWrap ModeをRepeatにする
Stageに背景画像を設定する
- HierarchyのCreate → 3D Object → QuadでQuadを作成する
- 作成したQuadにImportした画像をアタッチする
- Quadを選択、Inspectorでアタッチした画像のShaderをUnlit → TextureでUnlit/Textureに変更する
- 透過する部分がある場合、ShaderをUnlit → TransparentでUnlit/Transparentに変更する
背景移動Scriptのアタッチ
Unity公式ページを参考に、C# Script、Background.csを作成する
public class Background : MonoBehaviour { // スクロールするスピード public float speed = 0.1f; void Update() { // 時間によってYの値が0から1に変化していく。1になったら0に戻り、繰り返す。 float y = Mathf.Repeat(Time.time * speed, 1); // Yの値がずれていくオフセットを作成 Vector2 offset = new Vector2(0, y); // マテリアルにオフセットを設定する GetComponent<Renderer>().sharedMaterial.SetTextureOffset("_MainTex", offset); } }
作成したScriptを背景Quadにアタッチする