プロフィール

はーさん

Author:はーさん
1人創作チームDeadMan'sSunのボスです。
Twitter→@Ha_Shok_ko

TERA HITO:Revolutionを作りました。よろしく頼むぜ、兄弟!
・ふりーむ!のTERAのページ(exe形式公開場所)へ
・UnityRoomのTERAのページ(WebGL版公開場所)へ

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
カウンター
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム
QRコード
QR

私のアイランド


--/--/-- --:-- はーさん

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
2015/07/07 02:53 はーさん

Navmeshのお話

NavmeshAgentでお気軽に経路探索を使っているわけですが、コイツにいつまでも頼るのはよろしくないと思う自分です。
先輩から経路探索に役立つ資料をいくつかもらったので、がんばって経路探索アルゴリズムを作ろうと思います。
コレできたら、すごいんじゃね?
「チミィ~~~~スキルレベルいい感じだねぇ↑」って思われること間違いなし。

で、今日はNavmeshくんのメモ。
お互いの歩み寄りから理解が深まるので僕のほうから足を踏み出してあげた。

Navmeshの変数

・hasPath
移動可能なpathを持ってたらtrueで、移動不可能なpathであるorもうpathが無かったらfalseを返すようだ。
僕はいまいちこのNavmeshくんのことがよく分からなくてdestinationで移動先設定してぶんぶん動かして絶対値で止まったかどうかを調べてました。なんてマッスルなコーディングなんだ。
移動不可能になったら動作を停止とかするときに使うといいのかもしれない。

・pathStatus
ずっとPathCompletedしか出てこなかったので何に使うのかよく分からなかった。
そもそもNavmeshはメッシュの上をたどっていく処理。
ditinationでセットしていたら、セットした地点までのメッシュをとるので、多分メッシュ上の点全部含むとかそんなんだと思う。
だからパス移動完了しか答えなかった・・・と思う多分!Maybe。

・path
リファレンスを読むに、コイツを使ってコードから自分でpathをセットできるらしい。
しかし例のコードも載ってないので、使い方がちんぷんかんぷんであります。
コイツについて、調べていこうと思います。多分全部英語だ。
(Navmesh系の情報って日本語だとほとんど内容被ってる、というかテラシュールウェアさんがほとんどなんですよね)

Navmeshの関数

・move

相対的な移動ってなんだろう・・・
試してみるも明後日の方向に戦車が飛んでいったので、何物か分からぬままでした。

ほかにも関数系は使い方はさっぱりだけど、使い方さえ分かればすごく便利そうな関数があった。
多分調べて出る情報は全部英語です。


あとNavmeshのObstacleAvoidanceのPriorityってなんや?と思って試したところ、避ける物の優先度のようですな。
これで大柄なユニットは小型のユニットを吹っ飛ばしたり、アホな敵は地雷をよけないけど味方はよけるし、賢い敵や地雷探知機を持つユニットは地雷をよける、とかそんなことができる・・・かも?

ただ普通にぶつかっても元の位置に戻ろうとするので元の位置に戻さないようにしたりとかしないといけないかも。
あとNavmeshAgentの例にもれず、なぜかY座標が0にならずにちょっと浮いてるのとか。
(多分Navmeshをオブジェクトに張りつけてるからその分が浮いてるんだと思う)


ちょっとはNavmeshくんとお友達になれたかも。
経路探索を自作できたら、多分使うことはなくなると思います。
色々小回りが利きにくいっていうのがあるので・・・(それならMonoを拡張すればいいのでは?という言葉はシャットダウン)

今のはーさんチョロQのリメイクと平行して、システム工学とかの開発の仕方にのっとったコーディングの練習をしてみようかなぁ、と思ったり。
野望とか目標は今度別に。



ああ、次はpathの話だ・・・




スポンサーサイト
Navmeshのこと(続編) | ホーム | LoVAの話
Comment


Trackback
この記事のトラックバックURL
http://watasinoilands.blog.fc2.com/tb.php/47-9da96541
この記事にトラックバックする(FC2ブログユーザー)
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。