[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 2chのread.cgiへ]
Update time : 05/09 12:23 / Filesize : 179 KB / Number-of Response : 789
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



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/

10 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 09:05:04 ID:bFMOlul4]
>>8
俺もポインタとか必要になるまでよくわからなかったし、
必要になれば覚えるもんだよ

「あ! 今やりたいことコレ使えばできるじゃん!!」
って気づいた時の喜びといったらもうね

11 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 10:16:45 ID:EzwBEj6R]
フンドルワラタ

12 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 10:52:15 ID:QAwN9V2J]
フンドレの人はマジでC言語初心者スレとか探した方がいいな

13 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 10:58:48 ID:HlYTjnic]
自動リソース管理
ポリモーフィズム

これだけでも覚える価値あり
ポリモーフィズムはすごいゲームと相性いいしね


14 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 12:31:05 ID:xD0qaraW]
>>10
分かる分かるw 俺もまさにそうだ。
きっかけはリプレイ機能付けたいな、だったかしら

15 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 15:24:33 ID:Ug4ZM9mI]
俺もクラスよく分からんのだが
STGの弾作るときに便利だと聞いた
今から弾処理だから勉強してみる予定

16 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 16:52:41 ID:QAwN9V2J]
structとclassは全く同じ。classはデフォがprivateになっただけの構造体。
メンバ関数は、隠れ引数として構造体へのポインタ*thisがこっそり付いただけ。つまり、
以下の二つは大体同じ意味のコード。

// Cっぽい版
struct vector2d {
float x, y;
};
inline void rotate_vector2d(vector2d *this, float theta) {
vector2d old = *this;
this->x = old.x * cosf(theta) - old.y * sinf(theta);
this->y = old.x * sinf(theta) + old.y * cosf(theta);
}

// C++版
struct vector2d {
float x, y;
void rotate(float theta) { // vector2d *this は隠れ引数として勝手に入る
vector2d old = *this;
x = old.x * cos(theta) - old.y * sin(theta); // メンバ変数アクセスは勝手にthis->が入る
y = old.x * sin(theta) + old.y * cos(theta);
}
};

仮想関数は、派生クラスの仮想関数へのポインタ一覧vtblが隠れグローバル定数として
用意されてて、派生クラスの実体にはvtblへのポインタであるvptrが隠れメンバ定数と
してくっついてる。で、仮想関数を呼ぶ時はvptrを通して参照する。
thisと違って、vtblやvptrには普通は触れない。触る必要も無いし。

クラスの仕組みはこんなもん。あとは使い方次第。
コンストラクタには変な仕様が色々くっついてるから覚えた方がいいけどな。

17 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 16:55:28 ID:++6V/igm]
うまく使えば
new Bullet(
 this, // 親は自分で
 RAD(270), //270度方向に
 10, //1フレーム10pixelで動く
 GROUP_FRIEND //味方の弾
); //を作るよ!
ってできて楽しいだけ。

18 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 17:08:08 ID:jE6nNtzy]
こういうの見せられると、
「俺って実はプログラム全然できてないんじゃないか」
と思うなぁ。

一応ゲームはできてるんだけどねw



19 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 17:16:17 ID:QAwN9V2J]
完成品が一つも出てこないよりはいいんじゃね?

20 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 17:28:46 ID:++6V/igm]
DxArchiveのソース見てたら単にファイル格納&暗号化じゃなくて圧縮&暗号化だったんだな
各APIでも読み込めるしかなり使いやすいな

21 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 18:10:02 ID:91ixwnBP]
DxArchiveのエンコードとデコードをプログラムからやる方法教えてください

22 名前:名前は開発中のものです。 mailto:sage [2009/08/10(月) 18:22:48 ID:g7oYbweh]
つ homepage2.nifty.com/natupaji/DxLib/dxtec.html#T11


23 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 00:22:51 ID:y+GUJ2eW]
クラスが便利なことを実感するのは2個目のゲームを作るときだと思う俺ガイル
自分でつくったものをブラックボックス的に使いまわせるってすごい便利

24 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 00:36:49 ID:ubRnnBVT]
必要性を感じないなら無理にクラスを使う必要はない。
重要なのはクラスを使うことではなく分かりやすいプログラムを書くこと。
分かりやすいプログラムを追及していくとおのずとオブジェクト指向/クラスへと向かっていく。



