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

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

■ このスレッドは過去ログ倉庫に格納されています
0001嬉しい01/11/07 20:51ID:mfMymfYH
2Dでやってみっかな。
0002名無しさん@お腹いっぱい。01/11/07 20:54ID:???
>>1
使えないなぁ。
関連スレぐらい 1 に入れとけよ。マジで。おい。
0003101/11/07 20:55ID:mfMymfYH
>>
0004名無しさん@お腹いっぱい。01/11/07 22:39ID:ITmN1j8G
DirectDrawの代わりにgdiplusはどう?
0005名無しさん@お腹いっぱい。01/11/07 23:49ID:???
>>4
それだったらDirect3D8使った方が幸せになれそう。
0006名無しさん@お腹いっぱい。01/11/08 07:00ID:fho+Unde
なんか初心者も質問していいんですかね。
DirectX8a ってどうなんですか?ランタイム普及してるんでしょうか。
欠点とかあったら教えて下さい。
0007名無しさん@お腹いっぱい。01/11/08 07:06ID:???
9βもう申し込んだ?
0008名無しさん@お腹いっぱい。01/11/08 07:11ID:???
>>7
申し込んでません。8aもろくに使ってないので・・・
0009 01/11/08 15:04ID:EsjPRhK9
2DだけやるならDirectX7以前の方がいいかもね。
256色ならWinGLというのもある(今さらって感じはするけど)
001001/11/08 17:08ID:y5EnbOeB
しっかしDX8の2D表示は256*256の制限があるものの
超簡単に拡大、縮小、回転、
スプライト表示、アルファブレンデリングが
できるのがいいよな
0011名無しさん@お腹いっぱい。01/11/08 17:18ID:???
DX7でも、ラッパー書いてしまえばそんなに変わらんよ

