2015年3月7日土曜日

メタセコユーザーがMaya LT移行に挑戦

現在開催中のGDC2015にて「Maya LT 2016」が発表されました。



自動机ニキはゲームエンジン勢が火花を散らす無料化の波には目もくれず、相変わらずお前もGAMEWAREにしてやろうかの勢いで会社買収。直近はゲームエンジンを有するBitsquid社をお買い上げです。歴史シミュレーションで有名なParadox Interactiveが使っていたエンジンだそうで。
そういえばHavok社のアナーキー大作戦はどうなったのかしら。

さて、Metasequoiaにしてももっそい適当に使っていた自分ですが、コレを機会にMaya LTに移行をねらって事始めしております。

これまでメタセコでテクスチャも作らず、四角と円柱をエイヤーでくっつけてゲーム用データを作っていましたが、やはりアニメーション付きのモデルをしっかりつくろうと思うとMaya一択かなと。Bleうわなにを




GGJ2015で錬成したさわやかなヒヨコちゃんを御覧ください。












ぼちぼちMetasequoia→Maya LTに関するあれこれをメモしてきます。
まずは導入最中で気になったことなど。

・Maya LTの書籍

1冊出ています。


「Maya」に関する書籍はそれこそワンサとありますけど、内容がプロすぎる。そして「Maya LT」に限ったものはこの本のみで、おっさんや建物を作りたい自分的にはフィットするものはまだない。

そこで、とりあえず公式のチュートリアル 「Maya スタートアップガイド」を順番にやっていってます。

・動作重い?

筆者はVaio Pro 11 メモリ8Gモデルで動かしていますが、いまのところ快適です。
実は少し前に代理店のダイキン社にてMaya LTセミナーを受けてきて色々聞いてきたんですが、モバイル用のモデルデータ作成ならSurface Pro 3でも大丈夫らしい。

Maya LTには15日間使える体験版があるので、とりあえずダウンロードしてグリグリしてみると良いです。

・保存形式について

メタセコは.mqoでモデルデータを保存していますが、Maya LTの場合はもう一段上のレイヤーの「シーン」という単位で保存します。モデルデータだけではなく、ライティング、カメラ、関連のマテリアルがガバッと保存されます。Unityのシーン(またはプレハブ)に近い感じ?

・ねだん

税込み1年間サブスク35,640円。

一日あたりの利用額はたったの98円、お昼のお弁当と一緒に買うTポイントカード会員10円引きキャンペーンの雪印コーヒーと同じくらいでしょうか。

Autodeskストア Maya LT 2015

"プロのインディーズゲームメーカー" #とは

Metasequoia 4 EX(FBX出力ができるエディション)は19,980円なので、実は倍価もしない。


・操作周りにおけるメタセコとの違い


Q: まずうちさぁ「基本図形」したいんだけどなんか2種類ない?
A:「ポリゴン」を使ってください。「NURBS」は映像制作用の、滑らかな形状を出す特殊モードみたいな。そのままだとfbx出力できません。

Q:右クリックしながらマウス操作で視点ぐりぐりはMaya LTではどうやんの
A:さらにAltキー+左クリックしながらマウス操作。その状態でスクロールすればズーム(ドリー)じゃ。
Altキー+真ん中ボタン(スクロール押下)でカメラの上下左右移動もできるぞい。

Q:オブジェクトに名前つけたりとかどうすんの
A:右側の「チャネルボックス」がこれにあたる。

Q:オブジェクトパネルみたいのどうやって出すの
A:メニューの「ウィンドウ」→「ハイパーグラフ:階層」で見れる

Q:「Unityに送る」でfbxもってくとめっちゃ小さく表示される
A:Unity側でモデルを選択して、ImportSettingsのScaleFactorを「0.01」から「1」に1しよう。
Mayaの1グリッド=Unityの1グリッドと同一になるぞ。



(以後増やしていきます)

・べんりなショートカット

 4キーでワイヤーフレーム、5キーでシェーディング表示

2015年3月4日水曜日

PS Vita "The Cardboard Cat" is out now.



PlayStation Mobile Title "The Cardboard Cat"(English version) is available on over 30 countries.

See the trailer video.


P

Download link for you PlayStation Vita.






or find in PlayStation Mobile Store in PSN, category "Action".



2015年2月8日日曜日

LoadLevelAdditiveAsyncで追加ロードしたSceneのNavMeshは消えるっぽい。

らしい。(Unity 4.3.4f1固有の問題かも)

配信中の「CardBoard Cat EP」は、ステージデータを単一のSceneにしておいて、LoadLevelAdditiveAsyncで読み替えをする仕組みを撮っていました。

で、NavMeshを載せたSceneを追加読込した時にメッシュが消える問題が発生。
結局、ステージ以外のコンポーネント全てにDon't Destroyをつけて、LoadLevelAsyncでステージのシーンを読むようにしたら治りました。

