unity study

Unityでサクッとモックを作れるようになることを目指して、基本的なテクニックを抑えていく過程を残すブログのつもりだったけど、今はただ自分のトラブルシューティングメモになってるブログ

2015-01-01から1年間の記事一覧

Android版のビルド時に出たエラー

どうにもAndroidManifest.xml周りで、よく分かっていないがためにビルドエラーにハマる。 とりあえずさっき、下記の方法で一つの問題は解決したのでメモ。 stackoverflow.com Assets/Plugins/Android/res/values/version.xml を置くって話なんぞ知らんがな。…

XCode6から7にした時のトラブル対応メモ

XCode7にしてバイナリをiTunesConnectにアップロードしようとした際に、幾つかトラブルがあったのでどう対応したかメモを残す。 と言っても、解決した情報へのリンクだけど。

Unity5でGameCenterの達成項目を解除できないバグ対応

どうやらUnity5から、5.2.1時点でもまだ解決されていないバグらしい。hwks.hatenadiary.jp とりあえず下記に従ってネイティブプラグインで解決するか。qiita.com ところで、アプリバージョンアップタイミングから達成項目を追加する場合のテスト方法が分から…

Debug.Log()はかなり重いよ

ちゃんと計測してないんだけど、毎フレームあちこちでログ出力してるとかなりフレーム落ちる。 書き換えて周るのも面倒だなーと色々調べてたら、Debugクラスをグローバルスコープで定義して、単にDebugと書いている場合にUnityEngine.Debugではなく、自分の…

Application.LoadLevel()でのエラーハンドリング

ステージ毎にシーンを分けて作っていて、そのシーンを Application.LoadLevel("Stage" + n); って感じで読み込んでいる。 何らかのミスでそのシーンが存在しない場合はエラーになるが、調べた感じだとうまいエラーハンドリングが見当たらない。 Exceptionをc…

Web上で効果音を作れるサイト

http://jfxr.frozenfractal.com/# マシンによってはちょっと重いけど、これはなかなか使い勝手が良い。

UniRxメモ:ストリームが発火した回数を調べる

あるタイミングで発火するstreamがあるとして、 stream.Select(_ => 1) .Scan((a, b) => a + b) .Subscribe(x => Debug.Log(x)); とすると発火した回数を取れる。

Mechanimでアニメーションしながら、SpriteRenderer.enabledをスクリプトで触る際の注意

敵がスプライトアニメーションしていて、やられると点滅する。ということを実装しようとした。 スクリプトからSpriteRendererのenabledをいじることで実現できるはずだったのだが、何故かenabledがfalseにならない。 一時停止して直接Inspectorからenabled=f…

C#のprotectedの扱いはJavaとちょっと違うんだな

ちょっとハマったのでメモ。 Javaのprotectedと違って、C#のは同一クラスの別インスタンスからアクセスできないみたい。 そういう場合にinternalを使う。 「アクセスは現在のアセンブリに制限されます。」って説明がイミフだったけど、そういうことか。 clas…

LeanTween良さそうだな

最近試しにDOTween使ってみたけど、iTweenの方が使いやすいような気がした。 でもこれ見たらLeanTween良さそうだな。 次はこれ使ってみるか。 LeanTween Speed Comparison to iTween | Dented Pixel

Editor拡張が地味に楽しい

ゲーム実行前にあらかじめシーン上にPrefabを並べておきたいことがあって、数が多いし後で変えたくなるから何とかできんかなぁ、とEditor拡張をやってみた。 個数指定してボタンを押すとGameObjectを生成する、みたいな。 触ってみるとなかなかEditor拡張は…

Animationで拡縮や移動が反映されない現象

Inspectorで、AnimatorのApplyRootMotionがfalseになっていると反映されない。 OnAnimatorMove()を実装していると、この部分がHandled By Scriptと表示される。 自分の場合だとObservableMonoBehaviourを継承しているコンポーネントがあったので、そのために…

UniRxメモ:n秒後から始まるストリーム

