マイペースなプログラミング日記

DTMやプログラミングにお熱なd-kamiがマイペースに書くブログ

FPS

殴り倒す

敵を殴り倒したところ!...いや違うけど...ラグドール使ったら、面白いように倒れたりしてくれて嬉しい

さて...サイトで狙うか...

サイトで狙う!ってサイトなのか?これは

ライトを付けてみた

何の役に立つかは謎だが、ライトを付けてみた。スポットライトを視点から視点の方向に向けているだけである

他の人が作ったFPSを見てみる

たまたま、ニコニコ動画に上がってるUnityで作られたFPSを見つけた。何回かに分けてアップロードされてる。これは参考になるかも

Clone

CloneのCloneのCloneの...

武器交換完了!

持っていたIngramを捨てて落ちていたM4カービンを入手したところ。動画追加しました 2012/11/18

武器を入れ替える

落ちている武器を拾うと持ってる武器を捨てるという処理を行おうとしている。持ってる武器のparentをnullにして、RigidbodyとBoxColliderを追加した。そしたら、捨てた武器が床貫通!。isTriggerはfalseになってるし、なんで?と思いながらBoxColliderのサイ…

今日はあまり進まず

とりあえずXキーで武器の取替えを行う準備をしているところ。X押したら落ちている武器が消えるようにはした。これを自分の武器に変えて、今もっている武器を地面に置けばOK

落ちている武器を拾う処理に入る前

落ちている武器に近づいたら武器名を表示するようにした

進んでいく

今まで止まっていたのが嘘のように進んでるかもしれない。とりあえず、今は2つの武器の切り替えをできるようにしたところ。弾発射スクリプトがサブマシンガンとスナイパーライフルで共通にしてるため、現在スナイパーライフルがサブマシンガンのレートでフ…

武器を2つ持つ

一度に使える武器は1つだけど、ボタンで切り替えられるようにした。切り替えが一瞬で終わってしまうので、アニメーションかなんかいれておきたい

フルオートにも対応

今まではセミオートでしか撃てなかったが、イングラムを見て作った自作の3Dモデルの登場により、フルオートでも撃ちたくなったので対応した。GetButtonDownがボタンを押した瞬間だけを取得したい場合使うやつで今までこれだけを使ってきたが、今回から押しっ…

残りのライフによって画面を赤くしてみた

Unityには画面の塗りつぶしが無いっぽいので、馬鹿でかいテキストを用意して、それのアルファ値を変えて画面全体に薄ら赤を加えている

ちょっとだけ進む

Wiiリモコン+ヌンチャクで動けるようにした。とはいっても移動はヌンチャクオンリーだけど。横に移動できないが、向き変更+前後ろでなんとかなるだろうか?

ゲーム開発に向けて

今まではキーボード&マウスという組み合わせをコントローラとして考えていた。しかしFPS作りたいと思ったときに銃型のコントローラがないものかと思って思いだしたのがWiiザッパー。いろんな種類がでてるでしょと思ってAmazonで検索してたらパーフェクトショ…

通路を広げてみた

ランダムマップを作るアルゴリズムを少しいじって通路を広げてみた

道が狭すぎる

1×1ずつ区画を取ったら道が狭くなりすぎた。3×3単位で区画をとらないと駄目な感じがする。でも今のアルゴリズムで3×3に対応するにはちょっと工夫が必要かもしれない。それより主人公を小さくしてみるという考えはどうだろうか?

とりあえず銃表示

まだ、自分のパソコンは戻ってきてないが、作業を進める。仮にもFPSなので銃を表示させることにした。だが、まだFirst Person Sanpoだ。まぁ、そのうち銃弾がでるだろう

ゲームを作り直す

ゲーム開発が進まなくなったため、最初から作り直すことにした。マップはランダムマップにした。100*100の領域(x-z平面)を分割して、小さい領域を何個も作り、その中に部屋を作って、部屋同士を繋げてマップ作製。乱数大活躍。とある学内イベントに向けて先…

OBBのテスト、しかし...

OBBをJavaScriptで作り、テストしようと思った。しかし問題発生。JavaScriptで継承もどきを使った部分で何か変な挙動が起こる。AとBのボックスを作ったがAを動かすとBも同じ位置に行ってしまうという問題が発生した。それぞれ別のオブジェクトなのだが、オー…

OBB

もうすぐ実装できる...はず。これができたら衝突判定ができる。さて、もうひと頑張りだ

とりあえずベクトルを

とりあえずベクトル計算を行いたかったので、こんなプログラムを作ってみた。3次元ベクトルの足算、引算、内積、外積、正規化を行える...はず var Vector3 = function(){ this.elements = new Array(0.0, 0.0, 0.0); this.set = function(x, y, z){ this.el…

衝突判定を入れたい

今作ってるプログラムだと壁を突き抜けてしまうので衝突判定を入れたい。球だったら楽に判定できるけど壁は四角い。銃や自分の判定は角度を持ったBoxにする予定なのでOBBを勉強する必要がありそう。とりあえず下記のリンクが参考になりそうだ3D衝突判定(当…

First Person Sanpo 未完成!

未完成だが今作っているFPSをアップロードした。現在できるのは散歩のみ。しかも壁を突き抜けることができる。できるだけ新しいFirefoxやChromeで見てね! 操作方法 移動 W 前 S 後 A 左 D 右 回転 J 左 L 右 http://www.d-kami.net/fps/test2/

開発進める

向きを変えたときに銃の向きも変わるようにした。あとは移動

FPS作成へ

gl.enchant.jsやUnityに続き相変わらずFPSにこだわっているが、とりあえず形だけでも。FirefoxとかChromeなら表示できるだろうけど、操作はできないよ! http://www.d-kami.net/fps/test1/

周りをチェック

敵のAIを追加した。周囲の一定距離のキャラクターの状態を見て、死亡してたり、プレイヤー発見状態のキャラクターがいる場合の処理を入れてみた。プレイヤーを発見した敵の周りで何も気づかずに通り過ぎるだけの敵がいると悲しいと思ったから追加。異変に気…

突っ込みどころが!

死体が転がっていても気にせず歩き続けるパトロール達

見えない壁を作る

プレイヤー以外のキャラの移動方法でいいのが思いつかないため、見えない壁を作り、キャラがそこに接触したら右に曲がれとか一時停止とかの命令をだすようにした。今のところ味方のキャラがいないので作りたいところ

プレイヤーのライフと自然回復を導入

今まで敵の攻撃をいくら受けても死ななかったのでプレイヤーキャラのライフポイントを設定し、攻撃を受けたらライフを減らすようにした。回復に関しては時間と共に回復するようにするため、以下のようにスクリプトを組んだ void Update(){ if(life == LIFE_M…