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

DXライブラリ 総合スレッド その3

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2009/03/31(火) 01:14:36ID:IgyJcgap
Cを習得した程度のスキルでも、
GUIのゲームを比較的容易に作成する事を可能にする、
「DXライブラリ」に関するスレッドです。

DXライブラリの詳細ついては
http://homepage2.nifty.com/natupaji/DxLib/
を参照して頂きたい。

DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。

過去スレ:DXライブラリ 総合スレッド
      http://pc11.2ch.net/test/read.cgi/gamedev/1197468399/
     DXライブラリ 総合スレッド 2008
      http://pc11.2ch.net/test/read.cgi/gamedev/1224923873/
0070名前は開発中のものです。2009/04/05(日) 18:09:44ID:oraQAGe0
>69
サンプルプログラムのパーティクル基本が参考になると思われ。
0071名前は開発中のものです。2009/04/05(日) 18:12:03ID:8VF6BH4E
>>70
ありがとうございます!
0072名前は開発中のものです。2009/04/05(日) 21:16:09ID:ey93yQqE
>>69
ttp://toku.xdisc.net/cgi/up2/oiu/xs8571.zip
自分のプログラムに組み込むついでにやってみた
0073名前は開発中のものです。2009/04/05(日) 21:26:22ID:jzXObq/Y
>72
降ってる最中に移動量や方向は変わらないのか。

透明度が変わるのは面白いな。
あとたまに、真横や上方向に雪が飛んでくんだがw
0074名前は開発中のものです。2009/04/05(日) 21:49:08ID:8VF6BH4E
>>72
おおサンクス。
C#使ってるからそのまま使えないのが残念……。
つかこれ勝手に使って良い?
0075名前は開発中のものです。2009/04/05(日) 22:41:49ID:ey93yQqE
>>73
変な方向に行くのは元のアルゴリズムが花びらだった名残だったり

>>74
どうぞ
0076名前は開発中のものです。2009/04/05(日) 22:53:50ID:HuaUBP84
>>72
綺麗だなぁ。
横だが自分も使わせて貰う。
0077名前は開発中のものです。2009/04/05(日) 23:24:32ID:8VF6BH4E
>>75
thx!
0078名前は開発中のものです。2009/04/11(土) 23:15:22ID:wcB4somL
もうDXライブラリ3Dに頼る必要すらなくなった
次はシェーダーについて学ぼう
0079名前は開発中のものです。2009/04/12(日) 16:12:18ID:/tRhsb/a
ScreenFlip()の重さってどうにかならないの?
http://dixq.net/g/#s5
↑これ導入しても無理だった
0080名前は開発中のものです。2009/04/12(日) 17:11:30ID:lSUbUSsj
馬鹿は発言するな
0081名前は開発中のものです。2009/04/12(日) 17:13:14ID:mpmptjcJ
これってドレよ。

てかScreenFlipが重いなんて話あったっけ?

単に君の作ってるプログラムが遅くて、60FPSを保ててないのに
垂直同期信号待ちをさせたままって話じゃなくて?
0082名前は開発中のものです。2009/04/12(日) 17:17:52ID:XXYdX/zb
シェーダーって使えるの?
0083名前は開発中のものです。2009/04/12(日) 17:40:07ID:29TC1pPK
プログラム優先度変更オヌヌメ
0084名前は開発中のものです。2009/04/12(日) 17:49:43ID:9LgVxSaT
ノートPCでVistaだったら俺と一緒。
実行ファイルのプロパティ開いて、「互換性」→「WindowsXP SP2互換」にチェックを入れてみる。
もしかしたら幸せになれるかもしれない。
0085名前は開発中のものです。2009/04/12(日) 17:53:25ID:43thkbhn
>>79
遅くするための処理を導入して重くなったとはどういうことなんだ?
0086名前は開発中のものです。2009/04/12(日) 19:31:53ID:4cs7HNP3
>>79
たぶん初心者っぽいからこんなことをあえて言うけど
まずリフレッシュレートとプログラムのfpsを比較しないとね
0087名前は開発中のものです。2009/04/13(月) 00:15:55ID:GN8f0M0n
ここぞとばかりに食いつく初心者たちの群れ
0088名前は開発中のものです。2009/04/15(水) 15:18:06ID:I8P/Rh48
そういやDXライブラリがDirectX9ベースに移植してるって話はどうなった?
あのコード量を移植するのは並大抵じゃないとおもうが、作者ガンバレ!
0089名前は開発中のものです。2009/04/15(水) 16:13:43ID:3g1BJoyH
うーん、>>79 じゃないけどただ ScreenFlip してるだけで CPU 使用率が 60% くらいになるのはなんで?
Pen4 の 1.6GHz だけど
0090名前は開発中のものです。2009/04/15(水) 16:37:47ID:I8P/Rh48
それはScreenFlipの仕様。VSyncがくるまで待機するんだが、その待機時間もCPU使用率に含まれる。(実質アイドリングループなのだが)
CPUが100%になるのがいやならVsync待ちを切ればいい。(ティアリングが発生するし、ゲームの速度も変わってしまう)

正しい設計はVsync待ちは有効で、なおかつFPS管理をし60fpsになるようにフレーム毎に適度にsleepを入れること。
0091名前は開発中のものです。2009/04/15(水) 18:32:01ID:lTpXHjBQ
1か所sleepするだけでもだいぶ変わりそうだねぇ
0092名前は開発中のものです。2009/04/15(水) 20:06:35ID:OTuGa66k
>正しい設計はVsync待ちは有効で、なおかつFPS管理をし60fpsになるようにフレーム毎に適度にsleepを入れること。

モニタのリフレッシュレートが60でない時はどうなるのかな。
0093名前は開発中のものです。2009/04/15(水) 20:43:14ID:1cQMYjlB
公式より引用:
>前回の ScreenFlip から 10ミリ秒以下しか時間が経過していない場合のみ Sleep で処理を一時停止するようにしています

>>92
60fpsになるように管理してるんだから60fpsになるだろーがw
0094名前は開発中のものです。2009/04/15(水) 21:18:20ID:I8P/Rh48
>>93
フルスクリーンにできる or デフォルトのリフレッシュレートが50 であるのであれば、Vsync有効。
ウィンドウモードでリフレッシュレートが60以外の場合は、ティアリングを犠牲にしてVsync切る。
(ウィンドウモードで垂直同期に合わせてしまうとティアリングの線が毎フレーム同じようなところにできてしまって、逆にきたなくなってしまう)

現状、DirectX7ベースのDXライブラリではウィンドウモードでのVsync無効だから、どうしようもないぜ。
0095名前は開発中のものです。2009/04/15(水) 21:20:12ID:I8P/Rh48
すまん。誤字がすごい。レスは>>92へだ。
あと、50じゃなくて60。
■ このスレッドは過去ログ倉庫に格納されています