トップページgamedev
1001コメント269KB

シューティングゲーム製作技術総合 7機目

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。05/03/15 00:58:02ID:cnuo1es8
ゲームプログラマなら誰もが通る、もしくは、通った道。青春の香り?
それは「シューティングゲーム製作」・・・。

このスレでは、そんなシューティングゲームの製作技術や技術の検証、成功談
失敗談笑い話、難易度の設定方法論、多弾の是非などについて語り合いましょう。
もちろんBulletMLなどで弾幕を作成してみたり、自分の作ったシューティングを
晒してみたり、プロジェクトをはじめてみるなどもOK!

ただし、シューティングの未来とか既存のゲームの話題などは、関連する他の
スレでやってくれ。

■前スレ
シューティングゲーム製作技術総合 6機目
http://pc5.2ch.net/test/read.cgi/gamedev/1105176011/
0232名前は開発中のものです。2005/04/11(月) 00:10:02ID:3LKR6H8f
・オブジェクトの解放タイミングを遅らせる(一般的らしい)
・オブジェクトに参照カウンタを付ける(DirectXとかのCOM方式)
・オブジェクトをハンドル管理にする(Gemsに乗ってた方法)

まあお好きなものを。
ちなみに俺は一番上の方法にしてるよ
0233名前は開発中のものです。2005/04/11(月) 00:56:30ID:nOdEalW+
ttp://www2.tky.3web.ne.jp/~yosshin/memo/000213.html
3番目に関しては吉田先生も言及してるね。
俺はそこまでしてないけど。
0234名前は開発中のものです。2005/04/11(月) 02:55:14ID:kw5u/taN
全く別の方法として、
・オブジェクトをロック(ポイント)しない。
目標の位置だけ覚えておいて、次のフレームにはその点から最も近いオブジェクトを検索。

別オブジェクトが近くにあると、ロックが変わってしまう可能性も多々あるが。
0235名前は開発中のものです。2005/04/11(月) 03:10:02ID:a5GOtt3P
ハンドル管理に近いけど
・生ポインタではなくスマートポインタを持たせる

だめ?
0236名前は開発中のものです。2005/04/11(月) 04:18:55ID:nfd4m0N3
普通にオブザーバーパターンで問題なし
メモリやマシンパワーが少ない環境ならいろいろとやらんとだめだけど
0237名前は開発中のものです。2005/04/11(月) 06:38:25ID:JQN0wQfc
そこでD言語ですよ。
0238名前は開発中のものです。2005/04/11(月) 10:52:32ID:tPIsJ79N
なにか安全な仕組みが用意されてるんだっけ?
ドラフト読んだけど忘れた
0239名前は開発中のものです。2005/04/11(月) 11:39:11ID:3LKR6H8f
ガベコレのことでは
0240名前は開発中のものです。2005/04/11(月) 11:48:34ID:+Ddfh0s0
>>232
・相互にオブジェクトのポインタを持っておいて、どっちかが
削除された場合にはリンクを切る。リンクが切れたら独立して
動作する。
0241名前は開発中のものです。2005/04/11(月) 14:41:53ID:3LKR6H8f
それはめんどくさすぎる…
0242名前は開発中のものです。2005/04/11(月) 15:56:58ID:7I+MoOUw
>>233
そのサイト凄いね

http://www2.tky.3web.ne.jp/~yosshin/famibe/index.html
とか
0243名前は開発中のものです。2005/04/11(月) 16:03:55ID:nfd4m0N3
おいおい基本的なデザインパターンもしらないやついるんか
クロックが200MHzこえていれば問題なしだぜ
0244名前は開発中のものです。2005/04/11(月) 17:52:16ID:wExT4Iec
C++とデザインパターン知らないうちは誘導弾のロックオンはやめとけ、ということか。
0245名前は開発中のものです。2005/04/11(月) 18:29:27ID:nfd4m0N3
止めとけとまではいわんが、まずこういったポインタ先の無効について
一度はまってそれでワークやらいろいろといじった挙句にダメだったら
デザインパターンを一度一通りみてみたほうがいいなと

俺は普段業務系でそういう効率のよいバグを出さないプログラムとか
研究担当なんで、それを2DSTGに活かしたりしたらびっくりするほど
ソースコードがすっきりしたからねぇ

いろんな分野に目を向けるのは大事だと思う
いまならネットでいろいろと見つかるし勉強できる

