1 名前:名前は開発中のものです。 [2009/08/09(日) 21:55:50 ID:TrjuCGgx] Cを習得した程度のスキルでも、 GUIのゲームを比較的容易に作成する事を可能にする、 「DXライブラリ」に関するスレッドです。 DXライブラリに関するテクニックなどの情報交換などを行う事で、 多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。 【公式】 homepage2.nifty.com/natupaji/DxLib/ 【過去スレ】 DXライブラリ 総合スレッド pc11.2ch.net/test/read.cgi/gamedev/1197468399/ DXライブラリ 総合スレッド 2008 pc11.2ch.net/test/read.cgi/gamedev/1224923873/ DXライブラリ 総合スレッド その3 pc11.2ch.net/test/read.cgi/gamedev/1238429676/
78 名前:名前は開発中のものです。 mailto:sage [2009/08/15(土) 23:30:18 ID:vKUvgt96] >>76 こういうことだろうか int DrawFormatString(double x, double y, int Color, const char *FormatString, ...) { char buf[1024]; va_list args; va_start(args, FormatString); vsprintf(buf, FormatString, args); va_end(args); return DrawString((int)x, (int)y, buf, Color); }
79 名前:名前は開発中のものです。 mailto:sage [2009/08/15(土) 23:45:00 ID:KTR4wq9i] >>78 こんな方法が…ってよくわかってないけど vsprintf→vsprintf_s で警告が全部消えてくれました ありがとうございました
80 名前:名前は開発中のものです。 mailto:sage [2009/08/16(日) 11:37:57 ID:tL1KdmQ7] 3Dで描画した画面にエフェクトをかけたいんだけど、 裏画面の内容をテクスチャにコピーするか、 テクスチャにZバッファを使って3D描画させる方法は無いものだろうか……
81 名前:名前は開発中のものです。 mailto:sage [2009/08/16(日) 16:11:57 ID:9Wblhgl3] >>80 ライブラリ使わない方がいいんじゃね? 専門書買ってDirectXを直接叩いた方が早いと思う ぶっちゃけゲーム性に影響出るような話じゃないし、うじうじ悩むくらいなら仕様にした方が
82 名前:名前は開発中のものです。 mailto:sage [2009/08/16(日) 16:52:25 ID:tL1KdmQ7] >>81 やっぱりDXライブラリじゃ無理かなー DXライブラリだけでここまで出来るんだぜ!ってのを示すのが ゲームのコンセプトの一つだったりするんで、このまま頑張ろうと思う
83 名前:名前は開発中のものです。 mailto:sage [2009/08/16(日) 17:17:23 ID:DZlUccKL] PlayMovieで動画再生できるのにサンプルプログラムのDrawGraphを使った方法では動画再生できませんどうなっていますか
84 名前:名前は開発中のものです。 mailto:sage [2009/08/16(日) 23:45:33 ID:DZlUccKL] ちなみに音は再生されます。原因が分かる方いらっしゃいますでしょうか。
85 名前:名前は開発中のものです。 mailto:sage [2009/08/16(日) 23:52:04 ID:axVCKY3T] 必要なコーデックがインストールされてないとか
86 名前:名前は開発中のものです。 mailto:sage [2009/08/18(火) 08:42:08 ID:RhXPi4iH] 一切WaitTimerとかのウェイト系入れなくても60FPSで動いてるように見えるんだけどどこかで自動的に止まってるの? 止まってるとしたら完全に頼り切っていいのかな?環境によってはウェイト入らない・・・なんてことないよね?
87 名前:名前は開発中のものです。 mailto:sage [2009/08/18(火) 09:43:47 ID:5Sn+aO70] 画面の裏ページを表ページに反映するのに ウエイトかかってると思うの
88 名前:名前は開発中のものです。 mailto:sage [2009/08/18(火) 09:55:18 ID:sXr4stcl] 環境によってはFPSが変わると思うの
89 名前:名前は開発中のものです。 mailto:sage [2009/08/18(火) 11:33:49 ID:00xLRELk] >>86 ScreenFlip使ってるんでしょ。デフォルトだと垂直同期信号待ちしてるから 多くの場合は60FPSで固定されるよ。(環境によっては無視される) ↓の命令でFALSEにしてみればノーウェイトで動くと思う。 宣言 int SetWaitVSyncFlag( int Flag ) ; 概略 ScreenFlip関数 実行時にCRTの垂直同期信号待ちをするかのフラグセット 引数 Flag : CRTの垂直同期信号を待つか否かを決めるフラグ情報 TRUE : 待つ(デフォルト) FALSE : 待たない 戻り値 0:成功 −1:エラー発生 解説 ScreenFlip関数の実行時にCRTの垂直同期信号を待つか、を 決めるフラグを設定する関数です。 基本的に待ったほうが画面の ちらつきが減り綺麗に表示されます。 この関数は垂直同期信号の意味を理解していて、その上で状態を 変更したい方だけが使用してください。 恐らく普通は変更する必要は ないと思います。
90 名前:名前は開発中のものです。 mailto:sage [2009/08/18(火) 13:21:27 ID:zmoiJH/s] 簡単だし必要な基礎知識だから、まずはティアリングとかvsyncとかでぐぐれ。 で、ScreenFlipはデフォでvsyncを取るんだが、その時に単純に待機するんで、60Hzの リフレッシュレートのモニタで垂直帰線を待つ環境だと「たまたまいい具合に」60Hzで 動作するタイマーのような副作用が出る。だが、あくまでも偶然の副作用。120Hzの CRTモニタなんかだと多分倍速ゲー。ライブラリの中身は見てないんで分からんけど、 DirectX9のPresentなんかだと描画領域が全部隠れたらノーウェイトになる。 まぁ、副作用に期待すんな、真面目に書け、ってこと。 余談だが、最近はもうほとんどvsync無視の流れ。洋ゲは元々vsync無視路線だったし、 Vista以降はOS側がティアリングの面倒も見てるっぽいんで。 だが、2Dゲーならvsyncは当分入れた方がいいだろうな。
91 名前:名前は開発中のものです。 mailto:sage [2009/08/18(火) 13:26:04 ID:HFc5HuZS] >>90 つまり「タイマー書け」ということだな 把握した
92 名前:名前は開発中のものです。 mailto:sage [2009/08/19(水) 21:48:34 ID:HjcmZFcs] ttp://pc12.2ch.net/test/read.cgi/tech/1245675989/940 の質問をここでしても良いでしょうか?
93 名前:名前は開発中のものです。 mailto:sage [2009/08/19(水) 21:58:48 ID:0Pez5CCG] >>92 見てきた int clsDx( void );の部分をclsDx();にすればおk
94 名前:名前は開発中のものです。 mailto:sage [2009/08/19(水) 22:11:53 ID:HjcmZFcs] >>93 ありがとうございます!
95 名前:名前は開発中のものです。 mailto:sage [2009/08/19(水) 22:52:27 ID:lo8N+aSi] まぁDirectXスレよりここで質問する方が正しいっちゃ正しいんだが… ぶっちゃけ>>6 だな
96 名前:名前は開発中のものです。 mailto:sage [2009/08/19(水) 22:54:13 ID:MeZHtU7e] こまけぇこたぁ(ry
97 名前:名前は開発中のものです。 mailto:sage [2009/08/20(木) 12:27:11 ID:/tnemE9L] こんにちは DrawGraphなどの描画先を画面ではなく画像データにしたいのですができませんよね? どうしてますか?
98 名前:97 mailto:sage [2009/08/20(木) 12:42:59 ID:/tnemE9L] 画像データというか画面以外のサーフェスに描画したいということです
99 名前:名前は開発中のものです。 mailto:sage [2009/08/20(木) 13:16:31 ID:YSyk4xXm] なるほど
100 名前:名前は開発中のものです。 mailto:sage [2009/08/20(木) 13:35:57 ID:nEJMnXXK] >>98 MakeGraphとかで作ったテクスチャに描画するのなら、 SetDrawScreenでDX_SCREEN_BACKの代わりにグラフィックハンドルを指定すればできる そういうことじゃないのならわかんないや
101 名前:97 mailto:sage [2009/08/20(木) 13:58:30 ID:/tnemE9L] >>100 できました! ありがとうございました
102 名前:名前は開発中のものです。 mailto:sage [2009/08/20(木) 17:07:09 ID:0+koOsTw] DrawGraphなどで有効になる透過色を白色にできないでしょうか?
103 名前:名前は開発中のものです。 mailto:sage [2009/08/20(木) 17:20:54 ID:yefoTBGX] >>102 SetTransColor( r, g, b ) で透過色設定出来るよ
104 名前:名前は開発中のものです。 mailto:sage [2009/08/20(木) 17:22:51 ID:0+koOsTw] ありがとうございます
105 名前:名前は開発中のものです。 mailto:sage [2009/08/21(金) 22:44:36 ID:a6lala98] SetDrawScreenってふつうのグラフィックハンドルも指定できるのか・・・ どこで知ったんだ?実験の賜物とか?
106 名前:名前は開発中のものです。 mailto:sage [2009/08/21(金) 22:50:03 ID:U8PTrxx1] 最初のスレの頃にはもう発見されてたような……
107 名前:名前は開発中のものです。 mailto:sage [2009/08/21(金) 22:53:25 ID:U8PTrxx1] あ、最初に描画可能なグラフィックを作るフラグをオンにする必要があるのを忘れてた…… >>101 は大丈夫だっただろうか
108 名前:名前は開発中のものです。 mailto:sage [2009/08/21(金) 23:02:23 ID:6L4KzEGj] 105のおかげで100の意味が初めて理解できた。 何を言ってるんだろうと思ってた。 ありがとう100と105。
109 名前:名前は開発中のものです。 mailto:sage [2009/08/21(金) 23:16:16 ID:6oCpfJQO] 俺も初めて知った
110 名前:名前は開発中のものです。 mailto:sage [2009/08/21(金) 23:20:00 ID:oiLCSSry] 初めて知った 感動した
111 名前:名前は開発中のものです。 mailto:sage [2009/08/22(土) 04:26:19 ID:4ewWT7wa] SetDrawScreen という関数に画像ハンドルを渡すことで レンダリングターゲットを変更することが出来ます。 ただ、どんな画像ハンドルでも良いと言うわけではなくて、 レンダリングターゲットにすることが出来る画像ハンドルである必要があります。 レンダリングターゲットにすることができる画像ハンドルを作成する為には、 レンダリングターゲットにすることができる画像ハンドルを作成するかどうかを 設定する関数 SetDrawValidGraphCreateFlag に TRUE を渡して呼び出した後、 MakeGraph 関数で画像ハンドルを作成します。 int SubScreen; SetDrawValidGraphCreateFlag( TRUE ); SubScreen = MakeGraph( 640, 480 ); SetDrawValidGraphCreateFlag( FALSE ); こうして作成した画像ハンドルは SetDrawScreen で描画先とすることが出来ます。 SetDrawScreen( SubScreen ); 普通の画像として描画することも出来ます。 DrawGraph( 0, 0, SubScreen, TRUE ); ただ、この機能は他の機能に比べて正常に動作するグラフィックチップの 敷居が高いので、余りお勧めできません。 (ソフトウエアレンダリングモードでしたら確実に動作しますが)
112 名前:名前は開発中のものです。 mailto:sage [2009/08/22(土) 09:14:50 ID:4ewWT7wa] 透過も使いたい場合 hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=past&no=399
113 名前:名前は開発中のものです。 mailto:sage [2009/08/22(土) 11:24:00 ID:4ewWT7wa] うちのPCじゃ透過できなかったorz
114 名前:名前は開発中のものです。 mailto:sage [2009/08/22(土) 14:54:20 ID:qJPnhRZH] ひとの形をしていなかったッ
115 名前:名前は開発中のものです。 mailto:sage [2009/08/23(日) 16:41:05 ID:S7Qhx8zZ] 製作中のゲームのメモリ使用量が300MBと半端ないんだが…。 どういう所を削ってけばいいんだろう。 それと、DXで製作されたソフトは内容にもよるだろうけど、 どのくらいの使用量が打倒?
116 名前:名前は開発中のものです。 mailto:sage [2009/08/23(日) 16:47:53 ID:GkvvlwQe] 画像や音楽データのフォーマット変換
117 名前:名前は開発中のものです。 mailto:sage [2009/08/23(日) 16:48:57 ID:GkvvlwQe] 実行中にメモリ使用量が除所に増えていくようならメモリリークの可能性がある
118 名前:名前は開発中のものです。 mailto:sage [2009/08/23(日) 16:50:31 ID:GkvvlwQe] あとは、リソースは使いたいときだけオープンして使い終わったら開放するとか
119 名前:名前は開発中のものです。 mailto:sage [2009/08/23(日) 20:32:02 ID:GokZTUUA] 俺のパソコンだけかも試練が、 ↑キーまたは↓キーを押している間、文字キーは1個しか入力できないの? ←キーまたは→キーを押している間は文字キーを2個入力できるのに。
120 名前:名前は開発中のものです。 mailto:sage [2009/08/23(日) 20:35:50 ID:GokZTUUA] ゲームのボタン配置変えたら解決した。 X → S Z → A
121 名前:名前は開発中のものです。 mailto:sage [2009/08/23(日) 20:38:29 ID:omMMPR8c] 現在のPCの仕様だから問題ない 同時押しできるキーがある程度決まってるんで、 動的なゲームだとパッド対応にしないと辛かったりする
122 名前:名前は開発中のものです。 mailto:sage [2009/08/23(日) 20:54:06 ID:BIZKogr3] 今のPCゲーは1G2G推奨があるから300M使ったぐらい問題ないだろう
123 名前:名前は開発中のものです。 mailto:sage [2009/08/23(日) 21:30:33 ID:f9+n1yyL] >>122 それで収まってるならいいけどリークしてる場合1G超えちゃったりするから
124 名前:名前は開発中のものです。 mailto:sage [2009/08/23(日) 23:57:34 ID:fzVvbF1D] >>119 キーボードは一部のキー(Shiftなど)を除いて、同時押し出来るように作られてないからな。 >>121 PCの仕様というか、キーボードの仕様だな。 しかも物理的な回路レベルでの話だから、プログラムで解決できる問題じゃない。
125 名前:名前は開発中のものです。 mailto:sage [2009/08/24(月) 03:15:56 ID:04E2ZlIh] いいキーボードを使えば回避できるらしいというのを聞いた頃がある マジ?
126 名前:名前は開発中のものです。 mailto:sage [2009/08/24(月) 03:20:12 ID:I4p4xHvy] 全てのキーの同時押しに対応しているキーボードもある
127 名前:名前は開発中のものです。 mailto:sage [2009/08/24(月) 03:34:59 ID:NKOKVJpx] >同時押しが出来ない コスト削減のためらしいしね。
128 名前:名前は開発中のものです。 mailto:sage [2009/08/24(月) 08:14:30 ID:D9SJqUdL] パソコンによってはできない組み合わせで押すと本体から電子音がでるよね
129 名前:名前は開発中のものです。 mailto:sage [2009/08/24(月) 15:39:22 ID:fDqh5B1I] Nキーロールオーバーでぐぐれ
130 名前:名前は開発中のものです。 mailto:sage [2009/08/24(月) 16:16:31 ID:wBD0oA5j] 画像描画するときに画面の外に描画しようとしたらスキップみたいな親切なことはライブラリのほうではやってもらえない? 自分で計算しないとだめかな
131 名前:名前は開発中のものです。 mailto:sage [2009/08/24(月) 17:05:40 ID:m/vASYf5] >>130 自分で計算っていっても難しいことじゃなくない? 画面サイズの最大値か0を超えようとしたら画像に合わせて処理すればいいだけだし
132 名前:名前は開発中のものです。 mailto:sage [2009/08/24(月) 17:16:05 ID:2t9nwqgt] 描画範囲を指定すると、そこからはみ出したら自動的に描画スキップしてくれてるんだぜ! 指定しなかった場合でも描画先の画面はみ出したらスキップされたような…… 画面内に1000回描画→凄く処理落ち 画面外に1000回描画→処理落ちなし ってことから推測しただけだけど
133 名前:名前は開発中のものです。 mailto:sage [2009/08/24(月) 18:28:42 ID:2+sT6dWW] 俺は画面の内外で当たり判定の有無も変えるようにしてるから 結局判定は自前でやってる。 単純な矩形なら簡単だけど、回転ありにしたらちょっと面倒なんだよね。 まぁ最大半径求めて大雑把に判定させるだけだけど。
134 名前:名前は開発中のものです。 mailto:sage [2009/08/25(火) 22:51:52 ID:YgczeX4M] ウィンドウのサイズを変更できるようにしたいと思います それで例えば画面いっぱいに一枚絵表示したいときは、 画像をウィンドウサイズにあわせて縮小、みたいなことを全ての場面でしなくてはならないのでしょうか?
135 名前:名前は開発中のものです。 mailto:sage [2009/08/25(火) 23:01:16 ID:DAVmGBeA] つ[マニュアル]
136 名前:名前は開発中のものです。 mailto:sage [2009/08/26(水) 00:37:14 ID:fiAN9ZAo] 135凄いな。 134の言いたい事理解できるんだ……俺は無理だった。
137 名前:名前は開発中のものです。 mailto:sage [2009/08/26(水) 04:38:25 ID:sFUkJOAt] >>134 コンパイルして実行すりゃすぐわかることを何故聞く。
138 名前:名前は開発中のものです。 mailto:sage [2009/08/26(水) 18:36:58 ID:qUt4mYH3] >>137 いちいち手間かけなくても画面をストレッチできるように指定できるかどうかを 聞きたかったんだと思うよ わかりにくいけど
139 名前:名前は開発中のものです。 mailto:sage [2009/08/26(水) 20:19:51 ID:vFoh53HS] 最初から解像度大きめに作っておいて、SetWindowSizeExtendRateで調節がベターか?
140 名前:名前は開発中のものです。 mailto:sage [2009/08/27(木) 00:07:53 ID:T/6Db6QY] mp3で四曲合計16Mほどロードしたらメモリー消費量が300Mになったんだけどこんなもんかな?
141 名前:名前は開発中のものです。 mailto:sage [2009/08/27(木) 00:13:07 ID:7m3osaFh] >>140 多分そんなもん ついでにいうと、特にメモリ内にロードしなくちゃいけない理由がない限りは ストリーム再生したほうがいいと思うよ
142 名前:名前は開発中のものです。 mailto:sage [2009/08/27(木) 00:18:39 ID:PkUzIv2U] 関数一覧とか見てニヤニヤするのは俺だけじゃないはず 使いこなしきれてないけどなwww
143 名前:名前は開発中のものです。 mailto:sage [2009/08/27(木) 00:25:58 ID:QySx8uSH] なんで四曲合計16Mほどなのに300Mになってしまうのん?
144 名前:名前は開発中のものです。 mailto:sage [2009/08/27(木) 00:28:36 ID:T/6Db6QY] そんなもんですかサンクス PlayMusicだとループ先頭がセットできないようなんでSoundのほう使ってます
145 名前:名前は開発中のものです。 mailto:sage [2009/08/27(木) 00:29:55 ID:v/FuG6jC] >>143 詳しくないがよくわからんが jpegとかpngだって展開したら結局BMPと同等らしいからMP3もwav並になるとか?
146 名前:名前は開発中のものです。 mailto:sage [2009/08/27(木) 00:36:54 ID:gFnYY/qu] >>143 そこいら周りは、良くわからんがWMPでMP3を再生すると結構消費するな。 BGMとかは、気をつけた方が良いんだな。
147 名前:名前は開発中のものです。 mailto:sage [2009/08/27(木) 01:05:35 ID:cHVgGeXQ] つSetCreateSoundDataType ttp://homepage2.nifty.com/natupaji/DxLib/function/dxfunc_other.html#R15N25
148 名前:名前は開発中のものです。 mailto:sage [2009/08/27(木) 01:22:42 ID:cJyiTera] つまり圧縮された音楽ファイルは読み込み時にデフォルトでwavファイル並の量のメモリ展開がされてるわけだな・・・
149 名前:名前は開発中のものです。 mailto:sage [2009/08/27(木) 12:24:29 ID:K7QbDWYZ] Dxライブラリで原点の設定を変えることは出来るでしょうか? WINAPIの関数でSetViewportOrgEx( HDC, X,Y ,NULL)? と言うのがあるらしいのですが、 もしかしてライブラリ中身をいじらないと無理?
150 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 08:35:35 ID:kw3b0sCg] >>149 3Dでならビューポート行列をセットする関数があるからそれでできる 2Dなら自前でなんとかするしかない
151 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 13:39:24 ID:NuR4qvr2] >>150 ググッててその単語何度か見た気がする・・・・・・。 自前で作ってみるよ。何事も挑戦だよな
152 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 14:02:58 ID:KkzSCV0k] ちょうど自分も同じ問題にぶつかったぜ 絶対座標と、スクリーンの原点を決めれば描画時にxyからスクリーン原点の座標引くだけで行けるぽい
153 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 14:21:28 ID:QSUjzmlq] 原点の設定を変えてどんなことができるようになるんだ?
154 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 14:49:51 ID:m1jmte75] 楽できる
155 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 16:32:56 ID:MVZ2y/yX] >>152 それ以外に方法があるのか知りたい
156 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 21:30:24 ID:NuR4qvr2] いま「弾幕」って本のライブラリをいじってたんだけど。 Dxライブラリを使いながら座標変換の部分だけ取り出したくて、 描画処理関係のソースを必死に読んで組み込んでみたら、 まったく座標が関係なかったんだが・・・・・・。 具体的にどうすればよいの?(つかれた声で)
157 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 21:34:49 ID:KG8AvTh+] 具体的にどうしたいいの?(つかれた声で)
158 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 21:35:29 ID:KG8AvTh+] コピペミスったし
159 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 21:39:25 ID:4C/GS6Sj] かっこわりぃw
160 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 21:48:28 ID:NuR4qvr2] 「弾幕」のサンプルでは、 .原点が画面の中心 .MaxX が1 .MaxY が1 .なのに画面サイズは普通 描画(X,Y)のXに+1しただけで画面端に行く 描画(X、Y) <= オメーはいったい何を基準に描画してんだよ? って言う風な流れでソースを読み始めた。 でも、仮引数に ”コンストラクタ”CGraphics(HWND hwnd)<=なにこれ?っと思って Dxライブラリのヘッダから extern HWND GetMainWindowHandle( void ) ; ってのを見つけて代入したんだけど。 思ったような効果が得られなくて orzしてたところ。 長文スマソ
161 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 21:49:44 ID:2g2Xw9AF] >>156 それは本気で訊いてるのか? 「弾幕」って本を誰もが知ってると思ってるのか? 「座標変換の部分のソース」とやらを俺たちが知ってるとでも思ってるのか? お前さんがどのようにそれを組み込んだか俺たちが知ってるとでも思ってるのか? お前さんがなにをしようとしてたのか俺たちが知ってるとでも思ってるのか? 「まったく座標が関係なかった」ってのがどういう状況だったのか俺たちにわかるとでも思ってるのか?
162 名前:すいませんでしたぁぁぁぁぁ!!! mailto:sage [2009/08/28(金) 21:56:09 ID:NuR4qvr2] ニホンゴ勉強してきまーす
163 名前:名前は開発中のものです。 mailto:sage [2009/08/28(金) 22:25:50 ID:v4qfe6aQ] >>139 に誰か突っ込んでやれよ
164 名前:名前は開発中のものです。 mailto:sage [2009/08/29(土) 02:38:28 ID:uZ03ORl6] また水平思考ゲームか…
165 名前:名前は開発中のものです。 mailto:sage [2009/08/29(土) 02:43:33 ID:oQAm69KI] 原点座標の水平移動!
166 名前:名前は開発中のものです。 mailto:sage [2009/08/29(土) 03:19:38 ID:wEbz732B] 関係ないけど「弾幕」って本面白そうだなw アマゾンのレビュー見る限り弾幕作るのにはあまり約にたたなそうだが
167 名前:名前は開発中のものです。 mailto:sage [2009/08/29(土) 03:29:47 ID:GQMCE92i] それの一つ前のSTGプログラミングって本持ってるけど これも結構良い感じよ 読んでて「なるほどこういう風に考えるのか」ってテクがぎっしり ちと難しいけど
168 名前:名前は開発中のものです。 mailto:sage [2009/08/29(土) 10:47:45 ID:eAXf2/jo] vS2008のC++で開発しています。 DXライブラリでループ中のデバッグってどうやるんでしょうか? F11のステップインで始めてもウィンドウが見えないし、 ウォッチ式も CXX0017エラーです:シンボル"pon"が見つかりません とエラーが出ます。
169 名前:168 mailto:sage [2009/08/29(土) 10:49:29 ID:eAXf2/jo] すいません日本語おかしかったです二行目訂正します。 DXライブラリのProcessMessage関数、ClearDrawScreen関数ScreenFlip関数を使用し、 ループさせているときのデバッグってどうやるんでしょうか?
170 名前:名前は開発中のものです。 mailto:sage [2009/08/29(土) 13:45:22 ID:iB7bt5pR] エラーの原因臭い箇所にブレークポイントつけてF5でデバッグ開始、 そこからF10のステップオーバーで処理を追う。 デバッグなしで実行する場合は関数のエラー時にMessageWindowを呼ぶと分かりやすいよ。
171 名前:名前は開発中のものです。 mailto:sage [2009/08/29(土) 14:37:44 ID:Dgspg8qU] つDrawFormatString
172 名前:168 mailto:sage [2009/08/29(土) 14:42:16 ID:eAXf2/jo] >>170 >>171 ありがとうございます 私も今はDrawFormatStringでウォッチウィンドウみたいなものを作ってます
173 名前:名前は開発中のものです。 [2009/08/29(土) 22:36:31 ID:MCRpsmFK] SetTransColorの透過色設定 Windows7だとうまく透明化しない場合があるけど その場合あらかじめbmpで保存してその後にbmp2pngなどのツール使ってpngつくったら 透明化できた
174 名前:名前は開発中のものです。 mailto:sage [2009/08/29(土) 22:54:27 ID:fvZFlbGy] 透過色指定は画像ロードの前に! って、同じところで悩んでた覚えのある俺のソースにコメント入ってた。
175 名前:名前は開発中のものです。 mailto:sage [2009/08/30(日) 02:44:15 ID:y9n97dOf] 座標(0,0)のRGB値を透過色として指定したいとおもっているのですが、 座標(0,0)のRGB値を得るにはどうしたらいいですか。
176 名前:名前は開発中のものです。 mailto:sage [2009/08/30(日) 02:45:20 ID:y9n97dOf] 画像ファイルの、です。
177 名前:名前は開発中のものです。 mailto:sage [2009/08/30(日) 02:52:09 ID:4ar2ylnT] これかなぁ 宣言 int GetPixelSoftImage( int SIHandle, int x, int y, int *r, int *g, int *b, int *a ) ; 概略 CPUで扱うイメージの指定座標の色を取得する(各色要素は0〜255) 引数 int SIHandle : ソフトウエアイメージハンドル int x, int y : 色を取得する座標 int *r : 取得した色の赤成分を書き込む変数のアドレス int *g : 取得した色の緑成分を書き込む変数のアドレス int *b : 取得した色の青成分を書き込む変数のアドレス int *a : 取得した色の透明度を書き込む変数のアドレス 戻り値 0:正常終了 −1:エラー 解説 LoadSoftImage 関数や、MakeARGB8ColorSoftImage 関数等で作成したソフトウエアイメージハンドルの指定の座標の色を取得します。 赤・緑・青・透明度各成分の値は0〜255です。透明情報の無い画像形式の場合の透明度は不定です。読み込み対象がパレット画像の場合は指定された座標のパレットの色が変数に代入されます。
178 名前:名前は開発中のものです。 mailto:sage [2009/08/30(日) 02:52:39 ID:CiTH8nsL] LoadSoftImageしてGetPixelSoftImage