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

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



179 名前:名前は開発中のものです。 mailto:sage [2009/08/30(日) 02:58:52 ID:y9n97dOf]
すいません画像ファイルはリソースとして実行ファイルに埋め込んでいてLoadGraphToResourceで読み込むのでLoadSoftImageは使えないですどうしたらいいですか

180 名前:名前は開発中のものです。 mailto:sage [2009/08/30(日) 03:11:30 ID:y9n97dOf]
'GetPixelSoftImage': 識別子が見つかりませんでした

181 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 03:30:53 ID:CiTH8nsL]
リソースに埋め込むってことはライブラリからやれることを制限しちゃうのであんまり勧められてないと思うんだけど
こういう風にしたら無理やり取れるかな?
SetDrawValidGraphCreateFlag( TRUE );
SubScreen = MakeGraph( 1, 1 );
SetDrawValidGraphCreateFlag( FALSE );
SetDrawScreen( SubScreen );
DrawGraph( 0, 0, ResourceBMP, FALSE );
color = GetPixel( 0, 0 );
SetDrawScreen( DX_SCREEN_BACK );
DeleteGraph( SubScreen );

182 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 04:30:33 ID:cI6gEy1Z]
GetPixelじゃ駄目なん?

183 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 11:48:44 ID:RtX14t/M]
CUIからCUIの移行がわけわかめ
タイルベースのゲームなんだけどCUIでのあるFから次のFまでの間の補完の仕方がさっぱりだ
updateのほうも書き直さないとだめなのかなこれ

>>168
int main(void)にして標準出力するとゲーム画面のほかにコマンドプロンプトが開かれるからデバッグに使えそうな気がする

184 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 15:38:21 ID:CRpFUzJB]
CUIって聞いて何のことかサッパリな俺

185 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 15:55:39 ID:WME/rg1R]
CUIはわかるけど183が何を言ってるのかサッパリな俺 Fってなに?

186 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 17:20:24 ID:wkJ8VIAR]
FCUP

187 名前:名前は開発中のものです。 mailto:sage [2009/08/31(月) 17:09:24 ID:j0BBlJ3J]
巨乳プログラミングか

188 名前:名前は開発中のものです。 mailto:sage [2009/08/31(月) 19:40:48 ID:HKlHFgLy]
>>183
CUIからCUIの移行がわけわかめ → 説明するつもりが全く無い
タイルベースのゲーム → 2DドラクエやねとはくやCrawlの画面を想像させるがやはり何も特定できない
あるFから次のF → 「フレーム」だとわかるが
補完の仕方が → 補完てのが何か何を何で補完なのかこれも説明するつもりが無い
updateのほうも → cursesでいうところのrefresh()を想像させるが特定のプログラムを前提とした言い方なのにDXライブラリにおいての何かはわからない

キー待ちのルーチンは
ClearInputCharBuf() と GetInputCharWait()
でgetch()相当のものを作るとCUIのゲームを移植する助けになる



189 名前:名前は開発中のものです。 mailto:sage [2009/08/31(月) 19:54:39 ID:j0BBlJ3J]
なんだ>>183はただのカッコ付けたがりの初心者だったのか

190 名前:名前は開発中のものです。 mailto:sage [2009/08/31(月) 19:58:59 ID:TnY2fXBk]
>>189

そういう言い方もなんかかっこ悪いから止めといた方がいいよ。

191 名前:名前は開発中のものです。 mailto:sage [2009/08/31(月) 20:12:13 ID:j0BBlJ3J]
ごめんなさい

192 名前:名前は開発中のものです。 mailto:sage [2009/08/31(月) 20:20:05 ID:gxnPvUD+]
ローグみたいなマス目区切りのゲームで
ある枡からとなりの枡に歩かせるみたいな処理がわかんない
CUIだと移動前と移動後の座標に対応した位置に文字をプリントするだけだけど
GUIだと移動中も補完しないといけないけどそのうまいやりかたがわからない
キャラクターに整数のマス目座標だけじゃなくて実数の座標も持たせて
ゲームの1ステップの更新処理を書き直さないといけないのかな

193 名前:名前は開発中のものです。 mailto:sage [2009/08/31(月) 20:31:03 ID:0NTvvGjW]
そうですね

