Unity

UnityでAndroid版をビルド時にmanifestファイルのマージに失敗する

Users/wakepon/projects/2357/Temp/StagingArea/AndroidManifest-main.xml:6:16-49 Error: Attribute application@icon value=(@drawable/app_icon) from AndroidManifest-main.xml:6:16-49 is also present at AndroidManifest.xml:13:9-45 value=(@drawabl…

UnityでFirebaseプラグインを新しくしたら、XCodeのビルドでエラーが出た件

_objc_class_$_firanalytics", referenced from unityというようなリンカエラー。Unity-iPhone.xcodeprojの方でビルドしようとしたいたんですが、pod installしてUnity-iPhone.xcworkspaceを生成して、そっちでビルドすればOKというとこまではわかった。しか…

UnityでiOSとかでよくあるトグルスイッチを作りたい。

iOSとかである、こーいうトグルスイッチを作りたい!っと思って作ってみました。まず画から。こーいう緑色で楕円のONの画像に、 こーいう灰色で楕円のOFFの画像を被せ、 さらに白い丸いボタン画像を載せます。 Scriptで、タッチするとボタンが右に行って、OFF…

UnityでBGMのイントロ付きループに挑戦

最初に試したのはループ終端まで来たのを確認してAudioSource.timeをループ開始地点に飛ばす方法 www.shibuya24.info 次に試したのが、イントロ用とループ用でAudioSourceを2つ用意してループ用のAudioSourceをPlayScheduledでイントロ長分ずらして再生する…

UnityでビルドしたiOS版アプリがcompute_class_bitmap: Invalid type 13 for fieldと言われて落ちる

UnityでビルドしたiOS版アプリでcompute_class_bitmap: Invalid type 13 for fieldと言われて落ちる事案が発生しました。IL2CPPでビルドすれば大丈夫。けどMonoだとアウト。Monoのほうがビルドが爆速なので、私、実機で動作確認する際は結構Monoでビルドする…

数字が徐々に変わって目的の数値に行くスクリプト

ゲームのUIで、こんな感じの演出ってよくあると思います。スクリプトを書きました。以下のスクリプトをTextコンポーネントを持ったオブジェクトに貼り付けて、SlideToNumber( from_number, to_number, duration )を呼べば、from_numberからto_numberへdurati…

Unityでビルドした後、XCode上でSiginingのTeamを指定するのがめんどくさかったけどUnity側で設定できた。

だいぶ前から使っていて、前回の記事でもすでに使っていたのですが、ブログにメモしていなかったので書いておきます。以前からUnityでiOS用にビルドした後にXCode上でSiginingのTeamの部分を設定するのがめんどくさいなぁと思っていました。ここ↓ Unity5.6に…

UnityアプリのiOS版にアドフリくんを導入する際にXCode上での操作をしたくないので頑張ってみた。

アドフリくんとは アドフリくんとは、俗に言うSSPというものです。SSPとはSupply Side Platform(サプライ サイド プラットフォーム)の略語で、簡単に言うといくつかあるアドネットワークから適したものを自動で選んでくれて収益を最大化してくれるツールで…

【unity】プログラマーがデザイナーとコンポーザーと協力してゲームを作った話【 #Economicity 】

新作ゲーム「街づくりパズル エコノミシティ – ECONOMICITY -」をリリースしました!Economicityのせいで電車を乗り過ごしたというご意見もあり、業が深いゲームを作ってしまったなと反省しております。ダウンロードリンクはこの記事の最下部にまとめてあり…

uGUIで2色補完する(黒を○色、白を○色にする)

こういう3種類の絵を出したい時に、色違いのテクスチャーを用意するのってめんどくさいですよね?見た目の色違いだけなのに、テクスチャに色を乗算するだけではどうにもならないし... けどなんとか、左端の白黒のテクスチャ1枚で済ませたい。黒色の部分を○○…

Unityで作ったアプリのAndroid版で set_interactable can only be called in main thread などというエラーが出て困った話

Unityで作ったアプリのAndroid版で set_interactable can only be called in main thread などというエラーが出て困っておりました。メインスレッド以外でset_interactable呼ぶなや!ってことみたいです。どうもAdMobのinterstitialがCloseした時のCallbackで…

UniRxを使ってて気になったこと

AddToしているのものをIDisposable.Dispose()して、そのあとオブジェクトを廃棄したら二重解放になる? 結論、ならないので気にしなくて大丈夫な模様。下記のコードでは、Disposeした後、AddToしたgameObjectを破棄しているが、特にエラーは発生しなかった。…

UniRxを1日勉強してみた感想

結論 まず最初に結論を。ゲーム開発がメインの私的にはObserveEveryValueChanged, Timer, AddTo(安全のため必須)あたりを使えれば十分かなぁという感想。実は、気づいていないすごい便利な使い方とかあるかもしれないので、オススメの使い方がありましたら教…

Unityで作ったアンドロイドアプリが吐くログを確認する方法

Android SDKへのパス/platform-tools にあるadbというコマンドを使うことでログを見ることができます。 Android SDKへのパスは、Android Studioを立ち上げて、「Android Studio」->「Preference」->「Android SDK」として、上の方にあるAndroid SDK Location…

typeface animatorとoutlineの併用で、ちょっとハマった

Typeface Animatorという超絶簡単にオシャレにテキストを動かせるAssetがあります。https://www.assetstore.unity3d.com/en/#!/content/37445先日、こちらのアセットとOutlineコンポーネントと一緒に使ってたらうまく動かなくてハマったのでメモ。どういうふ…

CosやSinをテーブル引きにする効果

- 追記 2017/2/8 23:20各所からツッコミを受けました。 テーブル引きの恩恵を受けるようなコードは、現在の実践環境ではあまりなく、普通に関数を使ったほうが有利というのが説が多いです。 以下のテストはキャッシュが効きやすい状態のテストなので一応、テ…

UnityException: Unable to install APK! Installation failed. See the Console for details

UnityでAndroid版をBuild And Run しようとした時に、突如として表題の例外が発生するようになって困った。answers.unity3d.comこちらに解決策が↑Player Settings -> Other Settingsで、Bundle Version Codeをあげたらインストールできた。たまにUnityが落ち…

use of undeclared identifier 'Unity' とか 'UI' のエラー

UnityでiOS版のビルド時に、Scripting BackendをMono2xにしてStriping Levelを何某かにしていると、以下のようにXCode側でエラーが出ることがあるもよう。とりあえずstripping levelをdisabledにすれば、一応回避できる。Mono2xでのビルドは、基本デバッグ用…

XCodeでビルドした時に「Appの有効なaps-environmentエンタイトルメント文字列が見つかりません」というエラーが出る

XCodeでビルドした時に「Appの有効なaps-environmentエンタイトルメント文字列が見つかりません」というエラーが出た。これは証明書にPush Notificationが無いかららしい。最近のXCodeは「Automatically manage signing」にチェックを入れておくと証明書を勝…

AndroidManifest.xml:20: error: Error: No resource found that matches the given name (at 'theme' with value '@style/Theme.IAPTheme のエラー対応

UnityでAdMobを入れ直したからか、Android版をビルドするときに以下のようなエラーが出るようになっちゃいました。 CommandInvokationFailure: Failed to re-package resources. /Users/wakepon/Library/Android/sdk/build-tools/23.0.2/aapt package --auto…

ゲーム中にバンドルバージョンを表示する

バグ報告を受けたときに「えっ、それどのバージョンのロムで発生したの?」って聞きたいときにタイトル画面などでバンドルバージョンを表示するようにしておくと便利だったりします。バンドルバージョン自体はUnityEditor.PlayerSettings.bundleVersionで取…

OnTriggerEnter2DとOnCollisionEnter2Dの違い

OnTriggerEnter2DとOnCollisionEnter2Dの違いが分からん!更に言うと、OnCollisionExit2DとOnTriggerExit2Dの違い、OnCollisionStay2DとOnTriggerStay2Dの違いも分からん!っとなったので調べました。2Dについて書いていますが、基本3Dも一緒だと思います。 …

【Unity道場】Unity 5.4 & 5.5 新機能キャッチアップ講座に行ってきた。

「Unity 5.4 & 5.5 新機能キャッチアップ講座」に行ってきました。このような回を無料かつ軽食付きで開催してくれるUnity Japan様には頭が上がりません。ありがとうございます。個人的に気になったポイントと所感をメモ。 Unity5.4 GPU Instancing ライトプ…

Unityで transform.localPosition.x = 1.0f; ができないわけ

C#初心者の私がUnityで最初戸惑ったのはtransform.localPosition.x = 1.0f;というようなことができないことです。これをやろうとすると、 error CS1612: Cannot modify a value type return value of `UnityEngine.Transform.localPosition'. Consider stori…

UnityでUnit Testを行う

先日、勉強会でUnity Tests Runnerというのものがあることを知りました。もともと、Unity Test Toolsというものの一部だったのが、Unity5.3から組み込みになったらしいです。docs.unity3d.comというわけで使ってみました。使い方は簡単で、図のように「creat…

AudioSourceの再生が終わったかどうかを取得する方法(が見つからない...)

表題の件ですが、結局いまのところ解決していません。AudioSourceクラスにはisPlayingというプロパティがあります。一番最初に思いつくのは、これがfalseになったら再生が終わったと判断するという手です。しかし、これには落とし穴があって、Pause()を呼ぶ…

C#のlock構文

FruitsNinjaのCloneのソースコードを見ていてc#にlock構文があることを知りました。https://www.assetstore.unity3d.com/jp/#!/content/65879 マルチスレッドのプログラムでは、ちゃんと排他制御をしないと問題がおきます。その代表格がsingletonクラスで、…

全てのシーンに存在し、一つしか存在してはいけないマネージャー的存在の実装

kan-kikuchi.hatenablog.comこの記事を読んで、最近読んだFruitsNinjaをCloneしたアセットのことを思い出したので記事にします。https://www.assetstore.unity3d.com/jp/#!/content/65879ところで、このアセット、凄いです!画像変えるだけで、vegetable nin…

Unity Remote 5を使ってみた

先日、実機確認のためのビルド時間に悩んでいるという話をしたら、Unity Remoteというのを教えてもらったので、使ってみました。Unity Remoteとは、ゲームの実行はUnity Editor上で行われるのですが入力はUSBで繋いだデバイス側から行えるというものです。ま…

UnityのAsset「Android Native Plugin」でエラー(AdMobとの相性が悪いようでした)

UnityのAsset「Android Native Plugin」でビルドエラー(最新版だけ?)UnityでGoogleのGame Service系を簡単に使えるようにすることで有名なアセット「Android Native Plugin」を導入したのですが、ビルドしようとすると下記のようなエラーが出ていました。 C…