unity

スクリプトの初期化処理の順番を制御する

スキルのマスターデータ的なものを読みこむMasterManagerと、所持スキルのコードからマスターを参照して処理を行うPlayerがある場合。 それまで正常に動作していたのに、一旦unityを再起動したらエラーが発生しだした。 MasterManagerとPlayerの初期化を行う…

web playerでspriteがボケる問題が解決

unity web player用に出力した時だけボケる - None. 先日の問題の対応策が分かった。Surviveこの記事に書いてある通り、Generate Mip Mapsをoffにすることで解決。 Thanks HIETALAHTI!(読めない) クッキリした。Generate MipMapsの効果についてはこっちを参…

web playerのオフライン対応でもハマっている

先日のボケの原因を調査しようと外でカタカタやろうとしたところ。 web player用にビルドしたhtmlをwebに繋がっていない状態で開くとエラーが出る。 こんなやつ。 どうやらデフォルトで吐かれるhtml(とjs)では、web playerが最新かどうかを自動で見に行こう…

unity web player用に出力した時だけボケる

sprite shaderにちょっと手を加えたものを使って2Dのゲームを作り中。ずっとunity上でだけ動かしてたので、そろそろと思ってweb playerに出力したらなぜかボケる。 unity上と web player。ボケる。 ちなみに、macのスタンドアロン用に出力した場合はボケない…

衝突したGameObjectのComponentにアクセスする。

衝突した、というかほかのGameObjectのComponentにアクセスする方法。 GetComponentで持ってくる。 衝突したオブジェクトのEnemyComponentのプロパティ、pointにアクセスする場合。 void OnTriggerEnter2D(Collider2D c) { c.gameObject.GetComponent<Enemy>().poin</enemy>…

PrefabをGUIで複製する。

スクリプトからPrefabを作る方法はあるっぽいけど、今回はそれじゃなく、Prefabを普通にGUIでコピペする方法。 普通にCtrl+Cとか右クリックで出来るだろうと思ったら出来なかった。今のとこ見つけた方法は二つ。 まずは一旦シーン上にインスタンスを作って、…

Layerごとの衝突判定有無を設定する。

壁で跳ね返るようになったので大量にオブジェクトを配置してみた。が、このままではオブジェクト同士でも衝突してしまう。 そこで今回は、Enemyオブジェクト同士では衝突しないようにしてみる。Edit > Project Settings > Tags and Layersを選択EnemyのPrefa…

OnTriggerEnter2Dで反発処理

昨日の解決編。 やりたいことは、床に衝突した時と左右の壁に衝突した時で異なる反発係数を適応したい。 床と左右の壁で処理を変えるため、左右の壁ではscriptで反発処理をするように変更。左右の壁のBox Collider 2Dのis Triggerをチェック。 is Triggerを…

Rigidbody 2Dでオブジェクトをバウンドさせる

Physics2D Materialを使う。 http://docs.unity3d.com/Documentation/Components/class-PhysicsMaterial2D.htmlProjectビュー→Create→Physics2D Materialを選択Inspectorで摩擦係数と反発係数が設定できる。 これを設定したいColliderのMaterialに設定 実行…

Rigidbody 2DとApply Root Motionは併用できない

いろいろ経緯はおいといてunityの物理演算用component、Rigidbody 2Dを使ったところ ゆっくり下に動きはするものの、物理演算による落下とはほど遠い挙動。Rigidbody2Dの方を確認してみても、Gravity Scaleには1が入っているし、問題無さげ。 試しにGravity …