トップページgamedev
209コメント58KB

2D!!のDirectXをやってみるかもな

■ このスレッドは過去ログ倉庫に格納されています
0001嬉しい01/11/07 20:51ID:mfMymfYH
2Dでやってみっかな。
0148名前は開発中のものです。2005/05/24(火) 17:54:08ID:auKiYiMD
>>147
なんか前にも2005 Aprilインスコ途中で止まるって人いたなぁ。
まあ無理そうだったら、2004年あたりのでもいいんじゃね?
DX7、8使うんだったら変わんないし。
0149名前は開発中のものです。2005/05/24(火) 21:03:40ID:na9SzDUg
DirectX9.0って、同じバージョンなのに仕様変わりすぎ。
0150名前は開発中のものです。2005/05/25(水) 09:10:28ID:rxSYb02H
>>148
そっか、そんな考え方があるのか。ありがとう!
0151名前は開発中のものです。2005/05/25(水) 13:03:27ID:rxSYb02H
だめだ。2004年の他のやつでもインストーラー止まる。
SDK 9.0無印のはリンク切れでDLできない。どうなってんだコラ
01521482005/05/25(水) 14:19:05ID:fIiJziOz
正直、パソコン見ないと原因不明だけど
最終手段として解凍後にできたフォルダ(インストーラとかは除く)を一つのフォルダにまとめて
C:あたりに置けば普通に使えるよ。
ランタイムだけ別にインスコで。
まあランタイムも無理だったら笑うしかないけど。
0153名前は開発中のものです。2005/05/25(水) 16:36:09ID:rxSYb02H
>>152
なるほど!

…で、やってみたつもりだけど、どうも変なんで、悩んだあげく、
書籍付録の8.0のSDK+ヘルプを入れました。
何の義理もないのにこんなに色々教えてもらって、
それなのに、それを活かした解決ができなくて…マジで申し訳ない。
でも、その道ではダメだと分かることが、今の道にたどり着くために必要だった。
ありがとう。
0154名前は開発中のものです。2005/05/26(木) 02:45:49ID:I7oB9t9P
FPS表示させようとして色々なサイトのサンプルを
真似してみたけどうまくいかなくて不思議だな〜と思ってたら
9.0cになってからFont周りの仕様が変わったんだね
日本のMSDNに載ってなくてえらく遠回りしちゃったよ
0155名前は開発中のものです。2005/05/27(金) 04:53:35ID:o89wefKm
DirectX7の8ビットモードで
フェードイン/アウトの処理できる人いませんか?
ガンマ値変えるやり方でやってるけど目が痛くなってくる。
0156名前は開発中のものです。2005/05/27(金) 23:41:26ID:7ZUNxrek
私はbltする前にオフサーフェスをロックして先頭アドレスからmmx使って
サチュレーション加算と減算やってます(24bitね)
8bitならパレットに対して行えばええのでは?
0157名前は開発中のものです。2005/05/28(土) 02:15:41ID:pRwqDGX6
なるほど分かりました、ありがとうございます
ガンマ値でどうにもならないと感じたらやってみます。
0158名前は開発中のものです。2005/06/05(日) 05:29:19ID:fvB9QEpa
DirectX SDK 9.0をインストールしたんですけどAppWizerd出てこないんですよね。
環境はWindows2000SP4にVisualC++6.0SP6です。
出てこないもんなんですか?
0159名前は開発中のものです。2005/06/05(日) 17:27:36ID:qdKzGbvR
>>158
言われてみればないね。
DirectX9は途中のバージョンから、VC6は基本的に対応してないから
無くなったのでは?
2004Summerあたりまではあったような気がする。
0160名前は開発中のものです。2005/06/05(日) 23:12:27ID:lt+7pAQm
>>158
http://www.gdncom.jp/general/bbs/ShowPost.aspx?PostID=28518
01611582005/06/06(月) 00:05:35ID:wJnoelBH
>>159, >>160
素早い対応ありがとうございます。
勉強にもなると思うので一からガリガリ書いてみようと思います。
0162名前は開発中のものです。2005/06/06(月) 06:56:41ID:L9FipJtv
テクスチャサイズって1024x512みたいなのは
普通に作成できると考えていいんですかね?

