シューティングゲーム(非FPS)製作技術総合
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2009/07/17(金) 23:37:46ID:WRVq1Lf8それは「シューティングゲーム製作」・・・。
このスレでは、そんなシューティングゲームの製作技術や技術の検証、成功談
失敗談笑い話、難易度の設定方法論、多弾の是非などについて語り合いましょう。
もちろんBulletMLなどで弾幕を作成してみたり、自分の作ったシューティングを
晒してみたり、プロジェクトをはじめてみるなどもOK!
ただし、シューティングの未来とか既存のゲームの話題などは、関連する他の
スレでやってくれ。
0458名前は開発中のものです。
2010/03/06(土) 03:49:08ID:TpRc090h0459名前は開発中のものです。
2010/03/06(土) 05:31:28ID:noNBLKZt0460名前は開発中のものです。
2010/03/07(日) 01:16:41ID:YzPL2hbOデータ管理(笑)
0461名前は開発中のものです。
2010/03/07(日) 20:14:38ID:R7tMP0V/0462名前は開発中のものです。
2010/03/08(月) 16:44:45ID:t+BlWtcx長方形を○度傾けた攻撃判定はどうやればいいんですか?
0463名前は開発中のものです。
2010/03/08(月) 18:56:35ID:r3mYpf8X敵の場合:
・傾く前の長方形をAとします。
・点Oを中心としてAを○度回転させた長方形をA'とします。
・弾をBとします。
・点Oを中心としてBを−○度回転させます。この架空の弾をB'とします。
・AとB'の当たり判定をすればOK。
・弾がでかいと誤差が気になります。
敵の弾の場合:
弾が小さい場合:
・円形または矩形であるものと近似します。
レーザーの場合:
・たくさんの円が連なったものとして当たり判定を行います。
0464名前は開発中のものです。
2010/03/08(月) 19:16:18ID:r3mYpf8X・小さな矩形の集まりとして当たり判定を行います。
・矩形の数が多いと計算速度が気になります。
↑の計算速度向上版
・例えば一つの矩形が16*16ドットだとします。
・例えば地形の配列を
chikei(0)="1000000011"
chikei(1)="1000000011"
chikei(2)="1111000011"
chikei(3)="1111000011"
・・・
みたいな感じで表したとします。1は当たり判定あり、0は当たり判定なしの矩形です。
・自機の中心座標をjikix,jikiyとします。
・x=jikix/16、y=jikiy/16として、該当する配列要素の該当する数字を見ればOK。
・地形はスクロールしているので、もっとアルゴリズムを練らないとだめです。
0465名前は開発中のものです。
2010/03/08(月) 19:31:31ID:r3mYpf8X・赤、緑、青のうち赤成分について、地形には一番左のビットが1である色しか使わない
ものとします。緑、青成分の一番左のビットは0です。
・緑成分について、敵には一番左のビットが1である色しか使わないものとします。
・青成分について、敵弾には一番左のビットが1である色しか使わないものとします。
・地形と敵と敵弾を先に描きます。
・自機中心座標の色を取得して一番左のビットを調べればOK。
0466名前は開発中のものです。
2010/03/08(月) 19:36:03ID:r3mYpf8X・坂がy=0.3xで表せるものとします。
・自機の中心座標をjikix,jikiyとします。
・jikiy>=0.3jikixなら当たりです。
0467名前は開発中のものです。
2010/03/08(月) 20:01:59ID:r3mYpf8Xビット演算は固定小数に使います。
・整数の下位8ビットを小数部とします。
・2進数を%で表すことにすると、%00000000は0、%100000000は1.0です。
・左ビットシフトを>>、右ビットシフトを<<で表すことにすると、>>8で普通の整数になります。
<<8で固定小数になります。
データを小さくまとめたい場合にも使います。(>>464参照)
chikei(0)=%1000000000000011
chikei(1)=%1000000000000011
chikei(2)=%1111000000000011
chikei(3)=%1111000000000011
いずれも古い文化なので、今は無理にビット演算を使う必要がありません。
キー、ジョイパッドの入力情報が一つの整数として返される場合にも使います。
stick a,0
if a&16 { ・・・
0468名前は開発中のものです。
2010/03/08(月) 21:07:45ID:wgLWnHy0"回転行列"でググると○度傾けた頂点座標の求め方がわかります。
・○度傾けた長方形の座標が求められたら
"外積 当たり判定"でググると多角形の頂点座標からの当たり判定の求め方がわかります。
行列・外積だのはゲームプログラミングにはほぼ必須の知識だから覚えてたほうがいいと思うよ。
0470名前は開発中のものです。
2010/03/08(月) 21:51:24ID:tMGBOXEA「アセンブラが幅を利かせてた時代にはそういう手法をとったケースもある」程度に捉えた方がいいと思う
0471名前は開発中のものです。
2010/03/08(月) 22:24:12ID:x3uTT97d8bit16bit時代のテクニックじゃないかなと。
もっとも、俺の脳内は未だその辺りだから馬鹿に出来ないわけだが。
0472名前は開発中のものです。
2010/03/08(月) 22:28:31ID:7hmsPWgr0473名前は開発中のものです。
2010/03/08(月) 22:31:20ID:YlCnDKp80474名前は開発中のものです。
2010/03/08(月) 23:11:26ID:WklP2F0+0475名前は開発中のものです。
2010/03/08(月) 23:47:48ID:tMGBOXEA0476名前は開発中のものです。
2010/03/08(月) 23:53:44ID:bd08SpDEただこのやり方だと例えば長方形の中に衝突判定対象の図形が含まれる場合も考慮する必要がある場合もあるが
0477名前は開発中のものです。
2010/03/09(火) 23:36:13ID:CC6TzY640478名前は開発中のものです。
2010/03/10(水) 02:47:57ID:xgmN+mEtそうか?
ID:r3mYpf8Xの文章から加齢臭が若干滲み出てるだけで
別に書いてる内容それ自体は古臭かないだろ
>>463前半部は
OBB vs Point → AABB vs Point
OBB vs Circle(Sphere) → AABB vs Circle(Sphere)
というお話。基礎教養。基礎教養にナウいも古臭いもない
>>464
のような2値のイメージベースドな当たり判定も古臭くも何ともない。
重たい衝突検出処理が後段に控えてる場合の候補(形状データ)
絞り込み用として前段での粗い判定に使える
AMP構成のベクトル型のプロセッサか、あるいはSIMDな命令群の
論理演算、比較命令が使えるハードウェアなら高速処理できる
0479名前は開発中のものです。
2010/03/11(木) 09:09:31ID:9IfW72cE↑
>文章から加齢臭が若干滲み出てる
>AMP構成のベクトル型のプロセッサか、あるいはSIMDな命令群の
>論理演算、比較命令が使えるハードウェアなら高速処理できる
だからどうした。
何を必死になっているのか知らんが、特定の例を挙げたに過ぎないということはお前でも分かるだろう。
0480名前は開発中のものです。
2010/03/11(木) 20:25:11ID:0tRTA6r8トレンディーすぎる感性に時代が追い付けない
0481名前は開発中のものです。
2010/03/12(金) 17:26:23ID:bdTSkM4mトレンディくんは言うに事欠いてるな。もう少し素直になったほうがええ
> 特定の例を挙げたに過ぎないということはお前でも分かるだろう。
→具体例を挙げたに過ぎないということはお前でも分かるだろう。
ここで「に過ぎない」という連語には大した意味はないので棄却すると
「相手が具体例を挙げてきた」ことを認める内容が露となる。
修辞技法を駆使して反撃を演出したい気持ちは分かるんだけどね
抵抗は無意味だ
へ__
(/-)-[i]\
/|(●.)`|◎]|=、 <キリッ
.|-+―(_人_) .:Lノ
\|`∩ノ⊃ 彳
(ニ)/:ロ_ノ_|i=])
\//=―ロ:ノ
 ̄ ̄ ̄ ̄
