AIプログラムとかUnityゲーム開発について

探索や学習などを活用したAI系ゲームを作りたいと思います。

Unity

navmeshのbakeがおかしい

階段の手前に穴があいたままふさがらない。 上にはなにも乗ってないのに。 一度clearしてbakeしなおしてもだめ。 staticなものが乗ったままでいると、文字通り焼き付いてしまっている模様( ゚Д゚) clearが本当のclearじゃないのか? あと、この木はNavgationSt…

FreetelReiスマホで40fpsキタ━━━━(゚∀゚)━━━━!!

校舎裏で40fps行くようになった! LODでキャラクターは全員非表示状態になっている ただし、非表示でも、移動やキャラ同士の交流などAI機能は働いている。 ここの負荷を下げるためには、1fpsごとにやらないで、0.4secごとに処理するなど間引きをしている。キ…

ジョイパッドのAxis

リアルパッドの話ですが、左アナログパッドは各社でほぼ統一されているようですが、右アナログパッドはバラバラな模様。 うちのGameSirのパッドだと、スマホのUSBホストに刺すと、上下の動きが左右になっていて、左右の動きは上下に反映されません。 (PCで…

Materialをスクリプトで実行時に作成してSetPassCall数を比較

AOIちゃんMモデルをマテリアル1にするのに成功したので、Shaderで髪と目の色を指定できるようにしました。目と髪が別々に色指定可能ですが、メッシュが1つなので、髪と目がそれぞれ5色だと、25個のマテリアルを作る必要があります。 別々なら10個で済むの…

学校シミュレーター進捗

ゾンビが出てくるようになりました。 ゾンビに襲われるとゾンビになります。 銃が使えるようになった。ライフルとピストルの2種。弾が無くなるとリロードで装填。 売店でも弾を売ってます。 自転車に加えて、ベスパにも乗れるようになった(安全運転をここ…

UnityTexturePaintを試す

qiita.com上記で公開されているUnityTexturePaintを試してみた。 SDユニティちゃんにペイントしている画像もあったんで、SkinnedMeshにも対応してるのかな?と思ったんですが、 DynamicCanvasの仕様はmesh前提の模様?とりあえずmeshで試してみましたが、mes…

バスを走らせて乗せてみる

内装もあるバスの3Dデータが無料でダウンロードできたので、走らせてみました。 ただ、元がobjファイルで、Unityにはimportはできるんですが、マテリアルが無い状態。テクスチャはあるので貼ればバスの絵にはなるんですが、 窓が別マテリアルになってないの…

生徒数8x6=48人に増員

シューズロッカーが1ブロック8つまでだったので、1クラス8人にしました。 校舎の都合で教室は6つしかないので、6組まで。 部活の着替え用にロッカー室を作りたいけど、48個もロッカーを並べる作業はやりたくないので、 editor拡張で並べます。あらかじめ…

ロッカー閉じ込め事故w

テニス部の部員が着替えているときに、ロッカーの中に入って遊んでいたら、 そのままロッカーの扉を閉められて出られなくなった伊藤ともか(主人公) このままだと空腹と尿意のパラメーターが上昇していく部活が終わったらまたロッカーに着替えに戻ってくる…

自動販売機でコーラを買えるようになった

Buy ColdDrinkを選ぶとコーラーがごろごろ転がるので PickUpでつかむと右手にコーラを持てるコーラはDropするか投げることができるが、まだ飲むことはできない(´・ω・`) Swingもできるが、攻撃用のスクリプトをaddしてないので当たってもノーダメージ。 コー…

飛べるようになった

ジャンプというより飛行モード( ゚Д゚) ビルの上に行けるようになった。 飛ばす時に役に立つのがQueryちゃんの飛行モーション( ゚Д゚) 歩行時はプレイヤーもNavMeshAgentなので、普通にtransform.positonを更新するだけNavMeshの障害物を突き抜けないで移動でき…

YandereSimulatorのAI定義

KUMAGAMESさんのTweetより生徒は全て共通でAIはこんな感じヤンデレシミュレータは個別に作っているらしいデバッグが恐ろしいことになる pic.twitter.com/4i1mpkyOPB— SUGIKAMI@KUMAGAMES (@sugikami1982) 2017年2月17日YandereSimulatorのAIは、ステートマ…

エプロン合成後のボーンウェイトを調べる

ヤンデレちゃんにエプロンを合成したあとのボーン重みづけの状態を調べてみた。エプロン合成前は頂点数6085のmesh(髪の毛を削除しているのでその分、標準Hモデルより少ない)エプロン合成後は、6327頂点に増える エプロンmesh自体は241頂点なので、丁度エプ…

SimpleLODでテクスチャアトラスを焼く

テクスチャをまとめる使い方がやっとわかった。menuからbake atlasを選んだら、まとめたいマテリアルを画像ではなく、左側の大きな枠をD&Dしてやれば、それか子階層になって、プロパティはは親に準じる状態になってマテリアルが2から1にまとまる。 さらに…

真冬ですがプール作りました

アセットのプールはまだ買ってないので自作プール(キューブと非常階段と学校廊下アセットのタイルテクスチャ) プールエリアに入ると自動的にスク水に切り替わる(LODもやっている) NavMeshのOffLinkで飛び降りさせるとか色々と方法はあると思いますが、水…

近寄ると透明になるガラスとカリングの連携

SimpleLODで1階壁、2階壁、各教室、屋上壁みたいな単位でメッシュをまとめています。 おかげでSetPassCallやDrawCallが減少しました(頂点数は増えましたが) 同時にOcculusionCullingを設定してますので、教室に入っていると、他の教室はいっさいレンダリン…

ヤンデレちゃん100体

ヤンデレちゃんHモデル100体表示。1体あたりBaches1 このへんが限界なのかな。SkinnedMeshでこれ以上はまとめられないはずだし。もともとFace Hair Cloth SkinとsubMeshが4つあるので、drawCallは1体あたり4発生する submeshを統合して、テクスチャをまとめ…

SimpleLOD購入してヤンデレちゃんHモデルのポリゴン削減

SimpleLODってポリゴンメッシュを削減したりまとめたりできるアセットを買いました。テクスチャアトラスにも対応してます。 MeshBakerFreeでもまとめるのはできるけど、ポリゴン削減はできないので。 Simplygenって個人はフリーで使えるソフトもあるので試し…

MeshBakerFreeで町をまとめて結果を比較

meshBakeなし+Occlusionなし meshBakeなし+Occlusionあり meshBakeあり+Occlusionなし meshBakeあり+Occlusionあり SkyBoxを切ったらSetPassCall1に 速くするには、もうMeshをまとめるしかない。 ということで、MeshBakerのフリー版を試してみた。有料版は$5…

AndroidスマホでDeepProfilerでチューニング中

画像は上半分は、スマホで動作のリモートプロファイリング。下半分は、PCで実行したときのゲーム画面。 PCだとXGA解像度で70FPSぐらいは出ている。 一方、Androidスマホでは13fpsぐらい。解像度を800x600程度のSVGAまで落として、 あと学校の周りの町は無し…

DeepProfilerで速度チューニング

学校シミュレーターもだいたいできてきたので、公開のために速度チューニング中です。 DeepProfilerでスクリプトの速度チューニングをやっています。まずやったのは1fps毎にやる必要のない処理を0.3秒毎とか、実行回数自体を減らすことですね。 初期状態では…

ランダム属性でキャラ生成

髪型のランダム設定と、髪色のランダム設定と、瞳色のランダム設定できた! もうmaterial作りまくり(´・ω・`) 既存のやつを複製できるようにしてほしい。 今のところ、髪型は、前髪が二種類。後ろ髪は1種。ポニテールは、ロング、ミドル、ミニで、それぞれ後…

Blenderでポニーテールにboneを入れて、UV展開でテクスチャを張って、SpringBoneをセットする

はじめてBlenderでボーン入れやってみました。 そして、はじめてUV展開でテクスチャ作ってみました( ゚Д゚)ポニーテールのメッシュ自体はモブ子さんのキャラからの流用。 スプリングボーン入れたポニーテールが寄生獣みたいな動きになっている。・゚・(ノ∀`)・゚・。 メ…

バーチャルパッドを試した

バーチャルジョイパッドのアナログジョイスティック ジョイパッドのボタン タッチ始点のジョイパッドに改造 バーチャルジョイパッドとリアルジョイパッド両対応できた! 以下の記事で紹介されていたバーチャルパッドを試してみました。 kan-kikuchi.hatenabl…

感情表現と吹き出しセリフ

uGUI表示に変更 1文字づつ表示するテキスト アイコンを上下に動かす 吹き出しと、感情表現として、ハートマーク、スマイルマーク、涙マークを用意した。 画像はすべてplaneに貼ってある。透明あり画像。吹き出しの文字は3Dtext。 つねにカメラの方を向くよ…

SkinnedMeshRendererのTextureを動的に書き換える

リボンを青くする 実行時間を検証 書き換えピクセル数を減らして実行時間を見る 服を赤くする デカールで血しぶき貼り付けた方が良かった Textureをスクリプトから編集してみる - のしメモ アプリ開発ブログ こちらを参考に適用先をSkinnedMeshに変更してみ…

Blenderで作ったプリミティブ図形をUnityで使う

プリミティブを増やす Blenderで円柱を円柱でくりぬく方法 プリミティブを増やす Blenderのプリティブ図形の円柱・ico球・トーラスなどをFBXで出力してUnityに持ってきた。 円柱はくり抜いてパイプになっている。これを使えば、戦車の砲身なんかもUnity上で…

都市の自動生成

道路から住宅、ビルディングをすべてそれっぽく並べてくれるプログラムを作りました。 まだ碁盤の道路ですが、ブロック内に、家とビルをそれっぽく並べます。 ルールとしては家の玄関の前は道路または空き地があること。 ビルは3種類。家は10種類あります。 …

Androidスマホで学校シミュレーター動かしてみた

ビルとか大量に配置してるからやばいかな?と思ったら全然余裕で動きましたね。 うちのFreetelRei(android6) このスマホはCPUは8コアだけど、GPUは大したことないので、GPU的にはいけますね。ただAPKが160MBとかになったので、テクスチャを全部512にしたり、…

JKがIKで自転車のペダルをこぐ

Blender側作業 Unity側作業 実際の自転車こいでる様子 街並み 自転車モデルのチェーンとペダルが一体化していたのをBlenderで分離して、IKでペダルをこがせてみた( ゚Д゚) Blender側作業 blender初心者なので辛かった。当たり前のことができないのがきつい。 …