25 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 01:14:30 ID:F+5v/k7H]
ちゃんと最後に かもしれない とつけてくださいね

26 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 02:11:06 ID:L7W3nnsg]
なんだそりゃ
どうしても抽象化できない病気とかならともかく

27 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 02:47:06 ID:E0sSKTbh]
クラス勉強したいなー
ってことで俺は今、クラス化している。

それくらいの動機でもいいよね?

28 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 02:56:03 ID:hi68lz2+]
いいんじゃないかな<動機
便利な使い方が分かると、楽しくなってくる、、、と思う



29 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 03:53:37 ID:Ev9Wt5wN]
>>22
たとえばオリジナルのセーブデータをDxArchiveで暗号化して保存することってできますか?

30 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 04:21:17 ID:E0sSKTbh]
>>29
ソースが公開されているように見えるが

31 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 09:51:42 ID:kbSEr/35]
ファイル分割して関数書いて、で綺麗に片付くならそれでいい。
クラスに包む方が綺麗に片付くところは、クラスを使えばもっといい。
使い分けが適切ならさらにいい。

32 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 12:46:59 ID:88dfSPXH]
同じようなゲーム作りたくないから
クラスが役に立ったことはほとんど無いな

描画系関数はかなり再利用するから
ファイル分割して綺麗に関数をまとめた分にはかなり役に立つ

33 名前:名前は開発中のものです。 [2009/08/11(火) 13:15:45 ID:jm9PqIPM]
たとえばどんな関数をつかいまわすの?

34 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 13:25:12 ID:bYgbIZyE]
モザイクかけたりボカシかけたりシャープにしたり
ノイズ入れたり回転させたりセピアにしたり

35 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 13:36:49 ID:jm9PqIPM]
よくわからないけどそういうのって関数一つにできるもんなの?
Mozaiku(x1,y1,x2,y2)みたいに?


36 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 13:38:13 ID:88dfSPXH]
うん

37 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 13:48:11 ID:jm9PqIPM]
いったいどうやって?画面情報を取得して、CPUのほうで計算して上から貼付けたりするの?

38 名前:名前は開発中のものです。 mailto:sage [2009/08/11(火) 13:49:48 ID:88dfSPXH]
うん



39 名前:名前は開発中のものです。 mailto:sage [2009/08/12(水) 13:04:35 ID:/zSclh+b]
シーンをクラス化する利点がよくわからなくて
switch文で頑張る俺

40 名前:名前は開発中のものです。 mailto:sage [2009/08/12(水) 14:01:46 ID:3OGNII1m]
if-eilse if-elseでもswitchでも関数ポインタテーブルでも仮想関数でも普通に書ける上で
switchが総合的に見て一番いい状況だからswitchで頑張る、ならそれでいい

41 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 01:13:11 ID:u+NBJI2f]
組み方によっては、シーンを追加するたびにシーン管理のコードを変更しなきゃならないからなあ。
せっかくライブラリっぽくしたのに、いちいち弄らされるのは面倒だ。

そこがクリア出来るなら何でもいい。

42 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 02:32:38 ID:tx0/U4pP]
キャラクタを白く点滅フラッシュさせるためには
それ用にマスク画像を用意しないとできないかな?

43 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 02:49:29 ID:wLlGHcGf]
少なくとも俺は、同じ事をしようとした時、それしか解決策を思いつかなかった。

44 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 03:37:12 ID:uVGvNX64]
SetDrawBrightで輝度値設定してやるとか

45 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 03:54:30 ID:wLlGHcGf]
いや、SetDrawBrightだと最高100%までしか輝度あげられなくて、
その100%ってのは、画像そのまんま表示って事なのよ。

つまりSetDrawBrightは暗くはできても明るくはできない。

46 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 04:13:42 ID:uVGvNX64]
SetDrawBright(0,0,0);//暗く
SetDrawBlendMode(DX_BLENDMODE_INVSRC);//反転
とするのはどうかな

47 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 07:09:05 ID:fyRM2WT2]
それだけZバッファを適用して、きつくした白いフォグを適用させるって冗談みたいな方法もあるぞw

48 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 09:08:42 ID:hlVZHvkF]
武器とか魔法のデータってどうやって管理してる?
やっぱり大本のクラスを作って継承させる感じ?
DBとかでもりもり書いたほうが楽そうではあるんだけれど



49 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 10:27:48 ID:ymWx9+cu]
>> 42
パレット操作

