2013年11月25日月曜日

mesh関係のお話



3Dデータについて基本的なことがわかってる前提で

文書化されてなかったり解説が分散してたりするお話のまとめ



現状わかってる範囲でやるなって言われてる感じのこと


・llSetAlpha系命令によるオブジェクトアニメーション


 これはllSetTextureAnimとは別の話ね



 同じ場所に大量の面を重ねてアルファ切り替えで
 アニメーションしているように見せる処理のことらしい


・ものすごいハイポリゴンのオブジェクトを
 計算上低LIに見せかけるテクニック

 (ある程度方法がテンプレ化してんだけどそれはここで書かない そのうちどうせ潰される)

・ダミー面使ってセンターをずらしたObjectのアップロード
 当たり判定の処理的にかなりまずいらしく
 どうしてもセンターオフセット回転やりたいなら
 パペッター系のスクリプトでやれとのこと

・convex hullの多用
 物理シェイプ的には正四面体をアップロード時に指定が最軽量らしいとのこと





スクリプト連動周りのお話



・アニメーションではなく見た目切り替えの処理でなら

 (車だとエアロパーツとかホイールとかの辺り)

 setalphaで不可視状態にして最小化 が最善とのこと
 (レンダリング負荷周りのお話っぽい)

・これは推奨ってわけではなくそういう手もあるって話ですが

 furryさんとかでnフレームの口パクさせたい場合
 左端1/nのエリアを通常の絵
 残りを透明にしたテクスチャを用意して
てくすちゃあにめ でワンフレームづつずらしたものを指定して
 動いてるように見せかけるって手が使えます

 (ローカル動作なので40fpsとかでもSIMラグはほぼ無し)
 マテリアルでアルファマスクをワンビットアルファにしてやれば
 アルファ面が前後するバグも考えなくておkです




んでその他のFAQみたいなもの


・スカルプもアニメーションさせるのにUUIDフリップがあるじゃないか


  あれも本来は多用するなって方針ですよ


・出来るようにしてあるならそれはやっていいってことだろ?


  [お前がそう思うんならそうなんだろう お前ん中ではな]

  (テンプレらしいので使ってるだけですよ)


・ソースを出せ


  ソースが出せるんだったらURL羅列して終わってんだよ



・つまりどういうことだってばよ?


  meshはどうやったって重いんだから無駄にトラフィック圧迫するようなことすんなってことです









ってなところかね


以上

2013年11月18日月曜日

アウトSIMのお話

未だにmeshが全てを置き換えられない理由のひとつがこいつっすな

どーん



まーあれだ
SourceEngineで言うところの3D SKYBOXに近いものだ

実際に行動可能なエリアの外に視界遮蔽とかディテールアップを目的として
オブジェクトを配置する技術



これの木とか岩とか滝が全部SIM外にある


単SIMで大幅なディテールアップが望めるので
かなーり便利なしくみなんだけど

HUGEPRIMっちゅーってサイズとかがかなり限定されてるプリムを使うので
既存プリムに適用出来ないmeshオブジェクトだと不可能

スカルプはプリムパラメーターなので適用可能っちゅーわけなんだが
スカルプは頂点精度が256しかないので
このサイズ(1024*1024*100)だとかなーり大雑把なディテールしか作れない

けどまーないよりはマシなのでかなり重宝されてる感じっすな


オマケ
 HugePrimは重いって話について
 
 まー全く重くないって言うと嘘になるんだけど
 (実際リンデンも存在自体は容認しているが物理オブジェクト化すんなって言ってるし)
 実質LODが全くかからないので大量に使われると描画負荷になるとか
 描画距離短い人だと表示されてないのにコリジョンだけ出て
 見えない壁があるような状態になるとか
 1プリム辺りの同時コリジョン数がどうしても多くなるとか

 そういうのがあるので多用は禁物って程度やね

以上