0482名前は開発中のものです。
2010/03/12(金) 17:27:20ID:INAZb1kb0483名前は開発中のものです。
2010/03/12(金) 17:39:15ID:OfgjXRpC0484名前は開発中のものです。
2010/03/13(土) 10:38:20ID:Gv0JgkyM>>479
トレンディくんは言うに事欠いてるな。もう少し素直になったほうがええ
> 特定の例を挙げたに過ぎないということはお前でも分かるだろう。
→具体例を挙げたに過ぎないということはお前でも分かるだろう。
ここで「に過ぎない」という連語には大した意味はないので棄却すると
「相手が具体例を挙げてきた」ことを認める内容が露となる。
修辞技法を駆使して反撃を演出したい気持ちは分かるんだけどね
抵抗は無意味だ
へ__
(/-)-[i]\
/|(●.)`|◎]|=、 <キリッ
.|-+―(_人_) .:Lノ
\|`∩ノ⊃ 彳
(ニ)/:ロ_ノ_|i=])
\//=―ロ:ノ
0485名前は開発中のものです。
2010/03/13(土) 21:11:55ID:xw9pRe1w0486名前は開発中のものです。
2010/03/13(土) 22:12:43ID:49j8Gccr引き籠もりにはわからんだろうが
0487名前は開発中のものです。
2010/03/14(日) 00:23:40ID:umbJkK7H0488名前は開発中のものです。
2010/03/14(日) 00:32:23ID:hjFC/giP0489名前は開発中のものです。
2010/03/14(日) 08:00:12ID:HFNAra8S0490名前は開発中のものです。
2010/03/14(日) 14:10:51ID:3scTct7Y0491名前は開発中のものです。
2010/03/14(日) 15:01:59ID:5GCCIvq3自機の動きに反応して行動するAIを搭載しているゲームってあったりする?
0492名前は開発中のものです。
2010/03/14(日) 15:30:21ID:ER6BUeW90493名前は開発中のものです。
2010/03/14(日) 16:17:16ID:PRJ4XXWW0494名前は開発中のものです。
2010/03/14(日) 16:21:40ID:/UPqr4Ja0495名前は開発中のものです。
2010/03/14(日) 17:19:18ID:WE2tq16r左右に展開しつつ自機方向に機首を向け
自機狙い弾を放ってくるヘリの編隊とか
誘導弾とか特攻機とか自機オプションとか。
行動を決定する入力の中に自機座標や速度が
あるものなんていくらでもあるわな
0496名前は開発中のものです。
2010/03/14(日) 17:24:10ID:fZ3dOxuaこっちのショットをドット単位でチョン避けしてくる
凄腕シューター
0497名前は開発中のものです。
2010/03/14(日) 17:37:47ID:MZfZWUaB「AI」って言えば済むと思ってないで
どんな動きの事を言ってるのかフロー図でも描いて説明しなよ。
0498名前は開発中のものです。
2010/03/14(日) 21:29:00ID:9vcm+7al0499名前は開発中のものです。
2010/03/15(月) 02:05:17ID:Tidw/qaPアルゴリズムをAIと言ってるだけなのか
0500名前は開発中のものです。
2010/03/16(火) 10:28:47ID:Pk2RJ7ag「動き」に対して反応させるのは難しい。
0501名前は開発中のものです。
2010/03/16(火) 10:45:33ID:sovwdzf30502名前は開発中のものです。
2010/03/16(火) 10:59:41ID:hSDgnJIR一定時間内の自機の位置の平均を取って、動いてなさそうなら極太レーザー打つとか?
0503名前は開発中のものです。
2010/03/16(火) 22:07:58ID:zdTdaB5y見越し(偏差)撃ちも動きに対応する処理だが
この程度ならむずかないべ?
0504名前は開発中のものです。
2010/03/16(火) 23:03:14ID:pBtBfF4Eプレイヤーを苛立たせるだけな気もする
0505名前は開発中のものです。
2010/03/17(水) 02:48:04ID:Ku2a9+A2様式美とか不文律を素直に踏襲するふりをするのは大事なことだ
だが調子に乗ってる自機には制裁が必要。生意気な自機はこらしめろ。
自機狙い弾の中にごく稀にランダムに先読み弾を紛れ込ませてみたり
砲台の中にごく稀にランダムに自機の真下・至近距離・後ろから発砲
する気分になる奴を混ぜ込むのはとても楽しい
0506名前は開発中のものです。
2010/03/17(水) 03:21:48ID:11JiUaM7>>505
先読み弾をちょろっと混ぜるのはありだけど
砲台が不意にお約束を破るのはないな。激怒するだろ普通
0507名前は開発中のものです。
2010/03/17(水) 19:24:57ID:1bVyLHK9過去に敵が先読み弾を撃ってくるSTGがあってだな。
そして非難囂々。
制作者の自己満に陥っちゃいかんよ。
あくまでユーザーを楽しませることを考えなきゃ。
0508名前は開発中のものです。
2010/03/17(水) 19:49:31ID:MgMOQK8A0509名前は開発中のものです。
2010/03/17(水) 20:02:58ID:0ajwdJq9Heehaw
0510名前は開発中のものです。
2010/03/17(水) 20:31:08ID:nj/Iwag10511名前は開発中のものです。
2010/03/17(水) 23:21:11ID:KI4ki/GY敵がやったら非難なんて小学生かチョンだろ
0512名前は開発中のものです。
2010/03/17(水) 23:29:12ID:cpHRDQL40513名前は開発中のものです。
2010/03/17(水) 23:55:15ID:Ku2a9+A2れいくらいしす?
0514名前は開発中のものです。
2010/03/18(木) 01:43:41ID:VYaBWXSj非難するほどやったわけでもなし
作者も楽しんでもらうために作ったというよりは実験作っぽかったが
0515名前は開発中のものです。
2010/03/22(月) 04:07:57ID:Lf9EO9xq0516名前は開発中のものです。
2010/03/22(月) 06:23:35ID:gQujjzFA0517名前は開発中のものです。
2010/03/22(月) 14:37:54ID:f5so24220518名前は開発中のものです。
2010/03/23(火) 04:21:16ID:RNwRL5PO0519名前は開発中のものです。
2010/03/23(火) 10:06:37ID:MF0SNlC40520名前は開発中のものです。
2010/03/24(水) 04:43:43ID:wMQoqebY8086のコードをC言語のコードに変換するプログラムを10分以内に作成しなさい。
(ただし、データ部分を入力する時間は考慮に入れません。細かい仕様も問いません)
一応、開発言語はC or C++。MFCの利用は可。
解答は、やねうらおまでメールでどうぞ。
優秀作には、呪いのワラ人形を一年分プレゼント。(誰もいらんわ、そんなん!)
うそうそ。びっくる特製Tシャツをプレゼント。
0521名前は開発中のものです。
2010/03/24(水) 05:26:08ID:2YIiCz0i0522名前は開発中のものです。
2010/03/25(木) 13:31:37ID:TNEjNO4k0523名前は開発中のものです。
2010/03/25(木) 13:46:24ID:gTEaSrjKこれもSTG作りやすいよ
0524名前は開発中のものです。
2010/03/25(木) 21:50:29ID:w/BC9n210525名前は開発中のものです。
2010/03/25(木) 22:16:42ID:BlylR7OFC++コンパイラーがプログラミングツール……って意味で?
0526名前は開発中のものです。
2010/03/27(土) 02:47:22ID:6b7jO0Zwhttp://d.hatena.ne.jp/studiokingyo/
0527名前は開発中のものです。
2010/03/27(土) 14:11:47ID:3cyQPcxv中身からっぽのアフィブログ厨しつこいな
0528名前は開発中のものです。
2010/03/28(日) 20:16:27ID:jPFf9yM70529名前は開発中のものです。
2010/03/28(日) 20:56:23ID:CvXXPwkX0530名前は開発中のものです。
2010/03/31(水) 22:43:03ID:N/u6e0sp0531名前は開発中のものです。
2010/03/31(水) 23:33:26ID:mll2egdJこれ知る前はゲームのソースコードの入ってるフォルダをZIP圧縮して保存してたけど、
とても面倒だった。
0532名前は開発中のものです。
2010/04/01(木) 07:51:53ID:Yajg49jNhttp://pc11.2ch.net/test/read.cgi/gamedev/1247841466/
にて当ブログが晒されている。別段、なんらかのプログラミング技術的な質問に対しての返答で当ブログの記事へのリンクはまったく構わないのだが、アフィブログ厨サイトとして誤解されるような書き込みにこの掲示板に書き込んだ者たちのデリカシーを感じない。
別にアフィブログ厨というのが恥ずかしい卑しい者と思われないのであれば暗にそのように晒されても特段の問題は発生しないのだが、2chに書き込む人々 (以下2ch住民)の多くは「アフィリエイトは恥ずかしくて卑しい行為である。
よってその行いをネタにして僻みや妬みの噂を立てたりこき下ろしても特に問題は無い」という事をポリシーとして持ち合わせている事を知っていた為、何故そのような事を第三者がするのか私には理解の範疇を超えるのである。
要するに、この掲示板に書き込んだ者の善意、悪意に関わらず、結果的には「2ch住民へ当ブログおよび当ブログ関係者は恥ずかしくて卑しい行いを行っている」というアピールになってしまっているのだ。
この書き込みの件では以下のような残念な結果を招くであろう予想が出来る。
* 当ブログの管理人がアフィリエイト目的で2chの掲示板に当ブログを宣伝している*1と思われる。
* 結果的に当ブログおよび管理人は恥ずかしくて卑しいという事を2ch住民にアピールする事になる。
* 2chに晒すという事は悲しい事に一部のインターネットユーザーには大変影響力があるのでインターネット界隈での当ブログおよび当ブログ関係者の風評がかなり悪くなる。
当ブログの管理人は2chには書き込まないので当ブログおよび当ブログ関係者の噂を立てたりこき下ろしたりする事は事実無根であるので注意して欲しい。
0533名前は開発中のものです。
2010/04/01(木) 08:02:06ID:Y1B6I0cP0534名前は開発中のものです。
2010/04/01(木) 09:23:14ID:8T0aXl+m0535名前は開発中のものです。
2010/04/01(木) 09:56:19ID:/7cy7tR8アフィブログ厨かどうかはともかく、
管理人がいわゆる「痛い人」であると証明したようなもんなんだが……自覚ないんだろうな。
どうみても「大人の対応」ではない。
0536名前は開発中のものです。
2010/04/01(木) 10:02:57ID:R4qYtRcO0537名前は開発中のものです。
2010/04/08(木) 18:10:04ID:XhXY3DIy0538名前は開発中のものです。
2010/04/10(土) 18:14:24ID:ACXsYwZY0539名前は開発中のものです。
2010/04/17(土) 17:47:55ID:vvbUicH50540名前は開発中のものです。
2010/04/24(土) 11:00:11ID:aOLyEjSB0541名前は開発中のものです。
2010/04/26(月) 01:08:09ID:M+TRw2XC0542名前は開発中のものです。
2010/04/26(月) 08:40:05ID:7MoPGGFc0543名前は開発中のものです。
2010/04/27(火) 12:28:37ID:dp6VUidl画面をいくつかに分割してプレイヤーが現在いる区域のオブジェクトのみ判定する方法についてですが
プレイヤーの当たり判定部分が区域をまたぐ場合はどのように対処するのが望ましいのでしょうか
プレイヤーの当たり判定は円だと想定してご回答いただければありがたいです
0544名前は開発中のものです。
2010/04/27(火) 12:37:17ID:PwKoKz66当たり判定が円だとしても、中心点と半径から、どの区域にまたがるかは求められるだろうし
多少無駄が出たところで気にすることでもないだろう。
(一区画ごとにとんでもない数の判定が存在するのでもない限り)
あとは、衝突が一回あれば以後の判定すれば終わりなのか、そうでないかに気をつけるくらいかな。
例えば、ちょうど区域4つにまたがる位置に、プレイヤーと敵が重なってた場合、
ヘタすれば4回衝突判定をやって4倍のダメージ、って事になりかねない。
0545名前は開発中のものです。
2010/04/27(火) 13:04:00ID:/+Vbr1Tn0546名前は開発中のものです。
2010/04/27(火) 13:18:03ID:lV+Wh8h00547名前は開発中のものです。
2010/04/27(火) 13:35:48ID:kGkzOorl0548名前は開発中のものです。
2010/04/27(火) 14:55:48ID:05Eyu6K3方法は主に2つ。
1つは、跨ぐ区域を全部調べる。
もう1つは、隣接する区域の端を少しずつ重複させておく。
0549名前は開発中のものです。
2010/04/27(火) 18:31:28ID:CULsPmMVPixelJunkShooterが円の衝突のグリッド分割を解説してるが
またいでるセル全てに含めてるようだな
日本語資料は2009年のスライドな
0550名前は開発中のものです。
2010/05/01(土) 05:40:30ID:yyEi2UKk0551名前は開発中のものです。
2010/05/01(土) 13:06:08ID:6PN9Tdvh後者の方法でも、3つ以上の区域をまたぐほど巨大な判定の場合に
結局前者と同じ方法をとらざるを得ない。
0552名前は開発中のものです。
2010/05/01(土) 13:26:54ID:fna0cpj6巨大な判定が、実は小さな判定の集合体だったなんてのはよくある話。
0553名前は開発中のものです。
2010/05/01(土) 15:52:35ID:6PN9Tdvh区域の大きさ(-重複分)を越える判定は存在しないのが前提、とか条件づけがあるなら話は別だけど
今はそういう前提の話はしてないだろう?
0554名前は開発中のものです。
2010/05/02(日) 11:07:40ID:BTZpge0V0555名前は開発中のものです。
2010/05/02(日) 11:26:24ID:XfxL24NRそう、彼は不治の病に冒され、
もはや残された時間はわずかしかないのであった。〜つづく〜
0556名前は開発中のものです。
2010/05/05(水) 15:37:20ID:EQbpElyO0557名前は開発中のものです。
2010/05/05(水) 16:47:18ID:/iKOu1fH■ このスレッドは過去ログ倉庫に格納されています