はかせのラボ

私の頭の中を書いていく雑記ブログです

DirectX エフェクト作りたかったけど画像透過から詰まる

あいさつ

どうも、はかせです。
体調は依然微妙ですが、いつまでもグダグダ休んでも仕方がないので
今日からまったり再開していきます。

まずは作業の確認

休み明けの最初の作業といえば最後にやった作業のおさらいと
今後やることの確認ですよね。
幸いやったことはブログに上げてましたし、
コードはgithubに上げてたのでおさらいはさして問題にはなりませんでした。

さてどうやら私は休む前にコードの整理をしていたようです。
今後のタスクとしては
・エフェクト実装
・コンテニュー
・外部管理機能の強化
・各種ボーナス実装

こんな感じのようです。

優先順位として一番上にいるエフェクトから手を付けるのが良さそうです、

エフェクト作り

以前レーザーエフェクトを作ろうとして挫折した苦い思い出があるタスクです。
パーティクルの実装は今の実力では無理なのは体験済みなので
敵や自機の爆破エフェクトを作っていこうと思います。

これなら2~3枚程度の爆破差分の画像を用意して
それぞれを適当に大きさや回転を変えながら透明にして
切り替えればそれっぽく見えそうです。

大きさや回転は今まで弾やら何やらで散々やってるので
出来ることはわかっているので透明化をやってみます。

透過ってどうやるんだろう

いつぞやのタイミングで画像の色は変えれるようにしました。
hakase0274.hatenablog.com

RGBの値はそのままですがα値も設定できるようにしています。
Unityとかでα値を弄れば画像が透明になりました。
なのでこの値を弄ればいけそうです。

//RGBAを設定
rightOptionTex->SetDefaultColor(1.0f, 0.0f, 0.0f, 0.5f);

実行結果です。想定では右の赤いはんぺんが半透明になるはずです。
f:id:hakase0274:20190121233604p:plain


・・・・・あ、あれ?
おかしいな半透明になるどころか色に1ミリの変化もないぞ?
これはまた色々調べなおして検証実装をする必要がありそうですねorz

あとがき

今回は爆破エフェクト作り始めでした。
うーんα値弄るだけでは透過されないんですね。

何か設定をする必要があるのかシェーダーを弄る必要があるのか
まぁどちらかですよね。
ググりながらやってみます。

それでは今回はこの辺でノシ