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

[Java3Djp:01649] Re: about GEOMETRY_NOT_SHARED



 〜 12月1日新しいビジネスが始まる!ビジネスも楽天、楽天ビジネス誕生 〜
         ●●●●●●●●●●●●●●●●●●●●●●●●●●●
         ● サービスリリース第一弾!ビジネスサービス商談市場 ●
         ●●●●●●●●●●●●●●●●●●●●●●●●●●●
〜〜〜〜〜 今すぐアクセス! http://business.rakuten.co.jp 〜〜〜〜〜
----------------------------------------------------------------------

>えんどうです。

こんにちは。

>> 原因・回避方法等について何かご存知でしたら、
>> 教えていただけますと助かります。
>
>参考になるかどうかわかりませんが、
>このサンプルで車輪を作るためにCylinderをcloneTree()しています。
>
>http://www.javaopen.org/j3dbook/firstbook/examples/Car/Car.java

どうもありがとうございます。

ただ、読み返してみると私が説明不足だったようで、
補足しますと、addChild済かどうかがポイントでは
なく、次がポイントです。

  - 同じパラメタのPrimitiveは、geometryを共有する
  - Live状態のものでも共有しようとして、例外を起こす

えんどうさんのサンプルを参考に、newをcloneTree
に変更しても、例外は発生しました。

これが何故問題になるかと言いますと、「クラスA」
と「クラスB」でたまたま同じパラメタになってし
まった場合、特に外部からパラメタを指定されるよ
うな場合ではアプリケーションで検知することが困
難、、というかやると醜いからです。

アプリケーションレベルでの回避方法としては、
 (a) はじめから大量につくっておく
 (b) Primitive相当のクラスを自分で作る
あたりが考えられそうですが、これもどうかな、と
いう感じでいます。といっても他に方法がないなら
諦めて(b)でいこうかな。。

進展があればまたメールしますね。
私の知らない解決策を教えていただけたら嬉しいで
す。
# 藁にでもすがります

では。

--
いしいともかず
ishii@xxxxxxxxxxxx