初期のExecuteBufferは3日で嫌になったが(w
0012名無しさん@お腹いっぱい。01/11/08 21:37ID:???
>11
オレは実行バッファ方式の方が好きなんだが
0013嬉しい01/11/08 22:59ID:fho+Unde
立て逃げしようとしたが捕まった。初心者なんでな。
初心者はとりあえずここ見れ。

http://www1.mahoroba.ne.jp/~jyama/
0014名無しさん@お腹いっぱい。01/11/09 01:04ID:???
>>12
便利だと思うならそっちでもいいんじゃないかな
そのための上位互換なんだから

オレはDirectX7使ってます
CopyRectsでカラーキー使えれば8でも良かったんだけどね
0015 01/11/09 12:28ID:4uypMwTT
2Dをそのまま使うよりも、3Dのアクセラレータ機能を2Dに応用すれば
かなり高速な描画が可能になる。
最も高い効果を得られるのが、アルファブレンディング。
DirectX7にはD3DXユーティリティーというものが付属しており、
これのスプライト描画関数はものすごい強力である。
2Dやろうと思ってるならぜひこいつをマスターせよ。
0016嬉しい01/11/09 13:13ID:???
>>15
なるほど!嬉しい!
0017名無しさん@お腹いっぱい。01/11/09 13:15ID:???
3Dでやりたいんだけど、
ウチの5年物のパソコンじゃたぶん逆効果なんだろーな・・。
0018名無しさん@お腹いっぱい。01/11/09 13:38ID:???
>>15
DirextX8にもD3DXあるよ
0019名無しさん@お腹いっぱい。01/11/09 15:06ID:???
>>15
3Dのアクセラレータ機能とやらがあればな。
0020名無しさん@お腹いっぱい。01/11/09 16:06ID:???
>>15
グラフィックカード依存になることも付け加えておこう。
0021 01/11/09 19:52ID:9L8eS1Ur
8と7のD3DXはかなり使い勝手が変わっています。
8ではほとんどD3DXの使用を前提としていますが、7はそうではありません。
さらにスプライトヘルパー関数は、最も重要であるはずのアルファブレンディング機能が
8では無くなっています。そんなわけで自分は7を使っているのです。

それから3Dアクセラレータ機能が無くても、エミュレーションで何とかなります。
毎秒の演算で60FPS出すのはどうやっても無理ですが、バッファリングすれば十分なスピードが出ます。
少なくとも自分で1ドットずつ演算するよりはずっと早いし、楽です。
HALならもちろん余裕で60FPSが出ます。

DirectX7SDKはもうマイクロソフトにおいていないので、良ければアップしますが?
libとincludeだけなので1MBちょっとです。
あと自分の書いたサンプルコードなんかも欲しい人いるでしょうか?
超高速な2Dアルファブレンディングを実現しているんですが。
0022名無しさん@お腹いっぱい。01/11/09 19:57ID:???
D3Dを使うとドライバの具合によって違ってくるからあまり使いたくないんだよねぇ。
それだったら、クォリティからパフォーマンスまで管理できる自前がいいわけ。
0023名無しさん@お腹いっぱい。01/11/09 19:58ID:???
>>21
>自分で1ドットずつ演算するよりはずっと早いし

それ、何の機能の話? 単純な2Dポリ描画?
少なくともブレンディングに関しては糞遅いんだが。
0024_01/11/09 20:18ID:DTKrpsAy
>>21
>最も重要であるはずのアルファブレンディング機能が
>8では無くなっています。
ID3DXSpriteは使ったことがないからわからないけど
ID3DXSprite::Drawの前にデバイスのレンダーステート変更すれば
それが適用されるんじゃないの?
0025名無しさん@お腹いっぱい。01/11/10 10:25ID:???
>>21
めちゃめちゃ欲しいです。
是非sageで出して下さい!!
00262501/11/10 10:39ID:???
やはりあげます。
お願いします。
002701/11/10 10:58ID:D+LxwYXo
HRESULT Draw(
LPDIRECT3DTEXTURE8 pSrcTexture,
CONST RECT* pSrcRect,
CONST D3DXVECTOR2* pScaling,
CONST D3DXVECTOR2* pRotationCenter,
FLOAT Rotation,
CONST D3DVECTOR2* pTranslation,
D3DCOLOR Color←これじゃない?
);
0028名無しさん@お腹いっぱい。01/11/10 11:07ID:???
>>26
もう、Dx8がインストールされていたら、
たしかバージョンダウンは出来なかった気がする。

#define で設定すれば、 Dx8 用SDKでも
Dx7で制作できるのだが

どのようなパラメーターを設定すればいいか忘れた。

たしか、「鬱だ氏のう DirectX 」スレの何処かに書いてあるから
探してみると良いと思われ
0029名無しさん@お腹いっぱい。01/11/10 11:11ID:???
>>28
ありがとうございます〜!
ゲー開のスレですか?それともム板?とりあえずゲー開探してきます。
00302901/11/10 11:44ID:???
見つけました。一応載せときます。

-------------------------------------------------------------
175 名前: デフォルトの名無しさん 投稿日: 2001/01/19(金) 16:12

質問の途中だろうがちょっといいか?
(ちなみに俺はLockやGetDC以外で止まるとこなんて知らんなぁ。
しかし、GetDCもLockもその関数のとこだけだろ止まるの。
どこにブレークポイント置いているの?)

んで、まるっきり違う話題なんだが、
DirectInput7ってDirectX8入れると、

#define DIRECTINPUT_VERSION 0x0700
#include <dinput.h>

って定義してやらないといけないってのは実は常識だったの?
もしかして、他にもこーゆー風な感じでやらなきゃ逝けないものってあるの?
誰か知ってたら教えてください。



176 名前: デフォルトの名無しさん 投稿日: 2001/01/19(金) 16:17

7に限らず以前のVerと互換でやるときは
以前からそうしなきゃなんなかったのだよ
-------------------------------------------------------------
ここです。
http://piza.2ch.net/tech/kako/966/966655286.html  (鬱だ氏のう DirectX Part 1)

他にも色々な問題があるらしく、鬱になりました・・。
0031,◇02/01/06 12:36ID:???
test
0032名前は開発中のものです。02/01/07 05:22ID:???

           ○________________________
          ┃          │
          ┃ 2ちゃんねる  │
          ┃   へヘ      │
          ┃  /〃⌒⌒ヽ   │
          ┃  〈〈 ノノノハ)))  .│
          ┃  |ヽ||´ ∀`||   │
          ┃ ⊂[リ∨╂リ]つ │
          ┃   葉鍵板   │
          ┃_______________________|
          ┃
     へヘ    ┃
    /〃⌒⌒ヽ ┃  / ̄ ̄ ̄ ̄ ̄ ̄
    〈〈 ノノノハ)))┃< がおー!
    |ヽ||´ ∀`|| ┃  \______
   ⊂[リ∨╂リ]つ
    リ /リリリリリ  ┃
      U U  ┃