640x480の画面モードだと、全画面はこのサイズのテクスチャ使わないと無理なんですが
現在の解像度よりおおきなテクスチャって安全なんですかね?
生成できないビデオカードがあるとちょっとあれ…

さすがに、256x256以上が使えない某カードは無視するとして…
0163名前は開発中のものです。2005/06/06(月) 07:48:20ID:c+bozNxf
2枚に分けて作れよ
0164名前は開発中のものです。2005/06/06(月) 09:10:14ID:LfhZWohP
dxinfo - DirectXデバイス情報の蓄積と共有
http://www.netsphere.jp/dxinfo/

ここで主なカードのcaps調べなはれ。

1024x512なら、確か何かロートルカード1つ切り捨てれば大丈夫だった気がしたが。
こういうのは調べたときにメモ取っとかんとあかんな……。
0165名前は開発中のものです。2005/06/06(月) 17:09:42ID:2BhWKS6F
ちと亀だけどDirectX7のヘルプ欲しい人は”DX81SDK_Extras.exe”で検索してみれば
まだネットにいくつかあると思うぞ
そのなかに\Documentation\DirectX7\Japaneseというのがあるから、試してみそ
0166名前は開発中のものです。2005/06/06(月) 20:59:57ID:jPJdqzm8
640×480の画像を描画しようとすると、やっぱり>>162みたいに2乗サイズに
あらかじめリサイズしないと使えないんでしょうか。
uv座標を色々工夫してみたんですが、ぼやけて表示されてしまいます。
0167名前は開発中のものです。2005/06/06(月) 21:30:55ID:qMU3avb2
>>166
640*480をそのまま読むと1024*512になっちゃうけど。
そうでなくてきっちりと640*480を崩さずに読んだのなら、
ちゃんとUV指定すればボケないよ。
0168名前は開発中のものです。2005/06/06(月) 21:58:24ID:jPJdqzm8
>>167
ありがとう。
それを念頭に置いてもう一度やってみます。
0169名前は開発中のものです。2005/06/07(火) 17:14:12ID:5mg3GuMe
>>162
正方形か2の累乗か自由の3タイプある。
もちろんテクスチャ最大幅をこえると作成できない。
0170名前は開発中のものです。2005/06/07(火) 20:01:15ID:kr0Rclqu
SiS530 512
VIA Tech VT8361/VT8601 Graphics Controller 256
3D Blaster Banshee PCI/AGP 256
Voodoo3 AGP 256

この辺はテクスチャサイズが無理みたいね。
0171名前は開発中のものです。2005/06/08(水) 22:56:08ID:Ky1ETflx
つうか、画面一杯の只の一枚絵を表示するという、古い表現方法を改めるべきだ
0172名前は開発中のものです。2005/06/08(水) 23:22:00ID:Jc5FKg0F
どんなふうに?
0173名前は開発中のものです。2005/06/09(木) 00:21:23ID:gMka+JcS
マップチップを敷き詰めて表現する??古いか!?これ?
0174名前は開発中のものです。2005/06/09(木) 08:16:35ID:VBsLIikO
なんでそういう古い方にいくかねぇ
0175名前は開発中のものです。2005/06/09(木) 12:27:07ID:biIuiuNu
ビットマップからベクタに移行しろってことだな。
0176名前は開発中のものです。2005/06/09(木) 17:04:33ID:9dnotJBG
つかチップ敷き詰めのほうが古いじゃねえか
01771662005/06/09(木) 19:50:16ID:AXqIGTpR
うーん、やっぱり出来ません。
CreateTextureで読み込むと、640×480の画像なら1024×512に拡大されてしまう?
1024×512の左上にセットされるわけじゃないのかな。

