2010年6月3日木曜日

進捗。シャトルのfurniture marker

解決しました

進捗。シャトルのfurniture marker その2



シャトルのコクピットの椅子とソファのfurniture markerがどうもおかしい。

コクピットの椅子はアクティベートは出来るものの、背もたれが邪魔なのか、プレイヤーが座ろうとすると、直進状態が続き、それがタイムアウトして座れない。
NPCが座る分には問題ない模様。

背もたれ付の椅子は他にもあるのだが、他の椅子は座るときに背もたれのコリジョンは、無視されていて得に問題が無い。


ソファのほうは、いったんアニメーションさせると座れるようになるのだが。
それまで、同じように椅子に直進してタイムアウトして座るのをやめてしまう。
何が原因なのだろう。

コリジョンとマーカーの位置を修正してテスト中。

回転非対応の前の版では問題なかったのだが、今のは回転するので、その辺でも何か絡んでそうな予感が。


--

コクピットの椅子のほうは、土台のコリジョンを小さくしたらすんなりうまくいった。
ソファのほうが座れないのは、まだ未解明。


ソファベッドは3つのソファベッドを別々に用意してあるだけなので、座れる時と座れない時で、オブジェクトに何か違いがあるわけではない。

1.ソファ
2.アニメーション用
3.ベッド

シャトルが飛行中は最後にenableされたものがシャトルに一緒についていく。
デフォルトでは、ソファなので、ソファがついていく。

プレイヤーの前にシャトルが現れて、ドアが開くとソファがある。
その時点でソファには座れない。

ソファのスイッチをアクティベートすると、ソファがdisableされ、アニメーション用のモデルが配置され enable されて、アニメーションを開始する

アニメーションが終了するとベッドが配置されて enable される。

もう一度スイッチをアクティベートすると、同じようにベッドが disable されて、アニメーション後、ソファが再び enable される。

で、そのソファには座れる。

試しに、コンソールで disable, enable は試してみたが改善しない。
コリジョンのせいではないと思うのだが、とにかく謎。

違いといえば、シャトル移動中、ソファはシャトルの座標を使って移動するのに対してソファのスイッチのアクティベート時は、スイッチの座標を計算に使っているという点か。
回転軸は同じにしてあるので、座標はどちらも同じはずなのだが。

とにかくその辺で悩んでいる最中。

ソファ/ベッドの切り替えの前後で、ソファベッドがちらつく現象は改善した。
以上。

0 件のコメント:

コメントを投稿