194 名前:名前は開発中のものです。 mailto:sage [2009/08/31(月) 20:39:29 ID:j0BBlJ3J]
>>192
更新処理はアニメーションの時間を挟むように書き直さないといけないと思う
実数の座標を持たせる方法もあるけど、移動前のマスの座標を記憶しておくだけでも大丈夫な気もする
あと、アニメーションが何フレーム目かを数えておく変数。

移動に30フレーム掛かるなら、移動アニメーション時のみ描画座標を
(float)( [移動後の描画座標] - [移動前の描画座標] ) / 30.0f * [フレーム数] + 移動前の描画座標
みたいにすると比較的楽に実装できるかもしれない

カッコつけ呼ばわりしてゴメンね

195 名前:名前は開発中のものです。 mailto:sage [2009/08/31(月) 20:39:54 ID:CGTLvA+X]
公式サンプルの4を見ればいいんじゃないかな。
ttp://homepage2.nifty.com/natupaji/DxLib/dxprogram.html


196 名前:名前は開発中のものです。 mailto:sage [2009/08/31(月) 22:19:58 ID:oBCh4ToJ]
>>192

普通に座標で扱って、マス目の方をそれに合わせるのが楽だと思う。

1マスの大きさが32×32だとすると、

┌─┬─┐
│A │B │
├─┼─┤
│C │D │
└─┴─┘

Aの座標は (0*32.0*32)
Bの座標は (1*32.0*32)
Cの座標は (0*32.1*32)
Dの座標は (1*32.1*32)

ってなるからそれに合わせて停止させるなり、なんなりすればいいんじゃない。

197 名前:名前は開発中のものです。 mailto:sage [2009/08/31(月) 23:06:45 ID:X2VhMns5]
まずは途中のアニメのないバージョンを作ってから考えればいいんでないかい。

>>196
ごめん、正直それは無いかなと思った。
確かに描画処理は正直で分かりやすいが、それ以外の部分にしわ寄せが来ると思う。

198 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 01:37:56 ID:23qSxMZB]
別に普通に座標で扱っても枡の座標なんて32で割ればいいだけじゃん



199 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 02:31:19 ID:8OtNRGcI]
ゲームの内容が、描画の都合に合わせられるって問題じゃね?

200 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 02:58:02 ID:oEGjKhW3]
どんな不都合があるのか全く想像できない。
逆にマス目優先にした方が不都合出る気がするのだが。

201 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 04:49:18 ID:23qSxMZB]
まあローグライクやRPGのような非リアルタイプのゲームだと座標優先にする必要ないのかもね
基本マス目で取って移動時の描画の時だけその分ずらすなりすれば

202 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 05:08:12 ID:8OtNRGcI]
>>201
そんな感じかな。

もちろんリアルタイムなゲームで、ゲーム的な座標と表示される座標を切り分けても良いと思うよ。
マップの拡大/縮小なんかも出来るようになるし。

格闘ゲームなんかに多いのかな?
2人の距離が近いと画面がズームインして、離れてるとズームアウトするような演出。

203 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 10:51:04 ID:nKmT4YF9]
>それ以外の部分にしわ寄せが来ると思う。
>例えば、 ←ここが抜けてる

204 名前:192 mailto:sage [2009/09/01(火) 12:17:02 ID:yHdt/VNY]
レスdです
>>194,195あたりを参考にさせてもらいます

205 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 13:52:42 ID:8OtNRGcI]
>>203
>202

206 名前:197=205 mailto:sage [2009/09/01(火) 14:35:15 ID:8OtNRGcI]
アンカーだけ貼るのも大人げないと思った。ごめん。


>>203
ローグあんまり詳しくないので、例えを将棋に変更させてくれ。そんなに変わらんと思うし。

基本となるのは、ゲームの処理部分と描画部分は可能な限り分けるべき、という考え方。
あくまで個人的な考え方なので、参考までに。


まず、今回の話でいうゲーム処理/描画優先というのは、例えば「歩」を一歩前に進める処理をした場合、
 ゲーム優先: y -= 1;
   描画優先: y -= SQUARE_WIDTH; //SQUARE_WIDTHは1マスの大きさ