0033名前は開発中のものです。02/01/27 12:35ID:???
コソーリ延命処置。
0034名前は開発中のものです。02/02/05 22:23ID:1L0xnurN
手軽〜〜に半透明とかサクっとやる方法ってば無いですかね?
とか底辺で質問してみるテスト
0035名前は開発中のものです。02/02/05 22:23ID:???
しまった、ageてしまったよー、ごめんよー。
0036名前は開発中のものです。02/02/05 22:34ID:BpEP4Xq5
3Dビデオボードの機能をまったく使わない2Dゲームなら、
むしろDirectX3対応がいい。NTでも動くよ!(・∀・)
0037名前は開発中のものです。02/02/05 22:38ID:???
>>34
D3DX使う。
DirectDrawならどっかのライブラリ使うしか、手軽には出来ないと思う。
0038名前は開発中のものです。02/02/06 00:23ID:Sguswk1L
このスレ、レベル低いね
sage
0039名前は開発中のものです。02/02/06 00:29ID:sdOsCIHs
640*480の画像を使って ゲームを創りたいんだけど
DirectGraphicsではどのようにすればいいの?
00403902/02/06 01:01ID:???
ちょっと調べたら解りました。
教えていただかなくて結構です。


00414102/02/06 02:07ID:ClsLRVUH
いや教えさせて貰う。
まずは ゲーム「創」る を止めるべきだ
0042名前は開発中のものです。02/02/06 03:45ID:???
もう駄目だな、この板。限界だ。
0043名前は開発中のものです。02/02/06 14:31ID:???
>>42
最初からダメダメでしたが?
0044名前は開発中のものです。02/02/06 14:43ID:???
>>36
NT3とかNT4使ってる一般ユーザがどれだけいるか・・・。
Win95使ってるユーザーの1/1000に一票。

>>38
マルチポストウザイ。
0045名前は開発中のものです。02/02/07 04:18ID:???
DIRECT3Dで2Dやる方法教えてください!
0046名前は開発中のものです。02/02/07 15:17ID:???
マルチポストですか?
0047名前は開発中のものです。02/05/08 12:12ID:???
まるちゃんがんばれ。一生懸命!
0048デフォルトの名無しさん 02/05/30 13:32ID:m7WBLWfI
age
0049名前は開発中のものです。02/05/31 22:25ID:vAVr7/xg
低スペックを誇るのは無能開発者の証
0050名前は開発中のものです。02/06/01 00:42ID:???
うーん、高スペックを誇るのも。
0051名前は開発中のものです。02/06/01 11:18ID:???
高スペックを誇って中身がしょぼいのはプログラマが無能なだけだが、
有能かもしれない人が低スペックで無駄な精進を続けている姿を見るのは悲しい。
0052名前は開発中のものです。02/06/01 13:12ID:???
>>51
別に低スペックで無駄な精進をしているわけじゃなくて、
すべてを自分の手のひらで動かしたいから低レベルばかりやるんだろう。
CPUやバススピードが十分になって、3Dもすべてソフトレンダの時代が来れば
自然とそっちにも手をつけると思われ。
0053名前は開発中のものです。02/06/15 17:12ID:???
sage
0054名前は開発中のものです。03/01/28 15:19ID:RgrEOqEu
お金の無い人はずっと低スペックなんだから許してよ
漏れだっていつまでもSIMM積んだDOS/V機使いたくないよ
0055名前は開発中のものです。03/03/03 23:24ID:uxGxMkrS
低レベルな質問なんだが教えてください。
DirectX8以降でDirectDrawが使えなくなってるのはいいとして、
DirectX7以前のVerで作成されたDirectDraw使用のプログラムは
DirectX8以降を搭載してるマシン上では問題なく動作するんですか?

だとすると開発ライブラリとしてDirectDrawが使えなくなってても
以前の実行ファイルの動作だけは保障するってことですか?
私にはちょっと仕組みがわかりませぬ。
0056名前は開発中のものです。03/03/03 23:40ID:f13fO0L+
>>55
動作する
内部的にDirect7のインターファイスも実装も備えているので
0057名前は開発中のものです。03/03/03 23:51ID:CO+b/7tl
ところで、DX8でスプライト描画すると
たまに描画されないときがあるんだけどこれって何が悪いの?
0058名前は開発中のものです。03/03/03 23:54ID:8rEnnj0z
最新バージョンのランタイムがインストールされている環境では
以前のバージョンで作成されたアプリも動きます。

最新バージョンのSDKでも、以前のバージョンの機能だけを使う事も出来ます。
00595503/03/04 00:22ID:vDtK9HmJ
>56,58
ご親切にありがとう。
納得しました。

要するにDirectDrawはメーカー的にはもう推奨されてない、
と理解すればいいんですね。
でも使いたい人は以前の開発環境で勝手に使い続ければいい、と。
なるほど。
■ このスレッドは過去ログ倉庫に格納されています