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

atlas: アトラス作成時に、一度読み込んだテクスチャ画像をキャッシュする #311

Closed
ciscorn opened this issue Feb 21, 2024 · 0 comments
Assignees
Milestone

Comments

@ciscorn
Copy link
Member

ciscorn commented Feb 21, 2024

読み込んだテクスチャ画像は複数のズームレベルや隣接するタイルにおいて何度も使われる。

現在は各タイルごとに画像を毎度読み込んでいる。そうではなくインメモリキャッシュの機構を搭載すべきである。

@ciscorn ciscorn self-assigned this Feb 21, 2024
@ciscorn ciscorn added the performance Need for speed label Feb 21, 2024
ciscorn added a commit that referenced this issue Feb 21, 2024
glTFにマテリアル(PBRの色とテクスチャ)を付与します。課題はたくさん残っていますが、このあたりで一旦マージすべきかと思います。

興味があれば `nusamai/src/sink/cesiumtiles/` 以下の変化を見て頂ければよいかと思います。

それ以外の部分の変更は、特に重要な意味はないです。

既知の問題+今後の課題:
- #309 
- #310 
- #311 (いまは激遅)
@ciscorn ciscorn added this to the 納品 milestone Feb 21, 2024
@nokonoko1203 nokonoko1203 modified the milestones: 3/21納品(必須?), 3/21納品(可能なら), 未来 (Future) Mar 8, 2024
@ciscorn ciscorn removed this from the Future milestone Jun 3, 2024
@nokonoko1203 nokonoko1203 assigned nokonoko1203 and unassigned ciscorn Jun 15, 2024
@nokonoko1203 nokonoko1203 added this to the 2025 milestone Jun 15, 2024
@nokonoko1203 nokonoko1203 changed the title 3dtiles: 読み込んだテクスチャ画像をキャッシュする atlas: アトラス作成時に、一度読み込んだテクスチャ画像をキャッシュする Aug 16, 2024
satoshi7190 added a commit that referenced this issue Aug 16, 2024
<!-- Close or Related Issues -->
Close #593 #311 #448 #303

### Description(変更内容)
<!-- Please describe the motivation behind this PR and the changes it
introduces. -->
<!-- 何のために、どのような変更をしますか? -->

- #612 を修正
- 以下の事象に対応し、アトラス化されたテクスチャの出力と対応するOBJファイルを出力するように変更
- UV座標をアトラスの座標に差し替え
- mtlに書き込むテクスチャのパスと、アトラスの出力パスが不整合を修正
- 不要なcrop処理を入れないように修正
- 全体的にマルチスレッド処理に変更
- 画像のキャッシュサイズを増加
- 一度切り出した`atlas-packer`を一旦nusamaiに戻す
  - 開発効率の問題

### Notes(連絡事項)
<!-- If manual testing is required, please describe the procedure. -->
<!-- 手動の動作確認が必要なら、手順を簡単に伝えてください。その他連絡事項など。 -->

```bash
cargo run -- <input_path> --sink obj -o transform=use_texture -o split=true --output <output_path>
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants