パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

MicrosoftがLonghornの3DUI公開」記事へのコメント

  • 各ウィンドウがフロントバッファを直接描きかえるのではなく、まずバックバッファに描画するようになるらしいのが目玉なんだと思います。(Mac OS Xではすでにそうなってるんでしょうか?)

    グラフィックプロセッサの性能が上がったので、必死でWM_PAINTを投げて差分描画するような、言ってみれば泥臭いことをせずに、より自然な方法でデスクトップ画面を合成しようと。今のWindowsでは、重いアプリケーションの上でウィンドウを動かしたときに再描画が遅れて一時的に化けたりしますが、そういった不快な部分がなくなるんじ
    • 各ウィンドウがフロントバッファを直接描きかえるのではなく、まずバックバッファに描画するようになるらしいのが目玉なんだと思います。(Mac OS Xではすでにそうなってるんでしょうか?)

      裏 Memory に一旦描画して一気に bitblt するという手法は Windows に限らず一般的かなぁと思います。もし、アプリケーションが直接フロントを書きかえたつもりでいても、バックバッファ→フロントバッファというルーティングが自動的に踏まれるのであれば、余計なお世話な気もしますけど。

      # もし、ピントがずれたことを言ってたらごめんなさい...

      今回の件で言うと

      --

      -- cooper

      • > 裏 Memory に一旦描画して一気に bitblt するという手法は Windows に限らず一般的かなぁと思います。

        3D CAD みたいな、グラフィックアクセラレータの性能をフル活用しようとするアプリケーションの場合、メモリに書き出してから BitBlt だとハードウェアアクセラレーションが効かなくなるため、描画がとても遅くなってしまいます。
        そのため従来は描画領域が無効化されるたびに再描画するか、もしくはほったらかしにして他のウィンドウが重なった部分は真っ白のままほったらかしにするのが通例でした。

        この技

        --
        むらちより/あい/をこめて。
        • 3D CAD みたいな、グラフィックアクセラレータの性能をフル活用しようとするアプリケーションの場合、メモリに書き出してから BitBlt だとハードウェアアクセラレーションが効かなくなるため、描画がとても遅くなってしまいます

          そうなんですか? 3D CAD は作ったことがないので良くわかってませんが、直接描画が通例なんですか?

          この技術が搭載されると、こういったアプリケーションで表示領域の破壊が起こらないので再描画の必要がなくなり

          --

          -- cooper

          • >表示領域の破壊と再描画は、ウィンドウの重なり以外にも、スクロールやリサイズ等で発生しますよね。こういった場合の再描画処理は依然として必要だし、アプリケーションの責任だと思います。

            アプリと実際の画面の間のInterfaceがビットマップ絵ベースであるならば、
            責任はアプリに有る…というか「アプリ以外(OSやドライバ)に責任を負わせても、あんまりパフォーマンスアップに繋がらない」
            のでしょうね。

            Interfaceがそれ以外のものになると、話は変わってくるんじゃないかな。
            たとえばベクトル絵ベースになると、拡大縮小回転の要求を「いちいちアプリに投げなくても」
            OS
            • たとえばベクトル絵ベースになると、拡大縮小回転の要求を「いちいちアプリに投げなくても」
              OSとかドライバとかが独自判断(?)して再描画させられる
              なるほど。僕にはこういう描画処理を具体的にイメージする能力がないんですね。旧態依然とした、bitblt しか思いつかないってのがそのあらわれでして...

              Direct X でも Flip とか Blt とか Present とかのメソッドを発見していたので、そこから先に進むことができずにいたようです。興味深いコメントでピリリと刺激されました。どうもです。
              --

              -- cooper

              親コメント

一つのことを行い、またそれをうまくやるプログラムを書け -- Malcolm Douglas McIlroy

処理中...