画像を別途読み込んで、テクスチャをロックして、そこに直接コピーすればいいのかな。
でも、それだと読み込み時間が長くなりそう。
0178名前は開発中のものです。2005/06/09(木) 20:02:13ID:kjeFzYZm
>>177
D3DXCreateTextureFromFileExで拡大しないように読み込めばいい
0179名前は開発中のものです。2005/06/09(木) 22:10:47ID:AXqIGTpR
>>178
おおー!
出来ました。
大感謝です。
0180名前は開発中のものです。2005/06/12(日) 18:51:20ID:Ckm2/DzU
DirectXをダウンロードして、チュートリアルの1をコンパイルしようとしたら、
Error: 外部シンボル 'Direct3DCreate9' が未解決(D:\C++\TEST1\DEBUG\MAIN.OBJ が参照)
というエラーがでるのですが、なぜでしょうか?
環境はBCC 5.5でSDKのバージョンは9.0のFebruary 2005です。
0181名前は開発中のものです。2005/06/12(日) 18:58:10ID:uN++4+wx
報酬高し!! 広告ならこれで決まり
http://www.geocities.jp/bar_bar_deai/
http://www.geocities.jp/bar_bar_deai/index2.html
0182名前は開発中のものです。2005/06/13(月) 17:04:02ID:43gt6aw+
ライブラリリンクしてないからじゃねーの。
しててもそのままじゃ別のエラーがでるけど。
0183名前は開発中のものです。2005/06/13(月) 18:47:01ID:Jze/Jkx4
ライブラリリンクってどのようにすればいいのですか?
0184名前は開発中のものです。2005/06/13(月) 19:06:09ID:mTx/s9Du
ライブラリをリンクするのよ
0185名前は開発中のものです。2005/06/13(月) 21:01:07ID:Jze/Jkx4
それはわかるのですが…。
いろいろなサイト回ってみても、そこらへんについては書いてないもので。
0186名前は開発中のものです。2005/06/13(月) 21:12:53ID:u7wLAkUd
BCCでDirectXって本を買ってくれば書いてあるんじゃね?

基礎的なことだから、どこにも書いてないってのはおかしいと思う
0187名前は開発中のものです。2005/06/13(月) 21:49:50ID:Jze/Jkx4
ではもう一度探してきます。
0188名前は開発中のものです。2005/06/14(火) 16:04:54ID:zEFk8wp9
age
0189名前は開発中のものです。2005/12/20(火) 20:56:07ID:t6dRIslJ
すっげー亀レスだが一応スレのために書いとく

>>185
リンカが対応できる形式の問題ではないのか?

COFFとかOMFの問題

ttp://hp.vector.co.jp/authors/VA029438/itemlinks.html
を参考に自力で行けるかな?
Digital Mars C/C++ compiler for Win32 (Not IDE)
の部分とかも

他に
ttp://www.geocities.com/foetsch/borlibs/
DirectX8だけどね
0190名前は開発中のものです。2006/08/14(月) 12:42:16ID:QuKu9FmG
DirectX9はバージョンが多すぎてどれをDLしていいのかわからん。
仕様が変わってるのとかあるし…

日本語ドキュメントはoct2004で止まってるという認識でOK?

じゃあ、これ見ながらやるならOct2004入れろってことか?

