トップページgamedev
240コメント91KB

PCで描画と内部処理の非同期処理ってどうやんの?

■ このスレッドは過去ログ倉庫に格納されています
0001(;´д⊂ヽ02/04/29 16:14ID:Gsu.P7Dk
PCならではの可変フレームレートで、かつ安定したキー入力とか演算の微分処理とか
実装したいんですが、具体的に、どういう風な構造にすればいいのか全然わかりません助けて

キー入力とかタイミングに厳しい処理を別スレッドで回すとして
描画担当スレッドはどーすればいいんでしょう?
(描画途中で別スレッドにより内部変数が書き換えられるケースが出てきますよね?)
0162名前は開発中のものです。04/12/05 00:42:57ID:GrFe+qNV
>>160
なんで解像度なんだよ?
リフレッシュレートの話しておきながらw
0163名前は開発中のものです。04/12/05 13:40:24ID:3zCSSlsK
>>161
普通にBが良いと思うよ。

Aだとフレームレートで細かい挙動が変わっちゃうでしょ。

その結果

> とにかく、状態遷移の粒度が変わるとどんなタイミングで何が起こるかわからんので皆嫌がる。

となる。

まぁ、問題にならないような状況なら好きにすればいいんじゃね?
0164名前は開発中のものです。04/12/05 15:37:20ID:QEq2K2Fz
A宗だとリプレイも実装できないし。
0165名前は開発中のものです。04/12/06 12:10:39ID:nOjB+322
A宗でリプレイ実装できないやつは地沼

しかし解像度依存をなんとかせにゃならんのは同意
低解像度にすると画面中インターフェースで埋め尽くされるのとかアホすぎ
だが拡縮に耐えられるデザインをするのは難しい
0166名前は開発中のものです。04/12/08 17:57:08ID:OfSHCP0i
> A宗でリプレイ実装できないやつは地沼
詳しく
0167名前は開発中のものです。04/12/13 13:45:32ID:oLS390rH
PCでB宗だとリフレッシュを変更せねばならずユーザーに嫌われる件について。
0168名前は開発中のものです。04/12/13 15:00:58ID:3e0kR3Ey
B宗のなかでもリフレッシュレート変更がいらないものにして対処

B宗1派とか
> 状態遷移はB宗、表示は補間でリフレッシュレートに同期
> 状態遷移の粒度を思いっきり上げる
これとか
0169名前は開発中のものです。04/12/13 15:14:09ID:aofj8uyk
>>164
フレームごとに時間を記録しておけばおk
再生時のフレームスキップの処理は必須
0170名前は開発中のものです。04/12/13 15:23:24ID:KD6ePPwD
質問です。

◆A宗:「v += a * dt」
v-syncに同期。リフレッシュレートは任意。

◆B宗1派:「v += a」
タイマーに同期。一定間隔で値を更新する。

◆B宗2派:「v += a」
v-syncに同期。何らかの方法でリフレッシュレートを固定する。

「一定間隔で値を更新する。」 と「何らかの方法でリフレッシュレートを固定する。」って
まったく同じ意味じゃないですか?

参考サイト
フレーム制御
ttp://www.c3.club.kyutech.ac.jp/~sukiyaki/flame.html
0171名前は開発中のものです。04/12/13 19:57:15ID:gHIs8Crz
大丈夫か?
0172名前は開発中のものです。04/12/13 20:02:17ID:OAPFomE2
なんでそうなる。前者は計算、後者は描画の話だらーが。
0173名前は開発中のものです。04/12/13 20:34:15ID:twbQb5tx
>>170
読みづらいたとえですまないが
たとえばユーザーCとユーザーDの使ってるリフレッシュレートがそれぞれ70、100のとき…
A宗(C)       秒間70回値を更新する。描画も秒間70回
A宗(D)       秒間100回値を更新する。描画も秒間100回
B宗1派、例い(C、D) 秒間200回値を更新する。(描画は適当に)
B宗1派、例ろ(C、D) 秒間60回値を更新する。〃
B宗2派(C、D)  秒間60回値を更新する。描画も秒間60回。リフレッシュレートは60に無理やり固定
0174名前は開発中のものです。04/12/13 20:38:11ID:twbQb5tx
>>173のユーザーCとDの例を使ってひきつづき書いてみる。
>>169の方法だと、ユーザーCのリプレイをユーザーDが再生するときには
秒間70回値更新で描画は適当(ユーザーDの環境に合わせたもの)、
ユーザーDのリプレイをユーザーCが再生するときには
秒間100回値更新で描画は適当(ユーザーCの環境に合わせたもの)、
となるのでは。
>>160にならい、状態遷移の粒度がユーザーの環境によって変化するのがA宗、とするならば、
>>169のはA宗のリプレイ再生方法でなく、B宗1派のリプレイ再生方法なのでは。
というわけで>>164-166へループ。
017517404/12/13 21:54:27ID:ZvpPKfOH
>>174の最後2行、間違えました。申し訳ない。A宗で合ってますね。
A宗が状態遷移と描画を同じ周期で行わなければならないなんて決まりはないし、フレームスキップしてあたりまえだし。

・状態遷移の粒度がユーザーの環境によって変化するか
 (v += a * dt か、v += a か)
・状態遷移の同期をタイマーでとるかv-syncでとるか
・ディスプレイのリフレッシュレートを、ユーザーの環境と関係ない固有の値で固定するか
・状態遷移と描画を同じ周期で行うか
がごっちゃになって混乱してました。
0176名前は開発中のものです。04/12/14 00:23:44ID:JuD5jtQu
>A宗が状態遷移と描画を同じ周期で行わなければならないなんて決まりはないし、フレームスキップしてあたりまえだし。
 
あるいは、A宗は過激派と穏健派に分かれるということではないか。
A宗過激派・・・全てリフレッシュレートに同期。画面更新だけでなく数値積分のタイムステップも何もかもリフレッシュレートに同期。
A宗穏健派・・・(ティアリングの無い)滑らかな社会を実現するために画面更新はリフレッシュレートに同期させよう。
0177訂正04/12/14 00:26:58ID:JuD5jtQu
A宗過激派・・・全てリフレッシュレートに同期。画面更新だけでなく数値積分のタイムステップも何もかもリフレッシュレート基準。
A宗穏健派・・・(ティアリングの無い)滑らかなスクロールを実現するために画面更新はリフレッシュレートに同期させよう。
0178名前は開発中のものです。04/12/14 02:01:20ID:xwWJYjIC
話をずらしてすまないんだけど

xnew = xold + v;

ってやる場合、新しい位置用のメモリ領域と、旧位置用のメモリ領域が必要になるよな?
これを描画するとき、リフレッシュレートスレの結論から

x = xold + (xnew-xold) * Δt / T (T = 1フレームぶんの時間)

とかやってた。

でもって、スレッド分けの最大の利点は画面更新計算の間でも位置更新の計算が出来るってことだと思うんだ。
すると、描画用のメモリ領域と、位置更新計算用のメモリ領域を分ける必要があるよな?一緒にしちゃうととんでもないよな?

つーとメモリ領域は、新旧 * 描画用、位置更新用 の計4領域?必要になるってことか。すげーな。
位置更新用のメモリ領域は、描画直前に更新が発生してたら描画用のメモリ領域にコピーされる?

コピー中に位置更新が発生しないように同期オブジェクトを一つかませば出来るような気がするんだけどどう??
おれ、はっきり言ってバイトと卒論で趣味プログラムしてる暇ないんだけど、だれか試してみてくんない?
0179名前は開発中のものです。04/12/14 23:27:44ID:uNvp6fIy
>>176-177
あー。以前STGスレで自分はA宗であると告ったら
その過激派のほうだと思われたらしく
リプレイの件でチクチク突っつかれた。
 
俺は、A宗を名乗る上での必要条件は
・ティアリング排斥
・スムーズスクロール至上主義
だと思っている。
 
>>178
>描画用のメモリ領域と、位置更新計算用のメモリ領域を分ける必要があるよな?
>一緒にしちゃうととんでもないよな?
 
なぜそう思う。
深刻なアーティファクトが出るかどうかは状況による。
作れば一見してわかる話だ。

>コピー中に〜中略〜だれか試してみてくんない?
趣味プログラミングの醍醐味のひとつは
試行の自由を与えられることなのであり
その権利を行使せず無為に悩むは損かと。
0180名前は開発中のものです。04/12/14 23:48:04ID:uNvp6fIy
つかリプレイとぜんぜん関係ない話してるし。ワリ。

>>172
同意。
ゲームワールドの状態遷移を再現できるかどうかの話と
A宗B宗は無関係。
0181名前は開発中のものです。04/12/14 23:52:15ID:uNvp6fIy
s/ゲームワールド/各オブジェクト/
018217804/12/15 07:18:24ID:QtJ8QeQp
>179

描画用と更新用を一つにしちゃうと、描画の位置計算中に描画の素になるデータを書き換えられちゃわないかな?
と思ったんだけど、どうだろう。

描画が終わるまで待つんだったら、そもそもスレッド分ける意味がないと思うし。

>趣味プログラミングの醍醐味のひとつは試行の自由を与えられることなのでありその権利を行使せず無為に悩むは損かと。

う。2月まで覚えてられるかな・・・自信ねー。○| ̄|_
0183名前は開発中のものです。04/12/15 13:43:03ID:v1gXIgbp
>>179
当初の定義は、
・数値積分のタイムステップを環境依存させるかで A宗 B宗1派 を分けている
・描画をどうするかでは分けていない
この定義だと、A宗は>>177のいう過激派しか認められないことになる。

>>179がA宗穏健派として状態遷移タイムステップをv-sync非依存にしているとしたら、
描画をリフレッシュレート同期にしていても関係なく、当初の定義だとB宗1派に明確に分類される。

A宗B宗の定義は、もう実用にはならないんじゃないか?
元々の定義は描画にはふれず状態遷移のみにふれているため、
>>179が過激派と思われたように意図を伝えられないことがある。

代案としては…。>>175の4要素16派に分類すれば多少マシだが、あのままでは煩雑だ。
話題になるのは16派のうちせいぜい4つくらいだし、
B宗1派とB宗2派のように一つのゲームに両方採用(設定変更)できるものも。
0184名前は開発中のものです。04/12/15 19:01:03ID:h9T9p7ZJ
> 当初の定義だとB宗1派に明確に分類される。

リフレッシュレートに関する論争スレでは
B宗2派とは別名、60Hz原理教のような扱いだったと思う。
彼らの経典によれば
リフレッシュレートとは即ち60Hzのことであり
60Hzができない環境は窓から放り投げろ。と。

> A宗B宗の定義は、もう実用にはならないんじゃないか?
 
Yep
0185名前は開発中のものです。04/12/16 02:31:19ID:tK2W+T4c
そもそもA宗って描画が落ちようがCPU処理が落ちようが、
ゲームの処理速度を安定させるものだと思うんだけど。

B宗のCPU処理固定主義とは根本的に違くない?
0186名前は開発中のものです。04/12/16 02:56:42ID:hmZX33Sk
>>185
CPU処理落ちたらゲームの処理速度は一定してないんじゃ?
A宗は見掛けの速度をなるべく一定にするやり方でしょ
0187名前は開発中のものです。04/12/16 03:35:18ID:tK2W+T4c
あー、そうそう。
見掛けの速度を安定させるってことを言いたかった。

んでB宗って描画が落ちた場合はフレームスキップとかできるけど、
CPUが落ちた場合処理落ちするしかないよね?

だから何が起きても見掛けの速度を一定にしたい場合は
A宗しかないんじゃないかなって。
0188名前は開発中のものです。04/12/16 09:18:07ID:DxYxxvNb
なんか、変な方向にすすんでない?

A宗で書くのはつらい。

でもB宗でも見かけの速度を一定にしたい。
だから A 宗でぐるぐる回して、B宗スレッドにイベントを送信することでA宗でもB宗の記述方式ができるようにしたい。

で、そのさいの同期処理ってどーやるの?って話じゃないの?このスレって。
0189名前は開発中のものです。04/12/16 19:27:32ID:fImvV4sn
>>188
いろいろあってゲームループ総合スレになってるらしい。
0190名前は開発中のものです。04/12/17 07:34:10ID:rOSemwp/
ん?
たとえば、メインのゲームループは1/60sec決め打ちで回して、
メインのゲーム進行処理、キー入力、リプレイのロギングみたいなのは、
1/60で回ってるゲームループに同期させる。

で、絵とか音の表示やアニメは、イベントとして適当なバッファにキューイングして、
仮想フレームレート相当の時間経過とかVsyncをトリガに、ループ内か別スレッドで、
キューしておいたイベントを見ながら前回描画の経過時間を考慮しつつ
補間しながら絵を描けば、それで済む話じゃないの。

元々、ゲーム専用機のVsync同期は、Vsync割り込みを高速タイマの代用に
していただけだし、なんでそこまでVsyncにゲームの進行速度まで依存させ
たがる人がいるのかワカラソよ。
0191名前は開発中のものです。04/12/17 22:48:03ID:6ejKXcKZ
CPUパワーは資源だから。
でいいんじゃないかな。
0192名前は開発中のものです。05/01/23 20:29:14ID:Air0xk8V
>>190
VSyncの意味がわかってないようで・・・
0193名前は開発中のものです。05/01/23 20:34:37ID:JtLG4rmH
>Vsync割り込みを高速タイマの代用にしていただけ

馬鹿に限って偉そうにダラダラ語りたがる好例。
0194晒しage05/01/23 22:57:22ID:34KIVQ9x
191 :名前は開発中のものです。:04/12/17 22:48:03 ID:6ejKXcKZ
〜〜〜〜〜〜〜〜 36日経過。スレ深度186 〜〜〜〜〜〜〜〜〜
192 :名前は開発中のものです。:05/01/23 20:29:14 ID:Air0xk8V
193 :名前は開発中のものです。:05/01/23 20:34:37 ID:JtLG4rmH
0195名前は開発中のものです。05/01/24 00:09:20ID:Am/KGoi6
>>194 = >>190 だなw
0196名前は開発中のものです。05/01/24 02:05:01ID:QUF1Uv+C
ほんとに馬鹿だな
2chブラウザで更新チェック仕掛けとけばどんなに深くても一瞬なんだが
0197名前は開発中のものです。05/01/24 02:50:03ID:Pb4FhWzL
どれだけVBlank中に苦労したか・・・ヽ(`Д´)ノ
0198名前は開発中のものです。05/01/24 09:00:45ID:MwYTmyiP
>190
モレは2Dシューティング作ってたが、内部で画面の更新をする周期と
ゲームのタイミングは完全に同じじゃないと困る。
完全に同期してないと、移動キャラが一ドット進まなかったり
2ドット進んだりする。自機を移動させると
かくん…かくん…という感じでほんの少しぎこちなくなる…

FF7とか3Dのゲームならもともと30FPSとかでもそれなりに見えるし、
関係ないんだろうけど
0199名前は開発中のものです。05/01/24 21:39:05ID:Am/KGoi6
>>198
それは、画面の更新の2倍速以上の周期でゲームループをまわせば良いんじゃないの
020019405/01/24 21:57:23ID:6rvdu/5R
>>195
私はあなたの主張を全力かつ必死で否定します。
何故なら私は>>190の手法に懐疑的な立場を取る人だからです。
 
>>190は状態遷移の時間ステップは1/60[s]で行うことで良いと言います。
しかし60[Hz]近傍の画面更新周波数を採用する場合に
ゲームによっては許容が困難なアーティファクトを呈します。
 
ひとつは状態遷移と画面更新の共鳴によってもたらされます。
>>190は補間すると言います。これは時間tを媒介変数とする3次
パラメトリック曲線パッチに物体軌道を追従させることと推定されます。
しかしこれはプレイヤーの感じる周期的な違和感を抑制はするものの
完全に除去することが難しいことを>>190は知るべきです。
020119405/01/24 22:01:08ID:6rvdu/5R
s/時間tを媒介変数とする//
s/3次//
0202名前は開発中のものです。05/01/24 23:52:46ID:ZznnHdPs
アーティファクトてw
0203名前は開発中のものです。05/01/25 00:23:51ID:dxQ4cffY
アーティファクト
020419405/01/25 00:44:12ID:rMY0ZJDT
一度言ってみたかったのです。私も必死なのです。
0205名前は開発中のものです。05/02/08 03:07:12ID:TagBEX16
アーティファクトも知らないお漬物がいるな。
CGプログラマ方面ではよく使われる言葉だから、覚えておきなさい。
0206名前は開発中のものです。05/02/08 17:45:03ID:s3qPbjfn
>>205
で、アーティファクトってなんなんだい?
俺CGプログラマじゃないからわからんよ
0207名前は開発中のものです。05/02/08 19:29:36ID:Cn4cPs8N
一応ぐぐればわかる類の単語ではあるな
http://216.239.63.104/search?q=cache:yWVXkJ9vKzwJ:www.radiumsoftware.com/0401.html+%E3%82%A2%E3%83%BC%E3%83%86%E3%82%A3%E3%83%95%E3%82%A1%E3%82%AF%E3%83%88%E3%80%80CG%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0&hl=ja&lr=lang_ja
0208名前は開発中のものです。05/02/09 13:34:04ID:kf+/5jfh
artifact
《名-1》アーチファクト,技能(art)によって作り出したもの,人工物,加工品,工芸品,芸術品,所産,
作り事,《名-2》作為,人為的な結果[影響],《名-3》〔技術上の原因による〕不自然な結果,例えば,
不適切な統計処理の結果現れたパターンなど,《名-4》《コ》不可逆圧縮に伴う悪い副作用,動画
のブロックノイズなど,通例,複数形で

モアレとかマッハバンドとかがいい例じゃないかね。
0209名前は開発中のものです。05/02/09 19:30:51ID:SbvEbW11
レスが無いからって自演しなくてもいいだろ・・・
0210名前は開発中のものです。05/02/10 20:28:57ID:Pq8Tvl+c
誰に言ってるんだ
0211名前は開発中のものです。05/02/26 02:15:04ID:uFYBWVD/
PCでもやっぱり内部処理と描画処理は切り分けた方が動作効率良いんですか?
0212名前は開発中のものです。05/02/26 17:30:23ID:eTx5dUeL
http://pc5.2ch.net/test/read.cgi/prog/1108481342/175
http://pc5.2ch.net/test/read.cgi/prog/1108481342/176-177
http://pc5.2ch.net/test/read.cgi/prog/1108481342/253-254

描画と処理順序に関係する話題なのでなんとなく転載。
でもスレ違い気味。というより、家庭用機のハードウェアの話だし、板違いだよなあ…。
0213名前は開発中のものです。05/02/27 13:00:33ID:ouQU2Gh6
そのネタ、シューティングスレともこのスレとも関係ないよ。

一言で言うと、元スレの175は
PSとかDCとかで起きてる、ハードウェアの描画パイプラインによる遅延を、
スプライト機能がないせいだ(フレームバッファのせいだ)と勘違いしている。
昔はこういうオヤジがよくいて更正に困った。

176-177はまったくの的外れ。
0214名前は開発中のものです。05/02/27 13:02:05ID:ouQU2Gh6
せっかくだから
s/オヤジ/スプライトオヤジ/
0215名前は開発中のものです。2005/04/22(金) 22:35:38ID:ARah4tGO
内部fps120描画fps60ってのを試しにやってみて
FPS更新処理をABAさんとこのソースのまんまでやってみたが
描画一回に対する更新フレーム数の分布がこんな感じになった。
1frame=159, 2frame=3351, 3frame=144, 4frame=1, 5frame=4
そりゃ2frameが多いのは当たり前なんですが、
どうもリフレッシュレートと内部フレームが重なりかける瞬間、
見るからに、1frame→3frame→1frame→3frame→…
って感じで振動(?)してしまうらしい。何故こうなるんだろ
0216名前は開発中のものです。2006/08/20(日) 00:49:06ID:R2OS+92F
XNAをまたれよ
0217名前は開発中のものです。2006/10/01(日) 00:17:12ID:iXDGlJTF
待てない
0218名前は開発中のものです。2007/03/05(月) 23:27:52ID:ck7zxrxb
保守
0219名前は開発中のものです。2007/03/06(火) 21:24:03ID:aM0UjHqH
VistaでついにWindowモードで垂直同期待ちできるようになったらしいぞ!
0220名前は開発中のものです。2007/04/03(火) 14:32:01ID:qom87o6H
んあ、前からできたよ。
0221名前は開発中のものです。2007/04/12(木) 12:16:41ID:OQ9CiyjS
>>220
どうやってやるの?
0222名前は開発中のものです。2007/04/12(木) 17:20:28ID:wkJX6b+I
>>219
というか、ほとんどが液晶モニタの現代ではそもそも「垂直同期」なんて発生しようがないわけだがw
0223名前は開発中のものです。2007/04/12(木) 17:34:19ID:sR+tFe8j
>>222
んなわけない。
ビデオカードからモニタに送る信号は走査線の順だし、
同期信号はアナログモニタを考慮したタイミングになっている。
0224名前は開発中のものです。2007/04/12(木) 18:44:08ID:7RCwfy93
>>222
アホ
0225名前は開発中のものです。2007/04/12(木) 18:47:12ID:OHhAQ2El
9条は改憲してはならない。日本の為にならない。
日本人ではない朝鮮総連や民団でさえ、日本を心配して改憲への反対運動を行ってくれている。
私は日本人だが、「改憲すべき」などという者は、日本人として彼らに恥ずかしいと思います。

Q.中国から身を守る為、戦争に対する抑止力が必要では?
A.前提から間違っています。そもそも、中国は日本に派兵しようと思えばいつでもできました。
  なぜなら、日本は9条があるため、空母や長距離ミサイル等「他国を攻撃する手段」がない。
  つまり、日本に戦争を仕掛けても、命令をだした幹部の命や本国の資産は絶対に安全なのです。
  にも関わらず、中国は、今まで攻めずにいてくれたのです。

Q.日米安保も絶対ではないのでは?
A.いえ、絶対です。
  知り合いの韓国人の評論家もそう言っていますし、私も同じ考えです。
  そして日米安保が絶対なら、日本を攻める国はなく、改憲の必要はありません。
  米国と戦争をしたい国はないからです。

Q.9条が本当に平和憲法なら、世界中で(日本以外に)1国も持とうとしないのはなぜか
A.誤解を恐れずに言うなら、日本以外のすべての国が誤っているとも言えます。
  「敵国に反撃できる手段を持つ国は攻められづらい」というのは、誤った負の考え方です。
  (もっとも韓国や中国の軍に関しては、日本の右傾化阻止の為でもあるので例外ですが)
  さらに日本の場合、隣国が韓国・中国・ロシアと、GDP上位の安定した国ばかりです。

【改憲】ゼンガクレン老闘士、国民投票法案廃案訴え 国会前集結 「ゲバ棒が杖になっても」
ttp://news21.2ch.net/test/read.cgi/dqnplus/1174412397/l50
【広島】憲法9条遵守を訴え 武器を持たない妖怪「ねずみ男」に扮した男が全国行脚
ttp://news22.2ch.net/test/read.cgi/newsplus/1175835543/l50
0226名前は開発中のものです。2007/04/13(金) 04:23:56ID:1JHojgjR
>>221
DirectX9以降はPresent時に適切なオプションを与えるだけで
窓モードでもティアリング無しで描画できるわけだが。
0227名前は開発中のものです。2007/04/13(金) 11:42:06ID:FDWvNnME
>>226
知らんかった
0228名前は開発中のものです。2007/05/05(土) 12:05:44ID:/Z3gtcge
ティアリングが無い分、描画は遅れるんだよな
0229名前は開発中のものです。2007/07/29(日) 00:25:32ID:HALNhbN2
536 名前は開発中のものです。 [sage] 2007/07/27(金) 13:37:27 ID:XlcDZqW/
そう言えば同じ氏の本でバーチャファイターみたいな3D格闘本が近所に入荷されてた。
他のサンプル系のように1ヶ月くらいでまた返品されるだろうけどw

いきなり、冒頭で「60フレームが…」って固定fpsの話になってた。
PCなら可変フレームにしようぜって思ったよ。
一通りの内容は書かれてるようだけど、古い考え方が散見されるので注意ねw

3D格闘ゲームプログラミング
ttp://www.amazon.co.jp/dp/4797341807/

539 名前は開発中のものです。 [] 2007/07/28(土) 04:23:00 ID:HcOV0dC3
可変FPSだといろいろと弊害が('A`)

リプレイとか、どうすんだろ
FPSとか可変で、リプレイやってるよね・・・

スレ違いならいいところ教えてほしい

540 名前は開発中のものです。 [sage] 2007/07/28(土) 04:36:40 ID:yAMlpWBw
処理は固定で表示を可変にするんじゃないのか?

541 名前は開発中のものです。 [sage] 2007/07/28(土) 13:27:46 ID:0aIeWbas
実時間でタイムラインきればいいじゃないか。
ゲーム開始後、何msでパンチr入力開始っていう具合に。
0230名前は開発中のものです。2007/07/29(日) 00:26:10ID:HALNhbN2

542 名前は開発中のものです。 [sage] 2007/07/28(土) 14:49:45 ID:KJFTrgS8
グラフィックと内部処理を同期した場合、高スペックPCで記録したリプレイを
低スペックPCで再生すると大変なことに……

単純にスキップすればいい場合(オブジェクトの座標がすべて保存されてるなど)なら
問題にならないし、普通はFPSに上限を設けるのでせいぜい2倍遅い程度で済むけど

で、この「上限を設ける」を突き詰めると60FPS固定派がでてくるわけだ


推薦図書/必読書のためのスレッド in ゲ製作技術 2
http://pc11.2ch.net/test/read.cgi/gamedev/1136546780/
0231名前は開発中のものです。2007/08/03(金) 14:01:52ID:4ObKP0Vq
ほー
0232名前は開発中のものです。2007/08/21(火) 00:20:00ID:daKI0ljl
むしろ固定派のほうが主流だわな。海外のPCゲーでも。
A宗は潜在バグ入りこみまくりんぐ。
0233名前は開発中のものです。2007/08/21(火) 07:20:03ID:yyUqbYNX
宗派って>>173のことか
0234名前は開発中のものです。2007/08/21(火) 19:41:52ID:4M628bN0
1)固定にするしない
2)同期するしない
をわけて語ると、語りやすいのかな

