2013年9月28日土曜日

【Unity】RTS:チュートリアルの制作


マップを作りトリガーとイベントの仕組みを実装した。なんとか明日の公開に間に合わせたい。

2013年9月27日金曜日

【Unity】RTS:ゲームバランスの調整


ひたすらゲームバランスの調整に力を注いだ。攻撃力と防御力を調整し、だいたい上位のユニットは4〜5倍の下位のユニットまでは相手にできるようにした。明日から2日間はプレビュー版のためマップとイベントの作成に入る。

2013年9月26日木曜日

【Unity】RTS:装甲車と戦爆の実装

ゲームに登場するユニット:左から歩兵、対戦車砲、装甲指揮車(CV:Command Vehicle)、軽・中・重戦車。他に榴弾砲と戦爆がある。

装甲車・戦爆のモデリングが完了し実装した。あとはバランスを整えればユニットとして使える。
戦爆はdeadlyなキャノンを搭載し地上ユニットを爆撃する


2013年9月25日水曜日

【Unity】RTS:戦車の実装

砲撃を開始する重戦車隊
ついに軽・中・重戦車のモデリングが完了し、Unityに組み込んだ。今後ゲームバランスを調整していく。


今月末にプレビュー版を出すのでバグなど直していきたい。

2013年9月23日月曜日

【Unity】RTS:PSDテクスチャのアルファチャンネル設定・読み込みと地物の追加とユニット選択



だんだん記事のタイトルがラノベのようになってきた。樹木を作って配置し、地面のテクスチャも新たに作ってあててみた。樹木の葉を作るときPhotoshopデータをどう設定したら透過になるかわからず苦労したが下のようにすればいいようだ。

2013年9月22日日曜日

【Unity】RTS:住宅セット


住宅のモデリングが完了した。形状が3パターン、テクスチャが3パターンで計9通りのバリエーションがある。やったと喜んでいたのも束の間、またしてもユニットの誘導を司るビーコンシステムが故障した。度重なる故障に業を煮やし明日1日かけてビーコンシステムを刷新することにした。ユニットのモデリングはそのため1日遅延される。

2013年9月21日土曜日

【Unity】Unityへのblenderモデルの取り込みの形式


街を作ろうとメタセコイアで家をモデリングし、blenderでFBXで書き出したところ陰影がおかしくなった(写真右)。シェーダーなど3Dの知識は全く無いので弱ったが、OBJ形式で書き出したら望むものができた(写真左)。明日は建物をモデリングして建てまくろう。

2013年9月20日金曜日

【Unity】RTS:移動の改善とテクスチャの割り当て


迎撃!
移動スクリプトを改善して以前よりスムースに動くようにした。操作性も向上している。
榴弾砲と対戦車砲にテクスチャを割り当てた。

2013年9月19日木曜日

【Unity】RTS:歩兵と移動の改善


歩兵による市街戦

歩兵のスクリプトをチューニングした。これはものすごく手間がかかった。まだ怪しいところがあるので明日手直しする。

2013年9月18日水曜日

【Unity】RTS:シンボルマークの表示と砲兵・対戦車砲の実装

兵科記号の表示:丸が戦車、バッテンが歩兵、三角が対戦車砲、黒ポチが砲兵を示している
ユニットの上にシンボルマークが表示されるようにした。シンボルマークをクリックすることでユニットが選択可能だ。これで見えにくいユニットの選択も楽になった。

2013年9月17日火曜日

【Unity】RTS:歩兵


歩兵を実装した、けどすごく見えにくい…離れてると敵味方の区別がつかなくなってしまう。何か対策を考えないといけない。

2013年9月16日月曜日

【Unity】メタセコイアでモデリングしblenderでアニメーションをつけてUnityに送り出す

blender経由のメタセコモデルのインポートにまたはまってしまった。過去の記事を探してみると二年前にも全く同じことで泥沼にはまっていた。進歩が全くない…再度やり方をここに記してもう詰まらないようにしたい。

2013年9月15日日曜日

【Unity】RTS:街の透過など

ユニットが街の中に入ると街が透ける
ユニットが街の中に入ると街が透けるようにしたり、カーソルをカスタマイズしたり戦域を表示するようにした。これで基本的にはモデルを組み込みさえすればゲームが出来るようになる。ちなみに戦域(ZONE)の境界線はラインレンダラーによって描いているが、1本の線で描くと線が見えにくい辺ができるので、ラインレンダラーを搭載したオブジェクト4つで一辺一辺描いている。

2013年9月14日土曜日

【Unity】RTS:カットシーンと市街戦

戦況に応じてカットシーンが入る
戦況に応じてカットシーンが入るようにした。ユニットは特定の状況になった時―例えば爆弾を投下するとか、複数の攻撃目標を同時に捕捉したとか―に「ぜひ俺を撮ってくれ」とイベント管理スクリプトに撮影要請を出す。管理スクリプトはあまりカットシーンを連発しないよう気をつけつつ、条件を満たせば空飛ぶ撮影隊をユニットのもとに派遣しカットシーンを撮影するのだ。

2013年9月13日金曜日

【Unity】RTS:航空攻撃

敵戦車を爆撃する飛行機
航空攻撃を実装した。目標を設定するとどこからともなく飛行機が飛んできて絶対に外さない爆弾を投下して飛び去っていく。

2013年9月12日木曜日

【Unity】RTS:支援砲撃

支援砲撃を選ぶと着弾までの時間が表示される
砲撃を開始すると砲撃範囲内に10発の砲弾が降り注ぐ!
支援砲撃を要請できるようにした。タイミングを図ると良く効く。

2013年9月11日水曜日

【Unity】RTS:空飛ぶカメラ