のようなコードになることを指す。
将棋の場合は、実際には相対座標ではなく棋譜のようなデータをやり取りするような気もするけどね。

当然ながら、SQUARE_WIDTH というのは描画に必要な数字であって、将棋のルーチンには関係がない。
ゆえに、処理と描画の分割の原則に反する。


実際に作るところを想像してみれば分かると思うが、
コマを動かす、コマを取る、コマを使う…などと、あらゆる場面で SQUARE_WIDTH の値が必要になる。
それらを関数に切り分けたとしても、やっぱり SQUARE_WIDTH が要ることには変わりない。

となると、グローバル変数にするか、全ての処理関数に引数として渡すか、処理クラスのメンバ変数にするか…
みたいな話になってしまう。これはちょっと面倒くさい。

207 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 14:52:19 ID:8OtNRGcI]
>206の続き

メリットはもう1つあって、演出の部分を独立して記述できるというのがある。
パッと思いつくのは、以下の2つ。

 (1)コマを動かすアニメーション
 (2)将棋盤やマスの外見(大きさや向きなど)


(1)については、コマを等速で動かす以外にも、
瞬間移動のような演出で移動したり、本当に将棋を打っているような動かし方(一旦コマを取ってから目的の位置に直接打つ)
なんて感じにもアレンジできる。

(2)について、将棋盤を拡大/縮小したり、回転させたり…ということ。
DXライブラリだと微妙だが、頑張れば3D表示にすることも出来るんじゃないかな。

将棋からは少し離れるが、>202に挙げた格闘ゲームのような場合だと、
画面のズーム具合によって当たり判定が変わってくるとか、あんまり考えたくないw



「描画優先」だと、これらの演出をやろうとしたら、処理ルーチンまで弄らなきゃならない。
プログラマが複数居る場合や、自分が昔作ったコードを再利用しよう!って時には非常に便利。

208 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 15:13:02 ID:nKmT4YF9]
要するにアニメーション用のデータと関数を別に作れって事だよね?



209 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 15:34:28 ID:8OtNRGcI]
うん。

210 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 15:49:03 ID:cIBqgsTF]
結局どんな方法でもできちゃうから、人それぞれの実装になっちゃうんだよなぁ
こういうのは結構性格が出るもんだよね

211 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 17:02:32 ID:XGg+VYDQ]
そうだよねえ
俺とかは最近は関数型言語にはまってるからクラス書くの躊躇しちゃうし。
書くけど

212 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 17:04:37 ID:274s1Rjx]
一度C++の勉強するのもありだよ
クラス以外にも使えるものがたくさん増えるから

213 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 17:07:47 ID:XGg+VYDQ]
俺に言ってるのかな?
大丈夫C++系言語で関数型ぽくやってるだけだから

214 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 17:22:53 ID:+fqDZss/]
STLとBoostとテンプレートは便利だなぁ

215 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 17:42:13 ID:R+Ajue9X]
STLしか使ったことないなー
Boostって実際便利なのかしら
……ってそろそろスレチだね

216 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 18:10:35 ID:79ZlRDOx]
正規表現のために導入したな…

217 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 22:01:53 ID:p5MLHwg5]
VS2008のC++でプログラムを書いています
DXライブラリを使って色々書いているのですが、
これは何という環境になるんでしょうか??

SDKやMFCとか色々聞きますが、定義は調べて何となくわかるのですが
実際使ってみてもイマイチピンと来ません。
恥ずかしい質問ですが、よければ教えてください

218 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 22:08:21 ID:R+Ajue9X]
>>217
開発環境のことかな?
よくわかんないけど
VC2008+DXライブラリ……ってことになるんじゃないのじゃないの?



219 名前:名前は開発中のものです。 mailto:sage [2009/09/01(火) 22:10:47 ID:p5MLHwg5]
>>218
C++/CLIとか色々区分けがあるようでよく分からないままでした
特にないのですね、ありがとうございます


220 名前:名前は開発中のものです。 mailto:sage [2009/09/02(水) 05:50:56 ID:PDqEN4Be]
本家掲示板より一部コピペ

[2371] 現状報告 投稿者:管理人 投稿日:2009/08/26(Wed) 00:28 [返信]


