トップページ > 記事閲覧
2D画像を視野角,距離に応じて拡大縮小
名前:ゆゆ 日時: 2016/12/12 01:04

お世話になっております。 DrawRotaGraphでDrawRotaGraph3Dのようなことをやろうと思ったのですが、 ※(3Dの方だと、より早いタイミングで描画された画像が手前にあった場合後ろが透けないため、 例えば100個のパーティクル(透過png)があったとして、ちゃんと透過されるように表示するには、 100個のパーティクルとカメラとの距離を測り、 遠い順に並べ替えて、 遠い方からもう一度描画、ということをしないときちんと表示されない) 拡大率をどうすればいいのかわかりません... 視野角と距離で画像をどのくらい拡大するか、縮小するかを計算しようと思ったのですが、 やり方がわかりませんでした... やはり、上記の※の方法で描画するしかないのでしょうか? 困ることはないのですが、無駄に100(距離取得)+100*100(並べ替え)=1100回ループさせないと いけなくなるのでなるべく避けたいのです...
メンテ

Page: 1 |

Re: 2D画像を視野角,距離に応じて拡大縮小 ( No.1 )
名前:管理人 日時:2016/12/12 01:46

DrawRotaGraph3D の前に SetWriteZBuffer3D( FALSE ) ; を実行しておけば パーティクルがパーティクルで隠れることが無くなりますので、よろしければ SetWriteZBuffer3D( FALSE ) ; 〜〜 パーティクル描画 〜〜 SetWriteZBuffer3D( TRUE ) ; のようにしてみてください 拡大率を計算して DrawRotaGraph で描画する場合はそれなりに色々な計算を して拡大率を割り出す必要があります あと、本件の本題とは逸れてしまいますが、DrawBillboard3D を使用したほうが DrawRotaGraph3D を使用した場合よりもかなり高速に描画できるので、 よろしければ DrawBillboard3D の使用を検討してみてください m(_ _)m
メンテ
Re: 2D画像を視野角,距離に応じて拡大縮小 ( No.2 )
名前:ゆゆ(解決) 日時:2016/12/14 07:49

なるほどその方法がありました...!! ご回答ありがとうございます! DrawBillboard3D使います
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存