[表示 : 全て 最新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/

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

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ファイル並の量のメモリ展開がされてるわけだな・・・






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

前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