二年以上前のだが大丈夫なのか?
0191名前は開発中のものです。2006/08/14(月) 16:39:13ID:Y5E3dnCz
俺は9の最初のしかしてないがな。
つかってるのは8だし。
0192名前は開発中のものです。2006/08/16(水) 08:00:24ID:g132M5R7
DirectX9のポリゴンで奥行き使わないで2Dにするって普通にやられてますか?2DならDirectx7風に書く方が一般的ですか?
0193名前は開発中のものです。2006/08/16(水) 09:20:05ID:kC6PmX5a
Spriteでいいじゃん
0194名前は開発中のものです。2006/08/16(水) 16:04:05ID:rMewMpTP
ハード描画なら9のほうがいろいろやれるけど。
0195名前は開発中のものです。2006/08/19(土) 12:03:37ID:gpaVUl1H
DirectX9を使って2Dの横スクロールアクションを作成しようとしているのですが少しわからなくなったのでここで質問させていただきたいと思います。
背景画像をループして描画したいのですが、そのループの方法がわからなく教えていただきたいです。
(´・ω・`)
0196名前は開発中のものです。2006/08/19(土) 14:01:28ID:uXF8eAiY
>>195
forで回して並べればいいんじゃないの?
あと、表示地点を変数でもっておいて、ずらす
0197名前は開発中のものです。2006/08/19(土) 14:33:33ID:uSIG1YiQ
カメラ使おうよ
01981952006/08/19(土) 21:50:44ID:zICGJ2Ix
>>196さん
その方法だと画面外にでた画像は残ったままになりますよね?

>>197さん
カメラ?ですか?

(´・ω・`)
画像はマップチップを使ってます。
画面外に出た画像を消して再び画面に描画するループ方法
(´・ω・`)わかりにくくてすみません。
0199名前は開発中のものです。2006/08/20(日) 12:10:45ID:R2OS+92F
どうしてそんな原始的なことするの?
0200名前は開発中のものです。2006/08/20(日) 12:39:06ID:UXPgli+S
>>195 こんなカンジ?

#define CHIP_SIZE_X 32
#define CHIP_SIZE_Y 32
#define MAP_SIZE_X 20
#define MAP_SIZE_Y 15
#define SCREEN_SIZE_X 640

int MapData[MAP_SIZE_Y][MAP_SIZE_X];

void DrawMap(int offset_x)
{
  int x1, x2, y;

  x1 = (offset_x/CHIP_SIZE_X)%MAP_SIZE_X;
  x2 = -(offset_x%CHIP_SIZE_X);
  while (x2 < SCREEN_SIZE_X) {
    for (y = 0;y < MAP_SIZE_Y;++y) {
      DrawMapChip(x2, y*CHIP_SIZE_Y, MapData[y][x]);
    }
    x2 += CHIP_SIZE_X;
    x1 = (x1+1)%MAP_SIZE_X;
  }
}
0201名前は開発中のものです。2006/08/20(日) 12:40:52ID:UXPgli+S
誤:DrawMapChip(x2, y*CHIP_SIZE_Y, MapData[y][x]);
正:DrawMapChip(x2, y*CHIP_SIZE_Y, MapData[y][x1]);
02021952006/08/20(日) 13:25:33ID:zagBqYTS
>>199
(´・ω・`)ちょっとやってみたかっただけです。

>>200
ありごとうございます。
早速ためさせていただきます。
0203名前は開発中のものです。2006/08/22(火) 17:32:45ID:jVwt1XPh
マップそのままでキャラと視点をループさせたらいいんじゃないの?
0204名前は開発中のものです。2006/10/06(金) 23:43:28ID:G7B1Syp5
今2Dでキャラ数200くらいのアクションゲーム作ってるんですが、
高速描画は結局どのやり方がいいんですかね?
0205名前は開発中のものです。2006/10/15(日) 01:10:15ID:KSPsKSGe
DirectX
0206名前は開発中のものです。2006/10/15(日) 01:10:54ID:KSPsKSGe
おっと、ここはDirectXスレだった。
0207名前は開発中のものです。2006/10/15(日) 18:16:38ID:8Hi71gff
ハード描画が圧倒的ってことくらいか
0208名前は開発中のものです。2006/10/16(月) 11:50:40ID:akp78//4
DirectxのDrawと3Dが統合された後の2Dの描画方法って平面ポリゴンで描画すればOKでしたか?
0209名前は開発中のものです。2006/10/16(月) 13:08:26ID:s6OH4hGf
何がOKなんてものはない。
好きな方法でやればいい。
■ このスレッドは過去ログ倉庫に格納されています