スマゲ

スマートなゲームづくりを目指して日々精進

Unityのローカル通知プラグイン(iOS, Android対応)

Unityでローカル通知を簡単に実装できるプラグインを作ってみました github.com■概要 Unityでローカル通知を実装できるようにしたプラグイン。プラットーフォームごとの処理を意識することなく実装を行うことができる■対応プラットフォーム iOS, Android■対…

UnityでFPSを求め、表示するコンポーネント

UnityでFPSを求める方法はいろいろな方が紹介していますが、Unityのプロジェクトを作成するたびに毎回その実装をするのは面倒なので、どんなプロジェクトにも簡単に導入できるようにコンポーネントとして切り出してみました。■機能仕様 ・0.5秒ごとにFPSを計…

Unityで迷路の生成フローを可視化する

前回紹介した迷路の自動生成アルコリズムを可視化してみました。 smartgames.hatenablog.com今回は前回使用した穴掘り法の他に棒倒し法も可視化してみます。■実装(穴掘り法) コードの中身は前回のものとあまりかわりません using System; using System.Linq;…

Unityのナビゲーションを使って自動生成した迷路を解かせる

Unityのナビゲーションシステムを利用して、迷路を解いてみます■実行イメージ ■迷路の生成方法 迷路の生成方法はいくつかありますが、今回は穴掘り法という方法を使います。参考リンク 穴堀り法 迷路生成アルゴリズム | Miga's Hobby Programming■実装 ・盤…

Unityでパズドラ風3Matchパズルを作る_その6_ステータス表示編

今回はコンボ表示を行いたいと思います。■前回の内容 Unityでパズドラ風3Matchパズルを作る_その5_演出編4 - スマゲ■本編の完成イメージ ■コード確認用リポジトリ github.com■環境 Mac OS Sierra 10.12.4 Unity 5.6.0 f3 言語 C#■UI表示用のクラスをつくる …

Unityでパズドラ風3Matchパズルを作る_その5_演出編4

今回はピースが消えるときの演出をつけてみようと思います■前回の内容 Todo : Add urlUnityでパズドラ風3Matchパズルを作る_その4_演出編3 - スマゲ ■本編の完成イメージ ■コード確認用リポジトリ github.com■環境 Mac OS Sierra 10.12.4 Unity 5.6.0 f3 言…

Unityでパズドラ風3Matchパズルを作る_その4_演出編3

今回は選択されているピースがわかりやすいように演出を追加してみます。■前回の内容 Unityでパズドラ風3Matchパズルを作る_その3_演出編2 - スマゲ■本編の完成メージ ■コード確認用リポジトリ github.com■環境 Mac OS Sierra 10.12.4 Unity 5.6.0 f3 言語 C…

Unityでパズドラ風3Matchパズルを作る_その3_演出編2

今回は前回作った削除の演出にアニメーションをつけてみようと思います。■前回の内容 Unityでパズドラ風3Matchパズルを作る_その2_演出編1 - スマゲ■本編の完成メージ ※Gifだとわかりづらいですが、ピースが移動するときもアニメーションをしています ■コー…

Unityでパズドラ風3Matchパズルを作る_その2_演出編1

前回作った3Matchパズル(ロジックのみ)ですが、ピースが消える部分や、補充される部分があまりにも味気ないので、ちょっとそれっぽくします。■前回の内容 Unityでパズドラ風3Matchパズルを作る_その1_ロジック編 - スマゲ■本編の完成イメージ ■コード確認用…

Unityでパズドラ風3Matchパズルを作る_その1_ロジック編

Unityでパズドラ風の3Matchパズルを作ってみます■シリーズ全体での完成イメージ ■本編の完成イメージ ※演出は実装していないので一瞬で処理が終わります ※サクッとコードだけ確認したい方はこちら github.com■環境 Mac OS Sierra 10.12.4 Unity 5.6.0 f3 言…

Unityでソーシャルゲームの体力回復処理を実装する

Unityでソーシャルゲームによくある体力回復機能の処理を実装してみます■完成イメージ ■機能要件 ・時間で体力を回復する ・体力を回復できる ・体力を使用することができる■管理方法 ・最後に体力を回復した時間を保持し、その時間との差分から次に回復する…

UnityEditorでゲームシーンのスクリーンショットを撮るEditor拡張

UnityEditorでGameシーンのスクリーンショットを撮るためのEditor拡張を作成しました。github.com■使い方■動作要件 ・Unity4以上 ・Mac, Windows■導入 ・GitHubリポジトリのunitypackageフォルダ以下のUniEditorScreenshot.unitypackageを利用■機能 ・スクリ…

UnityでiOSのローカル通知を実装する

Unity5でiOSのローカル通知を利用する方法まとめてみます■環境 Mac OS X 10.11.5 Unity 5.4.0f3 Xcode 7.3.1■通知の許可を求める iOS8からはアプリがユーザーに対して通知の許可を求める必要があるため、ユーザーに確認用画面を表示する using UnityEngine; …

Unityのplayerprefsでbool(真偽値)を保存する

Unityでboolean(真偽値)を保存してみる■動機 UnityはPlayerPrefsを利用することで、int, float, stringの値を保存できるが、bool値は保存できない。 そのため、intやstringの値を保存するときと同様にbool値を保存するにはどのようにすれば良いか考えてみた…

Androidで使えるライブラリの種類まとめ

