Roba Memo - 素人のUnity覚書と奮闘記

素人のUnity覚書と奮闘記

Box Collider 2Dのサイズをスクリプトで変更する

やりたいこと 当たり判定で使うBox Colliderをオブジェクトのサイズに合わせる方法。 具体的には、下のようなBox Collier 2Dがアタッチされたゲームオブジェクトを引き伸ばして配置したときに、 Box Colliderのサイズがリンクしないので、ステージに配置され…

画像フォーマットを一括で設定したい

関連記事:画像の容量を抑えたい - Roba Memo - 素人のUnity覚書と奮闘記 参考サイト様:Unity で作ったアプリの画像が一部の Android 端末で表示されない件について - Qiita Editorフォルダに専用クラスをつくる コード using UnityEngine; using UnityEdit…

ぼやき

先日、何の気なしに、このブログのアクセス解析をみたら急激に多い日があって、何事?!って思ったらUnityのまとめサイト?のようなところにリンクが貼られてた模様。 こんな僻地ブログ、よく見つけられたなぁと関心しつつも、素人の覚書なのにいいの〜?っ…

AssetBundle 読み込み中を表示したい

AssetBundleを使って見る のスクリプトに追加で、AssetBundleを読み込み中に Please wait的なものを表示する方法をメモ。 robamemo.hatenablog.com 概要 ローダーをprefabにして、1秒たっても読み込みできなければprefabを表示する。 1秒置くのは、すぐに…

スクリプトごと使いまわしできる アルファベットボタン

