サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Switch 2
caitsithware.com
すこし間が空いてしまいましたが、Unityの基本的なGUIについては今回がラスト! GUIStyleを指定して見た目を変えてみましょう。 初級編①:ウィンドウを自作してみよう 初級編②:いろいろなGUI(GUILayout編) 初級編③:いろいろなGUI(EditorGUILayout編) 初級編④:配置調整用のHorizontalとVertical 初級編⑤:GUILayoutOptionでサイズ指定 初級編⑥:範囲内に自動的にスクロールバーを出すScrollView 初級編⑦:GUIStyleで見た目を変えよう UnityのGUIで見た目を変えるには? GUIの種類については、初級編②と初級編③でやってきましたが、どれも初めから用意されている見た目でした。 ここで、ちょっと別の見た目にしたい時がありますよね。 たとえば、普通のボタンだと大きすぎて存在主張しすぎなのでもっと小さくしたい、
今度こそ、欠かせないアイツ、そうスクロールバーです。 直接GUILayout.HorizontalScrollbarなどで表示することもできますが、 BeginScrollView~EndScrollViewで、範囲内のサイズに合わせて自動的に表示する機能があるので使っていきましょう。 初級編①:ウィンドウを自作してみよう 初級編②:いろいろなGUI(GUILayout編) 初級編③:いろいろなGUI(EditorGUILayout編) 初級編④:配置調整用のHorizontalとVertical 初級編⑤:GUILayoutOptionでサイズ指定 初級編⑥:範囲内に自動的にスクロールバーを出すScrollView 初級編⑦:GUIStyleで見た目を変えよう 今回のソースコード 基本はBeginVertical~EndVerticalなどと同じようにBeginScrollView~En
今回は、基本的なGUIでサイズの指定方法を解説します。 ちなみに前回最後に言った、欠かせないアイツとは別です。 その説明の前にサイズ指定の方が優先度高かったですね。 初級編①:ウィンドウを自作してみよう 初級編②:いろいろなGUI(GUILayout編) 初級編③:いろいろなGUI(EditorGUILayout編) 初級編④:配置調整用のHorizontalとVertical 初級編⑤:GUILayoutOptionでサイズ指定 初級編⑥:範囲内に自動的にスクロールバーを出すScrollView 初級編⑦:GUIStyleで見た目を変えよう 今回のソースコード GUILayout、EditorGUILayout関係でほとんどのメソッドがparams GUILayoutOption[] optionsという引数を持っており、 こちらにサイズなどを指定することでいろいろ調整できるようになって
2回にわたって紹介したいろいろなGUIですが、Begin~Endとついたメソッドが残っています。 今回はそのBegin~Endで囲う系のHorizontalとVericalについて解説します。 初級編①:ウィンドウを自作してみよう 初級編②:いろいろなGUI(GUILayout編) 初級編③:いろいろなGUI(EditorGUILayout編) 初級編④:配置調整用のHorizontalとVertical 初級編⑤:GUILayoutOptionでサイズ指定 初級編⑥:範囲内に自動的にスクロールバーを出すScrollView 初級編⑦:GUIStyleで見た目を変えよう BeginHorizontal~EndHorizontalとBeginVertical~EndVerticalは、このメソッドで囲った範囲をまとめて横並び/縦並びにするメソッドです。 今回のソースコード 今回から省略のため
こいつを見てくれ。どう思う?(ってもういいか……) http://docs.unity3d.com/ScriptReference/EditorGUILayout.html こちらから、単体で動作するGUIを一覧にしていきます。 今回のソースコード 今回もEditorExWindow.csを書き換えていきます。 長ったらしくなるので、前回のコード分は消して新たに書く感じでやっていくので、 前回のコードをそのまま残しておきたい方は別クラスにするなどしておいてください。 そして今回も長い! あとは、いつものようにメニューから表示させてください。 (<クリックで実寸表示です) 特徴としてはラベルの指定ができるので綺麗に整列させることができますね。 Inspectorなどでもよくこんな感じで並んでます あと、ColorやCurveなど、自作するのは面倒な機能も簡単に実装できるようになっています。
Unityには標準でさまざまなGUIが実装されています。 今回は、そんなGUIの基本的なものを一覧にして出して操作できるようにしてみたいと思います。 初級編①:ウィンドウを自作してみよう 初級編②:いろいろなGUI(GUILayout編) 初級編③:いろいろなGUI(EditorGUILayout編) 初級編④:配置調整用のHorizontalとVertical 初級編⑤:GUILayoutOptionでサイズ指定 初級編⑥:範囲内に自動的にスクロールバーを出すScrollView 初級編⑦:GUIStyleで見た目を変えよう 基本的なGUIの一覧 まずはこいつを見てくれ。どう思う? http://docs.unity3d.com/ScriptReference/GUILayout.html リファレンスに載ってるメソッド数33! http://docs.unity3d.com/Scrip
いままでエディタ拡張アセットを作成してきてノウハウも貯まってきたので これから徹底的に解説していこうと思います。 対象者としましては、Unityの基本操作やC#スクリプトの記述方法などすでに習得済みの方向けとなります。 今回は初級編第1回ということで、ウィンドウを自作して出してみるところまでをやっていきます。 初級編①:ウィンドウを自作してみよう 初級編②:いろいろなGUI(GUILayout編) 初級編③:いろいろなGUI(EditorGUILayout編) 初級編④:配置調整用のHorizontalとVertical 初級編⑤:GUILayoutOptionでサイズ指定 初級編⑥:範囲内に自動的にスクロールバーを出すScrollView 初級編⑦:GUIStyleで見た目を変えよう Editorフォルダを作成する まずはエディタ拡張のお決まりとして、Editorという名前をつけたフォル
SpriteStudioで作ったスプライトの足元に、板ポリに影テクスチャ貼り付けただけの丸影を置くと、 丸影がバッチ処理されずドローコールがキャラ数分増えたりして困っていましたが、 丸影のシェーダーをちょっといじるだけでドローコール削減出来ました。 まずは、なぜ板ポリ丸影をスプライトの足元に置くとバッチされないか、ですが。 丸影とスプライトの両方とも半透明シェーダーだったので、 Zソートの関係で丸影1→スプライト1→丸影2→スプライト2のようにごちゃ混ぜになって描画されてしまったようです。 このように、Draw Calls:9 となっています。 スプライトと丸影だけでも8、地面も合わせて9、全オブジェクトが1回ずつ描画されてるとかいう最悪なパターンです。 もちろん、カメラの位置関係によってはそこそこバッチが効いてくれることもありますが。 そこで、おもむろにシェーダーをちょっといじくってやる
uGUI用に入力イベント通知機能が追加されているので試しに受け取ってログを出してみました。 ソースコードはこちらです。 using UnityEngine; using UnityEngine.EventSystems; <span id="more-1311"></span> public class EventSystemTest : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler, IPointerDownHandler, IPointerUpHandler, IPointerClickHandler, IBeginDragHandler, IEndDragHandler, IDragHandler, IDropHandler, IScrollHandler, IMoveHandler, ISelectHandler,
Unity4.6のオープンベータが公開されました。 http://unity3d.com/unity/beta/4.6 一番注目されるのはuGUIだと思いますが、ぱっと触ってみた感じNGUIユーザーはあわてて移行する必要もなさそうかなーという感じだったので、 uGUI以外で使えそうな機能をちょっと使ってみたいと思います。 まずは、SendMessageに代わるイベントシステムが追加されたようなので使ってみました。 ※Unity4.6betaが公開されたのがつい先ほどのため、リファレンスもなしにとりあえず触ってみてる感じです。 より良い方法があるかもしれないので、あくまで参考までに。 ひとまずテストということで、以下のようなスクリプトを書いてみました。 using UnityEngine; using UnityEngine.Events; using System.Collections;
こんにちは。 はじめましての方ははじめまして! 今回は、ユニティ・テクノロジーズ・ジャパンのアセットストアチームさん主催の 「Unity アセット真夏のアドベントカレンダー 2014 Summer!」 に参加させていただくことになりました。 具体的な内容ですが、 有志の方によるUnityフォーラム「ゆにひろば」さんで毎週開催されるオンラインゲームジャム 「1週間げーむじゃむ」 こちらに、以前参加させていただいたときに活用したアセットを紹介したいと思います。 (モデルアセットも多数使わせてもらっていますが、今回はエディタ拡張系オンリーで紹介させていただきますね) 1週間げーむじゃむについての詳細はこちらから! 1週間げーむじゃむで作ったゲーム(WebPlayerでプレイアブル!) カレーコロッケおいしいよね ※クリックでプレイページに飛びます。 さうんどこれくたーユニティちゃん ※クリックで
こちらのページは、Arbor 1.7.2以前の旧ページとなります。 1.7.3以降をお使いの方は、新設サイトへ移動してください。 http://arbor.caitsithware.com/ 「Arbor: State Diagram Editor」について Unityで有限ステートマシンを使ってゲーム作りたい! だけど、ゲームロジックに依存する挙動は自分でコーディングしたい! そんな時に使えそうな有限ステートマシンの編集ウィンドウと、 作りたい挙動にあわせてステートのスクリプトを書けるシンプルなステートマシンアセットです。 そもそも有限ステートマシンって何? 有限ステートマシンとは、ある状態での挙動と、その状態から別の状態へ遷移する仕組みです。 たとえば、スイッチと電灯。 スイッチと電灯にはONとOFFという状態があり、スイッチをONにすれば電灯もONになります。 スイッチは押せばONに
パラメータ管理にエクセルを使おうかと思って探してみたところ NPOIという.NETでエクセルの読み書きが出来るライブラリを見つけたので使ってみた。 ※動作確認はWindows7で行っているため、それ以外の環境では動かないかも。その場合は、NPOIのMono DLLを自前で作る必要があるはず。 ダウンロード NPOIは現在2.0.1(beta 1)が最新版であり(Stableは1.2.5)、Excel2007以降のフォーマット(*.xlsx)にも対応しているとのこと。 こちらからダウンロードできる。 http://npoi.codeplex.com/ ダウンロードしたzipを解凍するとdotnet2フォルダなど、.NetのバージョンごとにDLLが用意されている。 Unityがサポートしているのは.Net2.0なのでとりあえずdotnet2を使ってみることにした。 UnityにDLLをインポー
This site uses cookies to display contents and advertisements tailored to users, provide social media functions, measure advertisement impressions and clicks. We also gather information on users' site usage status and provide them to social media, advertisement distribution and data analysis partners. Each partner may use this information in combination with other information that the user provide
C#の便利な機能「ジェネリック」 たとえば、RPGでHPなどを個別に成長させるシステムがあったとして その成長パラメータは、レベルがあがると同じような計算式によって成長していくものであるとすると、以下のようにパラメータクラスを用意しておくと便利かもしれません。 using UnityEngine; using System.Collections; [System.Serializable] public class GrowthParameter<T> { public int level = 1; public T value; }; すると。 GrowthParameter<int> hp = new GrowthParameter<int>(); GrowthParameter<float> reloadTime = new GrowthParameter<float>(); hp
[Unity]Generic Based Singleton for MonoBehaviours完全版(?) シーン内でいろいろ共有したい!(たとえばアイコンとかのリソース) シーンを跨いで処理させたい!(たとえばBGMの再生とか) そんなときに役立つデザインパターンにSingletonというものがあります。 staticメンバーにインスタンスを保持しておいて使いまわそうっていうアレで。 Unityで実装できるSingletonは、 http://wiki.unity3d.com/index.php?title=Singleton こちらにまとまっていたりします。 Unify Community Wiki便利! そこで、私が使おうと思ったのが Generic Based Singleton for MonoBehaviours にあるMonoSingleton<T>なのですが、動作を検証
光物の魔法系エフェクト Shuriken使用 ほかにもFlyingTeapotさんのパーティクルにはお世話になる予定です。 カメラの操作 スワイプするとスクロール ピンチイン/アウトで拡大縮小 NGUIとの兼ね合いとしては、 [Unity]NGUIで何もないところの入力を受け取る方法 こちらに書いてあるようにMain CameraにもUICameraをアタッチし、UICamera.fallThroughで受け取るようにしました。 あとは、OnPressやOnDragに必要な処理を書いて完了です。 実際のスクリプトはここでは載せませんが、やったことは大したことなくて、 スクロールはPlane.Raycastで座標を取って移動させるだけ。 ピンチイン/アウトはスクリーン上の2点のタッチ位置の距離によってorthographicSizeを変更するだけです。 仮スプライトの作成 SpriteStu
Unity4.3にすると、Inspector上でIMEが切り替わらなく日本語入力できなかったり、 IMEの切り替えはできても変換途中で勝手にIMEが戻って確定されてしまうようになりました。 その回避方法を見つけたので共有します。 ※自動的に変更するスクリプトも公開しました。 【Unity】IMEの状態を自動的に変更するIMEAutoChanger【エディタ拡張】 詳しくは↑こちらを参照してください。 まずは、以下のスクリプトをEditorフォルダに入れてください。 using UnityEngine; using UnityEditor; using System.Collections; public class EditorIME : EditorWindow { [MenuItem("IME/Open")] static public void OpenWindow() { Edit
前回から引き続きAIの実装を行っております。 アルゴリズムの話がメインになっちゃうので、今回も特に見栄えある内容ではありませんがご了承を・・・ ユニットの行動実装 こんな感じに実装しています マスターデータに行動パターンごとの判定用パラメータ追加 索敵範囲内にあるオブジェクトを取得 オブジェクトに対する行動パターンの優先度から最優先事項を決める(ファジー理論) 最優先事項に対して移動するか攻撃するか決定 移動するなら移動先、攻撃するなら攻撃先を決定 移動する場合は移動先までの経路をA*で求めて、初めの一歩の移動先を決める 求められた行動をコルーチンで処理する 行動パターン 行動パターンは、相手の種類とどういう動作かを指定するようにしました。 相手の種類 障害物 味方ユニット 敵ユニット ・・・ 動作パターン 近づく 逃げる 攻撃する ・・・ このように定義しておくことで、とある味方なら近づ
UnityにはSpritePackerという、テクスチャをまとめる機能がすでについていますが、 Pro版でしか使えないことと、どうやらResourcesにあるとパックできないという問題もあるようなので、以前作っていた簡易SpritePackerを公開したいと思います。 なお、TexturePacker経由であればテラシュールウェアさんにて公開されております。 [Unity]TexturePackerで一つにまとめたテクスチャをUnity 2Dのスプライトで使う 使い方 こちらからDLしたunitypackageをインポートしてください。 SpritePacker.unitypackage メニューのCSWTools/Sprite Packerをクリックして、Sprite Packerウィンドウを出します。 新規作成する場合はスプライトにまとめたいテクスチャを全てProjectビューから選択
twitterでいろいろと話題になった第7回テックヒルズでのUnityのスプライトベンチマークですが Androidでの話があまりないので検証してみたいと思います。 経緯やiPhoneでの検証結果は強火で進めさんが記事にされています [Unity][Unity3d]クルーズさんの30fpsでスプライトが何枚表示出来るかのベンチマークのUnity版を実際に試してみた http://d.hatena.ne.jp/nakamura001/20131209/1386621448 検証環境は Unity4.3.1f1フリー版 Google Nexus7(2012) Android 4.4 SHARP GALAPAGOS 005SH Android 2.3.4 です。 また、端末は検証前に念のため再起動しておきました。 ※面倒なので検証内容ごとに再起動までは行っていません 検証1:CROOZさんのコー
セーブしたい時にFileStreamなどでセーブしたいメンバーを一つずつちまちまWriteしていくのは何かと面倒ですよね。 作っていくうちにデータが増えたりもしますし。 そうなるとファイルバージョンを埋め込んでおいて、バージョンごとに読み込みメソッドと書き込みメソッドを用意してーなんてやっていると、仕様が増えて保存しないといけないデータが増えるごとに億劫に感じてしまいます。 そこで、LitJsonを使ってまずJson化。それを暗号化してファイルに保存すると楽にデータをシリアライズ/デシリアライズできるようになります。 C#のBinaryFormatterでも同じようにシリアライズできるのですが、iOSだと動かないとかで、今回はLitJsonを使うことにしました。 (まだMacはもちろんiPhoneも持ってないので、iOS対応はあくまで念のため・・・) あとJsonと言ってもただの文字列なの
フレンド機能や各種イベントなど、スマホのインディーズゲームでもちょっとあると「おっ」っと思わせることが出来ると思います。 とはいえ、そんな簡単な話ではなく、たとえ自分でRuby on Railsだとかnode.jsなどでサーバーサイドプログラミングが出来たとしても、インフラの整備などの手間が大きいように感じます(私がそっち方面に疎いだけってことでもありますが・・・) そこで、最近良く耳にすることが多くなったBaaSというもので、サーバーサイドを構築してしまおう。というのが今回の話です。 調べつつーの記事書きつつーのでやっていますので、もしかしたら間違っていることもあるかもしれませんが、その時はそっと教えていただけると助かります。 ※私のtwitterアカウントはこちら https://twitter.com/LycoRadi BaaSとは Backend as a Serviceの略で、バ
唐突ですが、UnityのTipsコーナーはじめるよー! さて、NGUIといえばAsset Store史上最強ですが、高機能なことがドカっと書かれているので、意外と知らないことも多いんじゃないでしょうか。 そんな機能の一つである、UICamera.fallThrough の使い方を紹介してみます。 (現在Asset Storeで最新版であるNGUI 2.5.1を使って動作確認しました) まずは基礎として、UICameraでのマウスやタッチの入力についてですが。 これは、NGUIちゃんがいろいろ裏でやってくれて、複数のUICameraからレイを飛ばして、結果的に画面の一番手前にあるColliderにメッセージを飛ばしてくれるようになっています。 なので、UI Rootとかナシに普通の3DカメラとかにもUICameraを割り当てれば、そのカメラから見た一番手前のコリジョンをタッチとかできるように
Asset StoreにNGUI 2.6.1出てますね いままでダイナミックフォント対応していた2.6.0はプロ版(NGUIの公式ページから$200で買える)のみだったのですが、これで通常版NGUIでも正式に使えるようになりました。 詳しい更新内容は、公式ページにて。 http://www.tasharen.com/forum/index.php?topic=11.msg19090#msg19090 ダイナミックフォントの使い方は簡単で、 TTFファイルをインポートしておく(ここではライセンス的に使い勝手の良いフリーフォント「梅フォント」をお借りしました) 梅フォントはこちらから>http://sourceforge.jp/projects/ume-font/wiki/FrontPage メニュー>NGUI>Open the Font MakerをクリックしてFont Makerを起動。
このページを最初にブックマークしてみませんか?
『caitsithware.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く