장면

공개 클래스 scene

장면 양식은 장면의 콘텐츠 계층 구조인 장면 그래프를 유지합니다. 장면에는 0개 이상의 하위 노드가 있을 수 있으며 각 노드에는 0개 이상의 하위 노드가 있을 수 있습니다.

이 장면에서는 MotionEvent 또는 Ray가 터치하는 노드를 감지하는 방법인 히트 테스트도 제공합니다.

중첩된 클래스

인터페이스 scene.OnPeekTouchListener 터치 이벤트가 화면으로 전달될 때 호출될 콜백에 대한 인터페이스 정의입니다. 
인터페이스 scene.OnTouchListener 터치 이벤트가 화면으로 전달될 때 호출될 콜백에 대한 인터페이스 정의입니다. 
인터페이스 scene.OnUpdateListener 장면이 업데이트되기 직전에 프레임당 한 번 호출되는 콜백에 대한 인터페이스 정의입니다. 

필드

공개 정적 최종 EnvironmentalHdrParameters 기본_HDR_PARAMETERS

공개 생성자

scene( sceneView 뷰)
지정된 컨텍스트로 장면을 만듭니다.

공개 메서드

void
addOnPeekTouchListener( scene.OnPeekTouchListener onPeekTouchListener)
Scene.OnTouchListener가 호출되기 전에 호출할 리스너를 추가합니다.
void
addOnUpdateListener( scene.OnUpdateListener onUpdateListener)
장면이 업데이트되기 직전에 프레임당 한 번 호출되는 리스너를 추가합니다.
카메라
getCamera()
장면을 렌더링하는 데 사용되는 카메라를 가져옵니다.
노드
getSunlight()
기본 햇빛 노드를 가져옵니다.
장면 보기
getView()
장면을 만드는 데 사용된 결과 뷰를 반환합니다.
HitTestResult
hitTest(MotionEventMotionEvent)
원점이 모션 이벤트의 화면 위치인 광선 히트 테스트를 바탕으로 모션 이벤트가 장면 속 노드에 닿고 있는지 테스트하고, 화면에서 가장 가까운 노드를 포함하는 HitTestResult를 출력합니다.
HitTestResult
hitTest(Ray 레이)
광선이 장면 내의 노드에 도달하는지 테스트하고 광선과 교차하는 광원 출처와 가장 가까운 노드가 포함된 HitTestResult를 출력합니다.
ArrayList<HitTestResult>
hitTestAll(Ray 레이)
광선이 장면 내의 노드를 히트하는지 확인하고 적중된 모든 노드가 포함된 HitTestResults 목록을 거리별로 정렬하여 반환합니다.
ArrayList<HitTestResult>
hitTestAll(MotionEvent 모션 이벤트)
모션 이벤트가 장면의 어떤 노드와 닿고 있는지 테스트하고, 조회에 포함된 모든 노드가 포함된 HitTestResults 목록을 거리별로 정렬하여 반환합니다.
void
onAddChild(Node 하위)
void
onRemoveChild(Node 하위 요소)
노드
overlapTest(노드 노드)
지정된 노드의 충돌 모양이 getCollisionShape()를 사용하여 장면에 있는 다른 노드의 충돌 모양과 겹치는지 테스트합니다.
ArrayList<Node>
overlapTestAll(노드 노드)
노드가 getCollisionShape()를 사용하여 장면 내의 다른 노드와 겹쳐지는지 테스트합니다.
void
removeOnPeekTouchListener( scene.OnPeekTouchListener onPeekTouchListener)
Scene.OnTouchListener가 호출되기 전에 호출할 리스너를 삭제합니다.
void
removeOnUpdateListener( scene.OnUpdateListener onUpdateListener)
장면이 업데이트되기 직전에 프레임당 한 번 호출되는 리스너를 삭제합니다.
void
setLightEstimate(Color color수정, float pixelIntensity)
광원 추정치를 설정하여 장면의 밝기와 강도를 조정합니다.
void
setOnTouchListener( scene.OnTouchListener onTouchListener)
장면이 터치되었을 때 호출될 콜백을 등록합니다.

상속된 메서드

필드

public static end EnvironmentalHdrParameters DEFAULT_HDR_PARAMETERS

공개 생성자

public 장면 ( sceneView 뷰)

지정된 컨텍스트로 장면을 만듭니다.

매개변수

공개 메서드

public void addOnPeekTouchListener ( scene.OnPeekTouchListener onPeekTouchListener)

Scene.OnTouchListener가 호출되기 전에 호출할 리스너를 추가합니다. 이 동작은 동작이 사용된 경우에도 호출되므로 장면에 전달된 모든 모션 이벤트를 관찰할 수 있습니다. 터치가 노드 위에 있지 않은 경우에도 호출됩니다. 이 경우 getNode()는 null입니다. 리스너는 추가된 순서대로 호출됩니다.

매개변수
onPeekTouchListener 추가할 미리보기 미리보기 리스너

public void addOnUpdateListener ( scene.OnUpdateListener onUpdateListener)

장면이 업데이트되기 직전에 프레임당 한 번 호출되는 리스너를 추가합니다. 리스너는 추가된 순서대로 호출됩니다.

매개변수
onUpdateListener 업데이트 리스너를 추가하여

public Camera getCamera ()

장면을 렌더링하는 데 사용되는 카메라를 가져옵니다. 카메라는 노드 유형입니다.

반환 값
  • 장면을 렌더링하는 데 사용되는 카메라

공개 노드 getSunlight ()

