View3D 인스턴스를 생성합니다. 3D 렌더링에 필요한 모든 컴포넌트(조명, 포스트 이펙트, 리소스 관리)를 초기화합니다.
렌더링 작업을 위한 WebGPU 컨텍스트
렌더링할 3D 장면
카메라 컨트롤러 (3D 또는 2D 카메라)
Optional
name: string뷰의 선택적 이름 식별자
현재 뷰의 종횡비(가로/세로)를 반환합니다.
디버깅용 축 객체입니다.
디버깅용 축을 설정합니다. true면 자동 생성, false면 제거, 또는 DrawDebuggerAxis 인스턴스를 직접 설정할 수 있습니다.
boolean 또는 DrawDebuggerAxis 인스턴스
현재 연결된 카메라를 반환합니다.
카메라를 설정합니다. 허용되는 타입은 PerspectiveCamera, OrthographicCamera, AController, Camera2D 입니다. 잘못된 타입이 들어오면 오류를 발생시킵니다.
거리 기반 Culling의 기준 거리입니다.
거리 기반 Culling의 기준 거리를 설정합니다.
거리 값
현재 프로젝션 및 카메라 모델 행렬을 기반으로 뷰 프러스텀 평면을 계산하여 반환합니다. AController 인스턴스 사용 시 내부 카메라의 modelMatrix를 사용합니다.
프러스텀 평면 배열
FXAA 후처리 효과 객체입니다. 요청 시 자동 생성됩니다.
디버깅용 그리드 객체입니다.
디버깅용 그리드를 설정합니다. true면 자동 생성, false면 제거, 또는 DrawDebuggerGrid 인스턴스를 직접 설정할 수 있습니다.
boolean 또는 DrawDebuggerGrid 인스턴스
뷰의 높이 값을 반환합니다 (픽셀 또는 퍼센트 문자열).
뷰의 높이를 설정합니다. 내부적으로 setSize를 호출합니다.
현재 적용된 지터 오프셋 [offsetX, offsetY]를 반환합니다.
뷰의 이름입니다. 지정하지 않으면 자동으로 인스턴스 ID 기반 이름이 생성됩니다.
뷰의 이름을 설정합니다.
설정할 이름 문자열
지터가 적용되지 않은 원본 프로젝션 행렬을 계산하여 반환합니다. Orthographic, Camera2D, Perspective 각각의 방식으로 행렬을 구성합니다.
클러스터 라이트 경계 패스를 가져옵니다.
PassClusterLightBound 인스턴스
마우스 좌표 기반 객체 선택을 위한 PickingManager입니다.
픽셀 단위 사각형 배열을 반환합니다. [x, y, width, height]
픽셀 단위 사각형을 객체 형태로 반환합니다.
현재 프로젝션 행렬(지터 적용 여부를 반영)을 반환합니다. TAA 사용 시 PerspectiveCamera에 한해 지터 오프셋을 적용합니다.
내부에 연결된 실제 카메라 인스턴스(PerspectiveCamera 또는 Camera2D)를 반환합니다. AController가 연결된 경우 내부 camera를 반환합니다.
연결된 RedGPUContext 반환 (읽기 전용).
현재 뷰에 연결된 Scene 객체입니다.
스크린 기준 사각형을 반환합니다 (devicePixelRatio로 나눔).
스카이박스를 설정합니다. 이전 텍스처의 리소스 상태를 관리하고 새 텍스처로 교체합니다.
설정할 SkyBox 인스턴스
정점 셰이더용 시스템 유니폼 구조 정보를 가져옵니다.
유니폼 구조 정보 객체
정점 셰이더 시스템 유니폼용 GPU 바인드 그룹을 가져옵니다.
정점 유니폼용 GPUBindGroup
TAA 후처리 효과 객체입니다. 요청 시 자동 생성됩니다.
거리 기반 Culling 사용 여부입니다.
거리 기반 Culling 사용 여부를 설정합니다.
true면 사용, false면 비활성화
Frustum Culling 사용 여부입니다.
Frustum Culling 사용 여부를 설정합니다.
true면 사용, false면 비활성화
뷰의 너비 값을 반환합니다 (픽셀 또는 퍼센트 문자열).
뷰의 너비를 설정합니다. 내부적으로 setSize를 호출합니다.
뷰의 X 위치 값을 반환합니다 (픽셀 또는 퍼센트 문자열).
뷰의 X 위치를 설정합니다. 내부적으로 setPosition을 호출합니다.
뷰의 Y 위치 값을 반환합니다 (픽셀 또는 퍼센트 문자열).
뷰의 Y 위치를 설정합니다. 내부적으로 setPosition을 호출합니다.
마우스가 현재 뷰의 픽셀 영역 내에 있는지 확인합니다.
true면 뷰 영역 내에 있음
지터 오프셋을 초기화합니다.
화면 좌표를 월드 좌표로 변환합니다.
화면 X 좌표
화면 Y 좌표
변환된 월드 좌표
TAA 적용을 위한 지터 오프셋을 설정합니다.
X축 지터 오프셋 (정규화된 값)
Y축 지터 오프셋 (정규화된 값)
뷰의 위치를 설정하고 내부 픽셀 사각형을 업데이트합니다. 입력 값은 픽셀 또는 퍼센트 문자열을 허용합니다.
Optional
x: string | number = ...X 위치 (픽셀 또는 퍼센트)
Optional
y: string | number = ...Y 위치 (픽셀 또는 퍼센트)
뷰의 크기를 설정하고 내부 픽셀 사각형을 업데이트합니다. 입력 값은 픽셀 또는 퍼센트 문자열을 허용합니다. onResize 콜백이 설정되어 있으면 호출합니다.
Optional
w: string | number = ...너비 (픽셀 또는 퍼센트)
Optional
h: string | number = ...높이 (픽셀 또는 퍼센트)
뷰를 업데이트하고 렌더링 준비를 수행합니다. 유니폼 데이터 업데이트, 바인드 그룹 생성, 클러스터 라이트 계산을 처리합니다.
업데이트할 View3D 인스턴스
그림자 렌더링 여부 (기본값: false)
포인트 라이트 클러스터 계산 여부 (기본값: false)
Optional
renderPath1ResultTextureView: GPUTextureView렌더 패스 1 결과 텍스처 뷰 (선택사항)
3D 렌더링 뷰 클래스입니다. AView를 확장하여 3D 장면 렌더링 기능을 제공합니다.
3D 장면 렌더링, 조명, 그림자, 포스트 이펙트, IBL(이미지 기반 조명) 처리를 담당합니다.
Example
아래는 View3D의 구조와 동작을 이해하는 데 도움이 되는 추가 샘플 예제 목록입니다.
See
Multi View3D example