前回に引き続き、今回はRigidbodyを使わずにフリック動作を実現してみたいと思います。 基本的な考え方は、「ドラッグ中はマウス位置に追従、ボタンが離されたら減速移動」させることです。 以下のスクリプトを追加するして実現できます。 FlickMove2.cs using UnityEngine; using Syst...
Unity( 7 )
Category
Unityでマップなどをスクロールさせたい場合などに使用するフリック動作の実現方法についてのメモ書きです。 今回はRigidbodyの慣性を使ってマウスによるフリック動作を実現してみたいと思います。 1.スクロール対象のオブジェクトを配置する まず、フリックさせるスプライトを空間上に配置します。 上記の例では、写真をス...
Unityでゲームオブジェクトを常に存在させながら点滅描画させるためのスクリプトのご紹介です。 基本的な考え方は、「コンポーネントのrendererを一定周期ごとにenable/disableにすること」です。 点滅描画のスクリプトを以下に貼り付けておきます。 必要ならご自由にお使いください。 Blinker.cs u...
Unityを使っていて便利な移動操作機能のメモです。 ■「v」キーを押しながら移動 「v」キーを押した状態で移動すると、他のオブジェクトの頂点にスナップするように移動できます。 たとえば、オブジェクトを接するように配置したい場合に便利です。 ■「Ctrl」キーを押しながら移動 「Ctrl」キーを押した状態で移動すると、...
前回の記事でTime.timeScale=0を使わずにポーズ動作を実現する方法について書きました。 しかし、Rigidbodyコンポーネントを持ったゲームオブジェクトでは、ポーズしてもそのまま物体をすり抜けて慣性で動き続けてしまいます。 逆にRigidbodyを使わないゲームオブジェクトであれば前回の記事で公開したスク...
ゲーム全体をポーズしたいとき、Time.timeScale=0としてゲームの進行時間を停止すれば簡単に実現できます。 しかし、アニメーションの動作も停止してしまい、ポーズ中に別のアニメーションを動かしたい場合に問題となってきます。 手動で無理やり動かすことも不可能ではないですが・・・ そこで、今回はTime.timeS...
Unity上で扱うゲームオブジェクトには、座標や回転などを扱うトランスフォームやスプライト、アニメーション、スクリプトなど多種の情報を持っています。 これらは、コンポーネントと言います。 上記スクリーンショットの赤枠で囲まれた一つ一つがコンポーネントに相当します。 コンポーネントとは直訳すると「部品」とか「構成要素」と...
シューティングゲームをUnityで開発するとき、ショットが画面外に出たときに消したい場合が出てくるでしょう。 今回はこの実現方法について考察してみたいと思います。 ■OnBecameInvisibleを拾う オブジェクトが画面外に出て見えなくなったとき、OnBecameInvisible()メソッドが呼ばれます。 この...
今回もUnityに関する記事です。 先々週あたりからUnityを本格的に弄るようになってから、将来的には自分のサイト上で自作ゲームを公開したいと思うようになりました。 UnityにはWebブラウザ上でプレイできる形式にリリースできるので、今回はこれでパッケージをこのブログ記事に埋め込んで公開してみたいと思います。 手順...
・timeScale=0とアニメーションの関係 前回の記事でゲームの進行を一時停止するとき、Time.timeScale = 0とすることですべてのキャラの動き止めることができることを書きました。 しかし、この方法で以下のような弊害が出てきます。 ・アニメーションできなくなる ・WaitForSecondsで無限待...