読者です 読者をやめる 読者になる 読者になる

(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

timeScaleを無視してParticleSystemを再生させる【Unity】

Unity

この記事でのバージョン
Unity 5.5.0p1


はじめに

ParticleSystemはtimeScale変更するとそれに合わせて再生速度も変わるようになっています。


f:id:kan_kikuchi:20170118145634g:plain


ただ、残念ながらtimeScaleを無視して一定速度で再生するような設定はないようです。


Simulate

続きを読む

Windows向けにビルドしたらなんか音が変だった件【Unity】【Windows】【トラブルシューティング】

Unity Windows トラブルシューティング

この記事でのバージョン
Unity 5.5.0p1


はじめに

タイトル通り、Windows向けにビルドし、実行してみたら、なんか音がおかしかった時の話です。


DSPBufferSize

さっそく原因ですが、AudioManagerの設定の問題でした。

なお、AudioManagerの設定はEdit->ProjectSettings->Audioから行う事が出来ます。


f:id:kan_kikuchi:20170108143308p:plain


この設定の中で、DSPBufferSizeがBest Latencyになっていたため

パフォーマンスが低下(音が劣化)してしまっていたようです。

Best Latency パフォーマンスの低下と引き換えにレイテンシを抑えます


f:id:kan_kikuchi:20170108143315p:plain


DSPBufferSizeは初期状態だとDefaultになっているので普通なら大丈夫ですが、

スマホ向けの時はそれだと音ズレする事があり、

Best Latencyにする癖がついていたため、問題が発生してしまいました。



なお、DSPBufferSizeをDefaultにした所、音が正常に発せられるようになり、

音ズレが起きるという事もありませんでした。



Rigidbody2DがSleepして衝突しなくなる問題【Unity】

Unity

この記事でのバージョン
Unity 5.5.0p1


はじめに

Rigidbody2Dはデフォルトの状態だと、

一定時間動かない場合はSleep状態となり、衝突を判定しなくなります。

なお、Sleep状態となると以下のようにCollider2Dの色が薄くなります。


f:id:kan_kikuchi:20170115145003g:plain


上記の例では二つのオブジェクトにRigidbody2DとCollider2Dを付け、

右のオブジェクトに以下のようなに衝突時にログを出すようなコンポーネントを付けています。

private void OnTriggerStay2D (Collider2D other){
   Debug.Log(other.gameObject.name);
}



Sleeping Mode

続きを読む

File.WriteAllBytesで書き出したファイルがProjectに表示されない時の対処法【Unity】【トラブルシューティング】

Unity トラブルシューティング

この記事でのバージョン
Unity 5.5.0p1


はじめに

以下のよう感じで、Assets以下にファイルを書き出した時、

Finderで見ると存在するものの、Projectに表示されない場合があります。

File.WriteAllBytes("Assets/Data.txt", data);

f:id:kan_kikuchi:20170108140714j:plain


今回はこれの対処法です。


AssetDatabase.ImportAsset

Projectに表示されない原因は書き出したファイルのMetaファイルが存在しないからです。

なので、AssetDatabase.ImportAssetを使って、書き出したファイルをインポートし、

Metaファイルを生成すれば、Projectにも表示されるようになります。

File.WriteAllBytes       ("Assets/Data.txt", data);
AssetDatabase.ImportAsset("Assets/Data.txt", ImportAssetOptions.ForceUncompressedImport);



Window10でUnityをインストールしてコードを書くまでにぶつかった問題とその解決方法【Unity】【Windows】【トラブルシューティング】

Unity Windows トラブルシューティング

この記事でのバージョン
Unity 5.5.0b11
Windows 10 Home バージョン1607


目次

  • 目次
  • はじめに
  • Visual Studio インストール
  • Visual Studioの修復
  • .net framework 3.5 有効化
  • コンポーネント ストアの修復
  • Unityインストール
  • Unityのエラー解消
  • おわりに



はじめに

メインのマシンはMacなのですが、Windowsで実機確認する際に

小さな修正をいちいちMac上でコードを修正するのはめんどくさいなーと思い、

WindowsマシンでもUnityを動かせるようにしました。


しかし、Windowsに不慣れなせいか、なかなかに苦戦したので記事にしてみます。


Visual Studio インストール

続きを読む

デバイス毎に違うURLへ飛ばせるURLを無料で作成してくれるsmartURL 【便利サービス】

便利サービス

はじめに

今回は開発とは直接関係ないのですが、便利なサービスを見つけたので、それの紹介記事です!


サービス名は「smartURL」

タイトルの通り、デバイス毎に違うURLへ飛ばせるURLを無料で作成してくれるサービスです。



例として以下のURLは

iOSならApp Store、AndroidならGoogle Play、その他(Macとか)ならブログ

に飛ぶURLです。


http://hyperurl.co/SoreMaga


使い方

続きを読む

エディタ拡張で進捗状況を表示する【Unity】【エディタ拡張】

Unity エディタ拡張


この記事でのバージョン
Unity 5.4.0f3


はじめに

今回はエディタ拡張でなんらかの処理を行っている時に、進捗状況を表示する方法のご紹介です!

イメージとしては以下のような感じです。


f:id:kan_kikuchi:20161020133330g:plain


EditorUtility.DisplayProgressBar

続きを読む

MonoBehaviourを継承しないという選択肢【Unity】

Unity

この記事でのバージョン
Unity 5.4.0f3


はじめに

UnityではおなじみのMonoBehaviourですが、

デフォルトで継承されているし、ドキュメントにも以下のようにあるので、

Unityを始めた当初は絶対に継承しなきゃいけないイメージになりがちです。

MonoBehaviourはすべてのスクリプトから派生するベースクラスです。
Javascript を使用するときすべてのスクリプトは自働的に MonoBehaviour から派生します。 C# または Boo を使用するときは明示的に MonoBehaviour から派生する必要があります。



でも、いちいちGameObjectにaddするのめんどいし、

場合によっては使わなくてもいい場合もあるんじゃない?というのが今回の記事になります。


なお、C#についての話になります。


MonoBehaviourが必要ないケース

続きを読む

Xbox360のコントローラーをMacで使う【Mac】

Mac

この記事でのバージョン
OS X El Capitan(10.11.6)


はじめに

現在開発中のピコンティアをコントローラーでの操作に対応するべく、

Xbox360のコントローラーを買ったは良いんですが、どうやらMac用の公式ドライバはないようです。


しかし、有志が作ってくれたMac用のドライバがあるそうで、今回はそれを使ってみた記事です。


360Controller

続きを読む