レーザーの描画

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
アバター
YYSS
記事: 125
登録日時: 14年前
連絡を取る:

レーザーの描画

#1

投稿記事 by YYSS » 14年前

現在STGを製作しており、加算合成を使ってレーザーの製作を行っています。

弾を加算合成描画で隙間なく連続で発射し、レーザーのように見せかけているのですが、
太いレーザーと細いレーザーが重なった時に、細いレーザーが見えなくなってしまいます。

太いレーザーの輝度を落とせば見えるようになるのですが、色が薄いレーザーなので迫力に欠けます。


何か良い案はないでしょうか?

ホーミングレーザーにも応用しているので、細長い画像を表示させるという案以外でお願いします。


~開発環境~
○Windows Vista Home Premium SP2
○Visual C++ 2010 Express
○DXライブラリ使用

たんじぇんと

Re: レーザーの描画

#2

投稿記事 by たんじぇんと » 14年前

太いレーザーの上に細いレーザーを描画すればいいと思います。
描画の順番を変えれば可能です。

アバター
Dixq (管理人)
管理人
記事: 1662
登録日時: 14年前
住所: 北海道札幌市
連絡を取る:

Re: レーザーの描画

#3

投稿記事 by Dixq (管理人) » 14年前

太いレーザーの上に細いレーザーを加算で描画することはできないので、縁取りするか、αブレンドするしかないと思います。
加算というからには光の足し算です。白に何を足しても白にしかなりません。

弾をつなげるのではなく、レーザーそのものを作ってみてはいかがでしょうか?
レーザーにある程度の色で縁取りをすれば重なっても見えやすいと思います。
ただそれではレーザーっぽさが少し減ると思います。

例えばどのように見えるかというと・・
昔こんな動画を作りました。

[nico]http://www.nicovideo.jp/watch/sm4687447[/nico]

出てくる弾はほとんどが加算なので、白くなっていますが、
1:01からの弾のみαブレンドです。
1:03から出る弾と同じ出し方をしているのに、加算の仕方で見え方がかなり変わります。
画像
参考までに

アバター
YYSS
記事: 125
登録日時: 14年前
連絡を取る:

Re: レーザーの描画

#4

投稿記事 by YYSS » 14年前

Dixqさんありがとうございます。

自機レーザーはαブレンドで、敵レーザーは加算合成でよってみようと思います。


が、ここで問題が発生しました・・・

自機レーザーを細長い画像で行うようにしたのですが、黒い部分が透過されません・・・

加算合成時しか透過は出来ないのでしょうか?

レーザー画像は添付しておきます。
添付ファイル
server.png
server.png (51.33 KiB) 閲覧数: 3036 回

アバター
Dixq (管理人)
管理人
記事: 1662
登録日時: 14年前
住所: 北海道札幌市
連絡を取る:

Re: レーザーの描画

#5

投稿記事 by Dixq (管理人) » 14年前

それはPNGのα値を設定していないせいでしょう。
例えば四聖龍神録で使っているレーザーの画像はこちらです。
レーザー以外の部分は透過にしてあります。
http://dixq.net/img/bbs/lazer.zip

透過はGIMP、PictBear、Photoshopなどのソフトで加工可能です。
レイヤーをわけておき、背景レイヤーに何も書かず、レーザーを別レイヤーで上書きして保存すれば周りが透過になります。

アバター
YYSS
記事: 125
登録日時: 14年前
連絡を取る:

Re: レーザーの描画

#6

投稿記事 by YYSS » 14年前

出来ましたー
ありがとうございます。
黒を透過色だと思いこんでいたのが恥ずかしい///

閉鎖

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