C++のようなオブジェクト指向言語を使えとはいわないけど、
その考え方は覚えておいたほうがいいね
0246名前は開発中のものです。2005/04/11(月) 21:02:27ID:VLw2QGyk
× そういう効率のよいバグを出さないプログラム
○ そういうバグを出さなくて更に効率のよいプログラム

じゃないの?
0247名前は開発中のものです。2005/04/11(月) 21:02:47ID:dvN/lZl+
C#で。
0248名前は開発中のものです。2005/04/11(月) 21:22:29ID:oIpBZrFK
前者でも句読点どこに入れるかでちゃんと読めるね。
つーかC++でも危険なコーディングは余裕で出来るのであり。
なにが危険なのか理解しないことにはC++でもダメだろう。


>>232は3番目がオススメ。
0249名前は開発中のものです。2005/04/11(月) 21:47:19ID:nfd4m0N3
>そういう効率のよい、バグを出さないプログラム
0250名前は開発中のものです。2005/04/12(火) 08:26:32ID:YkX8catc
0251名前は開発中のものです。2005/04/12(火) 08:58:21ID:UrHf8k++
をするきさまらー
0252名前は開発中のものです。2005/04/12(火) 19:40:53ID:N+Vc6hUt
誘導弾のロックオンの有効性なんて
オブジェクト生成時にユニークコード振っといて
ロックオン時にそれ持っとけばいいんじゃないのか。
0253名前は開発中のものです。2005/04/12(火) 20:09:02ID:eU5Pjj6p
ようはハンドルだな。
0254名前は開発中のものです。2005/04/12(火) 20:32:05ID:Xp3GU5+Z
胡希への気遣いつーか追い討ちにしかなってないような
0255名前は開発中のものです。2005/04/12(火) 20:33:21ID:Xp3GU5+Z
誤爆スマソ
0256名前は開発中のものです。2005/04/13(水) 17:27:17ID:NQ6uMxAY
で、ここでのおすすめ開発環境って何よ?
0257名前は開発中のものです。2005/04/13(水) 17:29:45ID:saVvPPYq
Tonyu
0258名前は開発中のものです。2005/04/13(水) 17:30:11ID:0OvyqsMu
ygs2k
0259名前は開発中のものです。2005/04/13(水) 17:37:07ID:NQ6uMxAY
サンクスこ。豆乳は知っていたけどygs2kは初耳。調べてみます。
0260http:// FLA1Ace130.stm.mesh.ad.jp/~ss.jpg2005/04/13(水) 17:52:06ID:WQ80js4G
ええけつしとるのぉ(*´Д`)ハァハァ



うはっwwwおkwww??
0261名前は開発中のものです。2005/04/13(水) 18:16:35ID:Q62YPukm
VC++が最高の開発環境
0262名前は開発中のものです。2005/04/13(水) 18:34:56ID:wZCvXRVg
>>260
山田ウィルスの影響が、こんな所にも・・・
0263名前は開発中のものです。2005/04/13(水) 20:38:21ID:6NLZIeyv
ここの相方募集BBS激しく笑えるんだけど
http://akikousa.fc2web.com/
0264名前は開発中のものです。2005/04/13(水) 21:03:29ID:h6NYdXSa
脳板池
0265名前は開発中のものです。2005/04/14(木) 12:56:36ID:fc1NLAcC
東方とかは何のツール使用して製作されているの?
仲間は何も知らずにVBだろうとか言うわけだけど
そんな筈ないよねえ
0266名前は開発中のものです。2005/04/14(木) 13:01:58ID:tUK4xxWS
ありゃC++だろ
0267名前は開発中のものです。2005/04/14(木) 13:06:22ID:EaxThvCc
プロでメシ食ってる奴がVBでゲームなんて作るわけ無いだろ
軽いツールくらいならともかく
0268名前は開発中のものです。2005/04/14(木) 13:09:15ID:Uu+2LO71
PEiDの判定はMicrosoft Visual C++ 7.0ダターヨ
02692652005/04/14(木) 13:25:32ID:fc1NLAcC
>>266
>>267
>>268
ああ、そうでしたか
それなら大体それが答えと見て良いようですね
ありがとうございます
無知の無知たる我が愚友もこれで説き伏せられましょう

実はそいつ、VBやDelphiをちょろっとかじっただけで何もかもわかったような
専門家気取りでものを言ってばかりの奴だったんですよ
いい厨の見本ですね
0270名前は開発中のものです。2005/04/14(木) 13:28:00ID:UL1jUrPL
言語は手段であって目的ではない
作るソフトと手持ちの環境、習熟度とあわせて適切に選択すればいいだけ
0271名前は開発中のものです。2005/04/14(木) 13:55:05ID:uWtX/U4w
専門学校生?
0272名前は開発中のものです。2005/04/14(木) 15:02:51ID:TI8FWHbg
>>270
でも買ってきた(落としてきたフリーのやつでも?)
「VBランタイムを入れてください」なんてあったらかなり引く
0273名前は開発中のものです。2005/04/14(木) 15:16:33ID:UL1jUrPL
>>272
だから用途によるんだろ
ランタイムが必要とされてもいいのか、だめなのか
そういうのもふくめて仕様きめてからな
0274名前は開発中のものです。2005/04/14(木) 20:42:52ID:hMmtqfl2
おまえも何も知らんのじゃないかと言いたい。
0275名前は開発中のものです。2005/04/14(木) 20:44:40ID:Z0qeRLat
横槍質問。
VBランタイムってどういう時必要になるの?
0276名前は開発中のものです。2005/04/14(木) 20:52:56ID:9OfMJe/a
VBで作ったアプリを動かすとき
0277名前は開発中のものです。2005/04/14(木) 21:30:36ID:Z0qeRLat
必ずいるの?
0278名前は開発中のものです。2005/04/14(木) 21:52:36ID:HVhdatKK
別にVBだろうがCだろうがどうでもいいけど面白いシューティングが作れる人って大抵技術もあるからC使ってる場合が多いんだよな
VBで凄いのが大量生産されてたら
>「VBランタイムを入れてください」なんてあったらかなり引く
なんて発言はなくなるんだろうけど
0279名前は開発中のものです。2005/04/14(木) 22:17:41ID:w7SH47Sb
ランタイムは主にコントロール使うときに必要だな。
もしウィンドウだけだとかならば、無くても動く。

dxゲームなら問題ないときがありますよ。
0280名前は開発中のものです。2005/04/14(木) 22:19:23ID:uWtX/U4w
ぼくだけでしょうか。>>270=>>273の受け答えは、やっぱり変だと思うのは。

> 言語は手段であって目的ではない

これって何にたいする返答? 誰かが言語は目的だとか言った?
0281名前は開発中のものです。2005/04/14(木) 22:29:13ID:Z0qeRLat
>>279
d
0282名前は開発中のものです。2005/04/14(木) 22:31:01ID:Uu+2LO71
ツクール系が出てこないのはちょっとさみしいね
0283名前は開発中のものです。2005/04/14(木) 23:48:23ID:Pg9Vgf9i
>280
>269に対してだろ。
ちょっとかじって言語について知ったかしてるヤツも、
それに対して自分もロクに知らないのに違う言語だと異を唱えようとする269も、
同じ穴の狢だってこと。
0284名前は開発中のものです。2005/04/14(木) 23:54:43ID:ZMi7u/Gh
よくショットが当たると一瞬だけ色が変わる(大抵は白っぽく)ことがあると思うのですが
あれはどうやってるんでしょうか?
そういう絵を用意すればいいと思ったのですが単純計算で枚数2倍です
(実際に用意してみましたが10機程度でも結構な労働量でした。容量ももったいない)
何らかの計算で色を変えているのだとは思うのですが……
0285名前は開発中のものです。2005/04/15(金) 00:06:54ID:SQXYX6Mu
古いのでいうとパレットだな
0286名前は開発中のものです。2005/04/15(金) 00:07:09ID:u649JTnH
>>284
アルファもしくは284試≠フ仰る通り別bフ絵を用意。
0287名前は開発中のものです。2005/04/15(金) 00:36:32ID:Ens9vA2h
もうすぐ倒せそうになると赤色に。
0288名前は開発中のものです。2005/04/15(金) 00:37:16ID:6skd5G9O
DirectXだと明るくできないからな
MSがゲーム判ってない証拠のひとつだ…
0289名前は開発中のものです。2005/04/15(金) 00:49:22ID:u+6cVEQk
         ナ ゝ   ナ ゝ /    十_"    ー;=‐         |! |!
          cト    cト /^、_ノ  | 、.__ つ  (.__    ̄ ̄ ̄ ̄   ・ ・
ミ::::;/   ゙̄`ー-.、     u  ;,,;   j   ヾk'! ' l / 'レ ^ヽヘ\   ,r゙ゞ゙-"、ノ / l! !ヽ 、、 |
ミ/    J   ゙`ー、   " ;, ;;; ,;; ゙  u ヾi    ,,./ , ,、ヾヾ   | '-- 、..,,ヽ  j  ! | Nヾ|
'"       _,,.. -─ゝ.、   ;, " ;;   _,,..._ゞイ__//〃 i.! ilヾゞヽ  | 、  .r. ヾ-、;;ノ,.:-一'"i
  j    /   ,.- 、  ヾヽ、 ;; ;; _,-<  //_,,\' "' !| :l ゙i !_,,ヽ.l `ー─--  エィ' (. 7 /
      :    ' ・丿   ̄≠Ξイ´,-、 ヽ /イ´ r. `ー-'メ ,.-´、  i     u  ヾ``ー' イ____
       \_    _,,......::   ´゙i、 `¨ / i ヽ.__,,... '  u ゙l´.i・j.冫,イ゙l  / ``-、..- ノ :u l ,− ,−\ / ̄ ̄ ̄ ̄\
   u      ̄ ̄  彡"   、ヾ ̄``ミ::.l  u   j  i、`ー' .i / /、._    `'y   /, |  ・|・ | ヽ_____ヽ
              u      `ヽ  ゙:l   ,.::- 、,, ,. ノ ゙ u ! /_   ̄ ー/ u /  `−●-' \ヽ , ─ 、 , ─ |
           _,,..,,_    ,.ィ、  /   |  /__   ``- 、_    l l  ``ーt、_ /  / ──  | ──ヽ|   ・|・   |
  ゙   u  ,./´ "  ``- 、_J r'´  u 丿 .l,... `ー一''/   ノ  ト 、,,_____ ゙/ /..  ── | ── .|`─ 'っ - ´|
        ./__        ー7    /、 l   '゙ ヽ/  ,. '"  \`ー--- ",.::く、 |    ── | ── |.____) /
       /;;;''"  ̄ ̄ ───/  ゙  ,::'  \ヾニ==='"/ `- 、   ゙ー┬ '´ / \.____|__) / ___/
、      .i:⌒`─-、_,....    l   /     `ー┬一'      ヽ    :l  /  , ' `ソヽ      /l \/\| \
ヾヽ     l      `  `ヽ、 l  ./  ヽ      l         )  ,; /   ,'    '^i━(t)━━l |      | |
0290名前は開発中のものです。2005/04/15(金) 00:58:29ID:zxjqGqV1
D3DTOP_MODULATE2X
D3DTOP_ADD
基本中の基本だが
0291名前は開発中のものです。2005/04/15(金) 01:01:30ID:HyqQBMGL
>>288
バカ確定だな
0292名前は開発中のものです。2005/04/15(金) 09:47:27ID:tsrIol65
頂点色を変える

