DxLibの3D、ライトについて

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

DxLibの3D、ライトについて

#1

投稿記事 by spaaaark・∀・ » 10年前

DxLibで3Dを触るのは初めてなspaaaark・∀・です。

製作するにあたってリファレンスを読んでいたところ、気になるものを発見しました。
DxLibリファレンス CreateDirLightHandle関数 さんが書きました:尚、ライトハンドル系の関数は一つしかない標準ライト以外にライトを使用したい場合に使用します。
( とはいえ同時に有効にできるのは標準ライトを含めて3つまでですが・・・ )
気になるのは()で囲まれた部分で、これってライトを同時に3つまでしか使えないのか気になりました。

作りたいのはこれのようなメカスロゲームなんですが、画像を見て分かるように見える場所、
他リール内部などに多数のライト(=光源)が配置されてます。これを実際にゲーム上で表現したいのですが、
もちろん3つではどうしようもないわけです。これってどうすればいいのでしょうか、または解釈が間違って
いるのでしょうか?どなたか回答をよろしくお願いします。
クリエイティブな生活で刺激的な毎日を!

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: DxLibの3D、ライトについて

#2

投稿記事 by softya(ソフト屋) » 10年前

ライトは処理が重いですので、余り数を置かないのが基本原則です。特に点光源。
ライトの位置が固定なら、頂点カラーなどを使われたほうが現実的かと思います。
それとシェーダーを使えば、もっと自由にライトは置けるとは思います。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

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

Re: DxLibの3D、ライトについて

#3

投稿記事 by ISLe » 10年前

けっこう前のことですが、この手のは仕事でやりました。
最近のハードではどうなのか分かりませんが、台の演出にライト機能は使いませんでした。
光源織り込み済みテクスチャとの切り替えとか、スポット処理は半透明テクスチャとか。
半透明テクスチャも使い過ぎると重くなります。

台をリアルに再現することが至上ということであれば話は違ってきますが。

アバター
spaaaark・∀・
記事: 66
登録日時: 10年前
住所: 埼玉
連絡を取る:

Re: DxLibの3D、ライトについて

#4

投稿記事 by spaaaark・∀・ » 10年前

返信ありがとうございます。
なるほど、ライト以外にも光源を表現する方法があるという事ですね、分かりました。
metasequoiaでモデルを作っているのですが、無償版なので頂点カラー等の編集ができない状態です。
しかし、同ライブラリ上のSetMaterialParam関数を使って、その部分をあとから追加で描画すれば、
うまくいくだろうと考察できます。光の色の調整もできますしね。

方針が決まりましたので、当トピックはこれで解決という事にします。作っていく上で疑問が生じた場合、
それはまた別トピックで質問しようと思います。その時はまたよろしくお願いします。
クリエイティブな生活で刺激的な毎日を!

閉鎖

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