Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

preview-7: 地物タイル対応 #119

Open
usagi opened this issue Jun 11, 2018 · 7 comments

Comments

1 participant
@usagi
Copy link
Contributor

commented Jun 11, 2018

地物システムは現在タイルとは独立した実装となっている。本チケットではタイルシステムと地物システムを合わせた地物タイルの実装を行い、GSIの提供するGeoJSON形式のタイルサービスを地図レイヤーと類似した感覚でユーザーが扱えるよう対応する。

  1. GeoObject システムのタイル対応改修
  2. タイルシステムの GeoObject 対応改修
  3. 地物タイルのメニューGUIの追加

@usagi usagi added the preview-7 label Jun 11, 2018

@usagi usagi self-assigned this Jun 11, 2018

@usagi

This comment has been minimized.

Copy link
Contributor Author

commented Jun 11, 2018

#117 4.0.7.1, #118 4.0.7.2 の直後に本チケットを対応予定とする。

@usagi

This comment has been minimized.

Copy link
Contributor Author

commented Jul 24, 2018

基本的な設計が完了した。ただ、地形のLODレベルと異なるLODレベルのデータを扱う方法について必要だろうのでどうしたものか検討を続けている。

@usagi

This comment has been minimized.

Copy link
Contributor Author

commented Jul 24, 2018

地形と異なるLODレベルの地物を扱う方法を幾つか考えてみたが、バグの恩賞化しそうな予感、GeoJSONなどテキストパース系が主体となるため低レベルタイルへ高レベル地物タイルをロードする場合かなり高コストになる事、など問題が大きい予想が拭えない。

そこで、本チケットでは地形タイルと同じLODレベルの地物タイルに対応し、それ以上の対応の必要性はユーザーニーズと他の機能開発の状況を見ながら追って判断する事にする。

@usagi

This comment has been minimized.

Copy link
Contributor Author

commented Jul 24, 2018

と、思ったが、どうも実際のサービスを考えるとユーザーニーズ的に「地形タイル」と「地物タイル」のLOD対応性は不要なのでは、と思えてきた。要再考。

ここまでは「地形タイル」に地物を間接的に扱う仕組みを追加する方針だったが、「地形タイル」と同じレベルの独立した別の機能として「惑星」の仕組みに組み込んで、「地物タイル」は注視点から一定距離を読み込むようにした方が実用的なんじゃないか、と思えてきた。

@usagi

This comment has been minimized.

Copy link
Contributor Author

commented Jul 26, 2018

処理の負荷から考えて、

  • 地物タイル1種類ごとに
  • 注視点を中心に lat軸 lon 軸 に平行な稜線の矩形領域で
  • 地物タイルごとにユーザーが設定した LOD レベルで

地物タイル群をロードする方針に変更。

  • 地物タイル群が空の場合 -> 矩形領域全体のロード、中心タイル座標の記録
  • 注視点が移動した際 -> 中心タイル座標の移動量から矩形領域の必要なタイルについて再取得処理、不要なタイルについて除去処理

を行う、そんな動作で実装してみることにした。

@usagi

This comment has been minimized.

Copy link
Contributor Author

commented Aug 8, 2018

実装を進めて動作試験可能な状態にしてみたんじゃが…地物が予想以上に高密度でロードされてUI的にどうしようという問題に遭遇している。

image

@usagi

This comment has been minimized.

Copy link
Contributor Author

commented Aug 8, 2018

ついで、このくらいの数の暴力になるとHUDはCPU計算で実装する部分が多いため地物のマーカー表示も重くなってしまう。点を3Dオブジェクトにしてメインビューへ移してGPUレンダリングにして、マーカーのオンカーソルのレイ判定からHUDへ情報表示、HUDの情報表示はピンどめ可能にする、などの対応を行わないと、こうした地物タイルのデータをUI的に有効に使えないと思う。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.