基本中の基本のキの字だが
0293名前は開発中のものです。2005/04/15(金) 12:05:55ID:bwW+yNCS
過去にも同じ質問が出てたな、スレ的FAQ認定してもいいくらい
テンプレにでも入れとくか?
0294名前は開発中のものです。2005/04/15(金) 12:46:22ID:mhEmceqy
VBは突っ込んだ事やろうとすると、
VCでDLL作ったり、トリッキーな事しなければならないので、
それなら最初からVCを使った方がいいという・・・
0295名前は開発中のものです。2005/04/15(金) 14:06:49ID:zxjqGqV1
>>292
固定シェーダの場合、頂点色を変えるだけだと「明るく」はできないよ
デフォのMODULATEだと0.0〜1.0までの掛け算しかできないから
MODULATE2XとかADDとかその辺のオペレータを使わないと駄目
0296名前は開発中のものです。2005/04/15(金) 18:05:47ID:onwKaNCw
俺の開発環境が一度死んだ&VC++6がサポート終了らしいので、Mingw+Unixutl使ってる。
無料コンパイラ最高。

STGで使う程度のスプライト程度なら自前でFillingルーチン作れば変化自在。
CPU速度とキャッシュでかなり左右されるけど。
02972962005/04/15(金) 18:14:39ID:onwKaNCw
なんか日本語が変だ。
ごめんね母さん。
0298名前は開発中のものです。2005/04/15(金) 20:28:06ID:u649JTnH
さて週末です。ぼちぼちいきましょう。
0299名前は開発中のものです。2005/04/15(金) 21:48:28ID:XIi9gNXv
http://www.google.com/search?num=50&lr=lang_ja&q=%8C%C5%92%E8%83%56%83%46%81%5B%83%5F&ie=ShiftJIS&oe=ShiftJIS
0300名前は開発中のものです。2005/04/16(土) 00:24:04ID:t+Um8l5S
VCのサポートってなんか必要?
0301名前は開発中のものです。2005/04/16(土) 14:00:50ID:0D1lNuuL
漏れ的にはVisualStdio持ってる人が
セキュリティをどうしてるかが知りたいな。
これ入れてネットに繋いでたら、
スパイウェアやウィルスが大量に来ないか?
一時期なんて、セキュリティソフトを入れてても
スルーして来た事があったんだが。

