Share via


GLSurfaceView.IRenderer 인터페이스

정의

제네릭 렌더러 인터페이스입니다.

[Android.Runtime.Register("android/opengl/GLSurfaceView$Renderer", "", "Android.Opengl.GLSurfaceView/IRendererInvoker")]
public interface GLSurfaceView.IRenderer : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/opengl/GLSurfaceView$Renderer", "", "Android.Opengl.GLSurfaceView/IRendererInvoker")>]
type GLSurfaceView.IRenderer = interface
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
특성
구현

설명

제네릭 렌더러 인터페이스입니다.

렌더러는 프레임을 렌더링하기 위해 OpenGL 호출을 담당합니다.

GLSurfaceView 클라이언트는 일반적으로 이 인터페이스를 구현하는 고유한 클래스를 만든 다음 를 호출 GLSurfaceView#setRenderer 하여 렌더러를 GLSurfaceView에 등록합니다.

<div class="special reference"><h3>Developer Guides</h3>

OpenGL을 사용하는 방법에 대한 자세한 내용은 OpenGL 개발자 가이드를 참조하세요.

</Div>

<h3>Threading</h3> 렌더러는 별도의 스레드에서 호출되므로 렌더링 성능이 UI 스레드와 분리됩니다. 클라이언트는 일반적으로 입력 이벤트가 수신되는 위치이므로 UI 스레드에서 렌더러와 통신해야 합니다. 클라이언트는 스레드 간 통신에 표준 Java 기술을 사용하여 통신하거나 편리한 방법을 사용할 GLSurfaceView#queueEvent(Runnable) 수 있습니다.

<h3>EGL 컨텍스트 Lost</h3> EGL 렌더링 컨텍스트가 손실되는 상황이 있습니다. 이 문제는 일반적으로 절전 모드로 연결된 후 디바이스가 절전 모드에서 해제되는 경우에 발생합니다. EGL 컨텍스트가 손실되면 해당 컨텍스트와 연결된 모든 OpenGL 리소스(예: 텍스처)가 자동으로 삭제됩니다. 렌더링을 올바르게 유지하려면 렌더러가 여전히 필요한 손실된 리소스를 다시 만들어야 합니다. 메서드는 #onSurfaceCreated(GL10, EGLConfig) 이 작업을 수행하기에 편리한 위치입니다.

에 대한 Java 설명서입니다 android.opengl.GLSurfaceView.Renderer.

이 페이지의 일부는 만들고 공유하며 에 설명된 조건에 따라 사용되는 작업을 기반으로 수정됩니다.

속성

Handle

기본 Android 개체의 JNI 값을 가져옵니다.

(다음에서 상속됨 IJavaObject)
JniIdentityHashCode

래핑된 instance 값을 반환 java.lang.System.identityHashCode() 합니다.

(다음에서 상속됨 IJavaPeerable)
JniManagedPeerState

관리되는 피어의 상태입니다.

(다음에서 상속됨 IJavaPeerable)
JniPeerMembers

멤버 액세스 및 호출 지원.

(다음에서 상속됨 IJavaPeerable)
PeerReference

JniObjectReference 래핑된 Java 개체 instance 의 를 반환합니다.

(다음에서 상속됨 IJavaPeerable)

메서드

Disposed()

instance 삭제될 때 호출됩니다.

(다음에서 상속됨 IJavaPeerable)
DisposeUnlessReferenced()

이 instance 대한 미해결 참조가 없으면 를 호출Dispose()합니다. 그렇지 않으면 아무 작업도 수행하지 않습니다.

(다음에서 상속됨 IJavaPeerable)
Finalized()

instance 완료될 때 호출됩니다.

(다음에서 상속됨 IJavaPeerable)
OnDrawFrame(IGL10)

현재 프레임을 그리기 위해 호출됩니다.

OnSurfaceChanged(IGL10, Int32, Int32)

표면 크기가 변경되면 호출됩니다.

OnSurfaceCreated(IGL10, EGLConfig)

표면을 만들거나 다시 만들 때 호출됩니다.

SetJniIdentityHashCode(Int32)

에서 반환 JniIdentityHashCode된 값을 설정합니다.

(다음에서 상속됨 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

제네릭 렌더러 인터페이스입니다.

(다음에서 상속됨 IJavaPeerable)
SetPeerReference(JniObjectReference)

에서 반환 PeerReference된 값을 설정합니다.

(다음에서 상속됨 IJavaPeerable)
UnregisterFromRuntime()

런타임이 이후 Java.Interop.JniRuntime+JniValueManager.PeekValue 호출에서 반환되지 않도록 이 instance 등록을 취소합니다.

(다음에서 상속됨 IJavaPeerable)

확장 메서드

JavaCast<TResult>(IJavaObject)

Android 런타임 확인 형식 변환을 수행합니다.

JavaCast<TResult>(IJavaObject)

제네릭 렌더러 인터페이스입니다.

GetJniTypeName(IJavaPeerable)

제네릭 렌더러 인터페이스입니다.

적용 대상