HardwareBufferRenderer 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
建立一個硬體加速渲染器的實例。
[Android.Runtime.Register("android/graphics/HardwareBufferRenderer", ApiSince=34, DoNotGenerateAcw=true)]
public class HardwareBufferRenderer : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Lang.IAutoCloseable
[<Android.Runtime.Register("android/graphics/HardwareBufferRenderer", ApiSince=34, DoNotGenerateAcw=true)>]
type HardwareBufferRenderer = class
inherit Object
interface IAutoCloseable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 繼承
- 屬性
- 實作
備註
建立一個硬體加速渲染器的實例。 這用來渲染從 RenderNodes 建立的場景,輸出為 HardwareBuffer。 HardwareBufferRenderer 實例可以有任意數量。
<h3>資源與生命週期</h3>
所有 HardwareBufferRenderer 與 HardwareRenderer 實例共用一個渲染執行緒。 因此,HardwareBufferRenderer 會與由應用程式 UI 執行緒發起的硬體加速渲染共享共用資源與 GPU 使用率。 渲染執行緒包含執行 GPU 加速渲染所需的 GPU 上下文與資源。 因此,第一個 HardwareBufferRenderer 會同時建立相關的 GPU 上下文,但之後每個增量 HardwareBufferRenderer 的成本都相當便宜。 預期的使用方式是為每個活躍 HardwareBuffer的 。
這在以 s 建置 RenderNode的場景可直接由系統合成器 SurfaceControl.Transaction#setBuffer(SurfaceControl, HardwareBuffer)處理的情況下非常有用。
HardwareBufferRenderer 在每次繪製呼叫前絕不會清除內容,因此目標中 HardwareBuffer 先前的內容會在不同渲染中被保留。
Java 文件 android.graphics.HardwareBufferRenderer。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。
建構函式
| 名稱 | Description |
|---|---|
| HardwareBufferRenderer(HardwareBuffer) |
建立一個新的實例, |
| HardwareBufferRenderer(IntPtr, JniHandleOwnership) |
建立一個硬體加速渲染器的實例。 |
屬性
| 名稱 | Description |
|---|---|
| Class |
回傳此 |
| Handle |
底層 Android 實例的帳號。 (繼承來源 Object) |
| IsClosed |
如果已經 |
| JniIdentityHashCode |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
| JniPeerMembers |
建立一個硬體加速渲染器的實例。 |
| PeerReference |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
| ThresholdClass |
建立一個硬體加速渲染器的實例。 |
| ThresholdType |
建立一個硬體加速渲染器的實例。 |
方法
| 名稱 | Description |
|---|---|
| Clone() |
建立並回傳此物件的副本。 (繼承來源 Object) |
| Close() |
釋放與此 |
| Dispose() |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
| Dispose(Boolean) |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
| Equals(Object) |
表示是否有其他物體「等同」於此物。 (繼承來源 Object) |
| GetHashCode() |
回傳物件的雜湊碼值。 (繼承來源 Object) |
| JavaFinalize() |
當垃圾回收判定該物件不再有相關參考時,由垃圾回收器呼叫。 (繼承來源 Object) |
| Notify() |
喚醒一個正在該物件監視器上等待的執行緒。 (繼承來源 Object) |
| NotifyAll() |
喚醒所有等待該物件監視器的執行緒。 (繼承來源 Object) |
| ObtainRenderRequest() |
建立一個硬體加速渲染器的實例。 |
| SetContentRoot(RenderNode) |
將內容根設定為渲染。 |
| SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
| SetLightSourceAlpha(Single, Single) |
配置環境光和局部陰影 alpha。 |
| SetLightSourceGeometry(Single, Single, Single, Single) |
設定光源中心。 |
| ToArray<T>() |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
| ToString() |
回傳物件的字串表示。 (繼承來源 Object) |
| UnregisterFromRuntime() |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
| Wait() |
導致目前執行緒等待被喚醒,通常是透過 <em>通知</><em 或 em>中斷</em> 來喚醒。 (繼承來源 Object) |
| Wait(Int64, Int32) |
會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。 (繼承來源 Object) |
| Wait(Int64) |
會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。 (繼承來源 Object) |
明確介面實作
| 名稱 | Description |
|---|---|
| IJavaPeerable.Disposed() |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
| IJavaPeerable.DisposeUnlessReferenced() |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
| IJavaPeerable.Finalized() |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
| IJavaPeerable.JniManagedPeerState |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
建立一個硬體加速渲染器的實例。 (繼承來源 Object) |
擴充方法
| 名稱 | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時檢查型別轉換。 |
| JavaCast<TResult>(IJavaObject) |
建立一個硬體加速渲染器的實例。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |