リング型のゲージの作り方

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
タンタル

リング型のゲージの作り方

#1

投稿記事 by タンタル » 11年前

こんばんは。
タイトルの通り、現在リングの形をしたゲージ(体力バーなど)を作ろうとしています。東方神霊廟や東方輝針城で使用されているボスの体力バーという説明でわかっていただければ幸いなのですが...

現在の開発環境は、windows7 home premium , visual studio 2010 pro , DXライブラリ使用 , となっております。
とりあえず現在試している方法を説明しますと、
1.マスク用のリング画像を準備(LoadMask()),ゲージ用の円画像を準備(LoadGraph())
2.CreateMaskScreen()
3.DrawMask()でリング画像を指定
4.SetDrawBlendMode(DX_BLENDMODE_ADD,255);
5.DrawCircleGauge()で円画像を指定
6.DeleteMaskScreen()
この結果、何も表示されませんでした。

ですが、
1.マスク用のリング画像を準備(LoadMask()),ゲージ用の円画像を準備(LoadGraph())
2.CreateMaskScreen()
3.DrawMask()でリング画像を指定
4.SetDrawBlendMode(DX_BLENDMODE_ADD,255);
5.DrawGraph()で円画像を指定
6.DeleteMaskScreen()
この場合はきれいにリングが表示されました。

マスクを使わず、DrawCircleGauge()単体で試したところ、これは問題なく扇形が表示されました。
どうもマスクとDrawCircleGaugeを一緒に使うと、画像が表示されないようです。

どこがいけないのか、どうしたらいいのかどうにもわからないので、こちらで質問させていただきました。
いけない部分、足りない部分、別の実現方法のヒントなど、どうかよろしくお願いします。

ISLe
記事: 2650
登録日時: 14年前
連絡を取る:

Re: リング型のゲージの作り方

#2

投稿記事 by ISLe » 11年前

扇状ではなくリング状にしたいということであれば、DrawCircleGaugeで使用する画像をリング状にしておけば良いだけなのではないでしょうか。
(動作確認は取ってません。)

タンタル

Re: リング型のゲージの作り方

#3

投稿記事 by タンタル » 11年前

ISLeさん、返信ありがとうございます。

そうですね。透過処理しておけばいいだけでした。何を考えてマスク処理したのか...
馬鹿な質問ばかりで本当に申し訳ありません...

閉鎖

“C言語何でも質問掲示板” へ戻る