DXライブラリ 総合スレッド その3
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2009/03/31(火) 01:14:36ID:IgyJcgapGUIのゲームを比較的容易に作成する事を可能にする、
「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/
0014名前は開発中のものです。
2009/03/31(火) 16:31:47ID:IkcCkAe5俺は知識披露してた年寄(ID:8c8Vy+u+、ID:wJL07IJT )のことを言ってるんだが。
前>>920を見てlist君という表現を使った。紛らわしかったならすまん。
0015名前は開発中のものです。
2009/03/31(火) 18:20:23ID:3yX1QyX+アフォBlog C言語勉強したけどゲーム作れないぞコラって人向けに
http://afoafodayo.blog84.fc2.com/blog-entry-549.html
やっとみつけた
はてなブックマークの検索性の悪さは異常・・・
0016名前は開発中のものです。
2009/03/31(火) 18:54:09ID:I/qO2uGslist君と呼ばれたびっくりした。自分が年寄りの老害です。
知識披露するにも前>>920は、前>>916で聞かれたから素直に答えただけで……。
長文が目についてウザいのは判るが、聞かれたことに答えてるだけで話題は(自分からは)逸脱してないとおもうけどなあ。
自称中級者が懇切丁寧に説明するのはこのスレじゃアウトなん?
正直叩かれるのにビックリだ。
0017名前は開発中のものです。
2009/03/31(火) 19:04:48ID:clln3x8F0018名前は開発中のものです。
2009/03/31(火) 19:11:27ID:EoCekJlWなぜそこまで否定するのかが解らない。
普段ならスルーされる程度の話題だと思うんだけど。
0019名前は開発中のものです。
2009/03/31(火) 20:47:39ID:Ad7RXl/Lスレ立てじゃない>2が勝手にテンプレとか言って持ち越しにしただけ。
0020名前は開発中のものです。
2009/03/31(火) 21:13:43ID:Es/JEStY0021名前は開発中のものです。
2009/03/31(火) 22:29:49ID:9fS7KbI9--
Cを習得した程度のスキルでも、
GUIのゲームを比較的容易に作成する事を可能にする、
「DXライブラリ」に関するスレッドです。
DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。
【公式】
http://homepage2.nifty.com/natupaji/DxLib/
【過去スレ】
DXライブラリ 総合スレッド
http://pc11.2ch.net/test/read.cgi/gamedev/1197468399/
DXライブラリ 総合スレッド 2008
http://pc11.2ch.net/test/read.cgi/gamedev/1224923873/
DXライブラリ 総合スレッド その3
http://pc11.2ch.net/test/read.cgi/gamedev/1238429676/
0022名前は開発中のものです。
2009/03/31(火) 23:50:48ID:yOP/w+uJ0023名前は開発中のものです。
2009/04/01(水) 02:25:50ID:fUEkL36W気にしなくていいと思うよ。
ためになるレスだったし、スレ違いでもなんでもないと思うよ。
DXライブラリを取り巻く事って、ゲーム作りのちょっとしたTIPSなんかも含むと思うし、
それにまつわる雑談なんかもいいと思うよ。
それこそDXライブラリ限定だとしたら公式がある限り誰もこのスレを使う必要ないしね。
0024名前は開発中のものです。
2009/04/01(水) 07:29:47ID:99TD3Xseせっかく教えていただいた知識も役立ててませんけどね……。
ああ、でもクラスは勉強して使ってみました。けど三行目がさっぱりわからず
結局1フレームに一回、自前でソートさせてます。
0025名前は開発中のものです。
2009/04/01(水) 07:29:56ID:zX+vyCNMあんた最高にかっこいいぜ。
0026名前は開発中のものです。
2009/04/01(水) 09:02:30ID:k4OaMNtU正直に言えよおまいら
0027名前は開発中のものです。
2009/04/01(水) 17:21:42ID:BYfton9F0028名前は開発中のものです。
2009/04/01(水) 17:31:54ID:WMtkg65dup or downのゲーム を日本語で説明する文章を書きます。
0029名前は開発中のものです。
2009/04/01(水) 18:01:07ID:BYfton9F勝率と敗北率がお互い50%絶対超えないし、引き分け率も0.074-0.075の間いったり来たり。
数学やっぱ楽しいです^p^
0030名前は開発中のものです。
2009/04/01(水) 18:22:56ID:iMcacUMwグー チョキ パーの画像作って
じゃんけんぽい ズコ!ってゲームつくるんだ
0031名前は開発中のものです。
2009/04/01(水) 18:30:15ID:OtGOIqcOも必要ではなかろうか
0032名前は開発中のものです。
2009/04/01(水) 18:43:39ID:hayLCRBv>...COMING SOON
>なんか新聞社を敵に回してしまったかもしれません。あのサイトに数日前に導入した機能が・・・なにかあったらなにかあったと思ってください
何があったんだJEX氏
0033名前は開発中のものです。
2009/04/01(水) 20:24:21ID:BYfton9Fもっと良いプログラム組めるようになりてぇ
次はじゃんけんゲームでも作ってみるか
0034名前は開発中のものです。
2009/04/01(水) 20:45:45ID:LaqgGHZHあの、、、1点だけ失礼します。
×確立
○確率
0035名前は開発中のものです。
2009/04/01(水) 22:03:55ID:iMcacUMwおっとIMEの悪口はそこまでだ
0036名前は開発中のものです。
2009/04/01(水) 23:29:46ID:BYfton9F0037名前は開発中のものです。
2009/04/02(木) 00:11:44ID:CktrGb4U本当にIMEたんのこと想っているなら、誤変換をIMEたんのせいにしないであげて。
0038名前は開発中のものです。
2009/04/02(木) 17:53:48ID:QCCv4XDG数字で内部判定すれば自力抽選みたいなことができる
子供のころあったゲーセンのメダルゲームのジャンケンマン初期のやつは
またコレがとんでもない上記のプログラムをさらに単純にしたプログラムで
なんとデモ画面のグーチョキパーの動きで勝率8割まで攻略可能だったという
(8割というのは10円いれる時の物理的なタイミングの誤差。よく10円つまるしww)
http://dgm.hmc6.net/museum/jyankenman.html
0039名前は開発中のものです。
2009/04/02(木) 22:59:56ID:fVGveLIS0040名前は開発中のものです。
2009/04/02(木) 23:26:05ID:QVNrnR8y0041名前は開発中のものです。
2009/04/02(木) 23:49:51ID:libAlu/0いつも判断つかないんだが、何か良い方法は無いだろうか。
0042名前は開発中のものです。
2009/04/02(木) 23:53:46ID:fVGveLIS概出と違って。
0043名前は開発中のものです。
2009/04/03(金) 00:05:19ID:XCYlTU58そうか、あれってマジなのか。
なんだか見るたびに変な応酬があって、うんざりしてたんだ。
0044名前は開発中のものです。
2009/04/03(金) 00:16:55ID:jC+E2iBn0045名前は開発中のものです。
2009/04/03(金) 02:10:31ID:7QUZderU0046名前は開発中のものです。
2009/04/03(金) 02:11:05ID:jC+E2iBn0047名前は開発中のものです。
2009/04/03(金) 16:55:04ID:GX2/ISHC0048名前は開発中のものです。
2009/04/03(金) 18:32:18ID:1bPcLAM20049名前は開発中のものです。
2009/04/03(金) 18:37:35ID:UxNIEp1w0050名前は開発中のものです。
2009/04/03(金) 19:01:42ID:sN5oQCLD依然、何も無し。。。
0051名前は開発中のものです。
2009/04/03(金) 20:16:20ID:s4gdwShB0052名前は開発中のものです。
2009/04/03(金) 20:20:44ID:bOoPhqNd0053名前は開発中のものです。
2009/04/03(金) 20:21:34ID:B6jkiksS統合環境無くても、bcc.exeの代わりにcl.exe使えばいいんじゃない?
0054名前は開発中のものです。
2009/04/03(金) 20:23:00ID:DsLE17Ac0055名前は開発中のものです。
2009/04/03(金) 20:24:44ID:B6jkiksS>>45を読んでくれ
0056名前は開発中のものです。
2009/04/03(金) 22:33:16ID:jC+E2iBnVCでDXライブラリ使っているとインテリセンスが働かなくて不便だなと感じるようになった。
自分で関数やクラスを作るようになってからは。
0057名前は開発中のものです。
2009/04/03(金) 23:17:11ID:XCYlTU58当時使ってたのがVC6だから、出来るかどうかは分からないが。
DXライブラリのソースを読み込む(コンパイルも?)と、内部用の辞書ファイルが生成される。
その辞書ファイルを、自分のプロジェクトのところにコピペ(上書き)。
こうすることでDXライブラリの関数群も、インテリセンスが使えたと思う。
もちろん自前の関数も問題なく使える。
辞書ファイルの拡張子はncbとかだったと思うが自信は無い。
0058名前は開発中のものです。
2009/04/03(金) 23:45:57ID:jC+E2iBnthx
ちょっと試してみる
0059名前は開発中のものです。
2009/04/04(土) 00:30:58ID:zQfs6Ss5もちろん働かないときもあるけどそれはVC++の気分次第っていうのはちょっとした常識じゃない?
そういう時は何も考えずにまずncb消す。
0060名前は開発中のものです。
2009/04/04(土) 00:34:18ID:MwhC2F5hVC2003だからかな。
2008の無料の奴に替えよかな
0061名前は開発中のものです。
2009/04/04(土) 00:38:22ID:bhHC3g+R0062名前は開発中のものです。
2009/04/04(土) 03:27:09ID:zQfs6Ss5VC++のインテリセンスに関してはあまり期待しないっていうのが普通じゃないかな。
2010ではインテリセンスも含めてVC++とかMFCにも力入れるみたいだね。(2008SP1もMFCに力入れてきたし)
だから多分2003から2008にしても変わらないと思うよ。
まあまずは終了させてncb消して起動しなおしてごらん。
0063名前は開発中のものです。
2009/04/04(土) 03:43:24ID:NVBO+V4R知ったかぶり乙
0064名前は開発中のものです。
2009/04/04(土) 08:27:41ID:zQfs6Ss5知ってるなら教えてあげなよ。
俺は経験談と知ってる範囲で答えたまで。
0065名前は開発中のものです。
2009/04/04(土) 09:53:30ID:eurKE9M40066名前は開発中のものです。
2009/04/04(土) 13:21:59ID:NVBO+V4RVS2005からヘッダに書いてあるだけでインテリセンスが効く
59の書き込みでインテリセンス効くって書いてあるんだから
確かめもせずに「多分」程度の確証で他人の書き込みを否定するのってどうよ?
0067名前は開発中のものです。
2009/04/04(土) 13:27:27ID:NVBO+V4R・VC6〜VC2003 ヘッダに書いてあるだけじゃインテリセンス効かない
・VC2005〜 ヘッダに書いてあるだけでインテリセンス効く
0068名前は開発中のものです。
2009/04/04(土) 13:54:17ID:2TEB3sSo0069名前は開発中のものです。
2009/04/05(日) 17:39:32ID:8VF6BH4E実装ほうほうがさっぱりなのですが……。
ランダムに画像を表示させても少しも雪っぽくなりませんでした……。
0070名前は開発中のものです。
2009/04/05(日) 18:09:44ID:oraQAGe0サンプルプログラムのパーティクル基本が参考になると思われ。
0071名前は開発中のものです。
2009/04/05(日) 18:12:03ID:8VF6BH4Eありがとうございます!
0072名前は開発中のものです。
2009/04/05(日) 21:16:09ID:ey93yQqEttp://toku.xdisc.net/cgi/up2/oiu/xs8571.zip
自分のプログラムに組み込むついでにやってみた
0073名前は開発中のものです。
2009/04/05(日) 21:26:22ID:jzXObq/Y降ってる最中に移動量や方向は変わらないのか。
透明度が変わるのは面白いな。
あとたまに、真横や上方向に雪が飛んでくんだがw
0074名前は開発中のものです。
2009/04/05(日) 21:49:08ID:8VF6BH4Eおおサンクス。
C#使ってるからそのまま使えないのが残念……。
つかこれ勝手に使って良い?
0075名前は開発中のものです。
2009/04/05(日) 22:41:49ID:ey93yQqE変な方向に行くのは元のアルゴリズムが花びらだった名残だったり
>>74
どうぞ
0076名前は開発中のものです。
2009/04/05(日) 22:53:50ID:HuaUBP84綺麗だなぁ。
横だが自分も使わせて貰う。
0077名前は開発中のものです。
2009/04/05(日) 23:24:32ID:8VF6BH4Ethx!
0078名前は開発中のものです。
2009/04/11(土) 23:15:22ID:wcB4somL次はシェーダーについて学ぼう
0079名前は開発中のものです。
2009/04/12(日) 16:12:18ID:/tRhsb/ahttp://dixq.net/g/#s5
↑これ導入しても無理だった
0080名前は開発中のものです。
2009/04/12(日) 17:11:30ID:lSUbUSsj0081名前は開発中のものです。
2009/04/12(日) 17:13:14ID:mpmptjcJてかScreenFlipが重いなんて話あったっけ?
単に君の作ってるプログラムが遅くて、60FPSを保ててないのに
垂直同期信号待ちをさせたままって話じゃなくて?
0082名前は開発中のものです。
2009/04/12(日) 17:17:52ID:XXYdX/zb0083名前は開発中のものです。
2009/04/12(日) 17:40:07ID:29TC1pPK0084名前は開発中のものです。
2009/04/12(日) 17:49:43ID:9LgVxSaT実行ファイルのプロパティ開いて、「互換性」→「WindowsXP SP2互換」にチェックを入れてみる。
もしかしたら幸せになれるかもしれない。
0085名前は開発中のものです。
2009/04/12(日) 17:53:25ID:43thkbhn遅くするための処理を導入して重くなったとはどういうことなんだ?
0086名前は開発中のものです。
2009/04/12(日) 19:31:53ID:4cs7HNP3たぶん初心者っぽいからこんなことをあえて言うけど
まずリフレッシュレートとプログラムのfpsを比較しないとね
0087名前は開発中のものです。
2009/04/13(月) 00:15:55ID:GN8f0M0n0088名前は開発中のものです。
2009/04/15(水) 15:18:06ID:I8P/Rh48あのコード量を移植するのは並大抵じゃないとおもうが、作者ガンバレ!
0089名前は開発中のものです。
2009/04/15(水) 16:13:43ID:3g1BJoyHPen4 の 1.6GHz だけど
0090名前は開発中のものです。
2009/04/15(水) 16:37:47ID:I8P/Rh48CPUが100%になるのがいやならVsync待ちを切ればいい。(ティアリングが発生するし、ゲームの速度も変わってしまう)
正しい設計はVsync待ちは有効で、なおかつFPS管理をし60fpsになるようにフレーム毎に適度にsleepを入れること。
0091名前は開発中のものです。
2009/04/15(水) 18:32:01ID:lTpXHjBQ0092名前は開発中のものです。
2009/04/15(水) 20:06:35ID:OTuGa66kモニタのリフレッシュレートが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フルスクリーンにできる or デフォルトのリフレッシュレートが50 であるのであれば、Vsync有効。
ウィンドウモードでリフレッシュレートが60以外の場合は、ティアリングを犠牲にしてVsync切る。
(ウィンドウモードで垂直同期に合わせてしまうとティアリングの線が毎フレーム同じようなところにできてしまって、逆にきたなくなってしまう)
現状、DirectX7ベースのDXライブラリではウィンドウモードでのVsync無効だから、どうしようもないぜ。
0095名前は開発中のものです。
2009/04/15(水) 21:20:12ID:I8P/Rh48あと、50じゃなくて60。
0096名前は開発中のものです。
2009/04/15(水) 21:20:56ID:lTpXHjBQ0097名前は開発中のものです。
2009/04/15(水) 21:21:42ID:lTpXHjBQ0098名前は開発中のものです。
2009/04/15(水) 21:43:40ID:OTuGa66kだからどう管理するのかなーと。
単純に「1/60秒 - 前回のScreenFlipから経過した時間」でSleepかけると
モニタのリフレッシュレートが70の時、いざScreenFlipしようとした時には
すでに1フレーム経過しちゃうんだから、次のVsync信号待ちまで待っちゃうよね。
そしたら1フレーム 2/70 秒になって 35FPSって事なっちゃうのでは。
いや、当然こんな事解決する方法はあるんだろうけど
俺の頭じゃ難しくて。
0099名前は開発中のものです。
2009/04/16(木) 02:52:38ID:12a1chsH>ウィンドウモードでのVsync無効だから
って言われるけどウィンドウモードで、どう見てもScreenFlipでVsync待った方が明らかにティアリングなしできれいなんだがなぜ?
リフレッシュレートを変えても同じ。
ただ、fps調整無しでリフレッシュレートのfpsになるように単純にVsyncを待った場合、
ウィンドウモードよりフルスクリーンの方が明らかに滑らか(高fps)を体感できる。もうよくわかんない。
0100名前は開発中のものです。
2009/04/16(木) 02:58:08ID:uc3ezfKA0101名前は開発中のものです。
2009/04/16(木) 05:02:47ID:XS+5u9bOOSはVistaかい?
VistaだとDesktopWindowManagerが自動でティアリング防止するように描画順を待機するようになるからティアリング無いかもね。(未検証でゴメン)
詳しくはここ。http://d.hatena.ne.jp/enra/20081014#p2
で、XPでDirectX7環境だとティアリングが発生します。でもXPでもDirectX9が検出できた場合に限ってScreenFlipで垂直同期待ちになる模様。
(もしくはティアリングが発生していても、線がウィンドウの領域と被ってないので見えてないだけかもしれない)
0102名前は開発中のものです。
2009/04/16(木) 05:18:57ID:WR6HuXg0なるほどなるほど
VSync まちでいろいろやってるループより sleep の方が軽いのは当然てことか
0103名前は開発中のものです。
2009/04/16(木) 05:27:06ID:12a1chsH2000/XPです。
下方向に高速スクロールする画面で、Vsync同期/非同期を切り替えられるようにしてます。
明らかに違いが出てきますね。
ティアリングに敏感な人なら確実に分かると思います。
同期してないとガリガリしてるような気がします。
でも、フルスクリーンの方がさら〜って感じでさらにきれいに見えるのも謎。
60Hzと70Hzじゃ描画回数が違うので当然なんだけど。(見た目にも描画回数が多いのがはっきりわかる)
でもこれはウィンドウモードとフルスクリーンじゃ絵柄自体の大きさが違うので錯覚してるだけかも。
>でもXPでもDirectX9が検出できた場合に限ってScreenFlipで垂直同期待ちになる模様。
これはかなり興味深いですね。初めて聞きました。
ウィンドウモードでも間違いなく同期してると思ってる派なので調べてみます。
0104名前は開発中のものです。
2009/04/16(木) 15:55:17ID:U7PVHoMj>70の時は1/70だから1/60よりも速いからその分だけ待てばいいのでは
そしたら70FPSになるんじゃないか。
70FPSは60FPSより1秒間に10フレーム多い事になるから、
6フレームごとに1回、空待ちさせれば60FPSを実現させる事はできるけど、
ゲームの処理時間が、「60FPSだと余裕があるが、70FPSだと足りない」
って時に処理落ちがひどくなる。
0105名前は開発中のものです。
2009/04/16(木) 19:22:11ID:/YbqE5Rhって本に間違いってないですか?
何度書き直しても、サンプルプログラムにエラーが発生します
(P118です)
0106名前は開発中のものです。
2009/04/16(木) 19:37:00ID:D5YSrYi0よくわからないけど、4章-01の最後、P125まで全部入れてひとつのプログラムだぞ。
・main.cpp
・gameframe.h
・gameframe.cpp
0107名前は開発中のものです。
2009/04/16(木) 19:41:32ID:D5YSrYi0gameframe.h の先頭で、#include "DxLib.h" 宣言しておかないとむりぽ
これ、本文に書いてない。
P120上の画面写真のプログラムには、しれっと入ってるけど。
0108名前は開発中のものです。
2009/04/16(木) 20:44:04ID:uc3ezfKA0109名前は開発中のものです。
2009/04/16(木) 23:14:39ID:BmH0FmoL誤植多いそうです
0110名前は開発中のものです。
2009/04/16(木) 23:53:51ID:LfSelEBA0111名前は開発中のものです。
2009/04/17(金) 00:52:02ID:EZBCVXFEint nowtime = GetNowCount();
static int oldtime = 0;
static int frametime = 1000 / 60
int diftime = nowtime - oldtime;
while(1)
{
if(diftime >= frametime)
{
oldtime = nowtime;
break;
}
else
{
Sleep(1);
nowtime = GetNowCount();
diftime = nowtime - oldtime;
}
}
こんな感じでScreenFlip()の前に書いてみて。
今ちょっと60Hz以外選べない環境なので今は確かめられないけど、
たしか以前試したときはちゃんと60Hz以外でも60fps出てたはずだよ。
0112名前は開発中のものです。
2009/04/17(金) 05:23:57ID:WaZv4/Kc0113名前は開発中のものです。
2009/04/17(金) 05:51:08ID:Zvoaz6Vb俺もそんな気がしてきた
■ このスレッドは過去ログ倉庫に格納されています