Coroutine使う場合は yield return new WaitForSeconds(n); とするような処理を、UniRx使う場合はこんな感じになる。 observable.SkipUntil(Observable.Timer(TimeSpan.FromSeconds(n)) よく使いそうなパターンは、ひと通り書いてみて覚えるのが手っ取り早い…

名前付き引数

C#はこんなことできるのか。 これは良いなぁ、順序じゃなくて名前で指定できる方が、明確で分かりやすい気がする。 名前付き引数と省略可能な引数 (C# プログラミング ガイド)

ObservableMonoBehaviour使う時の些細な注意点

ちょこちょことミニゲーム作る中でUnirx使ってみてるんだけど、地味にハマった点。 ObservableMonoBehaviourを継承してUpdateAsObservable()使ってて、なーんかイベント来ねぇなぁ、って。 Update()の中でbase.Update()呼ばないとダメなんよ。 うん、至極単…

UniRxを使いこなしたい

先日、Unityでの非同期処理やらにテーマを絞った勉強会に参加してきた。 まぁ主にUniRxの話なんだが、非常にためになった。 ダブルクリック検出ぐらいはよくサンプルで見かけたりするし、流石にそれぐらいは分かるのだが、 色々と応用的なことをしようとする…

Editor Console Proがとっても便利!

ちょっと仕事で、かなり厄介な不具合調査を行うことがあった。 これがもう手に負えないぐらい酷いコードで、対症療法的にネストを積み上げたif文だの、いまいち名前から機能を類推しがたいメソッド名やら、とにかく調査が大変だった。 ブレークポイントで止…

2D物理系コンポーネントのテスト

とりあえず無理矢理に色々突っ込んで動かしてみた。 https://dl.dropboxusercontent.com/u/3811281/unity_study/physics2d_test.html

何よりもまず見た目を良くしたい話

何となく適当なミニゲームを作りたい、と思った時に自分の場合だと見た目が一番問題になる。

弾を飛ばすが……

ボタンを押したら砲身ぽい場所から弾を飛ばす、というのがやりたかった。

FixedUpdate()がいまいち分からない

とりあえずググると Rigidbodyの値をいじるのはUpdate()ではなくFixedUpdate()で行なうこと FixedUpdate()でInputを参照しないこと となっている。 後者は、入力を取りこぼしうるからってことらしい。 まぁそれは分かんなくもないんだけど。 実際のところ、…

名前付き引数

へぇ、C#には名前付き引数ってぇのがあるのか。 名前付き引数と省略可能な引数 (C# プログラミング ガイド) これはたまに使いそう。 あまりよろしいことではないが、なんだかんだで引数が増えていったり、ちょっとだけ挙動変えたくてフラグの類とか追加され…

タイヤがビヨビヨになる原因

面倒臭くなると放置しがちで、でもそれをそのままにして他のことをやる気になれない難儀な性格が恨めしい。 とりあえずタイヤがビヨビヨになる問題の原因は分かった。

Unity5が来た!

昨日から風邪で寝込んでいたせいで情報をキャッチするのが少し遅れたが、Unity5がリリースされたらしい。 とりあえずDLしてUnity4.6で作ってたプロジェクトを開いてみたが、手元にあるものは問題なく動いた。 細かい追加機能とかはまだ把握してないけど、何…

UnrealEngine4が無料化された

UnrealEngine4が無料化されたらしい https://www.unrealengine.com/ja/blog/ue4-is-free

Unityエディタから追加したC#スクリプトのテンプレートを変更する

微妙に自分のスタイルと違っていて、毎度直すのが面倒なのでテンプレートを変更することにした。C#の文字エンコードとNewBehaviourScript.csのテンプレートファイルあたり - 俺がぐったり部だ! C#の文字エンコードとNewBehaviourScript.csのテンプレートフ…

タイヤがビヨビヨする

昨日に引き続き、しょうがないので適当なSprite置いてWheelJoint2Dとか付けてみたんだけど、なんかうまくいかない。 タイヤがビヨビヨする。 なんだこれ。

2Dのプリミティブが欲しい話

あまり触ったことのないヒンジやらバネやらのジョイントを試してみようと思った。

Coroutineを理解した

使い方は分かるし、実際使ってもいたけど仕組みをようやく理解した。 なるほどなぁ。スッキリした。 複数のCroutine使ってて、実行順序で結果に影響与えるような場合に、自前で実装して制御するとかもいいのかも。 いや、そもそもそんなケース自体が、すでに…

.gitignore設定

UnityをGit管理するときの.gitignoreメモ - Qiita UnityをGit管理するときの.gitignoreメモ - Qiita