今の話題なら同期については語らないことにすれば、誤解も少なそう、とか
0235名前は開発中のものです。2008/02/05(火) 17:14:37ID:k9ariYLT
スレの大半が、すれ違いでワロタ

メインで3フレーム目(3/60秒)時点でヒットしたのが
リプレイを、A宗で実行してしまったら
処理落ち(5/60秒ぐらい)とんでしまった場合
5/60秒移動した座標でヒットしたことになってしまって
再現出来んのじゃね?

とか思ったり。

やっぱ、細かい固定移動を複数回しかねーな。
ゲームシステムによるけど。

関係ないけど、
http://watch.impress.co.jp/game%2Fdocs/20060326/gdc_ha.htm
ここの動画のやつ動かしてる環境って
どのくらいのスペックなのかしら?

最新マシンでもリアルタイムじゃ無理くさくね?

こんな判定祭りは、固定複数回とかむずかしそうだけど。

スマブラXは、HAVOK使いつつ、
スローモーションとか早送りあるね
すごいね。
0236名前は開発中のものです。2008/04/27(日) 21:17:07ID:jDBpFIG6
>>235
スマブラXでのHavokの利用方法ですが、メインである格闘部分には使用されていません。
0237名前は開発中のものです。2009/03/02(月) 15:34:56ID:7DRdx6AN
弾幕シューティングでフレームスキップしたらダメ?
0238名前は開発中のものです。2009/03/02(月) 17:58:31ID:RWFwhzJi
ゲーセンでフレームスキップした弾幕シューティング(翼神ギガウイングなんちゃら)は、
よくしんとか散々言われ放題だったな

うん、ダメだと思うよ
0239名前は開発中のものです。2009/03/02(月) 18:47:57ID:H2kRluPc
シューティングはスキップさせるよりも、処理落ちさせた方がいいね。
ただ、PCの場合は環境によって処理能力に差があるから、環境によって
難易度が変わってしまうという問題があるが。
0240名前は開発中のものです。2009/03/02(月) 19:25:11ID:RWFwhzJi
そうだね。PCなら、fpsを表示して、処理落ちが発生しているか常にプレイヤーに知らせておくのがよいね
ハイスコアの出たプレイをリプレイデータとして保存するとして、そこに処理落ちの度合いを記録しておくのもよい
■ このスレッドは過去ログ倉庫に格納されています