とりあえず漏れは、VisualStdioを入れてるマシン
だけは、ネットから隔離してる。
0302名前は開発中のものです。2005/04/16(土) 14:24:51ID:AQC3AC5b
来ない。
0303名前は開発中のものです。2005/04/16(土) 14:49:23ID:QVvzn88s
>>301
来ねーよ
0304名前は開発中のものです。2005/04/16(土) 16:55:08ID:FliwvcTM
どっちかっていうと、英語の勉強をがんばった方がいいと思う
0305名前は開発中のものです。2005/04/16(土) 17:12:40ID:p+ZT7nZh
VisualStdioがウイルスを呼び寄せてるのかw
愉快なソフトだね
0306名前は開発中のものです。2005/04/16(土) 18:26:58ID:rJlhC3Z+
VisualStdio.netには.netのフレームワークが入ってるからだろ。
.netフレームワークが入っていると、スパイウェアに頻繁に狙われるとか。
スパイウェアに入られたら、あとは色々やられ放題。
0307名前は開発中のものです。2005/04/16(土) 19:45:38ID:Mafwj2Me
>>306
SpyBot入れてIE使わなければそんなことはない。
0308名前は開発中のものです。2005/04/16(土) 20:41:22ID:PZfI1Hez
そもそもそんなソフト聞いたこと無いんですよ。
0309名前は開発中のものです。2005/04/16(土) 21:03:58ID:dzwqjOfi
>>308
ぐぐれ!
あと、Spybotは日本語訳がついてくるから、
インストール時の英語さえ乗り越えれば大丈夫かと。

