ドラゴンクエストクローンを作ろう (746レス)
ドラゴンクエストクローンを作ろう http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
427: 名前は開発中のものです。 [sage] 2006/07/14(金) 19:08:57 ID:p+qm4mCS >>425 作れます。 家庭用ゲーム機と同じ60FPSのゲームの場合は最低でもDirectXを 使う必要があると思いますが、逆にDirectXを使える環境であれば DXライブラリだろうとLUNAだろうとDirectXを直に使う場合だろうと 問題ないと思います。 C言語以外でも作れるかどうかは、C言語しか知らないので分かりません。 DQ1程度のデータ規模を楽に扱える言語仕様(C言語で言う構造体があれば とりあえず大丈夫だと思う)と60FPSでゲームを動かすことが出来る くらいの速度で動作して、且つその言語でDirectXを使えるような 仕組みがあれば問題無いと思いますが。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/427
428: 名前は開発中のものです。 [] 2006/07/14(金) 21:05:39 ID:2BtiSCsl DIBで行け。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/428
429: 名前は開発中のものです。 [sage] 2006/07/14(金) 21:17:48 ID:p+qm4mCS DIBで640x480で60FPSって可能ですか? 可能であればDirectXの使用環境は必須ではなくなりますが・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/429
430: 名前は開発中のものです。 [] 2006/07/14(金) 22:05:12 ID:2BtiSCsl 可能すぎる。 ただし、グラボの恩恵を最大限には受けることが出来ない。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/430
431: 名前は開発中のものです。 [sage] 2006/07/15(土) 00:21:00 ID:J160mIqM 試してみました。 640x480一回の転送で約5ms、60FPSで1フレ約17msですから余裕ですね。 何か勘違いしていました。申し訳ありません。 この際環境依存が激しいDirectXを捨ててDIBに乗り換えようかと 思ったのですが、私が知る限りではDIBは垂直同期を取る方法が なかったような気がします。 スクロールするゲームではなるべくテアリングは避けたいのですが、 DIBで垂直同期を取る方法はあるのでしょうか? http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/431
432: 名前は開発中のものです。 [] 2006/07/15(土) 00:39:27 ID:81t16XAC 同期方法と言うか、それは自分で作るところでは無いんですか? http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/432
433: 名前は開発中のものです。 [sage] 2006/07/15(土) 01:16:03 ID:J160mIqM 垂直同期はゲームの進行処理の同期のこととは違います。 ハードの信号なのでソフトだけでは解決出来ません。 詳しくはこちらをどうぞ。 本文を「ティアリング」で検索して下さい、丁度その説明があります。 ttp://ascii24.com/news/columns/10100/article/1998/08/31/621078-000.html?geta (古い記事ですがティアリング、垂直同期辺りは昔話ではありません) http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/433
434: 名前は開発中のものです。 [] 2006/07/15(土) 01:53:20 ID:W+y22RQ0 1はへたれ 市ねww ぶはははw http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/434
435: 名前は開発中のものです。 [] 2006/07/15(土) 03:05:51 ID:81t16XAC 俺が言葉足らずだったのは申し訳ないが、 垂直同期をとるところは作るもんではないんですか? dxみたいに同期を待ってくれるものがあれば、それを使えばいいですけれども。 実験して5msとあるのであれば、16.6待つまでに時間あるから あんまり気にしないでも大丈夫だと思います。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/435
436: 名前は開発中のものです。 [sage] 2006/07/15(土) 07:56:06 ID:J160mIqM >>435 ですから、垂直同期をとるには専用のAPIが必要なんです。 垂直同期信号を検地する為のAPIが無ければ何時垂直同期信号が 来ているのか知る術はありません。 そのAPIが私の知る限りではDirectX以外に無いのです。 標準のWin32APIにDirectDrawのWaitForVerticalBlankやGetScanLineに 相当する機能を持つAPIがあれば良いのですが、ご存知ですか? http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/436
437: 名前は開発中のものです。 [] 2006/07/15(土) 09:08:09 ID:gt1duSp0 んなもん使わねーよ http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/437
438: 名前は開発中のものです。 [sage] 2006/07/15(土) 09:26:13 ID:J160mIqM >>437 実際はFlipやPresentの中で自動的に垂直同期を待ってからフリップ されるのでWaitForVerticalBlankやGetScanLineを使う機会は無い かもしれませんが、要はDIBに垂直同期を待ってからスクリーンに 画像を転送すき仕組みがあるかどうかです。 無い場合はテアリングが発生してしまうのでスクロール処理がある 2Dのゲームには向いていないということになります。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/438
439: 名前は開発中のものです。 [sage] 2006/07/15(土) 09:27:46 ID:9Xtt4+04 ウィンドウで動くアプリで垂直同期は全く関係ないとおもったけど? てーかフルスクリーンで動くDirectXだからこそ関係ある話。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/439
440: 名前は開発中のものです。 [sage] 2006/07/15(土) 10:24:05 ID:J160mIqM >>439 デスクトップが希望のリフレッシュレートになっていないと 見苦しいことになりますが、一応ウインドウで動くアプリでも 垂直同期は関係あります。 試しに同期を取るアプリと取らないアプリをうpしましたので お時間があれば試してみて下さい。 (画面のリフレッシュレートが60Hzだと違いが特に分かります) ttp://gamdev.org/up/img/6548.zip リフレッシュレートがゲームのFPSと合っていない場合は垂直同期 を取っても取らなくても見苦しくなりますが、最近はリフレッシュ レートの設定項目数が少ない液晶モニタが普及しているので ウインドウで動作させる場合も割と意味があると思います。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/440
441: 名前は開発中のものです。 [sage] 2006/07/15(土) 10:31:52 ID:J160mIqM >>425 論点を >>431 で少しずらしてしまいましたが、テアリングを気に しないのであれば >>430 の指摘通り >>427 の条件からDirectXは外れます。 誤ったレスをしてしまって申し訳ありません。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/441
442: 名前は開発中のものです。 [] 2006/07/15(土) 12:10:07 ID:81t16XAC >>440 上げてくれた同期取りをしない奴に、 自分で作った垂直同期とりの関数かなんかをいれると 上げてくれた同期取りをしている方のような動作に出来ます。 って俺はそうしてるんだが・・・。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/442
443: 名前は開発中のものです。 [sage] 2006/07/15(土) 12:29:37 ID:J160mIqM >>442 >自分で作った垂直同期とりの関数かなんかをいれると それはDirectXを使わない方法ですか? もしDirectXを使わないで垂直同期をとっているのでしたら 是非その方法を教えていただけないでしょうか。 私もDIBで済むのならDIBにしたいので・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/443
444: 名前は開発中のものです。 [sage] 2006/07/15(土) 16:41:48 ID:WwdAlzc2 内部の描画はDIBでやって 表示だけdirectdrawにすりゃええやん。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/444
445: 名前は開発中のものです。 [sage] 2006/07/15(土) 17:06:22 ID:J160mIqM >>444 >>425-428 この話題は (質問)DQ1みたいなのDXライブラリ使わなくても作れるの? ↓ (私)DXライブラリ関係なくDirectXが使えてその他条件が揃う言語ならどれでも作れる ↓ (指摘)速度はDIBで十分、DirectX無くても大丈夫 という流れから始まったものなので、DirectDrawを使うと なるとDirectXが必要となり、意味がありません。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/445
446: 名前は開発中のものです。 [sage] 2006/07/15(土) 17:34:24 ID:MDeESeX3 >>445 所詮WINAPIはゲームには向かないって事。 いくら処理が早くても、ゲームを作るための物ではないですよ。 それを分かってるから、えらい人たちがDirectXとか作ったんでしょうし。 そうじゃなかったらDirectXなんてない。 問題は処理速度ではないって事ではないんでしょうか? http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/446
447: 名前は開発中のものです。 [sage] 2006/07/15(土) 17:45:30 ID:J160mIqM >>446 はい、速度についてはDQ1程度ならDIBでも問題ないという結論が出たので、 今はDIBで垂直同期信号(VSYNC)を待った画面出力が可能かどうかという話に なっています。(違うかもしれませんが今の私の関心事はそれです) 私が知る限りではDirectX以外で垂直同期信号を待ったり、帰線消去期間中か どうかを調べたりする方法は無かったと思うのですが、442の方が432,435 辺りでDirectXが無くても垂直同期を検知する手段がある、というような発言を されているので、それについての詳細を私が求めて今ご返答を待っている状態です。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/447
448: 名前は開発中のものです。 [] 2006/07/15(土) 20:55:59 ID:81t16XAC 垂直同期を検知できるんでなくて、 同期取りをしているかのような動作が出来ると言うことですな。 完全になくなるかどうかは俺にも分かりませんが、 上のサンプルのように毎回がたつきは出なくなります。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/448
449: 名前は開発中のものです。 [sage] 2006/07/15(土) 21:18:46 ID:J160mIqM >>448 がたつきがあるのは私の組んだプログラムのタイマー精度が原因です。orz がたつきも非常に問題ですが、テアリング=がたつきではありません。 タイマーの精度を上げて、がたつかないようにしましたので、申し訳ありませんが お時間のあるときにもう一度試してみて下さい。今度は Non_VSync.exe ではっきり テアリング(前のフレームと今のフレームの画像が混ざってしまう現象)が 確認できると思います。(タイミングが合い、運良く確認できない場合もあります ので、確認できない場合は2・3回再実行してみてください) ttp://gamdev.org/up/img/6560.zip http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/449
450: 名前は開発中のものです。 [sage] 2006/07/16(日) 00:49:27 ID:ovtqapnP 俺はノートPCで液晶だからVSYNCとか言われてもわからねぇ http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/450
451: 名前は開発中のものです。 [sage] 2006/07/16(日) 00:56:24 ID:DFiXRGJs 液晶でもVSYNCはありますしテアリングも発生します。 http://mevius.5ch.net/test/read.cgi/gamedev/1046454251/451
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 295 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.011s