テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

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

【Unity】シーン間でスコアを共有 まとめ

Unityの特性として「シーン遷移(LoadLevel)時にオブジェクトを破棄」します。このため、オブジェクトにデータを持たせている場合は破棄されてしまします。 しかしシーン内で解決する問題だけでなく、ゲームの進行では必ずといってよいほどシーン間のデータ…

【Unity】ゲーム起動直後に1度だけ処理を行う

ゲーム起動時に1度だけ処理を行います。 サンプル 今回は解像度を半分にする処理に使用します。これはStartやAwakeでやった場合、そのコンポーネントを持つオブジェクトが呼ばれるたびに解像度が半分になる…といった挙動になるためです。なので1回しか起動し…

【Unity】Wifi経由でAndroidアプリをインストール&実行する【Gear VR】

Unityのアプリケーションを転送するには「USB接続」が必要な訳ですが、Unityのアプリ転送は内部的にはADBを使用しているらしく、この接続をwifi経由で行えばUSB接続せずアプリをデバイスへ転送出来たりします。 このアプローチを使用することで、GearVR開発…

マネタイズセミナー「経験からモデルを導く方法論」

マネタイズセミナー「経験からモデルを導く方法論」 from 小林 信行 www.slideshare.net これも「ゲームメカニクスと課金ノウハウを基礎から学び直すセミナー」の資料と思われ。 内容は大雑把に モバイルアプリにおけるビジネスモデルの対比 課金ユーザーと…

【Unity】ScriptableSingletonでエディタウィンドウ間の情報共有

目次 目次 エディタは値を忘れる ScriptableSingletonを使う 感想 エディタは値を忘れる Unityエディタは実は物忘れが激しいです。 何が言いたいかと言えば、エディタウィンドウ等で使用されているstaticな変数を「ゲームの再生時やコンパイル時に忘れる」と…

売り切りとF2Pの話~あるいはめんどうくさい 課金とゲームデザイン~

売り切りとF2pの話 from Hiromasa Iwasaki www.slideshare.net 中々に興味深い話なのでメモ。 大雑把に言えば、以下のような内容な気がします。 最近のF2Pゲーム開発にかかる費用と内訳 F2P環境における売り上げの期待値、DAU・課金率・ARPPU(夢中度)の見…

【Unity】Unityでトランジションを使用した綺麗な場面転換(uGUI対応版)

以前に紹介した「場面転換」をよりスムーズな感じで行う処理ですが、uGUIに対応させるついでにUI単位で削除出来るようにしました。 UnityでuGUIのトランジション。パターンはマスク画像(白黒画像)を使用。トランジションするUIの下にあるUIも一緒に消える …

【Unity】Deleted multiple Library folders within your projectでUnityが起動しない時の対処

こんな感じのエラーが発生しUnityが起動しないことがあります。 対策 Assetsフォルダ以下にLibraryやProjectSetingsが重複して存在しているので、LibraryやProjectSetingsフォルダを削除します。 原因憶測 この現象は、Unityがプロジェクトを開く際、「プロ…

【Unity】Unity Analyticsを使用してみる

Unity Analyticsのマニュアルが日本語に翻訳されたので、実際にUnity Analyticsを使用してゲームの使用状況を解析してみます。 とりあえずUnity Analyticsを導入して「作ったゲームがどの程度遊ばれているのか」までをやってみます。 目次 目次 Unity Analyt…

【Unity】ScriptableObjectのコールバックが呼ばれるタイミングについて

ScriptableObjectのOnEnableが呼ばれるタイミングについてです。 PreloadAssetsに設定した場合 ゲーム起動直後に呼ばれます。シーンのロードすらされていないため、OnEnableでFindをかけても何も取得することは出来ません。 ちなみにエディタ起動時にも呼ば…

【Unity】uGUIのテキストがボケる問題の対策について

Unityの新しいUIシステム、通称uGUIでフォントがボケる問題についてです。 以前に UnityのuGUIのテキスト表示機能について解説してみる で解説していますが、もう少し詳しく紹介します。 目次 目次 uGUIでフォントがボケる問題の対策 ScreenSpaceの場合 Worl…

【Unity】uGUIのシェーダーを改造してシェーダーを練習…のススメ

目次 目次 シェーダーの用意 シェーダーのカスタマイズの準備 シェーダーの改造(色を変える) パラメータをシェーダーの外から設定する その他 関連 シェーダーの用意 まずはuGUI用のシェーダーを用意します。 UnityのビルトインシェーダーはUnityのダウン…

【Unity】ScriptableObjectを使用して、Scene間・Object間のデータ共有を行う

今回はScriptableObjectを利用してデータの共有を行う方法を紹介します。 この方法は「Find系が不要」かつ「事前にデータを定義する事が可能」で「Awakeが呼ばれる前にセットアップが完了」し「オブジェクト間・シーン間でデータが共有できる」といった扱い…

【Unity】動的にキャラクターの衣装を差し替える

動的にキャラクターの衣装…というかメッシュをを差し替える方法について紹介します。 Unityで動的な衣装切り替え pic.twitter.com/b2BfLsxUCt — 椿 (@tsubaki_t1) 2015, 10月 23 目次 目次 キャラクターのMeshを差し替える マテリアルの登録順番による問題 B…

【Unity】Unity Graphics Wizard になりたいdwarf のための手引き

先日行われた「Unity Rendering Wizardの集い」で紹介された資料の一つです。 https://oc.unity3d.com/index.php/s/xaVZPt7mr881Qh8 今一つ概念が掴みにくいCommand Bufferや、G-Buffer、あとUnity 5.3の新機能についての解説があります。