Androidで利用することのできるライブラリを軽くまとめました■アンドロイドライブラリについて その名の通り、アンドロイドで利用出来るライブラリのこと ・アンドロイドライブラリを作成、利用する主な目的 ┗ モジュール性 : コードを幾つかの論理的なユニ…

Unityでビルドわけを簡単に行うサンプル

Unityでビルドわけを簡単に行うサンプルを書いてみました■ビルドわけを行うメリット ・スクリプトを書き換えを行うことなく、実行環境を変えることができる ・BuildSettingsをビルドごとに設定し直さなくて済む ・出力ファイル名を指定できるため、出力後の…

Unityのエディタ拡張を利用して開発環境の切り替えを行う

Unityのエディタ拡張とシンボル定義を利用して開発環境の切り替えを簡単に行えるようにします■関連 Unityで条件付きコンパイルを行う - スマゲ Unityのエディタ拡張でPlayerPrefsを削除する - スマゲ■切り替え方法 1. シンボル定義を行い、開発環境と、本番…

Unityで条件付きコンパイルを行う

Unityでシンボル定義を利用して条件付きコンパイルを行います■条件付きコンパイル プログラムの特定のブロック、コードだけを選択してコンパイルすること。アプリケーションを混合言語で利用したり、プラットフォーム依存コンパイルを行ったりする時に利用す…

UnityでスクリプトからiOS,Androidのビルドを行う

UnityでスクリプトからiOS,Androidのビルドを行います■検証環境 Unity5.3.5f1 Mac OS X 10.11.5■利用する機能 ・エディタ拡張 ・ビルドパイプライン■実装 Assets/Editor以下にスクリプトを作成する MenuItemを利用してビルド用の設定を追加、呼び出すメソッ…

C#での定数利用について

C#の定数利用について、今更ながら確認を行いました■C#での定数 c/c++ では #define を利用して定数を定義できたがc#ではそのような利用はできなくなり、シンボル定義のみの扱いになった。 その代わり、constやreadonlyを利用する必要がある。ちなみにプロジ…

Unityで端末の加速度センサを利用する

Unityで端末の加速度センサを利用してみます。取得するのは端末の傾きです。■対象 iOS, Android端末■設定 利用OSのPlayer Settings を開いてConfigurationからAccelerometer Frequencyから取得する加速度のサンプリング回数を設定する 何かしら数値が入って…

Unityでbashを利用する

UnityのPostProcessBuildでbashを動かしてみます。 UnityはEditor以下にPostprocessBuildPlayerファイル(拡張子なし)を作成し、シバンを記述すれば様々な実行環境でコードを走らせることができますが、今回は PostProcessBuild + Process でbashを実行します…

UnityでXcodeの設定を自動化する方法まとめ

UnityでXcode出力後に必要な設定を自動化する方法です。 今回はよく利用しそうなものをサンプル形式でまとめました。■利用する機能 Unity5から標準利用できるようになったXcodeAPIを利用 Unity - Scripting API: PBXProject■自動化項目 ・ビルド設定の編集 …

UnityでのFPS設定まとめ

UnityでFPSがどのように設定されているのかをまとめます。■FPS(Frames Per Second)とは 1秒あたりの画面更新回数。この値が高いほど動画やゲームが滑らかに見える。■UnityでFPSを設定する方法 1. Quality Settingsから設定する 2. TargetFrameRateを設定する…

UnityでGameCenterのLeaderBoardを利用する

UnityでGameCenterのLeaderBoardを利用してみます■LeaderBoard GameCenterある機能の一つで、ユーザーが獲得したスコアを集計して順位付けを行う。いわゆるランキング機能■AppIdの設定 Member Centerにログインし、新規AppIdを設定する■iTunesConnectでの準…

Unityでアプリのバージョンを取得するプラグイン

UnityでiOS/Androidアプリのアプリバージョン、ビルドバージョンを取得するプラグインを作成しました■プラグイン github.com■利用用途 ・タイトル画面に現在のアプリのバージョンを表示する ・アプリ内でインストールされているバージョンが最新かどうか判断…

iOS, Androidアプリのバージョンを取得する

iOS, Androidアプリのバージョン、ビルドバージョンを取得します。■バージョン アプリのバージョンでユーザーの目に触れるもの、AppStoreやGooglePlayStore、アプリのタイトル画面などに表示される■ビルドバージョン アプリが内部で保持するバージョン、ユー…

iOSのストア用スクリーンショットの各サイズを一括で準備する

iOSアプリを申請するときに必要な画像群を一括で準備する■iOSアプリ申請に必要なサイズ iOSのアプリ申請には以下のサイズのスクリーンショットが必要であり、それぞれの画面サイズに対して最低1枚、最大5枚の画像を登録する必要がある。そこでimagemagickと…

Unityでアプリのストアページを開くプラグイン

Unityでアプリのストアページを開くプラグインを作成しましたgithub.com■概要 リリースされたアプリのApp StoreやGoogle Play Storeのアプリページを開く■インストール プロジェクトをZipでダウンロード、もしくはクローンする dist/uniStoreOpener.unitypac…

iOS/Androidでアプリのストアページを開く

アプリのストアページを開いてみます■用途 ・アプリのレビューをお願いする ・自社のアプリを紹介する■Android実装 AndroidMarketとGooglePlayStoreの両方に対応する。 final String appPackageName = activity.getPackageName(); try { activity.startActiv…