VR用にグラボをGTX1060入れました VRAMはもちろん最大の6G
コスパ厨なら3万切る3Gモデルでも問題はないんだけど
まぁ大体経験上VRAM少ないグラボで碌な目に会ってないので
んでまぁSLクライアントでむやみにハイエンドなグラボやSSDを入れても
全体のパフォーマンスアップが頭打ちになるどころか
ボーダー超えるとCPUとGPUが寝るようになる現象について
大体の結論みたいなもんが出た
ボトルネックになってるのはGPUでもCPUでもなく
恐らくGPUでレンダリング可能なデータに変換する周りの
レンダーパイプライン周りの処理がボトルネックだ
なのでレンダリングエンジン自体の
根本的なアップデートがないとパフォーマンスアップは不可能というとりあえずの結論
でまぁFPS上げたかったら描画距離を256までにしろってことのようだ
じゃぁなんでそんなことになるのかというと
とりあえずLLが想定してる標準的なレンダリング距離は256mのようだ
描画距離が2倍になるとレンダリング対象オブジェクトの処理量が
単純計算でもにXYZ軸で8倍になり
(実際の具体的な数値はもうちょい小さいはずだ)
どうもなんかそのへんの処理で”細かい大量のオブジェクト”の処理が
どんどん肥大化してクソオモになるらしい?
でまぁSLのオブジェクトは
そんな処理をするための最適化されたモデルになってるわけでもないので
描画距離を伸ばすと指数関数的に処理が増大することでひっかかる原因になるようだ
実際描画距離を絞るだけでCPU使用率とGPU使用率が上昇して
FPSも16切るくらいから30以上まで上昇する
でまぁ多分これ”画角”に対するレンダリング省略処理を入れることで
解決しようとするのがセオリーなんだろうけど
というか今も隠れたオブジェクトのレンダリング省略は入ってるんだが
描画距離を一定ボーダー以上にすると
どうもそれ以前の領域での処理量がえらいこっちゃになるっぽい
でまぁそこを解決する手段なんだけど
多分SLクライアントが本格的にマルチスレッドとか
リクエスト数リミット周りの上限対応すりゃいけんじゃねぇの?知らんけど
ちなみに根本的な解決にならなかったのは以下の通り
・最新のハイエンドCPUへの換装(CPU使用率が寝る)
・最新のハイエンドGPUへの換装(GPU使用率が寝る)
・M.2SSDへの換装(全体的なパフォーマンスアップにはなったがFPS改善せず)
もちろんこの辺が完全に無意味ってわけでもなく
フリッカーさんとかだとレタッチやらで十分なパフォーマンスアップがあるし
動画撮影や編集でのかなりの速度アップが望めるので
ある程度最新のCPUにしてSSDと大容量メモリを搭載して
3万円前後のまともなグラフィックボードにすることは
現在移動すら辛くてビューワーがクラッシュしまくるような状況では
十二分に効果的なのでそこは誤解なきよう
以上
2017年11月10日金曜日
2017年11月8日水曜日
SANSARまともに体験したいならVRHMDをカウノデス
やはりVRHMD所有前提のインターフェースだった
でまぁSANSARのためだけに買うならRIFTの方がええんだけど
直販で一週間以上待つ覚悟とか色々考慮するとVIVEでもいい
ただVIVEをAmazonでまともなルート購入が 現在は不可能なんだよなぁと
新品で103000円は明らかにおかしい値付け
というかマケプレ出品なのでサポートつかないんじゃねぇかな
色々気にする人は ツクモのネットショップで買っとけ 確実だ
VIVE Kit 99HAHZ049-00 《送料無料》 TSUKUMOネットショップ
RIFTも並行輸入品でも作動自体は出来るらしい?との情報がある
初期不良とか修理対応で詰むので ガチで急ぐ人向けかなと
多少割高だし直販以外は基本
壊れたらジャンク屋逝きにしかならんのでかなりハイリスクだけど
直販はこ↑こ↓
https://www.oculus.com/rift/
というわけでSANSARをVRHMDでやった感想 について
・とりあえずHMDつけずにアポロミュージアム行け ロード終わってからHMDつけろ
初期ロードが大体一時間かかる上にバックグラウンドロードもないけど 耐えろ
あそこがSANSARで体験できることのほぼ全てだ
宇宙船とロケットが全部実寸なので十分博物館行く代わりになる
・アトラス内の”つかめる”オブジェクトはやはりハンドセット持ってる前提だった
RIFTだと対象物をポイントして黄色い枠が出たらサイドトリガーで拾える
投げるモーションの加速具合は結構ピーキーと言うか十分強いので
別にフルスイングしなくてもOK
・移動は割りとVRで標準的な方法
ルームスケールじゃなくてもOK
スティックでポイントすると放物線でマーカーが出る方式と
スティック自体である程度平行移動が出来る
・初めて訪れるアトラスは全部ローディングで固まる
これバックグラウンドロード とか 予約ロードが出来れば随分違うんだが
そういうのが一切出来ないのでもう致命的な欠陥レベル
steamVRでもOculusHOmeでもバックグラウンドロードくらいは出来たぞ
・VR Readyならとりあえず全アトラス大丈夫?
使ってるグラボがVR Readyじゃないのでカクついてるっぽいのだ
グラボアップデートしたらまた見に行ってみるかねぇという感じ
大体この辺かなぁ
とりあえずVR Readyの最低ラインであるGTX1060 6Gのグラボは以下の通り
コスパ厨に受けがいい3Gモデルでは多分ムリなので
モデル選定に対して出力可能枚数とファン数を重視した
シングルファンモデルはケースサイズで物理的に入らない場合を除き
積極的に選ぶ対象にはならん
以上
でまぁSANSARのためだけに買うならRIFTの方がええんだけど
直販で一週間以上待つ覚悟とか色々考慮するとVIVEでもいい
ただVIVEをAmazonでまともなルート購入が 現在は不可能なんだよなぁと
新品で103000円は明らかにおかしい値付け
というかマケプレ出品なのでサポートつかないんじゃねぇかな
色々気にする人は ツクモのネットショップで買っとけ 確実だ
VIVE Kit 99HAHZ049-00 《送料無料》 TSUKUMOネットショップ
RIFTも並行輸入品でも作動自体は出来るらしい?との情報がある
初期不良とか修理対応で詰むので ガチで急ぐ人向けかなと
多少割高だし直販以外は基本
壊れたらジャンク屋逝きにしかならんのでかなりハイリスクだけど
直販はこ↑こ↓
https://www.oculus.com/rift/
というわけでSANSARをVRHMDでやった感想 について
・とりあえずHMDつけずにアポロミュージアム行け ロード終わってからHMDつけろ
初期ロードが大体一時間かかる上にバックグラウンドロードもないけど 耐えろ
あそこがSANSARで体験できることのほぼ全てだ
宇宙船とロケットが全部実寸なので十分博物館行く代わりになる
・アトラス内の”つかめる”オブジェクトはやはりハンドセット持ってる前提だった
RIFTだと対象物をポイントして黄色い枠が出たらサイドトリガーで拾える
投げるモーションの加速具合は結構ピーキーと言うか十分強いので
別にフルスイングしなくてもOK
・移動は割りとVRで標準的な方法
ルームスケールじゃなくてもOK
スティックでポイントすると放物線でマーカーが出る方式と
スティック自体である程度平行移動が出来る
・初めて訪れるアトラスは全部ローディングで固まる
これバックグラウンドロード とか 予約ロードが出来れば随分違うんだが
そういうのが一切出来ないのでもう致命的な欠陥レベル
steamVRでもOculusHOmeでもバックグラウンドロードくらいは出来たぞ
・VR Readyならとりあえず全アトラス大丈夫?
使ってるグラボがVR Readyじゃないのでカクついてるっぽいのだ
グラボアップデートしたらまた見に行ってみるかねぇという感じ
大体この辺かなぁ
とりあえずVR Readyの最低ラインであるGTX1060 6Gのグラボは以下の通り
コスパ厨に受けがいい3Gモデルでは多分ムリなので
モデル選定に対して出力可能枚数とファン数を重視した
シングルファンモデルはケースサイズで物理的に入らない場合を除き
積極的に選ぶ対象にはならん
以上
2017年8月25日金曜日
SLRRモーターコア関係での問題解決メモ
今回の話の要点
・問題
子プリムとルートプリムを同じ位置に配置して
子プリムでセンサーを実行した場合
ルートプリムで実行した場合と挙動に差が出る
具体的には完全に同じ座標にある別オブジェクトが
子プリムでは検出できない ルートプリムでは検出可能
・解決策
子プリムの位置を極小距離オフセットすることで解決
じゃ本編
○はじめに
SLRRで車体を回転せずに後退させるために必要な措置についての解決
要はルートプリムと同じ座標に回転するセンサー置いて
そいつで計算させた結果を使って全体を移動すれば
その場で車体を180度旋回させるなんてクッソダサい動きしなくていいわけよ
ルート以外全部回転させるって荒業も前には試したけど
SIMラグがひどいときとかはトランスフォームに数秒かかってて
結局180度回転させるのとあんま変わらんじゃんみたいな
でまこの仕組を路面電車リリースした後に移植作業してたんだけど
で致命的な問題が出て正常に作動してなかったのが
今回動くようになりました ヤッタネ
○現象
停止位置マーカーに到着した際の不可解な挙動
具体的には ルートプリムでセンサーを実行している際には
座標的に完全に重なっている別オブジェクトをセンサーで検出出来ていたんだが
(これは到着オブジェクトが停止マーカーかどうかを検出させるルーチンで一番重要)
子プリムではゼロ点で重なっている別オブジェクトをセンサーで検出出来ない
(これ多分厳密には座標系が違うとかそういう関係の話だと思うが未検証)
○解決策
センサープリムを進行方向に対して0.001m後ろにオフセットすることで解決
以上
・問題
子プリムとルートプリムを同じ位置に配置して
子プリムでセンサーを実行した場合
ルートプリムで実行した場合と挙動に差が出る
具体的には完全に同じ座標にある別オブジェクトが
子プリムでは検出できない ルートプリムでは検出可能
・解決策
子プリムの位置を極小距離オフセットすることで解決
じゃ本編
○はじめに
SLRRで車体を回転せずに後退させるために必要な措置についての解決
要はルートプリムと同じ座標に回転するセンサー置いて
そいつで計算させた結果を使って全体を移動すれば
その場で車体を180度旋回させるなんてクッソダサい動きしなくていいわけよ
ルート以外全部回転させるって荒業も前には試したけど
SIMラグがひどいときとかはトランスフォームに数秒かかってて
結局180度回転させるのとあんま変わらんじゃんみたいな
でまこの仕組を路面電車リリースした後に移植作業してたんだけど
で致命的な問題が出て正常に作動してなかったのが
今回動くようになりました ヤッタネ
○現象
停止位置マーカーに到着した際の不可解な挙動
具体的には ルートプリムでセンサーを実行している際には
座標的に完全に重なっている別オブジェクトをセンサーで検出出来ていたんだが
(これは到着オブジェクトが停止マーカーかどうかを検出させるルーチンで一番重要)
子プリムではゼロ点で重なっている別オブジェクトをセンサーで検出出来ない
(これ多分厳密には座標系が違うとかそういう関係の話だと思うが未検証)
○解決策
センサープリムを進行方向に対して0.001m後ろにオフセットすることで解決
以上
2017年8月21日月曜日
SANSARについて 雑に
とりあえず結論としては
現状VRHMD持ってないなら行っても実質的に移動以外何もできん上に
要求PCスペックも高いので一般消費者が行ってまだどうこうなるものではない
んでもって新しもの好きの純粋消費者にとってはSL2になるかもしれんが
既存ユーザーにとってSLの代わりになるものでもない というか別物
じゃ適当に解説
○まずSANSARのプラットフォームとしての立ち位置
初期は次期SLとかNGPとか言われてたやつのようだ
SLのシステム上のネガというか
主にグラフィックのアップデートに関する障壁を取っ払って
よりリッチなコンテンツによるエクスペリエンスを目指したようなんだけど
ゲームエンジンのライセンス周りとかコンテンツ供給者との
すり合わせがうまくいかなかったっぽい
そういう部分では ある意味2007年あたりのSLと似てるんだよな
当時の"ハイスペックパソコン”の使いみちの一つだったり
現在のバーチャルマネーブームの流れだったり
とにかく最新の流行りのガジェットの”使いみち”の一つという感じ
2007年当時のゲーミングPCがSANSARにおけるVRHMDだな
○入れるステージ(Atlas)の中身について
まぁSIMエッジが無くなって
オブジェクトが全部ゲームレディのmeshデータになったSLという感じ
ほんともうぶっちゃけて言っちゃうとVR対応したBlueMarsだもう
カメラ回転の制限がきついところとか
最初にAtlasのデータ全部ダウンロードさせられるところとか
ランディングがAtlas選択なところとかがモロだ
Atlasのデータがバックグラウンドでダウンロードできねーのに
一回マップがローディングになると一時間ほどなんも操作できなくなるので
これはもう致命的な欠陥言っていいれべるなんじゃねぇのと
でまぁVRの使用用途の可能性
として一番わかりやすいのはアポロミュージアムだ
実在するミュージアムにいかなくても所謂”サイズ感”とかがわかるのが
あーいうVRミュージアムのメリットだな
SLでも似たような試みはされたんだけど
移動が見下ろし視点で天井が高くなってしまうためにどうしても限界があり
かといってマウスルックのようなFPSスタイルで
3D空間を動き回るのはかなりの特殊技能なので
自分の目で見るリアルサイズ感みたいなのはVRならではじゃないかなみたいな
○操作等
一応通常のPC環境でもステージに入ることは出来る
が 見下ろし視点で移動が出来るのみ 歩く以外の移動手段がTPしかない
その歩きがもう問題外で遅い なんなんだアレはw
ctrl押しながら任意の場所をクリックするとTPみたいな動きをする
これ自体はVRコンテンツでよくある操作方法なので特に違和感とかなし
ステージ上の何かに干渉するためにはVRHMDのハンドセットが必須のようだ
マウスやキーボードではステージ上にあるオブジェクトに対する操作が一切できないので
アポロミュージアムでの音声再生やゲームエリアでのボール投げ等も出来ない
ちなみにマップ上でVR使ってるかどうかは割とすぐにわかるというか
腕の動きが明らかに違うので実際に見てみることをおすすめする
○VRHMD所有者に試してもらった
ボールは投げられるようだ
ただボールを拾う操作がかなりシビアなようで
拾おうとして手を近づけすぎるとめり込んですっ飛ぶとのこと
通常のVRプラットフォームなら
ハンドセット向けて拾う操作すると吸い付くようにピックアップされるぽい
あとボールを持った手 の形もなんかおかしいらしい 実装抜け?
○終わりに 儲かるの?的な
現在自宅に自分用のVRHMDを手に入れることが出来ている人間は
確実に最新技術に興味を持った金持ちなので
そういう人間向けにコンテンツを供給する場 になるんだろうな
あくまでVR主体 VRじゃないモードは添え物というかおまけという感じ
んでもって実はそういうコンテンツって今のSLで
フリッカーさん達が好むようなmeshコンテンツそのものなので
現状SLでゲームレディレベルのmeshコンテンツを
自作出来るだけのスキルを持っていれば
コンテンツ供給者としての技術障壁ってことだとあんまりないのかなみたいな
ちなみにゲーム内通貨はs$って単位になってて
レートは1$が100S$でほぼ安定してるので
1s$が1円くらいの認識でよさげ
以上
現状VRHMD持ってないなら行っても実質的に移動以外何もできん上に
要求PCスペックも高いので一般消費者が行ってまだどうこうなるものではない
んでもって新しもの好きの純粋消費者にとってはSL2になるかもしれんが
既存ユーザーにとってSLの代わりになるものでもない というか別物
じゃ適当に解説
○まずSANSARのプラットフォームとしての立ち位置
初期は次期SLとかNGPとか言われてたやつのようだ
SLのシステム上のネガというか
主にグラフィックのアップデートに関する障壁を取っ払って
よりリッチなコンテンツによるエクスペリエンスを目指したようなんだけど
ゲームエンジンのライセンス周りとかコンテンツ供給者との
すり合わせがうまくいかなかったっぽい
でまぁVRHMDが流行ったのでそっち方面に舵を切ったと
そういう部分では ある意味2007年あたりのSLと似てるんだよな
当時の"ハイスペックパソコン”の使いみちの一つだったり
現在のバーチャルマネーブームの流れだったり
とにかく最新の流行りのガジェットの”使いみち”の一つという感じ
2007年当時のゲーミングPCがSANSARにおけるVRHMDだな
○入れるステージ(Atlas)の中身について
まぁSIMエッジが無くなって
オブジェクトが全部ゲームレディのmeshデータになったSLという感じ
ほんともうぶっちゃけて言っちゃうとVR対応したBlueMarsだもう
カメラ回転の制限がきついところとか
最初にAtlasのデータ全部ダウンロードさせられるところとか
ランディングがAtlas選択なところとかがモロだ
Atlasのデータがバックグラウンドでダウンロードできねーのに
一回マップがローディングになると一時間ほどなんも操作できなくなるので
これはもう致命的な欠陥言っていいれべるなんじゃねぇのと
でまぁVRの使用用途の可能性
として一番わかりやすいのはアポロミュージアムだ
実在するミュージアムにいかなくても所謂”サイズ感”とかがわかるのが
あーいうVRミュージアムのメリットだな
SLでも似たような試みはされたんだけど
移動が見下ろし視点で天井が高くなってしまうためにどうしても限界があり
かといってマウスルックのようなFPSスタイルで
3D空間を動き回るのはかなりの特殊技能なので
自分の目で見るリアルサイズ感みたいなのはVRならではじゃないかなみたいな
○操作等
一応通常のPC環境でもステージに入ることは出来る
が 見下ろし視点で移動が出来るのみ 歩く以外の移動手段がTPしかない
その歩きがもう問題外で遅い なんなんだアレはw
ctrl押しながら任意の場所をクリックするとTPみたいな動きをする
これ自体はVRコンテンツでよくある操作方法なので特に違和感とかなし
ステージ上の何かに干渉するためにはVRHMDのハンドセットが必須のようだ
マウスやキーボードではステージ上にあるオブジェクトに対する操作が一切できないので
アポロミュージアムでの音声再生やゲームエリアでのボール投げ等も出来ない
ちなみにマップ上でVR使ってるかどうかは割とすぐにわかるというか
腕の動きが明らかに違うので実際に見てみることをおすすめする
○VRHMD所有者に試してもらった
ボールは投げられるようだ
ただボールを拾う操作がかなりシビアなようで
拾おうとして手を近づけすぎるとめり込んですっ飛ぶとのこと
通常のVRプラットフォームなら
ハンドセット向けて拾う操作すると吸い付くようにピックアップされるぽい
あとボールを持った手 の形もなんかおかしいらしい 実装抜け?
○終わりに 儲かるの?的な
現在自宅に自分用のVRHMDを手に入れることが出来ている人間は
確実に最新技術に興味を持った金持ちなので
そういう人間向けにコンテンツを供給する場 になるんだろうな
あくまでVR主体 VRじゃないモードは添え物というかおまけという感じ
んでもって実はそういうコンテンツって今のSLで
フリッカーさん達が好むようなmeshコンテンツそのものなので
現状SLでゲームレディレベルのmeshコンテンツを
自作出来るだけのスキルを持っていれば
コンテンツ供給者としての技術障壁ってことだとあんまりないのかなみたいな
ちなみにゲーム内通貨はs$って単位になってて
レートは1$が100S$でほぼ安定してるので
1s$が1円くらいの認識でよさげ
以上
2017年4月27日木曜日
一般論として高く売りたいなら売れない原因は潰しといたほうがいいんだけどねみたいな話
一般論だよ
かといってリリースしようとする時点で
んなこたわかってるよ
潰せるんだったら潰しとるわバカみたいな話にもなるので
ある程度QAみたいなことが出来る人間にテストしてもらうか
テスト版ってことで安く出して
人柱から意見を集めるみたいなのが手段としてあるわけです
金銭的な開発コストはただ作るだけの制作費の倍以上かかる
まぁでもそこでワイとかみたいな
めんどくさい操作方法しまくったりして粗の指摘しか出来ない
性格の悪いキチガイにエンカウントするのが嫌だってんでしょ
んでもってそういう連中が提示する"解決策"も
あからさまに実現することが不可能ないちゃもんとして受け取って
それをやるんだったら売る意味ね~じゃん
もうこっちに関わらなくていいからどっかいけばーか
とかそういう話なんだろ
でまぁあれよ
SecondLifeという場所への参加者として自分のクリエイティビティを
発露する行為自体を否定したいわけじゃねぇのよ
ただ権利を行使したときの責任ってもんもあるわけよ
大体の場合責任の度合いはそのまま値段なわけよ
その上でまぁ”可能なら高く売れて欲しい”ってのがあるだろうし
そのために
でも高く売れるために自分のスタイルを貫けないなら
やらんほうがマシだみたいな意見も尊重したい
でまぁ
大体の場合○○が欲しいから作ったor調べて買ったみたいな人間は
それを手に入れるためにものすごい調べたりするはずなんだよ
なのでもう
同じく○○が欲しいと思っている同士がそれを買ったりした場合
貴様が欲する○○はその程度のものだったのか?みたいな部分で
価値観やらなんやらの相違で行き違いが出たりするわけさ
△△から出てる○○?知ってるよ でも出来が悪いから買いません
これで済んでれば簡単でいいんだけどねぇ
大体そういうのって間違って買っちゃって
期待以下の出来だから(´・ω・`)ショボーンみたいな経験があり
それはそれで学習して目利きになるしか無いってのが
長期的な話ではあるんだけどそれ続けるのも結構大変よほんと
てかほんとそういう人は”気に入るもっとすごいもの”
が見つかるといいねぇ的なことを純粋に思うわけ
でまぁ可能なら教えてーなみたいな
(お前には教えてやんねーって? それも一興)
以上
かといってリリースしようとする時点で
んなこたわかってるよ
潰せるんだったら潰しとるわバカみたいな話にもなるので
ある程度QAみたいなことが出来る人間にテストしてもらうか
テスト版ってことで安く出して
人柱から意見を集めるみたいなのが手段としてあるわけです
金銭的な開発コストはただ作るだけの制作費の倍以上かかる
まぁでもそこでワイとかみたいな
めんどくさい操作方法しまくったりして粗の指摘しか出来ない
性格の悪いキチガイにエンカウントするのが嫌だってんでしょ
んでもってそういう連中が提示する"解決策"も
あからさまに実現することが不可能ないちゃもんとして受け取って
それをやるんだったら売る意味ね~じゃん
もうこっちに関わらなくていいからどっかいけばーか
とかそういう話なんだろ
でまぁあれよ
SecondLifeという場所への参加者として自分のクリエイティビティを
発露する行為自体を否定したいわけじゃねぇのよ
ただ権利を行使したときの責任ってもんもあるわけよ
大体の場合責任の度合いはそのまま値段なわけよ
その上でまぁ”可能なら高く売れて欲しい”ってのがあるだろうし
そのために
でも高く売れるために自分のスタイルを貫けないなら
やらんほうがマシだみたいな意見も尊重したい
でまぁ
大体の場合○○が欲しいから作ったor調べて買ったみたいな人間は
それを手に入れるためにものすごい調べたりするはずなんだよ
なのでもう
同じく○○が欲しいと思っている同士がそれを買ったりした場合
貴様が欲する○○はその程度のものだったのか?みたいな部分で
価値観やらなんやらの相違で行き違いが出たりするわけさ
△△から出てる○○?知ってるよ でも出来が悪いから買いません
これで済んでれば簡単でいいんだけどねぇ
大体そういうのって間違って買っちゃって
期待以下の出来だから(´・ω・`)ショボーンみたいな経験があり
それはそれで学習して目利きになるしか無いってのが
長期的な話ではあるんだけどそれ続けるのも結構大変よほんと
てかほんとそういう人は”気に入るもっとすごいもの”
が見つかるといいねぇ的なことを純粋に思うわけ
でまぁ可能なら教えてーなみたいな
(お前には教えてやんねーって? それも一興)
以上
2017年4月24日月曜日
SLRRモーターコア 計算方法のお話 メモ
三角関数の話です
うろ覚えなのでソース確認しないとだな
・二等辺三角形と三角関数を利用したRの決定
・レールにカントがついている場合のrot決定
・KFMでそれらを記述する方法
・二等辺三角形と三角関数を利用したRの決定
まず現在の向きと位置をpos1,rot1として
ターゲットとなるガイドオブジェクトの位置をpos2,rot2とします
んでrot1とrot2に<1,0,0>を掛けて導き出した方向ベクトルをvec1,vec2
方向ベクトルから導き出した平面上での方角をdir1 dir2とします
dir1 = llAtan2(vec1.y,vec1.x);
dir2 = llAtan2(vec2.y,vec2.x);
んでこっからRを算出しますが
これはpos1,pos2間の距離とdirの角度の差を利用します
確か X=Rsinθ辺りの式を変形するとRを出せる式になるです
なので まずXを決定します
Xはpos1とpos2の中点座標までの距離で出てくるので
そっからX= llVecMag(pos2-pos1)/2とかだったかな
θ = (dir2-dir1)/2 だったっけかなぁ
これでパラメータ全部埋まったのでXとθからRが出ます
んでRが出たらそっから移動速度とフレーム数で円周上の距離を割ると
移動モーションで扇形軌道を描く線を通すための
Rとθが決定するので
あとは頑張って座標プロットしてモーション組んでください
・レールにカントがついている場合のrot決定
割と単純な座標計算です
<0,0,1>のベクトルをrot掛けてvec1_1出してな
これの前に出したdirの式使って正規化する
vec1_1=vec1_1/llEuler2Rot(<0,0,dir>);
これで正規化した”傾き”のvectorが出るからな
そしたら kant = llAtan2(vec1_1.z,vec1_1.y);
これでいけっかなぁ
まぁ航空機でのピッチロールヨーを出す数式と基本的に一緒
航空機と違うのは表示機ではなく実際の移動に使う部分だな
・KFMでそれらを記述する方法
とりあえず円は多角形で近似出来るだろー
フレーム最小のθとR使ってフレーム間距離出してな~
そしたら曲がる角度と移動距離が決定されるので
あとはそれをKFMに記述するだけでOK
大体この辺でいけるはずだ
んでこの理論で組んだモーターコアつくって
移動速度の外部コマンドでコントロール出来るブラックボックスにすれば
ツアーライドとかあのへんに汎用的に使えるんじゃねーの的な
以上
うろ覚えなのでソース確認しないとだな
・二等辺三角形と三角関数を利用したRの決定
・レールにカントがついている場合のrot決定
・KFMでそれらを記述する方法
・二等辺三角形と三角関数を利用したRの決定
扇形軌道の視点と終点の接線の角度と直線での二点間距離で
二等辺三角形を作図するです
ベジェとか出やったほうがきれいに出るけどめんどくさいでしょあれ
なので先にRとθだけで作図出来る方法をやるです
まず現在の向きと位置をpos1,rot1として
ターゲットとなるガイドオブジェクトの位置をpos2,rot2とします
んでrot1とrot2に<1,0,0>を掛けて導き出した方向ベクトルをvec1,vec2
方向ベクトルから導き出した平面上での方角をdir1 dir2とします
dir1 = llAtan2(vec1.y,vec1.x);
dir2 = llAtan2(vec2.y,vec2.x);
んでこっからRを算出しますが
これはpos1,pos2間の距離とdirの角度の差を利用します
確か X=Rsinθ辺りの式を変形するとRを出せる式になるです
なので まずXを決定します
Xはpos1とpos2の中点座標までの距離で出てくるので
そっからX= llVecMag(pos2-pos1)/2とかだったかな
θ = (dir2-dir1)/2 だったっけかなぁ
これでパラメータ全部埋まったのでXとθからRが出ます
んでRが出たらそっから移動速度とフレーム数で円周上の距離を割ると
移動モーションで扇形軌道を描く線を通すための
Rとθが決定するので
あとは頑張って座標プロットしてモーション組んでください
・レールにカントがついている場合のrot決定
割と単純な座標計算です
<0,0,1>のベクトルをrot掛けてvec1_1出してな
これの前に出したdirの式使って正規化する
vec1_1=vec1_1/llEuler2Rot(<0,0,dir>);
これで正規化した”傾き”のvectorが出るからな
そしたら kant = llAtan2(vec1_1.z,vec1_1.y);
これでいけっかなぁ
まぁ航空機でのピッチロールヨーを出す数式と基本的に一緒
航空機と違うのは表示機ではなく実際の移動に使う部分だな
・KFMでそれらを記述する方法
とりあえず円は多角形で近似出来るだろー
フレーム最小のθとR使ってフレーム間距離出してな~
そしたら曲がる角度と移動距離が決定されるので
あとはそれをKFMに記述するだけでOK
大体この辺でいけるはずだ
んでこの理論で組んだモーターコアつくって
移動速度の外部コマンドでコントロール出来るブラックボックスにすれば
ツアーライドとかあのへんに汎用的に使えるんじゃねーの的な
以上
2017年4月16日日曜日
登録:
投稿 (Atom)