>>307
あと、Outlookもヤバいな。
個人的にはFireFoxとThunderBirdsがお気に入りだ。

0310名前は開発中のものです。2005/04/16(土) 23:13:59ID:WvnB6nne
もしかして:
0311名前は開発中のものです。2005/04/17(日) 01:06:06ID:1Vxh6KFx
VisualStdio.netというソフトを聞いたこと無いんですよ。
0312名前は開発中のものです。2005/04/17(日) 03:15:54ID:Zeh57upA
ビジュアルスタンダードIO
格好いいな
0313名前は開発中のものです。2005/04/17(日) 03:23:03ID:7ZWf7ceY
そこからビジュアルスタジオドットネットを連想できないのなら
脳に非常に重大な障害があると思われ。
リアルでCTスキャンかけてもらえ。
0314名前は開発中のものです。2005/04/17(日) 03:36:39ID:soFeWjE1
このスレの前の6機目を読みたんですが1000超えてて全部っていうのを押しても
見れません。何か方法ありますか?
0315名前は開発中のものです。2005/04/17(日) 03:39:04ID:6whLOGJR
>>313
マジレスしてやると、CTは硬組織が得意で、
脳の様な軟組織が得意なのはMRIとかだな。

まあいいや。
0316名前は開発中のものです。2005/04/17(日) 04:10:45ID:Zeh57upA
>>313
VisualStdio.netは格好いいがお前は格好悪いな
0317名前は開発中のものです。2005/04/17(日) 05:23:58ID:Q7Gtbvw1
なんだこのスレは。
0318名前は開発中のものです。2005/04/17(日) 10:19:05ID:Eb+cNEf1
>>307
開発環境の存在するPCに対する攻撃は苛烈だぞ。
対ウィルスソフトや対スパイウェアソフトが、
すべてのクラックに対応できてるとは思わない事だね。
新種ウィルスが出来てから広まり、対策ソフトが
対応するまでの期間は、どうするつもりだ?
0319名前は開発中のものです。2005/04/17(日) 10:32:54ID:PBHN3ja4
板違いなんですけど
0320名前は開発中のものです。2005/04/17(日) 11:10:15ID:LnHV1oRf
全てのコンピュータがネットワークに接続されていると言う>>318のセキュリティ意識には重大な欠陥があります。
0321名前は開発中のものです。2005/04/17(日) 11:30:18ID:VEHpasUn
↓この辺でプギャーきぼんぬ
0322名前は開発中のものです。2005/04/17(日) 12:12:20ID:0aAfwxGd
ルーターとか使ってないん?
インターネットにPC直結してるんかいな?
0323名前は開発中のものです。2005/04/17(日) 12:25:52ID:eViCt9W4
>>314
倉庫、google、webarchive、にくちゃんねる、どこにも無いみたいだね。
datファイルなどをアップロードしてくれる親切な人がいまこのスレにいるかどうか…。
0324名前は開発中のものです。2005/04/17(日) 14:44:43ID:qVJX9kzX
>>322
おそらくそういうことだろう。
>>301,>>306,>>318辺りはLAN環境がぐだぐだであろうと推測される。
>>318に至っては全く無自覚のようで
 
