[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Java3Djp:01193] Re: テクスチャーの張り替え時に関する問題



┏━━◇ 今週のDNS一行広告は【 eオークション/CD検索/通販 】◇━━┓

♪ 最高級ホテル宿泊券プレゼント応募〆切迫る! → http://www.eac.ne.jp/
◆ 通販業界のダイナマイトtuuhan            → http://www.tuuhan.co.jp/
◎ 世界の巨大CD店の横断検索でどんなCDも探せます! http://kensakucd.com/

┗━━◇━━━━━━━━━━━━━━◇━━━━━━━━━━━━━◇━━┛

藤原です.
# だいぶ間が開いてしまって恐縮です.


> (1)最終的に必要なテクスチャー数の見積り
> (2)最終的に必要なメモリー量の見積り
> 
> 上記をやった上で、
> 
> (a)初期化の際に必要なすべてのテクスチャーを生成する
> (b)TextureLoader をその都度生成せずに、
>     単一の BufferedImage その他を使用する
> 
> なんてことをやってみるとどうなりますでしょうか。
> 
> 特に(b)の結果を報告していただけると幸いです。
> (b)の場合、TextureLoader を使わずに
> Image -> BufferedImage -> Imagecomponent2D という
> 順番に変換することになると思います。


アドバイスありがとうございます.

(1) (2) は動画像をテクスチャーとしているため見積りを行うことはできません.
よって,(a) を行うことは出来ません.
(b) の方法を試してみましたが,相変わらずメモリー消費は増え続けました.


原因を絞っていった所,,
実は,1枚のテクスチャーを2つのプリミティブに貼り付けていたのですが,
これを1つのプリミティブだけにした所,メモリー消費が止まりました.

1枚のテクスチャーを複数のプリミティブに貼り付けることは
やってはいけないのでしょうか.

# 同じ画像から,テクスチャーを2枚作ってそれをそれぞれのプリミティブに
   貼り付けるという方法だと問題ないのですが,テクスチャー生成の時間が
   かかりすぎるので,1枚を複数に貼り付けたいのです.
   しかも,テクスチャーを次々を張り替えて.



> 蛇足ですが Java 3D 1.2 ではいちおうテクスチャーアニメーションが
> できるようになるかも知れません。

これには多いに期待したいです.(^^)
Java3D 1.2α のapi doc を眺めていたら
 Texutre#ALLOW_IMAGE_WRITE 
というメンバーが追加されていました.

これで,いちいちテクスチャーを生成しなくても,
テクスチャーイメージの更新を行えそうですが・・

# OpenGL の glTexSubImage のようなものですかね?
  ちょっと違うか・・な (^^;



-- 
----------------
Fujiwara Isao (藤原 功)