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

external_begin_frame_enabled を使えるようにする #3

Open
oov opened this issue Jun 2, 2021 · 2 comments
Open

external_begin_frame_enabled を使えるようにする #3

oov opened this issue Jun 2, 2021 · 2 comments

Comments

@oov
Copy link
Owner

oov commented Jun 2, 2021

現在は 60fps でのレンダリングに依存しており、どんなに効率よくプログラムやスクリプトが作られていても1秒間に30個程度のカスタムオブジェクトしか処理できないと思われる。
external_begin_frame_enabled を使うと 60fps 以上の速度で処理できるようになるはずなので、対応できるようにしたい。

実装の際には普段は 1fps 程度で動かしておき、処理を行っている最中だけ全速力で回すような処理にしたい。
(あくまで非表示タブの軽量化などのための機能なので、完全に止めることはできないと思われる)

https://www.magpcss.org/ceforum/viewtopic.php?f=6&t=17985

Note also that this functionality does not have test coverage, so bugs in this area would not be a great surprise.

壊れているかもしれないことには留意する。

@oov
Copy link
Owner Author

oov commented Jun 4, 2021

色々試したけど画像が読み込めなくなったりしてあまり良くない動きになる。
描画完了を OnPaint で知る流れになるのかと思ったら呼ばれないこともあるし、SendExternalBeginFrame を激しく呼ぶとGPUプロセスがクラッシュする。
積極的に使われていない機能を使う怖さもあるのでひとまず保留にする。

@oov
Copy link
Owner Author

oov commented May 3, 2024

https://bitbucket.org/chromiumembedded/cef/commits/77c1e82898a7f46164e0b997431318bcf9743592
OnAcceleratedPaint がいい感じに使えるようになるらしいので、これを利用できるようにしたい。
基本的には画面に更新があったときに処理が来るはずなので、無駄なオーバーヘッドが削減できるかもしれない。
細かく調べる際に別の Issue を立てる。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant