HardwareBufferRenderer 类

定义

创建硬件加速呈现器实例。

[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
继承
HardwareBufferRenderer
属性
实现

注解

创建硬件加速呈现器实例。 这用于呈现从 RenderNodes 生成到输出 HardwareBuffer的场景。 可以根据需要有任意数量的 HardwareBufferRenderer 实例。

<h3>资源与生命周期</h3>

所有 HardwareBufferRenderer 和 HardwareRenderer 实例共享一个常见的呈现线程。 因此,HardwareBufferRenderer 将与应用程序 UI 线程启动的硬件加速呈现共享常见资源和 GPU 利用率。 呈现线程包含执行 GPU 加速渲染所需的 GPU 上下文和资源。 因此,创建的第一个 HardwareBufferRenderer 也会产生创建关联的 GPU 上下文的成本,但此后每个增量 HardwareBufferRenderer 都是相当便宜的。 预期的用法是为每个活动 HardwareBuffer都有一个 HardwareBufferRenderer 实例。

在通过系统合成器SurfaceControl.Transaction#setBuffer(SurfaceControl, HardwareBuffer)可以直接使用使用 RenderNodes 生成的场景的情况下,这非常有用。

HardwareBufferRenderer 在每次绘图调用之前永远不会清除内容,因此目标中 HardwareBuffer 以前的内容将在呈现中保留。

适用于 . 的 android.graphics.HardwareBufferRendererJava 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

构造函数

HardwareBufferRenderer(HardwareBuffer)

创建作为呈现场景的输出提供HardwareBuffer的新实例HardwareBufferRenderer

HardwareBufferRenderer(IntPtr, JniHandleOwnership)

创建硬件加速呈现器实例。

属性

Class

返回此 Object的运行时类。

(继承自 Object)
Handle

基础 Android 实例的句柄。

(继承自 Object)
IsClosed

如果已关闭, HardwareBufferRenderer 则返回。

JniIdentityHashCode

创建硬件加速呈现器实例。

(继承自 Object)
JniPeerMembers

创建硬件加速呈现器实例。

PeerReference

创建硬件加速呈现器实例。

(继承自 Object)
ThresholdClass

创建硬件加速呈现器实例。

ThresholdType

创建硬件加速呈现器实例。

方法

Clone()

创建并返回此对象的副本。

(继承自 Object)
Close()

释放与此 HardwareBufferRenderer 实例关联的资源。

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>interrupted</em>。<><

(继承自 Object)
Wait(Int64)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted</em>>,或直到经过一定数量的实时。

(继承自 Object)
Wait(Int64, Int32)

使当前线程等待直到唤醒,通常是通过 <em>通知</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)

扩展方法

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

创建硬件加速呈现器实例。

GetJniTypeName(IJavaPeerable)

创建硬件加速呈现器实例。

适用于