●●さんも仰られていますが現在の機能でも一応3Dゲームを作ることは可能です
が、●●さんの仰られているとおり3Dモデルを描画したい場合に3Dモデルを読み込む
プログラムも自前で用意しなければならないのでちょっと大変です。

なので現在DXライブラリの側で3Dモデルを読み込んだり描画したりする機能を作っています。
公開までにはまだ時間がかかりそうですが・・・





ってことはもうすぐDXライブラリが3Dもやりやすくなるってこと!?


221 名前:名前は開発中のものです。 mailto:sage [2009/09/02(水) 10:08:37 ID:rPa0Irhp]
3D機能のことは作者さん自身が結構前から掲示板で言ってるね。
シェーダー書いてるとか、サンプルゲーム作っているようなことも書いてあったと思う。


222 名前:名前は開発中のものです。 mailto:sage [2009/09/02(水) 11:10:30 ID:txodknIz]
dxライブラリ作者さんには本当に頭が上がらないけど
実質作者さん一人で作ってる状態だから
作者さんのやる気が失われたらそれまでだよな。
やはりいつかはdirectxを直接叩けるようにならないとダメかな。

223 名前:名前は開発中のものです。 mailto:sage [2009/09/02(水) 12:21:40 ID:Cce9QmIE]
モデルの読み込み、表示自体はとても簡単だったりする……
でもモデルって意外とメモリ食うんだよなぁ……

224 名前:名前は開発中のものです。 mailto:sage [2009/09/02(水) 12:59:12 ID:mmNevjUs]
意外っていうか、そりゃ食うだろうなと思うのは素人考えか?

225 名前:名前は開発中のものです。 mailto:sage [2009/09/02(水) 13:28:14 ID:Cce9QmIE]
数値だけの構造体の配列のサイズなんて誤差の範囲だぜー
とか思ってたら確保失敗するくらいのサイズになったんで、当時の自分が素人だったのです

226 名前:名前は開発中のものです。 mailto:sage [2009/09/03(木) 07:04:26 ID:T5vV7TnQ]
ウインドウのアイコンを変更するにはどうすればよいでしょう?
環境はVC++2008EEです

ttp://homepage2.nifty.com/natupaji/DxLib/dxtec.html#M2
のページの「VisualC++ 2005 Express Edition の場合」を実行し、
タスクバーのアイコンは変更できました。その後、
ttp://homepage2.nifty.com/natupaji/DxLib/function/dxfunc_other.html#R11N2
を実行しようと思いましたが、
「VisualC++ はプロジェクトの フォルダに勝手に『resource.h』」
とありますがこれが作成されません
無いので自分でresource.hを作成して「#define IDI_ICON1  101」とコードをいれ、インクルードしてみましたが
error C3872: '0x3000': この文字を識別子で使用することはできません
エラーが返ってきます。
どうしたら良いでしょうか?

227 名前:名前は開発中のものです。 mailto:sage [2009/09/03(木) 10:46:56 ID:1k0ytKa3]
全角スペース入ってるんじゃない?
参考
ttp://tmopro.jugem.jp/?eid=57

228 名前:名前は開発中のものです。 mailto:sage [2009/09/03(木) 17:48:16 ID:gF4nk6I+]
>>227
ありがとうございます。おかげさまでそのエラーは出なくなりました
が、別のエラーが出るようになりました
1>c:\documents and settings\user1\デスクトップ\te\main.cpp(8) : error C2365: 'SetWindowIconID' : 再定義; 以前の定義は '関数' でした。
1> d:\program files\vc++\dxlib_vc\プロジェクトに追加すべきファイル_vc用\dxlib.h(1288) : 'SetWindowIconID' の宣言を確認してください。
1>normal.cpp



229 名前:名前は開発中のものです。 mailto:sage [2009/09/03(木) 17:50:39 ID:gF4nk6I+]
以上がエラーです
後、dxlib.h(1288) はこうなっていましたが、触ったことはありません
extern int SetWindowIconID( int ID ) ;
どこがおかしいんでしょう・・

