一人で完成まで頑張るの寂しいからかまって [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1名前は開発中のものです。
垢版 |
2017/03/08(水) 22:06:31.71ID:OX0NO28I
・ウディタ製
・RPG
・ぼくがたのしいとおもったしすてむ
・ぼくがたのしいとおもったばらんす
・基本システム流用できるところは流用して楽していく
・エタらないように頑張る
2019/01/26(土) 11:28:12.06ID:Vf7ZA8bm
恒星系で自機に敵弾が当たった時
回避率に応じて避けられる様にした

回避率 = ピッチ速度 * (マニューバ率 / 100) * (Z速度 / 最大Z速度)

Z速度を上げながらピッチを上下すると、回避率が上がる

ピッチ速度 < 50 なら、マニューバ率 = 100%
ピッチ速度 >= 50 なら、マニューバ率 -= (100 - (ロール速度 / 2))

ピッチを連続で上下し続けていると、効果が減衰する
左右にロールすると、その減衰を遅らせる事が出来る

確率で回避できるのはシューティングとしてどうなんだ
と言われるかも試練けど、一応RPGだし
ワンパターンなCPUが相手だと、すぐに攻略されて
特定のマニューバで簡単に回避できてしまうので
対策としてこうなった
2019/01/28(月) 19:30:46.84ID:jel4stBW
「性別コード」

TSモノのゲ制のキャラ設定をする上で
性別を表すコードが必要になったので作ってみた。
性別だけを表しているので人外、シチュ、フェチ等の属性は
別途付記する必要が有ります。
同人誌や動画などのタグとして使えるかも知れません。

性別を下記の身体・心情・指向の三つの組で表します。

身体:生まれつきの体の性
心情:自分の気持ちの上での性
指向:好きになる対象の性

更に各組は下記の成人・未成人の片方または両方で一組になります。

成人
A:無性
F:女性
M:男性
B:両性
N:中性
X:非公開

未成人
a:無性
f:女子
m:男子
b:両性
n:中性
x:非公開
2019/01/28(月) 19:32:03.74ID:jel4stBW
>>432
例えばこんな感じです。

MMF:一般の成人男性
FFM:一般の成人女性
MMf:ロリ専門男性
MMFf:年齢気にし無い男性
MMM:攻め
MNM:受け
FFXx:腐女子(MMM x MNM 好き)
Fff:百合
Mff:男の娘
mnf:女装子
BfMm:フタ
fmMm:ボーイッシュ
FFm:オネショのお姉さん
mmF:オネショのショタ
mmf:出会う前のショタ
mmAf:お姉さんにトラウマにされたショタ
mmAa:お姉さんもパパも友達も皆嫌いだ!なショタ
Mfn:アストルフォ、ブリジット
mnn:秀吉
MnFf:ハヤテ、白鳥隆士
FNM:オスカル
MBm:バンコラン
BnM:マライヒ
mmm:ナルキッソス
mNmAm:アッシュ・リンクス
mmf/fmf:早乙女乱馬
2019/01/28(月) 19:33:56.52ID:jel4stBW
>>433
FmFm の場合 Fm/F/m なのか F/m/Fm か曖昧になるので
前者なら FmFAm 後者なら FAmFm と表記します。

大人と子供の組は右側を優先に組になる(右結合)ので
右から読んだ方が判り易いです。

MnFf なら右端の Ff を組みとして残りは
M, n の二文字だけなので、M / n / Ff になります。
Mn / F / f にしたければ MnFaf と表記します。

既存のキャラを分析・分類すると面白いかも。
2019/01/28(月) 20:03:19.14ID:jel4stBW
>>434
普通の性別・血液型・星座より
キャラのパーソナリティが掴みやすいと思われます。
436名前は開発中のものです。
垢版 |
2019/01/29(火) 10:39:02.89ID:vujHvWyz
「君の名は。」等のTSもので男女の心が入れ替わった場合は
mmf, ffm から fmf, mfm にTSし
そのままお互いを好きになった場合は
fmm, mff に変化します
異性を好きな気持ちが残って居るなら
fmb, mfb と言う事になります
しかし、好きなのは相手の体で無く心の場合は
fmf, mfm となります
2019/01/29(火) 10:42:49.39ID:vujHvWyz
スレチになって来たので他所でやります
2019/02/03(日) 23:35:21.37ID:YsA7lHfz
回避力と防御力のバフの効果を実装した

恒星系の回避は確率で決まるので
回避力を掛けるだけだけど
恒星系以外では見た目が当たったら当たりなので
防御力でダメージを減らした後に
さらに回避力でも減らす様にした

後でこの辺の仕様は変更するかも
2019/02/04(月) 12:15:41.36ID:s8tb2JXP
恒星系以外の回避力のバフの効果を変更した

乱数 % 回避力 >= 100 ならダメージ無し

回避力が 100% 以下なら必ずダメージ有り
回避力が 150% なら 3 回に 1 回ダメージ無し
回避力が 200% なら 2 回に 1 回ダメージ無し

各サブ・ゲームの武器毎の当たり判定から呼ばれる
共通のダメージ処理に仕込んだので
一か所書き換えるだけで済んだ
普通の言語では当たり前の事だけど
ツクールでは色々面倒だったりする
2019/02/04(月) 16:37:03.31ID:s8tb2JXP
運動性と機動性のバフの効果を変更した

運動性のバフは旋回速度の上限と加速度を150%に上げて
機動性はZ速度の上限を150%に上げる

効果時間が切れたら100%に戻す
2019/02/05(火) 16:09:06.74ID:GQmpWqzc
運動性と機動性のバフの効果を
恒星系以外にも対応させた

効果発動時と時間切れの時のSEも設定した
2019/02/05(火) 20:02:57.95ID:GQmpWqzc
燃費向上と回復向上のバフの効果を実装した
燃費と回復はシーソーになっていて
一方を上げれば他方が下がる

メニューを閉じた後に呼ばれるイベントで
バフ・アイテムを装備しているか
チェックして、フラグを立てる
フラグが立つと自動で呼ばれるイベントで
バフの処理を行う
こうするとバフ・アイテムを
装備している時だけ、バフが掛かる
2019/02/05(火) 20:03:40.56ID:GQmpWqzc
これで強化系アイテムは片付いた
2019/02/07(木) 21:17:45.00ID:/PhHG6cF
急加速するブースターを実装した
アイテムを使ったら最高速度を二倍にして急加速する

「フェーズ 0」
最高速度を通常にする
ブースターを使ったら、タイマーを設定して、フェーズ 1 にする

「フェーズ 1」
最高速度を二倍にする
倍速で加速し続ける
減速キーが入力されたら、フェーズ 2 にする

「フェーズ 2」
最高速度を二倍にする
タイマーが切れたら、フェーズ 0 にする

恒星系で敵を振り切って逃走判定に持ち込んだり
ビル街でターゲットの車両に追い付きたい時などに使う
まだサブ・ゲームよっては背景の移動に不具合が出る
2019/02/09(土) 02:23:48.26ID:3F6y1Asm
アイテムのアクセル・スロットルを実装した
装備した状態でサブ・アイテム・キーを
押すと加速、放すとゆっくり減速する
スターラスターの様な操作になる

キー入力イベントで装備しているかチェックして
・サブ・アイテム・キーがOnなら
 加速キーをOn、減速キーをOff
・サブ・アイテム・キーがOffなら
 3フレームに1回だけ ((frame % 3) == 0)
  加速キーをOff、減速キーをOn
・サブ・アイテム・キーをOff
2019/02/10(日) 01:01:52.70ID:bBiTLW7b
燃料タンクのアイテムを実装した

メニューの処理が済む度に
燃料タンク、シールド・バッテリー、
フォース・フィールド・バッテリー
のアイテム数を数えて
HP、シールド、フィールド
の最大値を設定する

燃料タンクが手に入るミッションを
クリア後に何度でも受けられる様に
燃料タンクを一つひとつ別アイテムにして
既に手に入れたフラグも兼ねる様にした
手に入るのは1種類に付き1個だけ
今の所最大14個用意してる

燃料タンク 1
燃料タンク 2
……
燃料タンク 13
燃料タンク 14
2019/02/10(日) 01:25:26.33ID:bBiTLW7b
これでアイテムは大体片付いた
合成素材とクエスト用アイテムは
後で必要になってから作る
2019/02/19(火) 11:37:14.18ID:xU/GGLcu
HUDのアイテム・アイコンの画像を作った
描画も出来る様に調整した

アクセル・スロットルの残弾数は
自機の速度%を表示する様にした
2019/02/19(火) 15:19:35.36ID:xU/GGLcu
ビル街の速度のバランス調整をした

船の装備のアクセル・スロットルは
ビル街では使わないので無効にした

ターゲットの車両のAIも実装した
道路の自機が居るのと反対の車線へ
移動して逃げようとする様にした
2019/02/19(火) 16:10:50.17ID:xU/GGLcu
http://lnl.osdn.jp/pukiwiki/index.php?blog
ここまでのスナップ・ショットをうpった
キャッシュが更新されたらウェブ・ブラウザで
最新版をテスト・プレイ出来るよろ
451某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/19(火) 17:18:38.12ID:xU/GGLcu
age
2019/02/21(木) 01:19:33.75ID:TYKI515k
FPS(白兵戦)の壁の隙間を無くした

・壁の画像からアルファ値を抜いて
輪郭をくっきりさせた(幅のテーブルも調整)

・スプライト・シート番号を
0から指定していたのを1から始まる様に修正

・壁の回転画像がパースの関係で
中央からズレていたので修正

以上の調整で、画面の端でZ座標が
マイナスになって見切れる場合を除いて
隙間が空く事が、ほぼ無くなった
2019/02/21(木) 03:37:56.73ID:TYKI515k
音楽鳴ら無いと寂しいので
仮のBGMを再生する様にした

BGMファイル全部インポートすると
バックアップ時に無駄に容量増えるので後回し

フィールドや戦闘の曲は
それが最初にアンロックされる恒星系と
最後の恒星系に印象的な曲が来る様にした
ボスはボスっぽい曲
2019/02/21(木) 04:02:39.78ID:TYKI515k
壁の角度を少し滑らかに繋がる様にした

画面上のX, Yの比率から角度を求める為の
テーブルの値を隣同士の中間値にした
角度の判定を緩めに設定した事になる
2019/02/21(木) 05:35:01.78ID:TYKI515k
>>454
これ atan だろってなって
tan テーブル作ってそこから二分探索で
角度を求める様にして見たけど
実際のドット数からテーブル作った方が
微妙に合ってる感じになった
ドット画だからなw
2019/02/21(木) 06:06:22.42ID:TYKI515k
ツクール2003では拡大率を縦横別々に
指定できないので、この辺が描画精度の
限界だろうと言うお気持ちになっている

MVだとスクリプト使えば行ける様だけど
2019/02/21(木) 10:53:16.58ID:TYKI515k
燃料が無くなったら
残弾ゲージも0になる様にした

武器発射時のHP消費チェックで
フラグを立てて、HUD描画時に
チェックして強制的に0で描画する
2019/02/22(金) 15:52:38.33ID:LXJ+SWfq
FPSの壁の押し出し処理を作った
ツクールの2Dマップを壁の生成だけで無く
当たり判定にも使っている

・(PCのX速度 > PCのY速度)の時は
 Y方向の判定を先にやってからX方向の判定をする
・逆の時は
 X方向の判定を先にやってからY方向の判定をする

こうすると上に進んでいて左肩が壁に掠った時に
右に避けつつそのまま上に進める様になる
2019/02/22(金) 15:53:15.12ID:LXJ+SWfq
「Y方向の判定」
・PCを正方形と考えて4つの角がそれぞれ
壁にめり込んでいるか調べる
角を点と考えて、マップ上のその座標の地形を
調べて判定する

・上方向の2つの角の両方がめり込んでいるなら
 上カウント = 2
・片方だけなら
 上カウント = 1
・どちらもめり込んで無ければ
 上カウント = 0
・下方向の2つの角も同様に数える

・(上カウント > 下カウント)なら
 PCを下方向に押し出す
・(下カウント > 上カウント)なら
 PCを上方向に押し出す
・それ以外ならそのまま
2019/02/22(金) 15:53:44.68ID:LXJ+SWfq
こうすると左に移動して壁に当たった時に
左上だけ当たっている時は
(上カウントが1、下カウントが0なので)
下に避けてから左へ移動し
左下も当たってる時は右に押し出されつつ
(上カウントが1、下カウントが1なので)
少し斜め向きなら微妙に上下に
移動し続ける様になる

また、部屋のL字の角に斜めにぶつかった時に
Y方向の判定で上下とも壁なので押し出し出来ず
X方向の判定も同様に出来無いので
そのまますり抜けて部屋の外に出て仕舞うので
フラグで無くてカウントにしている

この場合
Y方向は上カウントが2、下カウントが1なので
下に押し出され、その後
X方向は左カウントが2、右カウントが0になるので
右にも押し出されて、部屋の角で止まる
2019/02/22(金) 16:21:36.36ID:LXJ+SWfq
車輪の再発明なのでなんか不具合はあるかも試練
2019/02/23(土) 03:55:32.90ID:tr501z73
「上方向の判定」

・上カウントが1、下カウントが0の時は
上だけめり込んでるので、下へ押し出し

・上カウントが1、下カウントが1の時は
上下にめり込んでるので、押し出しは無し
(横へは押し出される)

・上カウントが1、下カウントが2の時は
L字なので、下の押し出しは無し(上は有る)


・上カウントが2、下カウントが0の時は
上だけめり込んでるので、下へ押し出し

・上カウントが2、下カウントが1の時は
L字にめり込んでるので、下へ押し出し

・上カウントが2、下カウントが2の時は
完全に壁の中なので、身動きが取れない
(特別な処理が必要)

下・左・右方向の判定も同様
2019/02/23(土) 04:04:15.35ID:tr501z73
>>462
つまり
(上カウント > 下カウント)ならPCを下方向に押し出す
と言う事
2019/02/23(土) 12:16:38.98ID:tr501z73
FPSのサイコガンの画像を2種作った

ノーマル・ショットはライフルの薬莢の3Dモデルを
後ろ向きにしてFF:Uの魔銃っぽくでっち上げた

バースト・ショットはノーマルの上に
ミニガンを乗っけた
2019/02/23(土) 12:26:08.14ID:tr501z73
>>464
カメラの位置を一寸動かしてはレンダリング
の繰り返しなので、リアルタイムでプレビューしたい
2019/02/23(土) 16:09:28.88ID:tr501z73
FPSでのPCの武器

パルス・ショット:ダメージx1、三点バースト、マガジン無限
バースト・ボルト:ダメージx2、フルバースト
グレネード   :範囲ダメージx16、手榴弾、スモーク効果
ビーム・クリス :ダメージx4、近接ナイフ

武器名とダメージは未確定
2019/02/25(月) 11:36:44.87ID:Up6mr9sk
パルス・ショットとバースト・ボルトの
アニメ・パターンを作った

サイコガンがクルッと回転し
上部がパカッと開いてバースト・ボルトが出て来る
2019/02/25(月) 15:07:51.07ID:Up6mr9sk
グレネードのアニメ・パターンも作った
拳銃のモデルを投射方向に斜めに向けて
サイコガンの上面へと、くっ付けた
469名前は開発中のものです。
垢版 |
2019/02/25(月) 17:02:41.52ID:Up6mr9sk
http://lnl.osdn.jp/images/Space-SSS/blog/2019/02/l/psycho-gun-002.png
白兵戦(FPS)のサイコガン
上からパルス・ショット、バースト・ボルト、グレネード
武器を切り替える度に、右から左へアニメする
2019/02/25(月) 18:54:05.32ID:Up6mr9sk
サイコガンの名前は「MPG - マルチフェーズ・ガン」
辺りが良きかな
2019/02/25(月) 20:42:12.71ID:Up6mr9sk
>>470
マルチガンでいいや
2019/02/26(火) 16:43:33.62ID:i5i+M8FM
ビーム・クリスのアニメ・パターンを作った
志村けんのアイーンの構えから
右上前方に薙ぎ払う

取り敢えずマルチガンの画像は出来た
2019/02/27(水) 14:49:38.63ID:iVT3JNgl
マルチガンの描画を実装した
武器を切り替えるとアニメする

・現在のコマ数 = 最大コマ数
 ……
・現在のコマ数 -= 1
・(現在のコマ数 == 0) なら……

武器を切り替えた時に、現在のコマ数を設定して
フレーム毎にカウント・ダウンすると
武器によって最大コマ数が違っても
アニメを終了して攻撃可能になった事が
0と比較するだけで判別できる
2019/02/27(水) 15:27:53.03ID:iVT3JNgl
>>473
コマ数をカウント・ダウンするのに合わせて
画像のアニメ・パターンも右から左に並べている
ツクールではスプライト・シートの番号を
左から右にカウント・アップする為
2019/02/27(水) 15:53:03.97ID:iVT3JNgl
ビーム・クリスの攻撃アニメを実装した

攻撃キーを入力すると専用のアニメを描画する
アニメ・パターンは、マルチガンの画像に
武器切り替えアニメと一緒に入れて有る
2019/02/28(木) 11:00:05.43ID:yCo0YeXR
メニューの後処理で
装備中の武器のIDを更新する様にした

これでキー操作だけで無く
メニューからもメイン武装やサブ・アイテムを
切り替えられる様になった
2019/02/28(木) 11:43:27.49ID:yCo0YeXR
ビル街の未使用のキーにブースターを割り当てた
Shift + Z or X で発動
2019/02/28(木) 15:12:43.66ID:yCo0YeXR
地表面で敵を再ロックオンした時
マーカーがアニメしていなかったのを修正

ロック/再ロック時に
アニメのコマをリセットさせた
2019/03/02(土) 16:55:55.38ID:7wuZTk1B
ビーム・クリスのビーム刃の描画を作った
攻撃モーションに合わせてアニメする
480名前は開発中のものです。
垢版 |
2019/03/02(土) 22:19:07.64ID:7wuZTk1B
ビーム刃を反転させたコマも用意して
スパークが飛び散る様にした
透明度も周期的に上げ下げして明滅させた
2019/03/03(日) 11:58:27.89ID:ctaZXkRv
マルチガンの弾の画像を作った
幾何学模様っぽいデザイン

パルス・ショットはオレンジの▽
バースト・ボルトは青い◇が4つ
グレネードはワイヤーフレームの玉の中に
赤いクリスタルが入ってる
2019/03/04(月) 18:05:56.37ID:4gY6feVG
マルチガンの弾の描画の一部が出来た

パルス・ショットは三点バーストなので
連射回数をカウントして置いて
3以上になったら一度キーを放すまで
発射しない様にした
バースト・ボルトは制限無し

パルス・ショットがオレンジ色だと
砂漠では見難いので黄緑の▽に変更した
2019/03/05(火) 00:11:13.26ID:I9V8ADQc
こんな感じかね?
https://i.imgur.com/xT2Xnl4.jpg
https://i.imgur.com/M4uAtHy.jpg
https://i.imgur.com/xL3yB3N.jpg
2019/03/05(火) 01:12:17.88ID:hU7oy9+S
>>483
めっちゃバレたな
2019/03/05(火) 01:33:18.34ID:hU7oy9+S
主人公はロン毛の美形マッチョの予定なので整形前だな

「本当にいいんだな?」
「あぁ、思いっきりやってくれ」
  ……術後
「ヒュー。こいつは飛びっきり不細工だ」
2019/03/05(火) 01:45:30.76ID:I9V8ADQc
ウッホッ!
2019/03/05(火) 02:19:10.42ID:hU7oy9+S
https://www.youtube.com/watch?v=BSdeManFIpU
魔銃はこれな
「おじさんじゃない!お兄さんだ!」
2019/03/06(水) 17:43:59.10ID:oY46P5uX
FPSのPCの横移動とヨー旋回時の
自弾の移動を実装した

・自弾の座標はPCの視線方向に固定している
(ワールド座標系で無くて、スクリーン座標系)
・横移動は自弾のX座標を左右に移動させる
・ヨー旋回時は自弾の透視図法の消失点を
遠景のスクロールと同じ分だけ左右に移動させる

自弾は撃った瞬間に
敵との当たり判定を済ますので
弾道はフレーバー要素に過ぎ無い
こうすると座標と速度ベクトルの回転の
重い処理を省ける訳だ

この辺がポリゴン3Dゲーと違って
スプライト2.5Dゲーの狡い所である
2019/03/06(水) 20:21:44.57ID:oY46P5uX
マルチガンのリロードを実装した

マガジンが空になったら自動的にリロードする
予備のマガジンも空になったら効果音を鳴らす
武器の切り替え処理がリロードを兼ねる

「リロードでの弾数の変化」
・N = 装弾数 - 現在の弾数
・(N > 予備弾数)なら N = 予備弾数
・予備弾数 -= N
・現在の弾数 += N
2019/03/06(水) 21:05:38.34ID:oY46P5uX
パルス・ショットの予備弾数が
99,999だったら予備弾数を
減らさない条件を入れて
無限にリロード出来る様にした

グレネードの装弾数に100とか
適当に大きな数値を設定して
事実上リロード無しにした
一度の突入で数発しか
補充されないので問題無い
2019/03/08(金) 02:20:58.59ID:dEMFBso+
グレネードの変動するパラメータ多過ぎて収拾つかなくなってる
取り敢えず目標地点の描画作って、その辺に着弾すれば良いや
今日はお仕舞い
2019/03/14(木) 04:35:46.02ID:peeTxnm4
グレネードの目標地点の描画が出来た

攻撃ボタンを押している間
視点方向の手前と奥を往復する
攻撃ボタンを放したら
目標地点へ向けてグレネードを発射する

・(フレーム <= 1) なら 符号 = +1
・(フレーム >= 最大) なら 符号 = -1
・フレーム += 符号
・Z = VZ * フレーム

これで目標地点の視点方向のZ座標を往復させる
2019/03/14(木) 23:59:45.90ID:peeTxnm4
レース用の画像素材探しとBGMの割り当てをした
FPSのHUDのデザインもした
494某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/17(日) 06:03:59.99ID:YCfg/Oct
グレネードを投げられる様にした
初速を計算して発射し、放物線を描く

初速 = 平方根((重力加速度 * 距離) / (2 * sin(45) * cos(45))

本当は地面からの武器の高さを考慮する必要が有るけど
複雑な計算の割には大して差が無いし
バランス調整が大変になる
爆発する座標は撃った瞬間に
マップ平面で計算済みなので、これで良い
2019/03/17(日) 06:09:58.16ID:YCfg/Oct
平方根のアルゴリズムは↓を参考にした

https://cpplover.blogspot.com/2010/11/blog-post_20.html

引数に0以下を渡すとフリーズするので
適当に1を返す様にした
正確で無くても良いから、そのまま続行して欲しいので
2019/03/19(火) 08:27:33.46ID:RqzYy22/
グレネードの爆発を実装した

キーを押したら、照準を前後に往復させて
放したら、そこを目標地点として
座標を「照準→グレネード→爆炎」の順に
伝えて行って、そこで爆炎をアニメさせる

これで白兵戦でのPCの攻撃は大体終わった
当たり判定は敵が出来てからにする
2019/03/20(水) 04:09:07.85ID:q69fB3i7
>>496
目標地点の座標をリレー形式で
バトンを手渡して行くイメージ
2019/03/20(水) 09:26:49.72ID:q69fB3i7
壁のイテレータとか細かい最適化をした

今はまだ壁の数自体が少ないので
あまり目に見えた効果は無かったけど
ソースの可読性も上がる修整だったので
良しとする

コード読み直して、敵の描画処理の
見当をつけた
2019/03/20(水) 15:53:57.29ID:q69fB3i7
FPSの敵の移動パターン4つネタ出しした
2019/03/21(木) 11:21:41.22ID:+0gLwVuf
FPSの敵の画像をレンダリングした
取り敢えず1種類だけ作って動かして見て
問題無ければ残り3種類 + ボスも作る

敵を壁の手前や奥に描画できる様に
敵と壁を1枚の画像にまとめた
ファイル・サイズが大きく成り過ぎたので
縦横半分に縮小した
2019/03/21(木) 15:59:40.79ID:+0gLwVuf
>>120
地表面の地面と海/川は、アフターバーナーっぽい
角の面取りを止めて正方形にした
地平線がギャラクシーフォースの様に面一になった

デバッグ用に草原以外のマップも
ランダムに選ばれるフラグを用意した
2019/03/22(金) 09:41:26.47ID:NeZvWN39
FPSの敵戦車を取り敢えず描画できる様にした

初期化時にマップを左上から右下まで
1キャラずつ見て行って
その地形に応じて、壁や敵を生成して行き
管理用の配列にリンクする

管理配列をソートした後
順番に対応するピクチャ番号で描画する
こうすると、奥にいる戦車が手前の壁に
隠れて見える様になる
503某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/22(金) 11:13:21.78ID:NeZvWN39
1には悪いけど、このスレも半分消化したな
まだまだ続くでー
2019/03/23(土) 03:09:05.78ID:Q/m1CvIm
敵戦車が1両しか描画できないバグを直した
イテレータで指定するバッチ範囲の修正し忘れだった
度々これをやらかす自動化してくれ
2019/03/23(土) 08:49:16.60ID:Q/m1CvIm
敵戦車の移動Aを作った
ランダムに方向転換と直進を繰り返す

・角度 = (次の向き - 現在の向き + 360) % 360
・角度 = 角度 / 回転速度 * 回転速度
・(角度 == 0) なら 直進
・(角度 <= 180) なら 現在の向き += 回転速度
・(角度 > 180) なら 現在の向き -= 回転速度

これで左右回りの近い方に
方向転換してから直進する
2019/03/23(土) 09:16:18.25ID:Q/m1CvIm
敵戦車の種類で、画像と攻撃方法が固定で決まり
それとは独立に、移動パターンを掛け合わせて
バリエーションを増やす
507名前は開発中のものです。
垢版 |
2019/03/23(土) 11:26:48.60ID:Q/m1CvIm
敵戦車の移動Bを作った
PCの視線に対して直角に左右に逃げる

・(戦車の描画X < 0) なら
 次の向き = 360 - PCの向き - 90
・(戦車の描画X >= 0) なら
 次の向き = 360 - PCの向き + 90

これで後は戦車Aと同じ処理
2019/03/24(日) 13:53:07.49ID:bKpugRoi
敵戦車の移動Cを作った
左手法でマップの壁に沿って移動する

・前方が壁なら右折する
・左に壁が無いなら左折する
・但しランダムに決めた時間内は直進する

近くに壁が無い状態だと
その場でクルクル回って仕舞うので
ランダムに直進する処理を加えた
2019/03/24(日) 13:54:41.30ID:bKpugRoi
敵にもPCと同じ、壁の当たり判定と
押し出し処理を実装した
2019/03/24(日) 15:19:13.46ID:bKpugRoi
PCの出現位置をマップ上で指定できる様にした

マップから壁や敵を生成する時に
特定の地形が有ったら
その座標をPCの座標に入れる
2019/03/24(日) 16:13:00.26ID:bKpugRoi
戦車の画像は、移動方向に合わせて
車体の向きが12枚ある

砲塔は常にPCの方向を向いていて
何時でも攻撃できる様になっている
2019/03/25(月) 03:22:55.49ID:mBobaV08
敵戦車の移動Dを作った
PCに向かって追い掛けて来る

dx = (自機X - 敵X) / 1マスのサイズ
dy = (自機Y - 敵Y) / 1マスのサイズ
if (dx <= -1) {
 if (dz <= -1) {
  目標の向き = 3
 }
 if (dz == 0) {
  目標の向き = 2
 }
 if (dz >= +1) {
  目標の向き = 1
 }
}
if (dx == 0) {
  目標の向き = 4
  目標の向き /= 45
  目標の向き = 0
}
if (dx >= +1) {
 ……
}
目標の向き *= 45

45度単位で、目標(PC)の方を向いて
その方向に直進する
PCと重なっている時は、向きを変えない
2019/03/25(月) 03:34:55.99ID:mBobaV08
>>512
※訂正

dz = (自機Z - 敵Z) / 1マスのサイズ

if (dx == 0) {
 if (dz <= -1) {
  目標の向き = 4
 }
 if (dz == 0) {
  目標の向き /= 45
 }
 if (dz >= +1) {
  目標の向き = 0
 }
}
2019/03/25(月) 05:30:12.70ID:mBobaV08
戦車の攻撃パターンをネタ出しした

・自機狙い
・4Way
・緩いホーミング
・ランダムに揺れる弾幕
2019/03/25(月) 08:58:19.17ID:mBobaV08
PCが敵戦車に轢かれたらダメージを受ける様にした
ダメージと効果音の処理の一部を実装した
2019/03/26(火) 16:21:02.56ID:yQUdAvyc
戦車4種のレンダリングした
Blender が少しずつ解って来た気がするけど
たぶん気のせい
2019/03/27(水) 00:39:16.31ID:kz4Q+KiW
FPSの戦車4種の画像とマップ上の生成が出来た
2019/03/27(水) 14:52:20.43ID:kz4Q+KiW
戦車の砲弾の画像を作って、取り敢えず
撃ったその場に描画する所までやった
PCの回転や移動もおk
2019/03/28(木) 11:34:04.48ID:yyMS9KtM
戦車の攻撃Aを実装した

・x1 = 攻撃した敵のマップ上のx
・y1 = 攻撃した敵のマップ上のy
・dx = (PCのマップ上のx - x1) / 弾の速度
・dy = (PCのマップ上のy - y1) / 弾の速度
・最大フレーム数 = 最大(絶対値(dx), 絶対値(dy))

弾の発射時に、発射位置(x1, y1)と
PCとの相対座標(dx, dy)と
PCと衝突するまでの最大フレーム数を
求めて置く

・フレーム数 = 0...最大フレーム数
・弾のx = dx * フレーム数 / 最大フレーム数 + x1
・弾のy = dy * フレーム数 / 最大フレーム数 + y1

フレーム数をインクリメントしながら
弾のマップ上の座標を計算して、描画処理に渡す
こうするとsin, cos, tanの重い処理を省ける

弾がPCに当たらなかった場合は
そのままフレーム数を増やして行って
壁にぶつかったら消す
最大フレーム数を越えても問題無い

実際は弾の速度を半分にして
移動と当たり判定を2回分実行する事で
壁のすり抜けを防ぐ
2019/03/28(木) 15:15:10.72ID:yyMS9KtM
>>514
・自機狙い
単発で撃って来るだけ。単純に雑魚

・4Way
最初ビビるけど直ぐに避けられる様になる

・ホーミング
めっちゃ当てに来るので壁避け必須。HP少な目

・ランダムに揺れる弾幕
板野サーカスの腕前を要求。単純に強い
2019/03/28(木) 16:46:35.33ID:yyMS9KtM
>>515
「敵が前に進んでてその角度の範囲内にPCが……」
とか難しく考え過ぎる子が居るから答え合わせな

・dx = (戦車のx - PCのx) / 当たり半径
・dy = (戦車のy - PCのy) / 当たり半径

でdxとdyが両方とも0だったらひき頃されてる
2019/03/28(木) 17:06:35.06ID:yyMS9KtM
>>519
・最大フレーム数 = 最大(絶対値(dx), 絶対値(dy))

こっちのdx, dyは合ってるけど

・弾のx = dx * フレーム数 / 最大フレーム数 + x1

こっちのは、弾の速度で割る前の値な
説明を省くと文章にバグが入り込む何時ものやつ
2019/03/29(金) 10:39:28.04ID:ELgYOkhI
敵戦車の4Way攻撃を実装した
PCを中心にした扇状の4方向へ向けて飛ばす

1. PCと敵の相対座標から角度を45度単位で求める
 x > 0 かつ y > 0 の場合
  (x / y) >= 2 なら 0度
  (y / x) >= 2 なら 90度
  それ以外なら 45度 と言う感じ
2. 角度を直角に回転し正規化する
  0度 なら x = 0, y = 1
 45度 なら x = -1, y = 1
 90度 なら x = -1, y = 0
3. 正規化した数値を +1, -1 倍して扇の幅を掛けて
 敵の座標に加えた位置から発射し
 数値を +1, -1, +5, -5 倍して扇の幅を掛けて
 PCの座標に加えた座標に向けて飛ばす
2019/03/30(土) 09:59:52.16ID:RzjCApdz
敵戦車のホーミング攻撃を実装した

移動処理で、目標の座標を
現在のPCの座標で毎フレーム更新するだけ
他は >>519 の自機狙い弾と同じ

自機狙いは残像拳と一緒で
当たる頃には、もうそこに居ない
「馬鹿め!何処を狙っている!わしはここだ」
2019/04/02(火) 16:32:36.49ID:kiYAJn+a
Done. で落ちてたのでまとめて進捗する
2019/04/02(火) 16:33:41.64ID:kiYAJn+a
敵戦車の弾幕攻撃を実装した
4つの弾が広がってから
PCにぶつかる様に収束する

「発射処理」
・速度 = 壁の幅 * 100 * 乱数(4..12) / 12 / 10
・加速度 = 速度 * -2 / 着弾までの予測フレーム数 - 1

乱数で拡散する速度を決めて
そこからPCの座標に向かって収束する様に加速度を求める

「描画処理」
・速度 += 加速度
・補正座標 += 速度
・現在のX or Z座標 += 補正座標

PCと敵の位置関係で軸に直角になる様に
計算中の描画用XかZ座標に補正座標を加える

・Y >= 0 なら Yの速度--
・Y < 0 なら Yの速度++

Y座標は原点に向けて加速するsinカーブ
要は R-TYPE II の拡散波動砲
2019/04/02(火) 16:34:38.58ID:kiYAJn+a
FPSの敵弾xPCの当たり判定を作った

・DX = (PCのX - 弾のX) / (PCの半径 + 弾の半径)
・DZ = (PCのZ - 弾のZ) / (PCの半径 + 弾の半径)

でDXとDZが両方0だったらPCにダメージ
2019/04/02(火) 16:35:36.82ID:kiYAJn+a
移動や攻撃などのキーが押されていなかったら
PCのHPを少しずつ回復する様にした
2019/04/02(火) 16:36:07.30ID:kiYAJn+a
グレネードの煙幕で敵弾を防げる様にした
当たり判定は敵弾xPC等と大体一緒
2019/04/02(火) 16:44:45.11ID:kiYAJn+a
自弾のパルス、バースト、グレネードと敵との当たり判定できた

パルスとバーストはオブジェクトのポインタの配列に
ソートされて入ってるので、手前から判定して行って
最初に射線上(画面中心)に居るものが敵だったら
そいつにダメージを入れる
2019/04/02(火) 16:45:18.53ID:kiYAJn+a
戦車のHPが0になったら
その場にグレネードと同じ爆炎を置く様にした

グレネードは着弾予測地点で判定
ダメージは4フレームに別けて与える事で
誘爆する時に時間差が出る様にした
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況