기본 햇빛 노드를 가져옵니다.

반환 값
  • 장면을 비추는 데 사용되는 햇빛 노드

public sceneView getView ()

장면을 만드는 데 사용된 결과 뷰를 반환합니다.

public HitTestResult hitTest (MotionEventMotionEvent)

원점이 모션 이벤트의 화면 위치인 광선 히트 테스트를 바탕으로 모션 이벤트가 장면 속 노드에 닿고 있는지 테스트하고, 화면에서 가장 가까운 노드를 포함하는 HitTestResult를 출력합니다.

매개변수
모션 이벤트 테스트에 사용할 모션 이벤트
반환 값
  • 결과에는 모션 이벤트에서 적중된 첫 번째 노드 (null일 수 있음) 및 모션 이벤트가 월드 공간에서 노드에 도달한 위치에 관한 정보가 포함됩니다.

public HitTestResult hitTest (Ray ray)

광선이 장면 내의 노드에 도달하는지 테스트하고 광선과 교차하는 광원 출처와 가장 가까운 노드가 포함된 HitTestResult를 출력합니다.

매개변수
Ray 테스트에 사용할 레이입니다.
반환 값
  • 결과에는 광선에 의해 노출된 첫 번째 노드 (null일 수 있음)와 광선이 노드를 통해 월드 공간에서 히트한 위치에 관한 정보가 포함됩니다.

public ArrayList<HitTestResult> hitTestAll (Ray ray)

광선이 장면 내의 노드를 히트하는지 확인하고 적중된 모든 노드가 포함된 HitTestResults 목록을 거리별로 정렬하여 반환합니다.

매개변수
Ray 테스트에 사용할 레이입니다.
반환 값
  • 거리별로 적중된 각 노드에 대한 HitTestResult로 입력됩니다. 조회된 노드가 없으면 비어 있습니다.

public ArrayList<HitTestResult> hitTestAll (MotionEventMotionEvent)

모션 이벤트가 장면의 어떤 노드와 닿고 있는지 테스트하고, 조회에 포함된 모든 노드가 포함된 HitTestResults 목록을 거리별로 정렬하여 반환합니다.

매개변수
모션 이벤트 테스트에 사용할 모션 이벤트입니다.
반환 값
  • 거리별로 적중된 각 노드에 대한 HitTestResult로 입력됩니다. 조회된 노드가 없으면 비어 있습니다.

public void onAddChild (Node 하위 항목)

매개변수
어린이

public void onRemoveChild (Node 하위 항목)

매개변수
어린이

공개 노드 overlapTest (노드 노드)

지정된 노드의 충돌 모양이 getCollisionShape()를 사용하여 장면에 있는 다른 노드의 충돌 모양과 겹치는지 테스트합니다. 테스트에 사용되는 노드는 활성일 필요가 없습니다.

매개변수
노드 테스트에 사용할 노드입니다.
반환 값
  • 테스트 노드와 겹치는 노드입니다. 테스트 노드와 겹치는 노드가 없으면 null입니다. 여러 노드가 테스트 노드와 겹쳐지면 이 중 하나가 될 수 있습니다.
참고 항목

public ArrayList<Node> overlapTestAll (Node 노드)

노드가 getCollisionShape()를 사용하여 장면 내의 다른 노드와 겹쳐지는지 테스트합니다. 테스트에 사용되는 노드는 활성일 필요가 없습니다.

매개변수
노드 테스트에 사용할 노드입니다.
반환 값
  • 테스트 노드와 겹치는 모든 노드 목록입니다. 테스트 노드와 겹치는 노드가 없으면 목록이 비어 있습니다.
참고 항목

public void removeOnPeekTouchListener ( scene.OnPeekTouchListener onPeekTouchListener)

Scene.OnTouchListener가 호출되기 전에 호출할 리스너를 삭제합니다. 동작이 사용되더라도 호출되므로 장면에 전달된 모든 모션 이벤트를 관찰할 수 있습니다. 터치가 노드 위에 있지 않은 경우에도 호출됩니다. 이 경우 getNode()는 null입니다.

매개변수
onPeekTouchListener 삭제할 미리보기 리스너

public

장면이 업데이트되기 직전에 프레임당 한 번 호출되는 리스너를 삭제합니다.

매개변수
onUpdateListener 삭제할 업데이트 리스너

public void setLightEstimate (Color colorcorrectation, float pixelIntensity)

광원 추정치를 설정하여 장면의 밝기와 강도를 조정합니다. 렌더링된 빛은 이러한 값과 빛의 색상과 강도의 조합을 사용합니다. 흰색 색상 보정 및 PixelIntensity 1 값이란 조명 설정을 변경하지 않음을 의미합니다.

ARCore 양식의 값에 따라 밝기를 조정하는 데 AR 장면 장면에 내부적으로 사용됩니다. AR 장면에서 이를 자동으로 호출하여 다른 설정보다 우선 적용할 수 있습니다. 대부분의 경우 이를 명시적으로 호출하지 않아도 됩니다.

매개변수
색상 보정 장면의 조명 색상을 조정합니다.
픽셀 강도 장면의 조명 강도를 조절합니다.

public

장면이 터치되었을 때 호출될 콜백을 등록합니다. 콜백이 이벤트를 사용하지 않는 경우 터치 이벤트가 노드로 전달된 후에 콜백이 호출됩니다. 터치가 노드 위에 있지 않은 경우에도 호출됩니다. 이 경우 getNode()는 null입니다.

매개변수
onTouchListener 연결할 터치 리스너