Just another m1starグループ site

休学から始めるプログラミング

google ページ単位広告


google トラッキング



google ad ヘッダー




google ad 投稿記事




Unity

Unityチュートリアル2Dシューティング5

投稿日:


top_thumb_intro
お久しぶりです。三星です。
前回の続きです。

背景を作る

3枚の画像を表示させる

クワッド / Quad

クワッドプリミティブは平面と似ていますが、1 辺は 1 単位の長さであり、表面はローカル座標空間の XY 平面に向いています。さらに、クワッドは二つの三角形に分けられますが、平面はローカル座標空間に 200 の三角形を用いています。クワッドはシーンのオブジェクトを画像や動画の再生を行うディスプレイ画面として使用する場合に便利です。単純な GUI や情報表示をクワッドで実装することが可能であり、同様にパーティクル、スプライト、さらに遠くから見たオブジェクトを画像として表示する場合に活用できます。

クワッドは平面のオブジェクト。
plainと違って3dモデルとして画面に出るわけではなく、ディスプレイ画面として使うのに有用。
動画の再生、GUI、背景などに活用しよう。

パーティクル

運動する粒子により構成される事象を表現するために使われる。一般にパーティクル・システムを用いて模擬される事象の例としては、炎、爆発、煙、流水、火花、落葉、雲、霧、雪、埃、流星、毛髪、毛皮、草地、あるいは光跡や呪文の視覚効果などが挙げられる。

細かな粒子による映像表現の手法。
どうやって実装してるんでしょうね。

スプライト

主にビデオゲームで用いる、画面上の小さなキャラクタを高速に合成表示するための技術的な仕組みである。
Sprite は 2D グラフィックオブジェクトです。3D に慣れているユーザーにとっては、 Sprite は実質的には、標準のテクスチャにすぎないかもしれません。しかし、スプライトテクスチャを組み合わせ、処理し、開発を効率的に便利に行うためには、特別な技術が必要です。

度忘れしていたので再び。
2d用のグラフィックですね。テクスチャの一つです。

空のGameObjectを作成し、名前をBackgroundsとします

これが背景をまとめるためのオブジェクトの親要素。
空のゲームオブジェクトに名前を付けて子供を一つにまとめる手法は何回かやりましたね。

Front、MiddleとBackを作る

これが実質的な背景です。
すべてクワッドで作られます。
クワッドにマテリアルを張り付けるだけでお手軽に背景の画像になりました。

更に奥行きを付けるのも簡単なので便利です。

背景をスクロールさせる

これが今回のメイン。

void Update ()
{
// 時間によってYの値が0から1に変化していく。1になったら0に戻り、繰り返す。
float y = Mathf.Repeat (Time.time * speed, 1);

// Yの値がずれていくオフセットを作成
Vector2 offset = new Vector2 (0, y);

// マテリアルにオフセットを設定する
GetComponentRenderer().sharedMaterial.SetTextureOffset (“_MainTex”, offset);
}

Time.time

このフレームの開始する時間(Read Only)。ゲーム開始からの時間(秒)です。

開始時間×スピードがyの値です。
1になったらまた0に戻ります。

Mathf.Repeat

値 t は length より大きくはならず 0 より小さくはならず、その間をループします。

tがTime.time * speed で、length が 1 ですね。

オフセット

位置を基準点からの距離で表した値のこと。
・位置を表現している
・基準点がどこかにある
・距離(基準点からどれくらいズレているか)で表現している

最後の行のコードの意味がちょっとよくわかりませんが、マテリアルにはオフセットのコンポーネントがあります。

おそらくここに2行目で代入した offset の値をオブジェクトに突っ込んでいるのでしょう。


google ad 広告用スペース




google ad 広告用スペース




google ad 投稿記事




-Unity

Copyright© 休学から始めるプログラミング , 2019 All Rights Reserved Powered by STINGER.