230 名前:名前は開発中のものです。 mailto:sage [2009/09/03(木) 18:05:44 ID:A1uxg92h]
>>229
う〜ん、VCまともに使ったことないから憶測だけど、
多分「resource.h」はどこかに生成されていて、自動的にインクルードされてるんじゃないかな?

だから、ファイル検索かなにかでそのプロジェクトの「resource.h」を探して、
その中から「#define IDI_ICON1」を検索して、値を使えばいいんじゃなかろうか。

あと、SetWindowIconID();はSetWindowIconID(101);みたいに値を入れて使うんだと思う。




231 名前:名前は開発中のものです。 mailto:sage [2009/09/03(木) 18:23:32 ID:Sn/ikMPs]
main.cppをここに書けばわかるんじゃないかな

232 名前:名前は開発中のものです。 mailto:sage [2009/09/03(木) 21:37:21 ID:T5vV7TnQ]
test1とtest2でプロジェクトごとアップロードしました。
上がアイコン云々無し(DXライブラリでループ処理だけのプログラムです)、
2がアイコンアリ(上記にアイコン関係を追加してみたもの)です
ウィンドウの左上にアイコンを表示させたいのです。
test1
ttp://www1.axfc.net/uploader/H/so/85780.zip
test2
ttp://www1.axfc.net/uploader/H/so/85781.zip
もしVS2008EE版ではアイコンは追加できない、ということでしたらそれを教えてください!
検索して探してますが2005の設定は見つかるのですが、2008は見つかりません。
また、>>230三里言うとおり探してみましたが見つかりません。ただ、私の検索方法が悪いために見つからないのかもしれませんが・・
どうやってもうまくいきません・・どなたか助けてください!

233 名前:名前は開発中のものです。 mailto:sage [2009/09/03(木) 22:44:01 ID:Fa49oYdi]
main.cpp
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
SetWindowIconID(1);
:
Resource.rc
1 ICON "pa.ico"
MAINICON ICON "pa.ico"

ヘッダなくていけると思う。
Resource.rcの中身が下のだけしか書いてなかったのが原因かな

234 名前:名前は開発中のものです。 mailto:sage [2009/09/03(木) 22:51:41 ID:A1uxg92h]
あら、書き込もうとしたら別の人が。
どうやらVC2005での方法はVC2008ではそのまま使えないみたいね

あとエラーの原因は>>233が書いてくれてる通りSetWindowIconID();がMain関数の外だったからみたい
main.cppとResource.rcを上の通り書き換えたらちゃんとアイコンが変わるのを確認しました


……こっそり自分も参考にさせてもらうw


235 名前:名前は開発中のものです。 mailto:sage [2009/09/03(木) 23:01:20 ID:T5vV7TnQ]
>>233
うおおおおおおおおおおおおおおおおおおありがとうございます!!
ぶっちゃけ何のことかさぱり分かりませんが理解できるように頑張ります!!
ありがとうございました!!!!!

236 名前:名前は開発中のものです。 mailto:sage [2009/09/03(木) 23:02:10 ID:dJUWTSPd]
へえ。
VC++2008EEではリソースファイル自体使えないと思ってたが
ちゃんと認識してコンパイル自体は通るものなんだな。

237 名前:名前は開発中のものです。 mailto:sage [2009/09/04(金) 19:04:06 ID:tN2/1bc/]
エディタが無いだけじゃなかったかな?
メモ帳なりで直打ちすればいけたはず

238 名前:名前は開発中のものです。 [2009/09/04(金) 23:54:55 ID:OeFMQ4dR]
Visual Studio 2008 Professional Edition を使ってるんだけど、リソースファイルのエディタっていけるの?
いや、あんまし使う気はないけど、生糸効果と思って



239 名前:名前は開発中のものです。 mailto:sage [2009/09/05(土) 16:56:12 ID:2qZWX7kG]
「生糸効果」って使う気はないけど知識として知っておくと安心するような
心理効果のことをいうのかとと思ってググった俺にあやまれ!

で、自分はVisual Studio殆ど使わないから知らないや

240 名前:名前は開発中のものです。 mailto:sage [2009/09/05(土) 17:46:17 ID:RPOoFk2m]
>>239
あんたのせいでぐぐるはめになった、ゆるさない。






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

前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