第2カメラが緊迫した戦場を捉え写し出す
ランダムに戦場を飛び回って撮影を行う第2カメラをつくった。画面1/3以下に映像を写し出す。戦闘の具合をつぶさに鑑賞できるので抜群に面白い。もちろん、常時表示していては指揮がしにくくなるからイベント発生時だけ使うつもりだ。

2013年9月10日火曜日

【Unity】RTS:副武装の追加と射程円の表示

戦車砲と2つの機関銃が火を吹く!

(プラグインのインストールが必要です)

2013年9月9日月曜日

【Unity】RTS:突撃と混乱による撤退

混乱して逃げる敵(赤いスモークを出している)に追いすがる

敵がコースを外れて突撃してくるようにした。コースを走っている敵をアウトレンジで仕留めていい気になってると寝首を掻かれるぞ。また度重なる攻撃を受けて統制値が20%を切るとユニットが撤退するようにした。しばらく休めば回復するが追撃されるとそのまま撃破されてしまうだろう。


2013年9月8日日曜日

【Unity】RTS:移動と攻撃の改善

常に最大装甲で敵と戦うように正面を向けている
移動スクリプトを改め、ユニットが待機するべきでない状況で待機するバグを修正した。また移動の指示については従来の移動地点をまず指定して、次いで向く方向を指定するツークリックアクションを廃止して移動地点指定だけのワンクリックとした。忙しい場面ではツークリックは煩瑣であるし、初心者向きでもないからだ。陣形での移動は…無理だった。陣形を組むまではできたが、どのポジションにどのユニットを割り当てれば最適であるかの計算ができず、三時間も悩んだ挙句もとに戻してしまった。

攻撃面では老舗の旅館のように増改築して肥大化したスクリプトを綺麗に書き直し、新たにユニットが停止中は至近の敵の方向を車体が向くようにした。

兵器のデザインについてはpixivのうるぶさんにお願いすることができた。9月中に全ユニットのモデリングを完成させる予定だ。

あすはユニットを選択した時他のユニットの移動指示を表示する機能と、敵ユニットがコースを外れて味方に突撃するスクリプトについて考える。


2013年9月7日土曜日

【Unity】RTS:エフェクトや効果音など

待ち伏せ攻撃
爆発効果や音を仕込んだ。爆発効果はアセットから拝借。ユニットに挙動不審なところがあり対策に大部分の時間を費やした。ユニットの集団での移動は陣形を整えたほうがいいと判明。あす組み込む。

2013年9月6日金曜日

【メタセコイア】モデルの作成からUVマッピングまで


blenderもそうだが普段3Dモデリングなんてとんとしないのでメタセコイアも起動するたびに使い方を忘れていてチュートリアルを何回も繰り返している。どうもこれでは時間がもったいないから自分のための忘備録として要点を記すことにした。以下の内容はKT爺さんローポリスーパーテクニック(著ntny氏)の焼き直しです。

2013年9月5日木曜日

【Unity】RTS 攻撃:ダメージと統制値

街中で撃ちあう。ユニットの文字列の2段目がHP/最大HP(統制値%)を示している。手前の戦車はHP27を残すものの統制値が0%で戦闘不能である。一方奥の敵戦車は統制値60%で攻撃頻度は落ちるが攻撃を続行できる。こうなると手前の戦車は一方的に攻撃を受ける。
攻撃についてダメージと統制値を導入した。命中した砲弾は目標にダメージとパニックを与える。ダメージは文字通りHPを削っていくが、パニックは「統制値」を削っていく。統制値とは平たくいえば兵士の冷静さであり、砲弾が命中するたびに低下する。統制値が低下するほど攻撃の頻度は低下していく。たとえHPが残っていても(戦闘ではたいてい統制値のほうが大きく低下する)統制値が0だと兵士はパニック状態で反撃は不可能になる。注意すべき点としてはHPが低くても統制値が100%なら通常と変わらない攻撃力を期待できることだ。ただし統制値の上限はHPになるので、低いHPのユニットは少しの攻撃を受けただけでもすぐパニック状態になる。統制値は常に回復するが削られる度合いのほうが大きいと低下しパニックになる。HPは戦闘状態になければ少しずつ回復する。

2013年9月4日水曜日

【Unity】RTS 攻撃やら移動やら

街角では先の車両が回転している間後続は待機していてスムースに交通できる

いろいろな機能を付け加えた。攻撃面では敵ユニットをクリックして攻撃指定できるようにした。指定されたユニットに近づく間に見かけた敵は攻撃するが、指定されたユニットが射程内に入ると優先的にそれを攻撃する。また敵のタイプによって優先順位を設けて攻撃するようにした。例えば戦車は至近に敵の歩兵がいても敵戦車が確認できたらそちらを優先的に攻撃する。

2013年9月3日火曜日

【Unity】RTS:障害物の回避

入り組んだ市街地でもまずまずの確率でユニットは目的地にたどり着く

ユニットの障害物回避の改良に力を入れた。まず市街地は以前に開発したビーコン誘導装置を使ってどの路地でもユニットがたどり着くようにした。ただし時々失敗して立ち往生する(理由はよくわからない)。

【Unity】RTS:blenderからモデルエクスポート時の軸の設定と攻撃スクリプトの制作

ターゲットに砲塔を向ける戦車。ホールドアップ!黄色い線は射撃可能な目標を、赤い線は攻撃目標を示している。遮蔽物が途中にあると線は表示されない。

攻撃スクリプトを作りなおした。まずユニットは射程範囲内のコライダーをスキャンして敵ユニットかどうか識別し、rayを目標に照射して射線上に障害物がないかを確かめ、最後に残った候補の中で一番近い目標を攻撃目標に指定する。攻撃目標データは砲塔スクリプトに送られ、砲塔が回転する仕組みだ(まだ発砲までは実装していない)。