08/01/26 23:56:25 Xegu4hs9
弾幕STGをつくろうとしているんだが、(Win+VC+DirectX9SDK)
「1画面最大2000弾」くらいを目標に基本プログラムを作ったものの、
弾数1000くらいでタイマー落ちがかかる。
正直どこを削ればいいのか悩んでます。
847:名前は開発中のものです。
08/01/27 00:12:36 2Vbrh+cm
プロファイルしろ
848:名前は開発中のものです。
08/01/27 00:15:44 ICIFIctN
21世紀のデスクトップPCなら2000発くらいは余裕だから削るような箇所はないと思う。
弾の描画メソッドだけをコメントアウトして、それで処理落ちが解消したら描画クラスの見直しってところじゃね。
849:名前は開発中のものです。
08/01/27 00:18:38 QitqCSRQ
新しいパソコンを買え。
それでもだめなら手術して頭を良くするしかない
850:名前は開発中のものです。
08/01/27 01:34:04 0NB2Xagd
何の手術したら頭良くなるんだ?
851:名前は開発中のものです。
08/01/27 01:47:36 SY+4yNkH
>>845
グラIIIの判定関係は参考にしちゃダメだなw
852:名前は開発中のものです。
08/01/27 16:09:21 hWH81eyx
シルバーガンのHIT DISPと大して変わらん
853:名前は開発中のものです。
08/01/28 04:39:14 VSNFO78y
シルバーガンのは逆に小さすぎて驚くな
ここ通れるのかよ!みたいな
854:名前は開発中のものです。
08/01/28 23:39:00 CQBh6dXB
>>846
どこを削るかを考えるよりも、
どこが重いのかを調べるのが先だ。
やるべき事を見失うな。
855:846
08/01/30 22:49:02 ePSjOqqI
なんとか解決しました。
弾数2000弾を一個一個それぞれDrawPrimitiveで描き、
1フレームあたり合計2000回のDrawPrimitiveで描いていたのを、
描画する弾の座標リストをつくって
1フレームあたり1回のDrawPrimitiveで描くようにしたら
全く問題ないレベルになりますた。
856:名前は開発中のものです。
08/01/31 04:28:19 XVZtUxPK
2DならDrawIndexedPrimitiveの方がいいかもね
まぁ大して変わらないかもしれないけど
857:名前は開発中のものです。
08/02/01 01:26:36 t8mc7IM8
DrawPrimitiveUP はどうか?
858:846
08/02/01 01:30:55 OwpLIaQ7
ごめんなさい、そもそも使っていた命令が
DrawIndexedPrimitiveUPでした。
最後の2文字を見落としてますた。 すんまそん。
859:846
08/02/01 01:38:43 OwpLIaQ7
×DrawIndexedPrimitiveUP
○DrawPrimitiveUP
三度訂正しますすんまそん
860:名前は開発中のものです。
08/02/01 05:08:12 bbcbUzTl
流石にに2000個も弾描画するんなら頂点バッファ使ったほうがいいんじゃない?
861:名前は開発中のものです。
08/02/01 19:43:47 0llztBNc
で、その頂点バッファを毎フレーム書き換えるのか?
是非その比較データを採取しレポートしてください賢者さま!
862:名前は開発中のものです。
08/02/01 19:59:38 sxp4gyaZ
>で、その頂点バッファを毎フレーム書き換えるのか?
適切に動的頂点バッファ使えば、そっちの方が実際パフォーマンス出る場合が多いぞ。
863:名前は開発中のものです。
08/02/01 22:04:08 WtUR5EG3
>賢者さま!
こういうのつける奴って大抵自分は人より賢いと思ってる奴だよな。
864:名前は開発中のものです。
08/02/01 23:13:04 0llztBNc
ほほぅ、ちょっと勉強になった。
ただ、イマイチ違いが想像できないんで、さっさと比較データのレポートあげろ賢者さま!
あと古いバッファで表示した場合位置ズレする可能性について所感を述べろ賢者さま!
865:名前は開発中のものです。
08/02/01 23:19:09 PGeh7u70
自分でやろうな
866:名前は開発中のものです。
08/02/01 23:24:42 sxp4gyaZ
>あと古いバッファで表示した場合位置ズレする可能性
何故位置ずれすと思うのかしら?
867:名前は開発中のものです。
08/02/02 02:10:27 fngi75UY
>>853
小さすぎるわけじゃないが、斑鳩も絶妙。
自機弾を打たないでクリアする、ドットイーター用かしらないが、
隣り合った巨大ブロックとブロックの隙間が抜けられたり、プレイする側としては面白い
868:名前は開発中のものです。
08/02/02 04:47:06 WA3/3FGE
自分は人より賢いと思ってる割には無知すぎるなw
869:名前は開発中のものです。
08/02/02 13:28:44 j42UvLY8
無知だから自分は人より賢いと思うんだろ。
そんな事すら解らんのかこの無知野郎!
870:名前は開発中のものです。
08/02/02 21:20:36 5sbmIxHa
扇形の当たり判定を設定するには
やっぱり当たり判定用の画像を作るのが楽なんだろうか
871:名前は開発中のものです。
08/02/02 21:23:19 fngi75UY
当たり判定用の画像(笑)
872:名前は開発中のものです。
08/02/02 22:16:57 l3DwCg+S
色で当たり判定するんじゃね
873:名前は開発中のものです。
08/02/02 22:32:17 Xap/d35y
だれか弾幕の難易度を定義する方法考えてくれ
874:名前は開発中のものです。
08/02/02 22:37:31 ppei42u9
自分で考えろ
幕が厚いと難しいんだよ
875:名前は開発中のものです。
08/02/02 22:47:28 lwoVc8A7
多角形判定のルーチン作れ。
凸型前提なら簡単に作れるから。
876:名前は開発中のものです。
08/02/02 23:18:50 Xap/d35y
このスレに統計学詳しい人いないのか
877:名前は開発中のものです。
08/02/03 00:00:04 fUTjRsrs
弾幕の難易度は統計学と直接関係あるのか?
878:名前は開発中のものです。
08/02/03 01:08:22 mKmsfanI
自機をランダムに動かしたときに一つ一つの弾に当たる確率を出すとしたら
正規分布とか使って出せそうな気がしたから統計学と思った
もちろん弾が固まったパターン弾幕では
難易度50%でも右によけたら100%、左によけたら0%
みたいにばらつきが多くなるはずだから
主観的な難易度はエントロピー?とか考えてもっと複雑になるだろうけど
879:名前は開発中のものです。
08/02/03 02:50:55 xj50jJId
白い弾幕くんがそういうのやってたな
人間ぽく避ける という目的で
880:名前は開発中のものです。
08/02/05 17:04:48 b/5aLYls
ABA氏はどうやってるの?
881:名前は開発中のものです。
08/02/05 17:32:45 LLY+Tasd
>自機をランダムに動かしたときに一つ一つの弾に当たる確率を出すとしたら
弾幕の難度ってそういうものじゃないだろう・・・
882:名前は開発中のものです。
08/02/05 17:55:17 vqMaBeU9
>>878
弾が速かろうが遅かろうが
上下左右から来ようが一方向から来ようが
難易度は同じってことか?
>>880
難易度から弾幕を決めるのと
弾幕から難易度を決めるのは違うだろ
883:名前は開発中のものです。
08/02/05 18:15:16 F2ezv1rn
リフレッシュレートってどうやったらいいんだ?
884:名前は開発中のものです。
08/02/05 18:17:36 rd57wec0
どうやったらとは?
885:名前は開発中のものです。
08/02/06 13:29:09 dA90bTjL
>>882
Wikipediaによると正規分布の式は定数の平均μと分散σでできてる
正規分布ってのはσ=1なら、X=μから無限に+1か-1したときの最終的な位置の確率をグラフにしたもの
弾と当たる確率出すときは単位時間でこの式を弾の初期座標から終点座標まで積分する。
μは自機の座標で、σは自機が早かったり単位時間が長いほど大きくする
弾の位置と角度のばらつき具合は求まると思うがよく分からん。今勉強してる
あとこの方法だと自機狙い5way弾と自機と少しずれた方向に撃った5way弾は判別できないけど、
弾を認識しているかが違うだけで上級者になれば難易度の差はなくなってくると思う
886:名前は開発中のものです。
08/02/06 19:16:31 z7Ie75d/
シューティングって弾の速度や密度だけで難度が決まるようなもんじゃないぞ
むしろ弾の発生源の数と位置のほうが重要
レーザー等による壁や誘導弾が加わったら
とても計算で出せるようなもんじゃない
とりあえず一度自分で作ってみればわかる
887:名前は開発中のものです。
08/02/06 20:54:52 Klim4It5
いやそんなことが経験的にわからんレベルでは作り始めるのはまだ早い
888:名前は開発中のものです。
08/02/06 21:22:16 5Aq8H5h3
”弾幕の難易度”っていうくらいだから
他のオブジェクトによる難易度は別計算なんだと解釈してたが
889:名前は開発中のものです。
08/02/06 23:08:42 c+jx2I+z
レーザーは時期の反対側を全部弾と仮定すれば無問題
誘導弾は判定の単位時間が短ければ普通に計算しておk
勝手に時期に近づいてきて難易度上がるし誘導がうまければそんなに上がらない
890:名前は開発中のものです。
08/02/07 00:13:34 NyD58QC0
遅い誘導弾はいろんな方向からきたら詰むし
普通の弾と同じってことはない
891:名前は開発中のものです。
08/02/07 00:40:07 k2BQYnGI
ASOの赤弾のことか
892:名前は開発中のものです。
08/02/07 23:41:07 +A0+J5Zd
弾幕STGとか見たりプレイしたりすると、とても俺なんかじゃクリアできない難度だったりするわけだが
あーゆーのって作る人はクリアできるわけなんかね?
それだとSTG上手い人しかSTG作れない事になっちゃうから、
ちゃんとクリアできるかどうか確認するだけの腕前を持った人に協力してもらうのかね?
それとも理論的にクリア可能かどうかを机上で計算してるのかね?
俺の場合、動作テストプレイをやると同時にちゃんとクリアできるか、
あるいは簡単すぎないか、を測って調整してるわけだが、
これだと俺レベルの腕前が前提になってしまうから、ヌルくなってしまってないか心配である。
893:名前は開発中のものです。
08/02/07 23:44:25 E5DEabLC
作る人は無敵にしてクリアしちゃうんだよ~ん
894:名前は開発中のものです。
08/02/08 00:12:08 XXQ6aHzR
どこぞのメーカーさんは、同じとこを何度も挑戦できるようにして1回でもクリアできればOKみたいな感じらしいよ
あとは素直に上手い人にテストプレイしてもらうのがいいかと
バグ発見にも有利だしね
まぁ、同人やフリーなら自分が一番面白い難易度でいいとはおもうけど
895:名前は開発中のものです。
08/02/08 00:33:23 b9RZ/GOo
>>894
テストプレイを繰り返してると腕が上達するのが問題
全ての攻撃パターンや判定等システム理解してるしね
クリアそのものは難しくてもいいとは思うし、
みんなクリアできるゲームなんて昔からそうそうないし
後半の難易度上昇はいいとは思ってる
理不尽だとか序盤からとんでもないとかだとつらいかな
でも、怒首領蜂だって1面の難易度は低くはないよね
1面から面白いと思わせればがんばって練習して上達するんじゃないかな
超連射とかグラIIとかサラマンダとかがそんな感じ
面白そうな面を後半にもってくるんじゃだめだよと
896:名前は開発中のものです。
08/02/08 00:37:54 XXQ6aHzR
>>895
いやそのとおりなんだけど、892の質問読んだ?
897:名前は開発中のものです。
08/02/08 00:52:02 Pt1nE4Vj
難易度の構成要素として…
開発者だけが知っていて、プレイヤーが見破れない情報があるのはマズイ。
そういう情報に気がつかないとマトモに攻略できないのはハッキリ言って糞ゲー。
そのような事が無い様に…頑張るべきw
開発者とプレイヤーがほぼイコールコンディションならいいんじゃないかな…
特定のプレイヤーしか楽しめない難易度でも、
開発者が味わってる面白さをプレイヤーと共有できればそれでいい。
それが俺のジャスティス。
898:名前は開発中のものです。
08/02/08 01:01:07 H7TbDN3T
ドルアーガも全部攻略本見てやるタイプ?
ノベルゲーとかやってたほうがいいよ
899:名前は開発中のものです。
08/02/08 01:04:25 Pt1nE4Vj
STGスレで何を言ってるんだお前w
900:名前は開発中のものです。
08/02/08 02:07:51 BLW2w+RL
そもそもドルアーガは紛う事無きクソゲだ
時代が時代だったから妙にチヤホヤされただけ
あんなもん引き合いに出すな
901:名前は開発中のものです。
08/02/08 04:46:38 hOLibk+l
ナチュラルにドルアーガ出て来るのが年を感じさせてワラタ
いや俺もだが…
902:名前は開発中のものです。
08/02/08 08:37:10 6iejQEFs
>開発者とプレイヤーがほぼイコールコンディション
誰か訳して
903:名前は開発中のものです。
08/02/08 11:21:41 U/B/zibh
いやそこは判るだろ