HardwareRenderer クラス

定義

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

[Android.Runtime.Register("android/graphics/HardwareRenderer", ApiSince=29, DoNotGenerateAcw=true)]
public class HardwareRenderer : Java.Lang.Object
[<Android.Runtime.Register("android/graphics/HardwareRenderer", ApiSince=29, DoNotGenerateAcw=true)>]
type HardwareRenderer = class
    inherit Object
継承
HardwareRenderer
属性

注釈

ハードウェアアクセラレータレンダラーのインスタンスを作成します。 これは、 RenderNodeから作成されたシーンを出力 android.view.Surfaceにレンダリングするために使用されます。 HardwareRenderer インスタンスは必要な数まで存在できます。

<h3>リソースとライフサイクル</h3>

すべての HardwareRenderer インスタンスは、共通のレンダリング スレッドを共有します。 レンダリング スレッドには、GPU 高速レンダリングを実行するために必要な GPU コンテキストとリソースが含まれています。 そのため、最初に作成された HardwareRenderer には、関連する GPU コンテキストを作成するコストも伴います。ただし、その後の各増分 HardwareRenderer はかなり安価です。 想定される使用方法は、すべてのアクティブな Surfaceに対して HardwareRenderer インスタンスを使用することです。 たとえば、アクティビティにダイアログが表示されている場合、システムは内部的に 2 つのハードウェア レンダラーを使用します。どちらも同時に描画される可能性があります。

注: レンダー スレッドの共有された協調的な性質により、使用される Surface には、プロンプトと信頼性の高い使用側が必要であることが重要です。 android.view.SurfaceViewandroid.view.Window#takeSurface(SurfaceHolder.Callback2)android.view.TextureViewなどのシステム提供のコンシューマーはすべて、この要件に適合します。 ただし、 SurfaceTextureandroid.media.ImageReader を使用する場合など、カスタム コンシューマーを使用する場合は、更新プログラムを迅速かつ迅速に使用することがアプリの責任です。 これを行わないと、そのサーフェスでレンダリング スレッドがストールし、すべての HardwareRenderer インスタンスがブロックされます。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

コンストラクター

名前 説明
HardwareRenderer()

HardwareRenderer の新しいインスタンスを作成します。

HardwareRenderer(IntPtr, JniHandleOwnership)

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

フィールド

名前 説明
SyncContextIsStopped
古い.

ハードウェア レンダラーが "停止" 状態に設定されています。

SyncFrameDropped
古い.

コンテンツは同期されましたが、レンダラーはこの vsync 間隔でフレームを生成することを拒否しました。

SyncLostSurfaceRewardIfFound
古い.

ハードウェア レンダラーには、レンダリングする有効な android.view.Surface がなくなりました。

SyncOk
古い.

レポートに興味深いものはありません。

SyncRedrawRequested
古い.

レンダラーが再描画を要求しています。

プロパティ

名前 説明
Class

この Objectのランタイム クラスを返します。

(継承元 Object)
DrawingEnabled

HardwareRender が出力を生成する場合は true を返します。 または、HardwareRenderer が現在のプロセスで図面出力をグローバルに生成するかどうかを切り替えます。

Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
JniIdentityHashCode

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)
JniPeerMembers

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

Opaque

レンダラーが不透明に設定されているかどうか。 または、HardwareRenderer の不透明度を変更します。

PeerReference

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)
ThresholdClass

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

ThresholdType

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

メソッド

名前 説明
ClearContent()

現在のレンダリング コンテンツに関連付けられているすべての表示リストを破棄します。

Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
CreateRenderRequest()

新しいフレームのレンダリングに使用できる FrameRenderRequest を返します。

Destroy()

この HardwareRenderer のレンダリング コンテキストを破棄します。

Dispose()

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)
Dispose(Boolean)

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
JavaFinalize()

オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
Notify()

このオブジェクトのモニターで待機している 1 つのスレッドを起動します。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドを起動します。

(継承元 Object)
NotifyFramePending()

FrameRenderRequest#syncAndDraw()の呼び出しが近日公開されることをハードウェア レンダラーに通知します。

SetContentRoot(RenderNode)

レンダリングするコンテンツ ルートを設定します。

SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
SetLightSourceAlpha(Single, Single)

アンビエント シャドウ アルファとスポット シャドウ アルファを構成します。

SetLightSourceGeometry(Single, Single, Single, Single)

光源の中心を設定します。

SetName(String)

このレンダラーの名前を設定します。

SetSurface(Surface)

レンダリングするサーフェス。

Start()

サーフェスへのレンダリングを再開します。

Stop()

ハードはサーフェスへのレンダリングを停止します。

ToArray<T>()

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)
ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
UnregisterFromRuntime()

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)
Wait()

現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)
Wait(Int64)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)

明示的なインターフェイスの実装

名前 説明
IJavaPeerable.Disposed()

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)
IJavaPeerable.DisposeUnlessReferenced()

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)
IJavaPeerable.Finalized()

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)
IJavaPeerable.JniManagedPeerState

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

(継承元 Object)

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

ハードウェアアクセラレータレンダラーのインスタンスを作成します。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象