新しいバージョンでは何らか別の方法ができているかもしれませんが、PSM勢はお気をつけください。

参考:Problem with NavMesh and Asynchronous load

2015年1月22日木曜日

PS Vita 「Cardboard Cat EP」 Ver 1.10配信

PS Vita 「Cardboard Cat EP」  2回目のアップデートです。



主な更新点は

・新ステージ(のおためし版)追加
・経過時間カウンターの追加、ベストクリアタイムを記録
・チュートリアルテキストに背景を追加して見やすく
・UIまわりの表示が重かった問題修正

です。
現在、海外版に向けて新ギミックを作っていますが、それを「Extra Stage」として先行して収録しました。10分程度で終わるステージです。







(↑PS Vitaブラウザから踏む用リンク、PCからは見えません)

VitaでPS Storeを起動して、右上の「PlayStation®Mobile」ボタン→ジャンル「アクション」でたどりつけます。

PCからも見えるストア情報はこちら(直接購入はできません...)




その他、実は前バージョンに不具合があったので修正を行いました。

 Ver1.10 アップデート内容
 ・海外版に収録予定の新ギミックを“Extra Stage”として追加しました。
 ・死亡カウンターが正しく更新されていなかった不具合を修正しました。
 ・リトライ時にトゲ罠が元の位置に戻るようにしました。
 ・メニュー表示時にプチフリが発生していた現象を修正しました。
 ・チュートリアルメッセージに背景画像を追加しました。
 ・経過時間カウンターを新設しました。スコアアタックにどうぞ。

2015年1月11日日曜日

NGUIが重くてFont.CacheFontForTextが処理を食っているときはダイナミックフォント使用をやめよう

間違ってダイナミックフォントを使っている可能性があります。

NGUIを使ってメニューを開く瞬間にカクっとFPSが落ちるので、プロファイラで調べたところ。


"Font.CacheFontForText"ってのがすごい処理食ってる。
原因はUILabelでの文字表示にダイナミックフォントを使ってしまっていたから。

FontMakerで作ったフォントマップをきちんと指定してあげましょう。

"Unity"ってほうはUnity標準のダイナミックフォントを使うモード。
"NGUI"を選択しなおして、"Font"で作ったフォントマップを指定。

せっかくNGUIを使っているので、 漢字を多用する日本語テキストを表示するとき以外は避けよう。

Unity Freeユーザーの人も、GUI表示でカクつくぞ、と思ったら片っ端からNGUI Fontに指定し直すと効果あるかも。

参考: Topic: Lag on Ipad due to font.cachefontfortex

2015年1月3日土曜日

VS2013で列挙型からSwitchステートメントを作るときはコードスニペット機能を使おう。

Visual Studio Community 2013が公開されて以降、Unityでの開発はVSに移行しました。
もちろんいろいろな便利機能を使いたいからですが、その一つ「強力なコードスニペット」。

Unity C#でよくやる制御方法で、UpdateやStartの中でswitch分岐さす書き方がありますが
たとえばこんな列挙型があったとします。

    enum MyEnum
    {
        Ringo,
        Banana,
        Abokado
    }
こっからそれぞれのSwitch文をちまちま書かずとも「自動生成」させることができます。





おもむろに"switch..."と書き出して、”switchステートメントに対するコードスニペット"が表示されたらすかさずTabを二回押す。

        switch (switch_on)
        {
            default:
        }

まず第一段階。
この状態では"switch_on"にフォーカスがあたっているのですが、ここからさらに、先ほど作った"MyEnum"を()の中に記入してカーソル下ドーン!

        switch (MyEnum)
        {
            case MyEnum.Ringo:
                break;
            case MyEnum.Banana:
                break;
            case MyEnum.Abokado:
                break;
            default:
                break;
        }

楽すぎる!!!!

()の中はインスタンスに置き換えてくだされ。

備忘録程度。

2015年1月2日金曜日

iTweenがArgumentOutOfRangeExceptionで死ぬ問題の回避


 iTween.PauseとかResumeとかStopとかがNullで死ぬ時がある。

とりあえずtweensをforeachで回している中の処理をif (type.Length <= targetType.Length){ [処理] }でかこってやると回避できる模様

        foreach (iTween item in tweens){
            string targetType = item.type+item.method;

            if (type.Length <= targetType.Length)//This is additional//
            {
                targetType = targetType.Substring(0, type.Length);
                if (targetType.ToLower() == type.ToLower())
                {
                    item.enabled = true;
                }
            }//This is additional//
        }

tweensに入っているiTweenの参照が何らかの理由で消えてたりするとnullになる。
付け焼き刃っぽいけど、多分大丈夫だと思う。

参考:Possible bug in iTween.Count(GameObject target, string type)