【手続補正書】
【提出日】平成29年12月18日(2017.12.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
グラフィックスデータをレンダリングするための方法であって、
画像をレンダリングするための、複数のレンダリング対象と関連付けられる複数のコマンドを受信するステップであって、前記複数のコマンドのうちのコマンドが初期の順序で受信され、前記複数のレンダリング対象のうちの各レンダリング対象が、それぞれのバッファであり、前記画像が、前記複数のレンダリング対象からのコンテンツで構成される、ステップと、
前記初期の順序と異なる順序である、前記コマンドの実行順序を決定するステップであって、前記実行順序を決定するステップが、前記初期の順序の前記コマンドのレンダリング対象間のデータ依存関係に基づいて、前記複数のレンダリング対象の各レンダリング対象のためのそれぞれのレンダリング対象ごとのコマンドリストを生成するステップを備える、ステップと、
前記レンダリング対象ごとのコマンドリストを前記決定された実行順序でコマンドバッファに追加するステップと、
前記決定された実行順序で前記コマンドバッファからの前記複数のコマンドを実行するステップとを備える、方法。
【請求項２】
各レンダリング対象のための前記レンダリング対象ごとのコマンドリストを生成するステップが、前記複数のコマンドのそれぞれのコマンドに対して、
前記それぞれのコマンドがデータ依存関係を有しないとき、前記それぞれのコマンドと関連付けられるレンダリング対象に基づき、レンダリング対象ごとのコマンドリストに前記それぞれのコマンドを追加するステップを備え、
前記複数のコマンドを実行するステップが、前記それぞれのレンダリング対象ごとのコマンドリストの前記複数のコマンドを実行するステップと備える、請求項1に記載の方法。
【請求項３】
各レンダリング対象のための前記レンダリング対象ごとのコマンドリストを生成するステップが、前記複数のコマンドのそれぞれのコマンドに対して、
前記それぞれのコマンドが以前のコマンドに依存するとき、前記初期の順序において前記それぞれのコマンドに後続するコマンドを並べ替えることなく、前記実行順序を決定するステップを備える、請求項1に記載の方法。
【請求項４】
前記実行順序を決定するステップが、前記複数のコマンドのそれぞれのコマンドに対して、
前記それぞれのコマンドの同じレンダリング対象の前記初期の順序において、前のコマンドと異なる関連するレンダリングモードを前記それぞれのコマンドが有するかどうかを決定するステップと、
前記それぞれのコマンドが異なる関連するレンダリングモードを有するとき、前記初期の順序において前記それぞれのコマンドに後続する前記複数のコマンドを並べ替えることなく、前記実行順序を決定するステップとを備える、請求項1に記載の方法。
【請求項５】
前記レンダリング対象ごとのコマンドリストの各々にレンダリングモードを割り当てるステップをさらに備える、請求項1に記載の方法。
【請求項６】
前記複数のコマンドと関連付けられる1つまたは複数のタイムスタンプに基づいて、前記レンダリング対象間の前記データ依存関係を決定するステップをさらに備える、請求項1に記載の方法。
【請求項７】
前記複数のコマンドを受信するステップが、第1のレンダリング対象の第1のコマンドを受信するステップと、第2のレンダリング対象の第2のコマンドを受信するステップと、前記第1のレンダリング対象の第3のコマンドを受信するステップとを備え、
前記データ依存関係に基づいてそれぞれのレンダリング対象ごとのコマンドリストを生成するステップが、前記第1のレンダリング対象の前記第3のコマンドが前記第2のレンダリング対象の前記第2のコマンドの結果に依存するかどうかを決定するステップを備え、
前記第3のコマンドが前記第2のコマンドに依存しないとき、前記実行順序を決定するステップが、前記コマンドを実行するステップが前記第2のコマンドの前に前記第3のコマンドを実行するステップを備えるように、前記第3のコマンドおよび前記第2のコマンドを並べ替えるステップを備える、請求項1に記載の方法。
【請求項８】
前記それぞれのコマンドリストを生成するステップが、コマンドごとに、前記それぞれのレンダリング対象ごとのコマンドリストを生成するステップを備える、請求項１に記載の方法。
【請求項９】
前記それぞれのコマンドリストを生成するステップが、前記初期の順序で、前記それぞれのレンダリング対象のそれぞれのコマンドを前記それぞれのレンダリング対象ごとのコマンドリストに追加するステップを備える、請求項８に記載の方法。
【請求項１０】
前記複数のコマンドを受信するステップが、複数のアプリケーションプログラミングインターフェース(API)コマンドを受信するステップを備える、請求項１に記載の方法。
【請求項１１】
前記複数のコマンドが、コマンドストリーム内に含まれ、
前記それぞれのコマンドリストを生成するステップが、前記コマンドストリームの全体を分析することなく、前記それぞれのコマンドリストを生成するステップを備える、請求項１に記載の方法。
【請求項１２】
グラフィックスデータをレンダリングするためのデバイスであって、
画像をレンダリングするための、複数のレンダリング対象と関連付けられる複数のコマンドを記憶するように構成されるメモリであって、前記画像が、前記複数のレンダリング対象からのコンテンツで構成される、メモリと、
複数のバッファであって、前記複数のレンダリング対象のうちの各レンダリング対象が、前記複数のバッファのそれぞれのバッファである、複数のバッファと、
コマンドバッファと、
1つまたは複数のプロセッサとを備え、前記1つまたは複数のプロセッサが、
前記複数のレンダリング対象と関連付けられる前記複数のコマンドを受信することであって、前記複数のコマンドのうちのコマンドが初期の順序で受信される、ことと、
前記初期の順序と異なる順序である、前記コマンドの実行順序を決定することであって、前記実行順序を決定することが、前記初期の順序の前記コマンドのレンダリング対象間のデータ依存関係に基づいて、前記複数のレンダリング対象の各レンダリング対象のためのそれぞれのレンダリング対象ごとのコマンドリストを生成することを備える、ことと、
前記レンダリング対象ごとのコマンドリストを前記コマンドバッファに追加することと、
前記決定された実行順序で前記コマンドバッファからの前記複数のコマンドを実行することと
を行うように構成される、デバイス。
【請求項１３】
各レンダリング対象のための前記レンダリング対象ごとのコマンドリストを生成するために、前記1つまたは複数のプロセッサが、前記複数のコマンドのそれぞれのコマンドに対して、
前記それぞれのコマンドがデータ依存関係を有しないとき、前記それぞれのコマンドと関連付けられるレンダリング対象に基づき、レンダリング対象ごとのコマンドリストに前記それぞれのコマンドを追加するように構成され、
前記複数のコマンドを実行するために、前記1つまたは複数のプロセッサが、前記それぞれのレンダリング対象ごとのコマンドリストの前記複数のコマンドを実行するように構成される、請求項12に記載のデバイス。
【請求項１４】
各レンダリング対象のための前記レンダリング対象ごとのコマンドリストを生成するために、前記1つまたは複数のプロセッサが、前記複数のコマンドのそれぞれのコマンドに対して、
前記それぞれのコマンドが以前のコマンドに依存するとき、前記初期の順序において前記それぞれのコマンドに後続するコマンドを並べ替えることなく、前記実行順序を決定するように構成される、請求項12に記載のデバイス。
【請求項１５】
前記実行順序を決定するために、前記1つまたは複数のプロセッサが、前記複数のコマンドのそれぞれのコマンドに対して、
前記それぞれのコマンドの同じレンダリング対象の前記初期の順序において、前のコマンドと異なる関連するレンダリングモードを前記それぞれのコマンドが有するかどうかを決定し、
前記それぞれのコマンドが異なる関連するレンダリングモードを有するとき、前記初期の順序において前記それぞれのコマンドに後続する前記複数のコマンドを並べ替えることなく、前記実行順序を決定するように構成される、請求項12に記載のデバイス。
【請求項１６】
前記1つまたは複数のプロセッサがさらに、前記レンダリング対象ごとのコマンドリストの各々にレンダリングモードを割り当てるように構成される、請求項12に記載のデバイス。
【請求項１７】
前記1つまたは複数のプロセッサがさらに、前記複数のコマンドと関連付けられる1つまたは複数のタイムスタンプに基づいて、前記レンダリング対象間の前記データ依存関係を決定するように構成される、請求項12に記載のデバイス。
【請求項１８】
前記複数のコマンドを受信するために、前記1つまたは複数のプロセッサが、第1のレンダリング対象の第1のコマンドを受信し、第2のレンダリング対象の第2のコマンドを受信し、前記第1のレンダリング対象の第3のコマンドを受信するように構成され、
前記データ依存関係に基づいてそれぞれのレンダリング対象ごとのコマンドリストを生成するために、前記1つまたは複数のプロセッサが、前記第1のレンダリング対象の前記第3のコマンドが前記第2のレンダリング対象の前記第2のコマンドの結果に依存するかどうかを決定するように構成され、
前記第3のコマンドが前記第2のコマンドに依存しないとき、前記実行順序を決定するために、前記1つまたは複数のプロセッサは、前記コマンドを実行するために前記1つまたは複数のプロセッサが前記第2のコマンドの前に前記第3のコマンドを実行するように構成されるように、前記第3のコマンドおよび前記第2のコマンドを並べ替えるように構成される、請求項12に記載のデバイス。
【請求項１９】
前記1つまたは複数のプロセッサがグラフィックス処理装置(GPU)に含まれる、請求項12に記載のデバイス。
【請求項２０】
グラフィックスデータをレンダリングするためのデバイスであって、
画像をレンダリングするための、複数のレンダリング対象と関連付けられる複数のコマンドを受信するための手段であって、前記複数のコマンドのうちのコマンドが初期の順序で受信され、前記複数のレンダリング対象のうちの各レンダリング対象が、それぞれのバッファであり、前記画像が、前記複数のレンダリング対象からのコンテンツで構成される、手段と、
前記初期の順序と異なる順序である、前記コマンドの実行順序を決定するための手段であって、前記実行順序を決定するための前記手段が、前記初期の順序の前記コマンドのレンダリング対象間のデータ依存関係に基づいて、前記複数のレンダリング対象の各レンダリング対象のためのそれぞれのレンダリング対象ごとのコマンドリストを生成するための手段を備える、手段と、
前記レンダリング対象ごとのコマンドリストをコマンドバッファに追加するための手段と、
前記決定された実行順序で前記コマンドバッファからの前記複数のコマンドを実行するための手段とを備える、デバイス。
【請求項２１】
各レンダリング対象のための前記レンダリング対象ごとのコマンドリストを生成するための前記手段が、前記複数のコマンドのそれぞれのコマンドに対して、
前記それぞれのコマンドがデータ依存関係を有しないとき、前記それぞれのコマンドと関連付けられるレンダリング対象に基づき、レンダリング対象ごとのコマンドリストに前記それぞれのコマンドを追加するための手段を備え、
前記複数のコマンドを実行するための手段が、前記それぞれのレンダリング対象ごとのコマンドリストの前記複数のコマンドを実行するための手段を備える、請求項20に記載のデバイス。
【請求項２２】
各レンダリング対象のための前記レンダリング対象ごとのコマンドリストを生成するための前記手段が、前記複数のコマンドのそれぞれのコマンドに対して、
前記それぞれのコマンドが以前のコマンドに依存するとき、前記初期の順序において前記それぞれのコマンドに後続するコマンドを並べ替えることなく、前記実行順序を決定するための手段とを備える、請求項20に記載のデバイス。
【請求項２３】
前記実行順序を決定するための前記手段が、前記複数のコマンドのそれぞれのコマンドに対して、
前記それぞれのコマンドの同じレンダリング対象の前記初期の順序において、前のコマンドと異なる関連するレンダリングモードを前記それぞれのコマンドが有するかどうかを決定するための手段と、
前記それぞれのコマンドが異なる関連するレンダリングモードを有するとき、前記初期の順序において前記それぞれのコマンドに後続する前記複数のコマンドを並べ替えることなく、前記実行順序を決定するための手段とを備える、請求項20に記載のデバイス。
【請求項２４】
前記レンダリング対象ごとのコマンドリストの各々にレンダリングモードを割り当てるための手段をさらに備える、請求項20に記載のデバイス。
【請求項２５】
前記複数のコマンドと関連付けられる1つまたは複数のタイムスタンプに基づいて、前記レンダリング対象間の前記データ依存関係を決定するための手段をさらに備える、請求項20に記載のデバイス。
【請求項２６】
命令を記憶したコンピュータ可読記憶媒体であって、前記命令が、実行されると、1つまたは複数のプロセッサに、
画像をレンダリングするための、複数のレンダリング対象と関連付けられる複数のコマンドを受信することであって、前記複数のコマンドのうちのコマンドが初期の順序で受信され、前記複数のレンダリング対象のうちの各レンダリング対象が、それぞれのバッファであり、前記画像が、前記複数のレンダリング対象からのコンテンツで構成される、ことと、
前記初期の順序と異なる順序である、前記コマンドの実行順序を決定することであって、前記実行順序を決定することが、前記初期の順序の前記コマンドのレンダリング対象間のデータ依存関係に基づいて、前記複数のレンダリング対象の各レンダリング対象のためのそれぞれのレンダリング対象ごとのコマンドリストを生成することを含む、ことと、
前記レンダリング対象ごとのコマンドリストをコマンドバッファに追加することと、
前記決定された実行順序で前記コマンドバッファからの前記複数のコマンドを実行することと
を行わせる、コンピュータ可読記憶媒体。
【請求項２７】
各レンダリング対象のための前記レンダリング対象ごとのコマンドリストを生成するために、前記命令が、前記1つまたは複数のプロセッサに、前記複数のコマンドのそれぞれのコマンドに対して、
前記それぞれのコマンドがデータ依存関係を有しないとき、前記それぞれのコマンドと関連付けられるレンダリング対象に基づき、レンダリング対象ごとのコマンドリストへ前記それぞれのコマンドを追加させ、
前記複数のコマンドを実行するために、前記命令が、前記1つまたは複数のプロセッサに、前記それぞれのレンダリング対象ごとのコマンドリストの前記複数のコマンドを実行させる、請求項26に記載のコンピュータ可読記憶媒体。
【請求項２８】
各レンダリング対象のための前記レンダリング対象ごとのコマンドリストを生成するために、前記命令が、前記1つまたは複数のプロセッサに、前記複数のコマンドのそれぞれのコマンドに対して、
前記それぞれのコマンドが以前のコマンドに依存するとき、前記初期の順序において前記それぞれのコマンドに後続するコマンドを並べ替えることなく、前記実行順序を決定させる、請求項26に記載のコンピュータ可読記憶媒体。
【請求項２９】
前記実行順序を決定するために、前記命令が前記1つまたは複数のプロセッサに、前記複数のコマンドのそれぞれのコマンドに対して、
前記それぞれのコマンドの同じレンダリング対象の前記初期の順序において、前のコマンドと異なる関連するレンダリングモードを前記それぞれのコマンドが有するかどうかを決定させ、
前記それぞれのコマンドが異なる関連するレンダリングモードを有するとき、前記初期の順序において前記それぞれのコマンドに後続する前記複数のコマンドを並べ替えることなく、前記実行順序を決定させる、請求項26に記載のコンピュータ可読記憶媒体。
【請求項３０】
前記命令がさらに、前記1つまたは複数のプロセッサに、前記レンダリング対象ごとのコマンドリストの各々へレンダリングモードを割り当てさせる、請求項26に記載のコンピュータ可読記憶媒体。