太郎Work

Unityとかで困ったこと等を残しておきます

Unity

Unityを使って水っぽい表現作ってみた

今GravityDAZE2をやっているのですが、水表現が面白いことになっていたので自分でUnityを使って実装してみました水https://t.co/nvvfGaXU1g pic.twitter.com/fxkgM5oWpV— 渡邉太郎 (@taro_b19) 2017年1月29日 背景が殆ど無いので分かりにくいと思いますが… …

UnityEditor再生開始時のイベント取得

UnityEditor再生時のイベント 実行、非実行時でモデルプレビュー出来るツールを作成しているのですが、再生時にモデルを一旦リセットして再生成するスクリプトを作成したい ということでこんなスクリプトを書くと ここのボタンを押す度にOnPlayModeStateChan…

ScriptableObjectのメンバリネーム

ScriptableObjectを使用している時に変数定義を変えたくなることがあると思います。 例えばpublicで定義していたけどやはりprivateのSerializeFieldにしてスクリプトからは読み込み専用にしたくなった等 その時は [System.Serializable] public class Data {…

コマンド引数を指定しつつUnityを複数起動する方法

クローン後の初プロジェクトオープン時PC&Macでプロジェクトが開かれてしまい、そこからiOSにswitchPlatformするのも時間がかかりすぎるのでコマンドラインから起動する方法 そして複数起動も出来る方法です open -n /Applications/Unity/Unity.app --args -…

ターゲットの周りをくるくる回るサンプル

なんとなく作ったので記事にします gist.github.comターゲットの周りを常に一定間隔で回るサンプルです。カメラのコンポーネントに付けてみてください クォータニオン先輩使えば回転量定義できて座標変換が簡単に実装できます。

UnityEditorのObjectFieldでフォルダのみ入れる

もっと簡単な方法あれば教えて下さい>< Object folder; var newFolder = EditorGUILayout.ObjectField (folder, typeof(Object), false); var path = AssetDatabase.GetAssetPath (newFolder); if (AssetDatabase.IsValidFolder (path)) { folder = newFol…

AssetBundleメモ

Unity5.1.0での話 AssetBundle.CreateFromFileはエラーになって動かない ビルド時は出力フォルダの.manifestファイルを参照しているためファイルをリネームすると再ビルドが走る AssetBundle本体のファイルが存在しているかどうかのチェックはされていないの…

MementoBeta使ってみた

Mementoというサービスを使用して適当なフィギュアから簡易的に3Dモデル化してみました。 WebPlayer版 Unity Web Player | Figure Memento 少し前ですがMementoというサービスがベータ版で公開されたので少し試してみました。 Autodesk Memento 簡単に言うと…

Vector3.magnitudeの負荷について

きっかけ とある実装でC#処理負荷が非常に高く困っていたのですが、C#の実行速度が遅いからと考えていました。ふと、magnitudeの平方根計算が非常に高負荷になっているのではないかと思い、検証してみました。A,B2点間の距離を出す式は以下のようになり、公…

SetReplacementShaderの使い方

公式の説明が全く意味不明だったのでメモ Unity - Manual: Rendering with Replaced Shaders Unity - Manual: Rendering with Replaced Shaders カメラに映る全体を単一シェーダで描画したい場合は呼び出すだけ。 camera.SetReplacementShader (shader, null…

Unityの端末向き設定

随分前に調べて忘れないようメモUnityiOS,Androidで横向きのアプリを作成する際、PlayerSettingsから回転設定を指定しますが、 一方向固定又は自動回転しか設定ができません。Landscape Right Left 的なものが欲しいのですが複数選択できません。その場合最…

Unityでステンシルを用いたアウトライン表現

最終的にこんな感じになります。 WebPlayer版 Windowsで見ると表示がおかしい可能性があります Stencil Test はじめに なぜ急にアウトラインかというときっかけは白猫プロジェクトでした。 遊んでいて真っ先に気になったのがタイトルにもあるキャラクターの…

NGUIではないオブジェクトをNGUIの手前に描画するスクリプト作ってみた

以前の投稿でNGUIではないオブジェクトをNGUIの手前に描画する方法 - 太郎Workこのような記事を書きましたが、ParticleSystemやメッシュを手前に持ってきたい場合や任意の場所に挟みたい場合は非常にめんどうでした。やはりNGUIのdepthで管理したくなったの…

WWWクラスでBASIC認証

WWWを用いてBasic認証をする場合少しつまずいたのでメモ https://docs.unity3d.com/Documentation/ScriptReference/WWWForm-headers.htmlここにまさにBasic認証の方法が書かれているがこのまま書くとPOSTリクエストになってしまう GETでリクエストを送る場合…

ノイズエフェクト作ってみた

とある理由で思い立ったので勉強も兼ねてモニターノイズ風エフェクトを実装してみました https://googledrive.com/host/0BzRQHdfTLNehbVRHaF9DVElDYzA/NoiseWeb.html手順 RenderTextureなのでPro必須まずはユニティちゃんに登場してもらいます OnRenderImage…

PlayerSettingsのアイコンをEditorから変える

dev版とrelease版で切り替えるEditorを作っていたのですが、アイコンも変えようと思ったら簡単に変えられたのでメモ var icons = PlayerSettings.GetIconsForTargetGroup (BuildTargetGroup.Unknown); if (icons != null && icons.Length > 0) { player.icon…

UnityiOSのdevelopment build の場合スプラッシュスクリーンで止まる

UnityのiOS書き出しの際development buildにチェックを入れて出力すると スプラッシュスクリーン表示中に停止してしまう問題が有り、解決に時間がかかったのでメモXCodeのLogを確認すると別スレッドからアクセス出来ない的な文章が出ているのみで 空のシーン…

Unityで文字エスケープ変換

C#でやろうとしていたがUnityに実はあったのでメモ http://docs.unity3d.com/Documentation/ScriptReference/WWW.UnEscapeURL.html WebViewのjsからJSON適当に送ろうとしたらエスケープ文字で来るのでこれで簡単に変換できる WWWは結構使っていたがこのメソ…

UnityのiOSディレクトリアクセスまとめ

結構複雑で忘れてしまったのでメモ 一部間違っているかもしれません。 Documents バックアップ対象になるセーブデータ等の重要なファイルを保存 Application.persistentDataPath Library/Preferences バックアップ対象になる環境設定ファイル等 ・Unityから…

EditorWindowでのフォントサイズ設定

今までEditorWindow上の文字サイズを変更する際は GUILayout.Label("<size=32>Test</size>"); のように指定していたのだが、恐らくUnity4.3にしてからこの指定が出来なくなっていた。 これを使うとボタン等も簡単にフォントサイズが変更できて重宝していたが、削除されたのだ…

拡張EditorでTextFieldの表示を更新する

拡張Editorを使っているとよく起きる問題。 TextFieldの文字を選択中にその中身を書き換えても文字列が更新されない(内部的には更新されている) このように上のTextFieldを選択した状態で上のTextFieldを消すと本当は”TEST2”と表示されるはずが、 ”TEST”が残…

NGUIではないオブジェクトをNGUIの手前に描画する方法

※追記 3.0.6あたりから仕様が変わり、細かく指定できるようになったため以下の様なことを気にする必要がなくなりました 先日、NGUIが3.0にアップデートされUIPanelの挙動が大幅に変更されていました。 そこで結構困惑したのでついでに2.0系含めてまとめてお…