50 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 11:29:30 ID:FIgxQyht]
そういやパレット操作の命令が追加されたんだっけ。

それを使って白い画像を作って、グラフィックハンドルまで用意しておけばできるはずだな……。

51 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 13:06:09 ID:8SGCfcLw]
>>48
struct(構造体)を持つSTLのリストを作って、そこで管理
新しく何かを手に入れたならば、リストに新しい構造体を埋める
代入する値は手打ち、つまり長々と代入文を書く。DB化してもよいが労力は大差ない
これは仲間キャラクターや戦闘の管理に向いているだろう

もう1つは数値をひとつ代入するリストを作って
そこに例えば武器ナンバー001番って値を入れて
必要な時に武器の威力や効果をまとめた関数を読み出す
この方法は数値が絶対に変わらない武器や道具の管理に向いている

最後に、bool型のスイッチを作って、Trueなら入手した、と考える方法
この方法は魔法やイベントフラグなど、数値も数も考えない物の管理に向いている


52 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 22:01:59 ID:hlVZHvkF]
>>51
ありがとう
2つ目のパターンがいいのかな
どうも膨大になっちゃってたからいろいろ試してみる
ありがとう

53 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 22:09:12 ID:LkhPG9Xp]
構造体の代入じゃ駄目なのかそれ

54 名前:名前は開発中のものです。 mailto:sage [2009/08/13(木) 23:45:36 ID:u+NBJI2f]
テンプレで、名前や数字を変えるだけで何とかなるものと、それだけでは表現できないものと、両方がある。

武器や魔法は前者であることが多いと思う。
ダメージなどが違うだけでアルゴリズムは変わらない。回復/支援魔法なども入れても数パターンで済む。
TRPG的な魔法とかはコンピュータゲームじゃ作りにくいだろうし。

逆に、イベントなどは後者で作られる。
クラスの継承なり、関数ポインタなり、外部スクリプトなりで、イベントごとにまるっと別の処理になるだろう。
ただしその場合でも、共通データを格納する部分は、武器や魔法と同じようなテンプレ処理を利用することになるかも。



55 名前: ◆GRGSIBERIA [2009/08/14(金) 00:12:28 ID:FT3Wa2QE]
>>51
戦闘で魔法を使うんならその方法でいいだろうけど、
呼び出すときに関数ポインタ使わなきゃならんから面倒くさくね?
データ的には安上がりでいいんだろうけど、可読性考えると怖いなあ……。

56 名前: ◆GRGSIBERIA mailto:sage [2009/08/14(金) 00:19:13 ID:FT3Wa2QE]
ごめんなさい。
二番目の話です。

57 名前:名前は開発中のものです。 mailto:sage [2009/08/14(金) 00:50:19 ID:E9/t+ChI]
基本基本クラスで例外は派生クラスでいいんじゃね

58 名前:名前は開発中のものです。 [2009/08/14(金) 01:01:23 ID:Bq2DtYMd]
まあ別に仕事でプログラムする以外だったら好きなようにすればいいんじゃね



59 名前:名前は開発中のものです。 mailto:sage [2009/08/14(金) 15:49:45 ID:X3RFlmNR]
dxライブラリがSetDrawScreenで使っているバックバッファに
dxライブラリを介さずに絵を書き加えてやる方法はないもんかな・・・

それができるだけで結構3D表示させられそうなんだが

60 名前:名前は開発中のものです。 mailto:sage [2009/08/14(金) 16:36:31 ID:zyAixWsB]
>>59
俺の場合3Dは行列系関数とDrawPolygon3Dで間に合ってるけど、
それって裏画面にDirectXで描画するってこと?

61 名前:名前は開発中のものです。 mailto:sage [2009/08/14(金) 16:39:24 ID:yqfw1t8Z]
うん

62 名前:名前は開発中のものです。 mailto:sage [2009/08/14(金) 16:42:41 ID:X3RFlmNR]
>>60
そそ。それでxファイルにして読み込んだ
ちょっと複雑な形を描きたいのさ

ちなみに直接表に描かせたら
最前面にチラつきながら描かれた。当たり前だが

63 名前:名前は開発中のものです。 mailto:sage [2009/08/14(金) 16:44:04 ID:gSsKeH9y]
DX3D持ってたらそれ使うのもいいかも
使ったこと無いから分からんが

