2026:02:15
差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| 2026:02:15 [2026/02/15 15:31] – machiaworx | 2026:02:15 [2026/02/16 00:28] (現在) – machiaworx | ||
|---|---|---|---|
| 行 25: | 行 25: | ||
| * あとスケーリングは最悪更に仮想スクリーン情報かまして最終的な転送のときに拡大するようにしておけば問題なかろと思った。 | * あとスケーリングは最悪更に仮想スクリーン情報かまして最終的な転送のときに拡大するようにしておけば問題なかろと思った。 | ||
| * https:// | * https:// | ||
| + | |||
| + | ---- | ||
| + | * ウィンドウと描画スレッドは別物にしておいた。実質シングルスレッドではあるものの、ウィンドウの状態に依存して動かなくなるのを防ぐことができた。 | ||
| + | * あと合わせてSFMLとライブラリ未使用、どっちも同じような実装にしておいた。 | ||
| + | * https:// | ||
| + | |||
| + | ---- | ||
| + | * 何故かライブラリ使わないコードとライブラリ使うコードでウィンドウサイズが違っていた。 | ||
| + | * ヘッダ部分含めて計算する必要があるため、ライブラリ使わないほうは大きくなりがち。 | ||
| + | * https:// | ||
| + | * SFMLはウィンドウのスケーリングやWindows11のUI拡大縮小に関係なく一定のサイズで出力するらしく、相対的に小さかった。 | ||
| + | * ということで問題は解決させた。 | ||
| + | * ついでにウィンドウサイズが違うのを確認して計算し直した。 | ||
| + | * 下記のようなコードを組み込めば解決は可能。 | ||
| + | * https:// | ||
| + | |||
| + | ---- | ||
| + | * SFML、こちらの方法でOpenGL上のデバイスコンテキスト使っているのでは?となった。 | ||
| + | * http:// | ||
| + | * OpenGL上ではレンダリングコンテキストというらしい。 | ||
| + | * https:// | ||
| + | * デバイスコンテキストについては下記。 | ||
| + | * https:// | ||
| + | * つまりウィンドウ周りの共通仕様みたいな形で、Windows側(MFC)のデバイスコンテキストを利用した描画ではCPU使用される可能性がとっても高いという感じかな。 | ||
| + | * ふむ | ||
| + | * https:// | ||
| + | * https:// | ||
| + | * これだな! | ||
| + | * https:// | ||
| + | * そういえば結構前に某猫氏に教えてもらったのと自分でも使ってみたっけな。 | ||
| + | * https:// | ||
| + | * 重ね合わせや半透明が入ると演算が入るけど、そうじゃない場合単に色の転送を実装する形で問題なさそう。 | ||
| ===== ゲーム ===== | ===== ゲーム ===== | ||
| * 新しくゲーム出されてた | * 新しくゲーム出されてた | ||
| * https:// | * https:// | ||
2026/02/15.1771137101.txt.gz · 最終更新: 2026/02/15 15:31 by machiaworx