>すべてのクラックに対応できてるとは思わない事だね。
 
このようにフルチン状態で他人に説教しております。
0325名前は開発中のものです。2005/04/17(日) 14:47:27ID:FLIfun0Q
とりあえずこれで、話題終了
0326名前は開発中のものです。2005/04/17(日) 14:50:56ID:Bm+5ZVVD
うpしようと思って固めてたんだが。。。
にくちゃんねるにあるじゃん。
嘘つくなYO>>323
6機目 http://makimo.to/2ch/pc5_gamedev/1105/1105176011.html
5機目 http://makimo.to/2ch/pc5_gamedev/1098/1098034919.html
4機目 http://makimo.to/2ch/pc5_gamedev/1092/1092048824.html
3機目 http://makimo.to/2ch/pc5_gamedev/1087/1087339516.html
2機目 http://makimo.to/2ch/pc5_gamedev/1073/1073736474.html
0327名前は開発中のものです。2005/04/17(日) 19:06:11ID:S6j+6efI
嘘ついてごめんよ。昼に検索したときは操作間違ってたようだ…今検索したら普通にヒットした。
0328名前は開発中のものです。2005/04/17(日) 20:47:01ID:A7lYmmSi
今度はアフターバーナー祭りで。
0329名前は開発中のものです。2005/04/17(日) 21:11:35ID:R646Kd0H
>>327
にくちゃんねるってゲ製のログ取ってないんだと思い込んでた
いつもPC等を選択してから検索してるから…

なんでゲームカテゴリに入ってるかな(#-_-)
0330名前は開発中のものです。2005/04/17(日) 21:25:22ID:mJ8r6k+E
 ∩_∩
 (-_-#)
 ┥__┝
  .レ レ
0331名前は開発中のものです。2005/04/18(月) 16:27:09ID:OZHdU4AJ
今まで軽い処理しかしなかったから楽なFPS固定化の処理で済んでいたのだが、
3Dデモを作ったら重すぎて今までの処理では追い付かないらしく試行錯誤。
んで副産物でこんなことを推論したのだけど間違ってたら教えてください。

D3DPRESENT_DEFAULTでt-potのFPS固定化の処理
do {
 dev->GetRenderState(D3DADAPTER_DEFAULT,&status);
} while( !status->InVBlank );
dev->Present(NULL,NULL,NULL,NULL);
を入れてみたらウィンドウ時は60FPSだったのがフルスクリーン時に30FPSに落ちた。
しかし上3行をコメントアウトするとフルスクリーンでも60FPSで動く。
GetRenderStateの呼び出しのしすぎかと思ってSleep(1)を挟むが全く効果なし。

この結果から実はPresentは処理をすぐに返す関数なのではと予想。
ドライバが内部スレッドで垂直帰線期間を待ちバックバッファとフロントバッファを入れ替える。
上みたいに垂直帰線期間をメインスレッドで待つと次フレームの処理が出来ずに、
その結果が30fpsになっているのではないかと。

軽い処理の時に特別な処理をせずともPresentのみで60fpsに固定されるのは、
フロントバッファとバックバッファの両方がキューに入っていて、
フロントバッファをディスプレイに映さないまま差し替えるわけにいかないから、
多分ドライバがそこで待機してるんだと思う。
クソ軽いゲームを作るときにPresentのみでFPSの固定化をすると
何故か入力に1フレームの遅延が起こっていたのは多分このせいだと思う。
(フロントバッファとバックバッファの2枚がドライバ内部にあるため)
特に以前の東方の入力遅延は多分この辺からきてるのではないかな。
あれもCPU使用率100%になってたし。
0332名前は開発中のものです。2005/04/18(月) 19:41:08ID:DWolSMsN
長い
■ このスレッドは過去ログ倉庫に格納されています