64 名前:名前は開発中のものです。 mailto:sage [2009/08/14(金) 16:45:05 ID:nG17WJCb]
3Dを扱うのだったら、 DarkGDKがお勧め
使い勝手は、DXライブラリとほとんど同じ。

DarkGDK
wiki.game-develop.com/index.php?DarkGDK

DarkGDKの3Dデモ
gamdev3.hp.infoseek.co.jp/cgi-bin/up/No_0416zip.html


65 名前:名前は開発中のものです。 mailto:sage [2009/08/14(金) 16:57:46 ID:zyAixWsB]
DXライブラリの内部構造についてだったら公式で質問するのがいいかも

関係ないけど俺は自前でmqoファイルを読み込んでDrawPolygon3Dで表示させてる
アニメーションさせないならこっちのほうが簡単な可能性も。

66 名前:名前は開発中のものです。 mailto:sage [2009/08/14(金) 17:20:43 ID:X3RFlmNR]
>>63-65
ありがと
せっかく用意されてるんだからDrawPolygon3Dでやるのが一番かねえ
半日ぶんの作業ムダ\(^o^)/になるけどさ・・・

67 名前:名前は開発中のものです。 mailto:sage [2009/08/14(金) 18:06:22 ID:3WJxATTy]
そこまでやるならDirectXで全部やる手も有力じゃね

68 名前:名前は開発中のものです。 mailto:sage [2009/08/14(金) 21:00:47 ID:29Ur8y7j]
DXライブラリの3Dが弱いってのは周知といえば周知だからなあ
なんともいえない感じ

自分もひとつ聞いていいかな
DrawFormatStringToHandleで文字出すときに文章列を垂直に描画する方法ってないものか
縦書きではなくあくまで横書きの文章を90度倒した感じでだしたいのだけれどどうだろう?
いまは画像ファイルに書き起こしたものをスタブで表示してるんだがそれにも限界があるなあと思って聞いてみた



69 名前:名前は開発中のものです。 mailto:sage [2009/08/14(金) 23:59:27 ID:zyAixWsB]
>>69
つDrawFormatVStringToHandle
多分コレ

70 名前:名前は開発中のものです。 mailto:sage [2009/08/15(土) 00:06:33 ID:6Y2Lsqny]
ありがてえありがてえ
ヘッダ読んだらほんとにあったよ
やっぱ一度読むべきかなあ
ともあれサンクス

71 名前:名前は開発中のものです。 mailto:sage [2009/08/15(土) 00:06:58 ID:/+RAh+Ze]
感動した

72 名前:名前は開発中のものです。 mailto:sage [2009/08/15(土) 04:30:18 ID:0tJ1Sg/h]
ヘッダ読むとドキュメント化されてないすげえ関数いっぱい紛れてるから一度は読むべきだよな

73 名前:名前は開発中のものです。 mailto:sage [2009/08/15(土) 05:38:43 ID:0FgKCDOQ]
でも公開されてないって事は動作保証もされてないんでしょ?
ちょっと使うには不安だなぁ。

自分だけで楽しむモノを作るのならともかく。

74 名前:名前は開発中のものです。 mailto:sage [2009/08/15(土) 09:50:43 ID:0tJ1Sg/h]
フリーのライブラリで動作保証www

75 名前:名前は開発中のものです。 mailto:sage [2009/08/15(土) 10:23:55 ID:ZOL661pL]
フリーのライブラリに過度なサポートを求めるのもアレだと思うけど、
管理人はちゃんとリファレンスに載ってない関数も仕様のうちに含めてやってくれてるよ

自分で動作確認したり、ヘッダ読んだだけで用途が分かる人なら使っても問題無し。

76 名前:名前は開発中のものです。 mailto:sage [2009/08/15(土) 12:54:50 ID:KTR4wq9i]
DrawFormatStringをオーバーロードしてキャストによる警告を防ぎたいんだけど
どうやってオーバーロードすればいいんでしょうか
, ... ) ; ←最後のコレのせいでうまくいかない

77 名前:66 mailto:sage [2009/08/15(土) 22:42:39 ID:eXbOcFmf]
ところでDXlibとは別口で用意させたバックバッファを適当なサーフェイスに写し取って、
CreateGraphFromMemでハンドル取らせてDrawGraph、というのもやってみたが
やっぱりうまくいかなかった
というかエラー直していく気力が尽きた

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]
初めて知った
感動した






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<179KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef