質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

DirectX

DirectX(ダイレクトエックス)は、 マイクロソフトが開発したゲーム・マルチメディア処理用のAPIの集合です。

Q&A

解決済

1回答

1176閲覧

DirectXで描画されるオブジェクトの設定を別々にしたい

gRivXOzYyYyDl1W

総合スコア19

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

DirectX

DirectX(ダイレクトエックス)は、 マイクロソフトが開発したゲーム・マルチメディア処理用のAPIの集合です。

1グッド

1クリップ

投稿2020/03/12 07:53

頓珍漢な質問をしてたらすいません。
最近DirectXの勉強を始め、ゲームを作っているのですが、このオブジェクトはαブレンドのみを設定したいけど別のオブジェクトはZバッファ法を適用したい、となった時どうすればよろしいのでしょうか。
私は、分けたい設定分だけCreateDevice関数でLPDIRECT3DDEVICE9を生成して、別々に設定したものを描画しようと考えているのですが、この考えは正しいですか?また、LPDIRECT3D9やLPDIRECT3DDEVICE9何個も生成していいものなのでしょうか?書籍で調べても分かりませんでした。
どうかご教授お願いします。

s.k👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

stdio

2020/03/13 00:53

すみません、質問です。 > このオブジェクトはαブレンドのみを設定したいけど別のオブジェクトはZバッファ法を適用したい 加算合成や減算合成、αブレンドの処理のお話でしょうか? それならデフォルト引数を利用して設定出来るようにすれば良いと思います。 記憶が曖昧ですが、LPDIRECT3D9やLPDIRECT3DDEVICE9は確か要らなかったはずです。 確か分けれる関数があったはず...
gRivXOzYyYyDl1W

2020/03/13 10:57

ご回答ありがとうございます。そうです。色を合成するαブレンドのことです。αブレンド、Zバッファ法等の設定に関しては、LPDIRECT3DDEVICE9のSetRenderState関数を使っての方法しか分からないです。無学で申し訳ありません。
guest

回答1

0

ベストアンサー

DirectXをやってたのが大分古いんで、もしかしたら最新では違うかもです

基本的に、アルファブレンドやZバッファなんかは、
SetRenderState で描画モードを変更して書き込むはずです
なので、CreateDeviceは最初の1回しか使わないはずです

投稿2020/03/13 06:01

izmktr

総合スコア2856

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gRivXOzYyYyDl1W

2020/03/13 10:43

ご回答ありがとうございます。 確かにRenderStateで変更すればいいだけですね。変に難しく考えすぎていました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問