BabylonJS - Kamera

BabylonJS memiliki banyak kamera yang bisa digunakan. Dalam satu waktu, hanya satu kamera yang akan aktif untuk sebuah pemandangan.

Dalam bab ini, kita akan belajar bagaimana cara menggunakan kamera di BabylonJS.

FreeCamera

Sekarang mari kita lihat bagaimana FreeCamera bekerja.

Sintaksis

Berikut ini adalah sintaks untuk FreeCamera -

var camera = new BABYLON.FreeCamera("FreeCamera", new BABYLON.Vector3(0, 1, -15), scene);

Ini adalah posisi di mana kamera ditempatkan - BABYLON.Vector3 baru (0, 1, -15).

Mengubah arah akan mengubah arah. Anda dapat mengubah nilainya dan melihat bagaimana kamera berperilaku di tempat kejadian.

Berikut adalah parameter yang digunakan oleh FreeCamera -

  • Name
  • Position
  • Scene

ArcRotateCamera

Kamera ini berputar di sekitar poros target tertentu. Itu dapat dikontrol dengan kursor dan mouse, atau dengan peristiwa sentuh. Parameternya adalah nama, alfa, beta, radius, dan target.

Sintaksis

var camera = new BABYLON.ArcRotateCamera("ArcRotateCamera", 1, 0.8, 10, new BABYLON.Vector3(0, 0, 0), scene);

ArcRotateCameramenunjuk ke arah + x. Untuk mengubah posisi kamera, gunakansetPosition Properti.

camera.setPosition(new BABYLON.Vector3(0, 0, -100));

ArcRotateCamera adalah kamera yang sangat bagus untuk dianimasikan. Perintah berikut akan membantu Anda memutar kamera di sekitar target -

scene.activeCamera.alpha += .01;

TouchCamera

Sentuhan adalah jenis 'isyarat'. Bisa di pad atau layar, dengan jari, stylus, sarung tangan, kaki, atau penunjuk laser. Setiap gerakan yang dapat dirasakan ... dapat dianggap sebagai isyarat.

Sintaksis

Berikut ini adalah sintaks untuk TouchCamera -

var camera = new BABYLON.TouchCamera("TouchCamera", new BABYLON.Vector3(0, 1, -15), scene);

GamepadKamera

Kamera ini dirancang khusus untuk digunakan dengan gamepad.

Sintaksis

Berikut ini adalah sintaks untuk Kamera Gamepad -

var camera = new BABYLON.GamepadCamera("Camera", new BABYLON.Vector3(0, 15, -45), scene);

DeviceOrientationCamera

Kamera ini dirancang khusus untuk bereaksi terhadap kasus peristiwa orientasi perangkat seperti saat Anda memiringkan perangkat ke depan atau ke belakang, ke kiri atau ke kanan, dll.

Sintaksis

var camera = new BABYLON.DeviceOrientationCamera("DevOr_camera", new BABYLON.Vector3(0, 1, -15), scene);

FollowCamera

FollowCamera dirancang untuk mengikuti item adegan apa pun dengan posisi. Bisa mengikuti dari belakang, depan atau dari sudut manapun.

Sintaksis

Berikut ini adalah sintaks untuk FollowCamera -

var camera = new BABYLON.FollowCamera("FollowCam", new BABYLON.Vector3(0, 15, -45), scene);

VirtualJoysticksCamera

Kamera ini dirancang untuk bereaksi terhadap kejadian Joystick Virtual. Joystick Virtual adalah grafik 2D di layar yang digunakan untuk mengontrol kamera atau item pemandangan lainnya.

Sintaksis

Berikut ini adalah sintaks untuk VirtualJoysticksCamera -

var camera = new BABYLON.VirtualJoysticksCamera("VJ_camera", new BABYLON.Vector3(0, 1, -15), scene);

AnaglyphCamera

AnaglyphCamera untuk digunakan dengan kacamata 3D merah dan cyan. Ini menggunakan teknik penyaringan pasca-pemrosesan.

AnaglyphArcRotateCamera

Berikut ini adalah sintaks untuk AnaglyphArcRotateCamera -

var camera = new BABYLON.AnaglyphArcRotateCamera("aar_cam", -Math.PI/2, Math.PI/4, 20, new BABYLON.Vector3.Zero(), 0.033, scene);

AnaglyphFreeCamera

Berikut ini adalah sintaks untuk file AnaglyphFreeCamera -

var camera = new BABYLON.AnaglyphFreeCamera("af_cam", new BABYLON.Vector3(0, 1, -15), 0.033, scene);

VRDeviceOrientationFreeCamera

VRDeviceOrientationFreeCamera menggunakan FreeCamera sebagai dasarnya, sehingga properti dan metode FreeCamera juga ditemukan di VRDeviceOrientationFreeCamera kami.

Sintaksis

Berikut ini adalah sintaks untuk file VRDeviceOrientationFreeCamera -

var camera = new BABYLON.VRDeviceOrientationFreeCamera ("Camera", new BABYLON.Vector3 (-6.7, 1.2, -1.3), scene, 0);

WebVRFreeCamera

WebVRFreeCamera menggunakan FreeCamera sebagai dasarnya, sehingga properti dan metode FreeCamera juga ditemukan di WebVRFreeCamera kami.

Sintaksis

Berikut ini adalah sintaks untuk file WebVRFreeCamera -

var camera = new BABYLON.WebVRFreeCamera("WVR", new BABYLON.Vector3(0, 1, -15), scene);

Di sebagian besar demo, Anda akan melihat attachControl tempat kamera dipasang ke kanvas.

Contoh

camera.attachControl(canvas, true);