【Unity】シーン再生中にオブジェクトを調整し、シーン再生終了時も調整内容を保持する

今日のセミナーでチラっと話した「Unityでシーン再生中にオブジェクトを調整し、シーン終了時も調整内容を保持する方法」について書きます。 Unityでシーン再生中にオブジェクトを調整し、シーン再生終了時も調整内容を保持する pic.twitter.com/MAlYSR1jib …

【Unity】Tanksデモのインターネット対戦対応版「TANKS! Networking Demo」で”遊ぶ”方法

AssetStoreにある「Tanks!」のネットワーク(uNET)対応版、TANKS! Networking Demoを起動し、対戦を行う方法について紹介します。 http://u3d.as/jH7 目次 目次 TANKS! Networking Demo ローカル対戦 グローバルな対戦 TANKS! Networking Demo 今回遊ぶ「T…

【Unity】各要素の高さが変動するスクロールビューを使ってチャットっぽい何かを作る

「高さの要素が異なる&テキストにある程度のマージンがあるリストビュー」を作る方法について紹介します。 リストビューを作る方法については、下の記事参照。 tsubakit1.hateblo.jp 作り方 こんな感じのスクロールビューを作ります。 各要素の高さに合わせ…

【Unity】Unityエディタに標準で付いてくるパーティクルエフェクトの幾つか

StandardAssetsのパーティクルの中身について、少し確認してみました。で、幾つか気になった物を紹介します。 ちなみにStandardAssetsのパーティクルは、メニュー>Assets>Import Package>Particle Systemでインポートします。 パーティクル自体はAssets/Stan…

【Unity】ゲームの進行をコルーチンで制御する

Tanks!のプロジェクトを眺めていた所、ゲームの進行に面白い書き方をしていたのでメモします。 https://www.assetstore.unity3d.com/jp/#!/content/46209 Tanksのゲームの流れ Tanksのゲームの流れはシンプルです。 ゲームの開始時、敵の戦車と味方の戦車を…

【Unity】プロジェクトに不要なアセットをプロジェクトから退避するエディタ拡張を作ってみた

追記:Unity 2017で動作しない不具合があるかもしれません。現在確認中 Unityのプロジェクトには様々なアセットが含まれます。そういったアセットの中から「ゲームの進行に必要な最低限のアセット」を残しプロジェクト外へ退避するアセットを以前に自作して…

【Unity】エディタ起動時のログイン画面を何度も出ないようにする

Unity 5.1になりログイン画面が追加されました。この機能によってUnityエディタは起動時即座にサービスとつながる事が出来るようになりました。 しかし、何故か不思議な事にちょくちょくログイン入力を要求してきます。本来であればremember meを設定してい…

【Unity】オブジェクトの大きさを一括で変更する

オブジェクトのサイズを一括で変更します。 これは「ゲームのサイズを適正なサイズに設定する」事に特に効果があります。 Unityのボックスの1は1mとして扱われています。このため、物理演算を2dチックなゲームに組み込むと動きが「ふわっと」や「モッサリ」…

【Unity】影だけ映る地面を用意し、かつ地面の下が見えないようにする

ARを試す際、カメラの映す背景を使いたいけど影も表示したい…そんな場合があります。というか、近々これが必要になりそうな気がするので作りました。 ついでに地面の奥、つまり影を描画している地形の下にあるモデルが見えてしまわないようにしました。 やっ…

【Unity】誤ってUnityエディタで無限ループ起こしても、Unityを強制終了させることなく復帰する「Panic Button」

先日のUnity Tips(火曜日にUnityのTipsを#unitytipsタグと一緒にTwitterで紹介する)を眺めていた所、なんか凄いアセットが目につきました。 #unitytips How to stop a pesky infinite loop in 1s with Panic Button. Learn more: http://t.co/ezdJ9nqn4c #…

【Unity】距離に応じて2Dカメラを拡大・縮小する処理

カメラワークの続き。今回は二人のキャラクターが必ずカメラ内に収まるようにカメラの描画範囲を広げる、スマブラで見たアレを…作った過程を紹介します。 当初、単純に2点の距離からカメラの描画範囲(camera.orthographicSize)を出していましたが、これは間…

【Unity】2Dカメラを制御する奴を試作した日記

なんか面白くなって色々やってたら無駄に時間かかってしまったので、コードとコードの解説についてはモチベーションが上がった時に。 スタート地点はこんな感じです。プレイヤーの子オブジェクトとしてカメラがくっ付いている、Unityでは良くあるパターンで…

【Unity】Survival Shooter Extendedがクソ面白い件について

twiik.net Survival Shooter ExtendedはUnityのチュートリアルのSurvival Shooter tutorial(4.x)を @oyvindstromsvik氏が改造した物です。 上が標準のSurvival Shooter、下がSurvival Shooter Extendedです。 ゲームをプレイしてみた感じ、本質的には同じ…

【Unity】Navmesh(経路探索)でRaycastを行う

Raycastを使用すると送信元と送信先のオブジェクト間で障害物があるかを判断する事が出来ます。 これは例えば「銃弾が壁に接触したか判断する」「敵の視界から自身が映っていないか判定する」「地面の上に乗っているか判断する」「画面をタップした際にどの…

【Unity】Unityの内部APIを確認する方法、呼び出す方法

Unityを触っている上で、この機能はどのように実装されているのかや、公開されていないAPIを呼び出したい事があります。 その辺りの話です。 Unityの中のAPIを確認する アセンブリブラウザでUnityエディタの中のコードを確認します。 MonodevelopでSolution…