スクリプトごと使いまわしできる 数字ボタンのアルファベットバージョン 使い方などの詳細は、数字ボタンバージョンにて。 配置 Dectionaryの作成 スクリプト Enterボタンのスクリプト 配置 Dectionaryの作成 Global(シングルトン)に作成。 [HideInInspect…

スクリプトごと使いまわしできる 数字ボタン その3:スクリプトの説明

前記事 スクリプトごと使いまわしできる 数字ボタン その1:ベースボタンの作り方 スクリプトごと使いまわしできる 数字ボタン その2:ボタンの使い方 その1で作成した、NumberButtonクラスの説明をメモ。 NumberButton.cs 長押し処理について SetNumber(…

スクリプトごと使いまわしできる 数字ボタン その2:ボタンの使い方

前記事:スクリプトごと使いまわしできる 数字ボタン その1 その1で作成したボタンの使い方をメモ。 ボタンを配置 プロパティの設定 Enterボタンのスクリプトを作る ボタンを配置 その1で作成したボタンを、必要な桁数だけ配置する。 ついでにEnterボタン…

スクリプトごと使いまわしできる 数字ボタン その1:ベースボタンの作り方

こんな感じのボタンを作る方法をメモ。 主な機能は、 ・上をクリックしたら1ずつ減算し、下をクリックしたら1ずつ加算する。 ・長押しすることで、数字を送りつづける。 ・Enterボタンで判定。 ボタンをPrefabにして、それを使いまわしすればいいんだけど…

画像の容量を抑えたい

修正 2017/06/27 問題点 原因と対策 フォーマットの設定 Android jpegの場合 MipMapのチェックを外す フォーマットの種類について Android pngの場合 iOS jpegの場合 iOS pngの場合 画像のサイズに注意 修正 2017/06/27 Jpeg画像の圧縮を、RBG Compressed ET…

Metal: Editor support disabled, skipping device initialization

エラー内容 Metal: Editor support disabled, skipping device initialization 対処方法 Players & Settings画面から、other settings - PCまたはiOSタブ - Metal Editor Support にチェックを入れる。

AssetBundleを使って見る

AssetBundleとは 1:Editorフォルダを作成する。 2:アセットバンドルをエクスポートするためのスクリプトを書く。 3:第一引数で書いた通りにフォルダを作成する。 4:メニューのAssets > Build AssetBundlesを実行する。 5:アセットバンドルにしたい…

Error building Player because scripts have compile errors in the editor

エラー内容 Error building Player because scripts have compile errors in the editor 対処方法 スクリプトをEditorフォルダに入れる。

○秒で○度 オブジェクトを回転する

やりたいこと 例えば、ボタンを押したら、3秒かけて360度回転したい場合 開店後は停止する。 コード [SerializeField]GameObject handle; bool rotStart = false; float speed = 3.0f; float rotAngle = 360f; float variation; float rot; void Start () { …

オブジェクトを回転させる その2

使うメソッド //回転させる public void Rotate(Vector3 eulerAngles, Space relativeTo = Space.Self); //回転角度を取得する public Vector3 localEulerAngles; 30度ずつ時計回りするスクリプト public void OnRotation (GameObject target) { target.tr…

カメラで被写体を追う

(1)カメラを選択 (2)shift + 右クリックで被写体を選択 (3)shift + T でメニューをだす。 (4)LockTrackを選択する。

Blenderで遠浅の海を作る

完成画像 手順 1, Planeを作成する。 2, Modifier - Oceanを追加する。 3, 波アニメーションを作る。 4, Planeサイズを調整するには、sizeのところをいじる。 5, 波の高さを調節するには、WavesのScaleをいじる。 6, 海のマテリアルを作る Diffuse , Specula…

脱出ゲーム用 画像サイズ

ベース画素数:1024 * 576 広告スペース:上部から76 タイトル画像:1024 * 500 アイテムアイコン:100 * 100 アイテム画像最大:724 * 400 ステージサイズ アイテムリスト3列の場合:724 * 500 アイテムリスト2列の場合:824 * 500

誤変換

アプリに誤字があるとのご報告を受けたんですが、その誤変換がちょっと面白かったので。 れんぞく せいかい すう (連続) (正解) (数) と打ちたかったんですが、誤変換で れんぞくせい かいすう (連続性) (回数) となっていたんです。 でも、報告し…

ERROR : A valid provisioning profile for this executable was not found.

xcodeで実機テストするときに、ビルドは成功したのにインストールできずに、次のエラーが出た場合。 A valid provisioning profile for this executable was not found. 実機テストの場合は、profileをdebugのほうもDevelopmentに設定しないといけない。

Error: 'pod' command not found; unable to generate a usable Xcode project. You can install cocoapods with the Ruby gem package manager:

UnityでiOSビルドするとこんなエラーが出た。 ‘pod’ command not found; unable to generate a usable Xcode project. You can install cocoapods with the Ruby gem package manager: sudo gem install -n /usr/local/bin cocoapods pod setup UnityEngine.…

Error: [Temp/StagingArea/AndroidManifest-main.xml:12,

Androidでビルドしようとしたら、下記のようなエラーが出た。 Error: [Temp/StagingArea/AndroidManifest-main.xml:12, /プロジェクトのパス/Temp/StagingArea/android-libraries/GoogleMobileAdsPlugin/AndroidManifest.xml:2] Main manifest has <uses-sdk android:minSdkVersion=‘9’> but libr</uses-sdk>…

アカウント作成で落とし穴

App「飛行船」で初めてUnityAdsのリワード広告を使ったんだけど、何かおかしい。 UnityAdsの画面にあるはずのプロジェクトが無くなってる!? ということで、仕方なく新規作成して新しい広告IDを取得して、apkを出し直す。 後日、作成中に使ったあの広告IDは…

ボタンの非表示と無効化

非表示 非表示にする場合はボタンをGameObjectとして扱う。 ボタンは表示されなくなる。 GameObject btn ; btn.SetActive(false); 無効化 無効化の場合は、Buttonとして扱うため、UnityEngine.UIが必要となる。 無効化にするとボタンが半透明になり、タップ…

アプリからwebページを開く

Application.OpenURL ("url");

APKが100MBを超えたら

iOSの場合は、そのままで大丈夫そう? Androidの場合は、拡張ファイルに分けないといけない。 という作業を、Unityがやってくれる〜♪ File - Build and Settings - PlayerSettingsを開き、AndroidタブにあるPublishing Settings - Split Application Binary…

型変換

int → string String str = 50.ToString(); string → int int num = int.Parse("50"); bool → int using System; Convert.ToInt32(bool値); int → bool using System; Convert.ToBoolean(int値); int → float int a = 1; float b = (float)a; float → int fl…

エラー:Unknown type name 'GADNativeCustomTemplateAd'; did you mean 'GADUNativeCustomTemplateAd'?

xcodeで以下のエラーが出た場合 Unknown type name ‘GADNativeCustomTemplateAd’; did you mean ‘GADUNativeCustomTemplateAd’? Build Sttings → Apple LLVM8.1 - Language - Modulesの項目にある Enable Modules(C and Objective-C) をYesにする。

ストア画像

※自分流です。 ランチャーアイコン 1024 x 1024 (Apple Store) 角丸不可 512 x 512 (Android Store) 192 x 192 (Unity) AndroidとiOS両方 スクリーンショット 1024 x 576 (Android) 2208 x 1242 (iPhone) 2732 x 2048 (iPad) Android Store ヘッダー 1024 x …

定数の作成

変数の場合: const 配列の場合: readonly

スマホの自動スリープを無効にする

// 自動スリープを無効にする場合 Screen.sleepTimeout = SleepTimeout.NeverSleep; // デフォルトの設定にする場合 Screen.sleepTimeout = SleepTimeout.SystemSetting;

特定のシーンのときのみ何かしたいとき

using UnityEngine.SceneManagement; if (SceneManager.GetActiveScene().name == "Game") { // TODO: }

保存データをキーボード操作で消去したい

ゲーム画面で、保存や読み込みのボタンは作るけど、保存したデータの消去って作らない。 でも、開発中は手軽に消去したい!ってなことで、Shift+C で消去できるコード void Update(){ if (Input.GetKey (KeyCode.LeftShift) && Input.GetKeyDown (KeyCode.C)…

フレームレート(FPS)を固定する

Unityで作ったアプリは、どうも電池の消費が早くなるようなので、FPS値を下げて少しでもマシにしたい!ということで、やってみた。 Unityでは、フレームレートは環境に応じて自動で調整するらしい。 初期設定は、意外と速くて30FPSだそうです。 設定方法は、…

音楽に合わせて歌詞を表示する

歌詞の配列を作る 歌詞を表示する秒数を配列にする 歌詞を表示するテキストを取得しておく 再生中かどうかを判定する 現在の再生位置を取得する 指定した秒数以上なら、歌詞を表示する 曲に合わせて歌詞を表示したかったので、その方法をメモ。 単純にUpdate…

アルファベットのボタンを作る

概要 ボタンの配置 スクリプト 設定 説明 長押しとタップの判定 概要 脱出ゲームでよく使う、アルファベットを合わせて解錠するやつ。 タップでAから順番に変わり、ZまできたらAに戻る。 でもZまでタップするのは大変なので、長押ししたら早送りみたいに切り…

オブジェクトを回転させる

使うメソッド gameObject.transform.rotation = Quaternion.Euler(float x, float y, float z); 使い方 例えば、ゲームオブジェクトを時計回りで30度ずつ動かしたい場合。 [Global.cs] public float second; public GameObject hariS; void Awake () { har…

パラパラアニメーションを作る

1. 画像をリソースに入れる 2. Imageオブジェクトを配置 3. プログラム 変数について スプライトの設定 完了後の処理 連続画像を用いて動画を作成したい。 Flashで作成していたころによく使った手法をUnityでもやりたかったので、その方法をメモ。 unityには…

広告を閉じた時のイベントをキャッチしたい

公式:ゲーム デベロッパー向け: 広告に関するおすすめの方法 次の1行を追加する。 interstitialAd.OnAdClosed += InterstitialAd_OnAdClosed; public void RequestInterstitial () { #if UNITY_ANDROID string adUnitId = android_InterstitialID; #elif UN…

インタースティシャル広告のリクエストと表示のタイミングについて

問題点1:読み込みを待って表示したい 対処方法 問題点2:読み込み→表示のタイムラグをなんとかしたい 対処方法 問題点3:広告が表示されにくくなった 対処方法 問題点4:広告を閉じた時のイベントをキャッチしたい 対処方法 問題点1:読み込みを待って…

NSCameraUsageDescription

以下の内容でリジェクトされた場合の対処方法 This app attempts to access privacy-sensitive data without a usage description. The app’s Info.plist must contain an NSCameraUsageDescription key with a string value explaining to the user how the…

草を生やす ‘ Grass Free ‘ を使ってみた

youtu.be パーティクルを使って、草を生成してくれるアドオンを使ってみたのでメモ。 バージョン情報 入手先 インストール 草の種類を選ぶ 追加する パーティクルを設定する マテリアルの設定 バージョン情報 Blender 2.77a Grass Free 1.1 入手先 下記のサ…

アドオンのインストール方法

手順1 Blenderを開き、ヘッダーメニューからUser Preferencesを選択する。 手順2 上部メニューから Add-ons を選択する。 手順3 ヘッダーメニューに Install from File… が表示されるのでそれをクリックして、ダウンロードしたzipファイルを選択する。 ※z…

マニフェストを上書きする方法

手順1 Build and Settingsから、Google Android Projectにチェックを入れる。 手順2 保存先のフォルダを選んで実行すると、プロジェックトファイルが沢山できる。 その中から、アプリ名のフォルダを開ける。 手順3 中にAndroidManifest.xmlがあるので、そ…

アプリ名を日本語と英語に分ける

Androidの場合 手順1 デフォルトのアプリ名を英語にしておく。 手順2 string.xmlを作成する。 <resources><string name="app_name">日本語のアプリ名</string></resources> 手順3 unityを開き、Assets – Plugins – Android – res – values-ja フォルダにstring.xmlを入れる。 なければ作成する。 iOSの場合 手順1…