Th3813 11 cahaya & persekitaran

14
TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd Noah [email protected] 1 TH3813 Realiti Maya Cahaya dan Persekitaran TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd Noah [email protected] 2 Kesan cahaya dalam dunia maya TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd Noah [email protected] 3 Latarbelakang Secara default, pemercahati memepunyai satu cahaya dalam pandangan, terletak di kepela. Untuk kesan lebih nyata, boleh tambahkan pelbagai kesan cahaya: matahari, mentol, lilin flashlight, spotlight, firelight Cahaya boleh diposisikan, putar dan diwarnakan. Cahaya tidak hasilkan bayang-bayang. TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd Noah [email protected] 4 Contoh TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd Noah [email protected] 5 Penggunaan jenis cahaya Terdapat tiga jenis cahaya dalam VRML Point lights - sinarkan cahaya pada kesemua arah daripada satu punca (titik) Directional lights - menuju kepada satu arah daripada kedudukan yang jauh Spot lights - menuju dalam satu arah daripada satu titik, sinaran dalam kon. TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd Noah [email protected] 6 Penggunaan fitur lazim cahaya Setiap jenis cahaya mempunyai beberapa medan yang sama: on - on atau off kan cahaya intensity - kawalan kecerahan cahaya ambientIntensity - kawalan kesan ambien color - pilih warna

Transcript of Th3813 11 cahaya & persekitaran

1

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 1

TH3813 Realiti MayaCahaya dan Persekitaran

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 2

Kesan cahaya dalamdunia maya

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 3

LatarbelakangSecara default, pemercahati memepunyai satucahaya dalam pandangan, terletak di kepela.Untuk kesan lebih nyata, boleh tambahkanpelbagai kesan cahaya:

matahari, mentol, lilinflashlight, spotlight, firelight

Cahaya boleh diposisikan, putar dan diwarnakan.Cahaya tidak hasilkan bayang-bayang.

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 4

Contoh

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 5

Penggunaan jenis cahayaTerdapat tiga jenis cahaya dalam VRML

Point lights - sinarkan cahaya pada kesemua arahdaripada satu punca (titik)Directional lights - menuju kepada satu arahdaripada kedudukan yang jauhSpot lights - menuju dalam satu arah daripada satutitik, sinaran dalam kon.

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 6

Penggunaan fitur lazim cahayaSetiap jenis cahaya mempunyai beberapa medanyang sama:

on - on atau off kan cahayaintensity - kawalan kecerahan cahayaambientIntensity - kawalan kesan ambiencolor - pilih warna

2

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 7

Penggunaan fitur lazim cahayaPoint light dan spot light juga mempunyai medan:

location - kedudukan sumber cahayaradius - jarak pencahayaan maksimumattenuation - pengecilan/atenuasi dengan jarak

Directional ligtht dan spot light juga mempunyai:direction - arah tujuan

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 8

Sintaks: PointLightNod PointLight menggemerlap dalam jejaritertentu daripada satu titik/punca.

PointLight {location 0.0 0.0 0.0intensity 1.0color 1.0 1.0 1.0

}[pntlite.wrl]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 9

Sintaks: DirectionalLightNod DirectionalLight menggemerlap pada satuarah daripada satu kedudukan yang jauh

DirectionalLight {direction 1.0 0.0 0.0intensity 1.0color 1.0 1.0 1.0

}[dirlite.wrl]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 10

Sintaks: SpotLightNod SpotLight menggemerlap daripada satupunca/titik, dalam satu arah, di dalam kon

Spot {location 0.0 0.0 0.0direction 1.0 0.0 0.0intensity 1.0color 1.0 1.0 1.0 cutOffAngle 0.785

}[sptlite.wrl]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 11

Sintaks: SpotLightLebar maksimum untuk kon spot light dikawaloleh medan cutOffAngle.Bahagi dalam kon dengan kecerahan seragam dikawal oleh medan beamWidth.SpotLight {

. . .cutOffAngle 0.785beamWidth 0.52

}TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd Noah

[email protected] 12

Contoh

[temple.wrl]

3

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 13

Contoh-contoh lain

[simulasi-matahari.wrl]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 14

Latar belakang(Background)

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 15

PengenalanBentuk berikan bahagian hadapan (terhampir) dalam pandangan maya anda.Boleh hasilkan latar belakang (background).Latar belakang deskripsikan:

warna langit dan dasarimej panorama gunung, bandar dll

Latar belakang adalah lebih cepat dilukisberbanding jika gunakan bentuk.

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 16

Penggunaan komponen latarbelakang

Latar belakang hasilkan 3 bentuk khusus:sfera langit (sky sphere)hemisfera dataran (ground hemishere) dalam sferalangitkotak panorama (panorama box) dalam hemisferadataran

Hemisfera langit dan dataran dilorekkan dengansatu kecerunan warna.Kotak panorama dipetakan secara berteksturdengan 6 imej.

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 17

Penggunaan komponen latarbelakang

Bahagian transparen hemisfera dataran serlahkansfera langit.Bahagian transparen kotak panorama serlahkandataran dan langit.Pemerhati boleh melihat, atas, bawah, dankanan-kiri untuk melihat bahagian berbeza latarbelakang.Pemerhati walaubagaimanapun tak boleh hampirilatar belakang.

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 18

Sintaks: BackgroundNod Background deskripsikan warna latarbelakang.

skyColor dan skyAngle - kecerunan langitgroundColor dan groundAngle - kecerunan dataran

Background {skyColor [ 0.1 0.1 0.0, . . . ]skyAngle [ 1.309, 1.571 ]groundColor [ 0.0, 1.571 ]groundAngle [ 1.309, 1.571]

}

4

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 19

Penggunaan sudut langit & warnaWarna pertama langit terletak pada kutub utara.Warna langit selebihnya adalah berdasarkansudut langit yang diberikan:

sudut maksimum ialah 1800 = 3.1415 radian.Warna terakhir tercalit ke arah kutub selatan.

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 20

Penggunaan sudut dataran danwarna

Warna pertama dataran terletak pada kutub utara.Warna selebihnya adalah berdasarkan sudutdataran

sudut maksimum adalah 900 = 1.5708 radianSelepas warna terakhir, hemisfera selebihnyaadalah transparen.

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 21

Contoh latar belakangBackground {

skyColor [0.0 0.2 0.70.0 0.5 1.01.0 1.0 1.0

]skyAngle [ 1.309, 1.571]groundColor [

0.1 0.10 0.0,0.4 0.25 0.2,0.6 0.60 0.6,

]groundAngle [ 1.309, 1.571]

} TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 22

Contoh latar belakang

[back.wrl]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 23

Sintaks: BackgroundNod Backround deskripsikan imej latar belakang

frontUrl, dll - URL bagi imej teksturBackground {

. . . frontUrl “mountns.png”backUrl “mountns.png”leftUrl “mountns.png”rightUrl “mountns.png”topUrl “clouds.png”bottomUrl “ground.png”

}TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd Noah

[email protected] 24

Contoh latar belakang

a) Bahagian warna teksturgunung

a) Bahagian transparen teksturgunung

5

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 25

Contoh latar belakangfrontUrl “mountns.png”backUrl “mountns.png”leftUrl “mountns.png”rightUrl “mountns.png”

}

Background {skyColor [

0.0 0.2 0.70.0 0.5 1.01.0 1.0 1.0

]skyAngle [ 1.309, 1.571]groundColor [

0.1 0.10 0.0,0.4 0.25 0.2,0.6 0.60 0.6,

]groundAngle [ 1.309, 1.571]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 26

Contoh latar belakang

[back2.wrl]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 27

Kabut (fog)

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 28

PengenalanUntuk tingkatkan realisme:

gunakan kabut untuk hasilkan dunia bekabut/kaburgunakan kabut untuk hasilkan bilik/penjara yang gelapgunakan fog untuk setkan mood

Lebih jauh/kedalam pemerhati boleh lihat, lebihterperinci perlu kita model & lukis.Untuk singkatkan masa pembangunan danpelukisan, hadkan penglihatan pengguna denganmenggunakan kabut.

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 29

Contoh

[fog2.wrl] [fog4.wrl]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 30

Kawalan kebolehlihatanJenis kabut (fog type) tentukan jenis pengurangankebolehlihatan sama ada linear atau eksponenmelalui jarak

Linear lebih mudah dikawalEksponen lebih realistik dan “tebal”

Julat kebolehlihatan (visibility range) tentukanjarak di mana kabut telah mencapai ketebalanmaksimum

Kabut adalah “clear” pada pemerhati, dan secaraberansur kurangkan kebolehlihatan

6

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 31

Pemilihan warna kabutKabut mempunyai warna

Biasanya putih, tetapi hitam, merahberkemungkinan.

Bentuk semakin terpudar terhadap warna kabutberdasarkan jarak.Latar belakang tidak terjejas

Untuk kesan terbaik, hasilkan warna latar belakangsama dengan warna kabut.

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 32

Sintaks: FogNod Fog hasilkan kabut berwarna

color - warna kabutfogType - LINEAR atau EXPONENTIALvisibilityRange - had kebolehlihatan maksimum

Fog {color 1.0 1.0 1.0fogType “LINEAR”visibilityRange 10.0

}

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 33

Contoh kabut

[fog1.wrl] [fog2.wrl]

[fog3.wrl] [fog4.wrl]

Tanpa kabutKabut linear, julatkebolehlihatan30.0

Kabuteksponen, julatkebolehlihatan30.0

Kabut linear, julat denganlatar belakang

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 34

Contoh kabut (Linear)

visibilityRange = 0.0 visibilityRange = 40.0

visibilityRange = 30.0 visibilityRange = 20.0

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 35

Penggunaan bunyi

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 36

PengenalanBunyi boleh dicetuskan oleh tindakan penggunaBunyi boleh berterusan pada latar belakang

bunyi angin, muzik dalam lifBunyi terpancar daripada lokasi, pada satu arah, dalam satu kawasan.

7

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 37

Penghasilan bunyiBunyi terdiri daripada 2 komponen:

sumber bunyi - berikan isyarat bunyi (sound signal)komponen stereo

Pemancar bunyi yang terjemahkan isyarat bunyikepada bunyi maya

pembesar suara stereo

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 38

Sintaks: AudioClipNod AudioClip ciptakan sumber bunyi digital

url - URL bagi fail bunyipitch - kelajuan main-semulakawalan main-semula, sama seperti nod TimeSensor

Sound {source AudioClip {

url “myfile.wav”pitch 1.0startTime 0.0stopTime 0.0loop FALSE

}}

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 39

Sintaks: MovieTextureNod MovieTexture ciptakan sumber bunyi movie

url - URL bagi fail tekstur moviespeed - kelajuan main-semulakawalan main-semula, seperti nod TimeSensor

Sound {source MovieTexture {

url “movie.mpg”speed 1.0startTime 0.0stopTime 0.0loop FALSE

}} TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd Noah

[email protected] 40

Pemilihan jenis sumber bunyiNod AudioClip menyokong:

WAV - fail bunyi digitalsesuai untuk kesan bunyian

MIDI - fail muzik MIDI yang lazimsesuai untuk muzik latar belakang

Nod MovieTexture menyokong:MPEG - fail movie dengan bunyi

sesuai untuk TV maya

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 41

Sintaks: SoundNod Sound deskripsikan pemancar bunyi

source - nod AudioClip atau MovieTexturelocation dan direction - penempatan pemancar

Sound {source AudioClup { . . . }location 0.0 0.0 0.0direction 0.0 0.0 1.0

}

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 42

Sintaks: SoundNod Sound deskripsikan pemancar bunyi.

intensity - volumespatialize - guna pemprosesan spatialpriority - memberi keutamaan bunyi

Sound {. . . intensity 1.0 spatialize TRUEpriority 0.0

}

8

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 43

Sintaks: SoundNod Sound deskripsikan pemancar bunyi.

minFront, minBack - elipsoid dalamanmaxFront, maxBack - elipsoid luaran

Sound {. . . minFront 1.0minBack 1.0maxFront 10.0maxBack 10.0

} TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 44

Penentuan julat bunyiMedan julat bunyi spesifikasikan 2 elipsoid

minFront dan minBack kawal elipsoid dalamanmaxFront dan maxBack kawal elipsoid luaran

Bunyi mempunyai volume yang seragam di dalamelipsoid dalamanBunyi turun kepada volume sifar daripada elipsoiddalaman ke elipsoid luaran

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 45

Penghasilan bunyi yang dicetuskan

Nod AudioClip:loop FALSETentukan startTime daripada nod pengesan

Nod Sound:spatialize TRUEminFront dll dengan nilai kecilpriority 1.0

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 46

Contoh penggunaan bunyi yang dicetuskanGroup {

children [Shape {

appearance Appearance {material Material {diffuseColor 1.0 1.0 1.0 }

}geometry Box ( size 0.23 0.1 1.5 }

}DEF C4 TouchSensor { }Sound {

source DEF PtchC4 AudioClip {url “tone1.wav”pitch 1.0

}maxFront 100.0maxBack 100.0

}]

}ROUTE C4.touchTime TO PitchC4.set_startTime

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 47

Contoh penggunaan bunyi yang dicetuskan

[kbd.wrl]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 48

Penghasilan bunyi berterusansetempat

Nod AudioClip:loop TRUEstartTime 0.0 (default)stopTime 0.0 (default)

Nod Sound:spatialize TRUE (default)minFront dll dengan nilai pertengahan (medium)priority 0.0 (default)

9

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 49

Contoh penggunaan bunyiberterusan setempatSound {

source AudioClip {url “willow1.wav”loop TRUEstartTime 1.0stopTime 0.0

}minFront 5.0minBack 5.0maxFront 10.0maxBack 10.0

}

Transform {translation 0.0 -1.65 0.0children [

Inline { url “sndmark.wrl” }]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 50

Contoh penggunaan bunyiberterusan setempat

[ambient.wrl]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 51

Penghasilan bunyi latar belakangberterusan

Nod AudioClip:loop TRUEstartTime 0.0 (default)stopTime 0.0 (default)

Nod Sound:spatialize FALSE (default)minfront dll dengan nilai yang tinggipriority 0.0 (default)

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 52

Contoh lain[sound.wrl]

[earth.wrl]

[virtualtv.wrl]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 53

Kawalan titik pandangan(viewpoint)

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 54

PengenalanSecara default, pemerhati memasukai duniamaya pada ko-ordinat (0.0, 0.0, 10.0)Boleh hasilkan viewpoint tersendiri:

Pilih kedudukan titik masukPilih pandangan yang menjadi minat pemerhatiNamakan view tersebut untuk menu browser

10

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 55

Penghasilan viewpointViewpoint spesifikasikan lokasi yang diperlukan, orientasi dan medan sudut pandangan kameraViewpoint boleh ditransformasikan menggunakannod TransformViewpoint pertama dalam fail merupakan titikmasuk

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 56

Sintaks: ViewpointNod Viewpoint spesifikasikan nama lokasi untukpemerhatian

position dan orientation - lokasi pemerhatianfieldOfView - sudut lensa kameradescription - deskripsi menu viewpoint

Viewpoint {position 0.0 0.0 10.0orientation 0.0 0.0 1.0 0.0fieldOfView 0.785 description “Entry View”

}

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 57

Contoh penggunaan berbilangviewpoint

[windmill.wrl]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 58

Contoh-contoh lain[house.wrl]

[melnikov.wrl]

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 59

Kawalan navigasi

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 60

PengenalanDunia maya yang berbeza memerlukan kaedahnavigasi yang berbeza:

berjalan di dalam sebuah bilikterbang ke awanmemeriksa bentuk dalam aplikasi CAD

Boleh pilih jenis navigasiBoleh deskripsikan saiz dan kelajuan avatar bagipemerhati

11

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 61

Pemilihan jenis navigasiTerdapat 5 kaedah navigasi piawai:

WALK - berjalan, di tarik oleh gravitiFLY - terbang, tidak dipengaruhi oleh gravitiEXAMINE - memeriksa objek pada jarak dekatNONE - tiada navigasi, pergerakan dikawal olehdunia dan bukan pemerhatiANY - benarkan pemerhati menukar jenis navigasi

Sesetengah brower menyokong jenis navigasitambahan

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 62

Penentuan avatar

Saiz avatar (lebar, ketinggian, ketinggian langkah) dan kelajuan boleh ditentukan

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 63

Kawalan headlightHeadlight diletakkan di kepala dan ditujukan padaarah kepalaBoleh on/off kan headlight

majoriti browser berikan menu untuk mengawalheadlightboleh juga kawal headlight dengan menggunakannod NavigationInfo

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 64

Sintaks: NavigationInfoNod NavigationInfo pilih jenis navigasi dan ciri-ciriavatar:

type - gaya navigasiavatarSize dan speed - ciri-ciri avatarheadlight - on/off

NavigationInfo {type [“WALK”, “ANY”]avatarSize [ 0.25, 1.6, 0.75 ]speed 1.0headlight TRUE

}

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 65

ContohNavigationInfo {

type [“WALK”]

avatarSize [ 0.25, 1.6, 0.75 ]

speed 1.0

headlight TRUE

}

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 66

Mengesani pemerhati

12

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 67

PengenalanMengesani pemerhati membolehkan pencetusananimasi

bila kawasan boleh dilihat oleh pemerhatibila pemerhati berada dalam kawasanbila pemerhati bertembung dengan bentuk

Nod LOD dan Billboard adalah pengesanpemerhati khusus dengan sistem tindak balas terbina

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 68

Mengesani pemerhatiTerdapat 3 jenis pengesan pemerhati:

Nod VisibilitySensor - mengesan jika pemerhatiberada dalam kawasan boleh lihatNod ProximitySensor - mengesan jika pemerhatitelah berada dalam satu kawasanNod Collision mengesan jika pemerhati telahbertembung dengan bentuk

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 69

Penggunaan pengesan visibility dan proximity

Nod VisibilitySensor dan ProximitySensormengesan kawasan berbentuk kotak

center - kawasan tengahsize - dimensi kawasan

Kedua-dua nod mempunyai output yang sama:enterTimeexitTimeisActive

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 70

Sintaks: VisibilitySensorNod VisibilitySensor mengesan jika satu kawasan yang berbentuk kotak “boleh lihat”oleh pemerhati

center dan size - saiz dan lokasi kawasanenterTime dan exitTime - hantarkan masa kepada entry/exitisActive - hantarkan true/false kepada entry/exit

DEF VisSense VisibilitySensor {center 0.0 0.0 0.0size 14.0 14.0 14.0

}ROUTE VisSense.enterTime TO Clock.set_startTime

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 71

Contoh: VisibilitySensor

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 72

Sintaks: ProximitySensorNod ProximitySensor mengesan jika pemerhatimasuk atau keluar daripada kawasan

center dan size - lokasi dan saiz kawasanenterTime dan exitTime - hantarkan masa padaentry/exitisActive - hantarkan true/false pada entry/exit

DEF ProxSense ProximitySensor {center 0.0 0.0 0.0size 14.0 14.0 14.0

}ROUTE ProxSense.enterTime TO Clock.set_startTime

13

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 73

Sintaks: ProximitySensorNod ProximitySensor mengesan pemerhatiapabila berada dalam kawasan

position dan orientation - hantarkan kedudukandan orientasi pada ketika pemerhati berada dalamkawasan

DEF ProxSense ProximitySensor { . . . }ROUTE ProxSense.position_changed TO PetRobotFollower.set_translation

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 74

Contoh: ProximitySensor

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 75

Mengesan pertembunganpemerhati-bentuk

Nod pengumpulan Collision mengesan bentukdalam kumpulan

mengesan jika pemerhati bertembung dengansebarang bentuk dalam kumpulansecara automatik berhentikan pemerhati daripadaberjalan menembusi bentuk

Pertembungan berlaku apabila avatar pemerhatiberhampiran dengan bentuk

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 76

Penghasilan kumpulanpertembungan

Penyemakan pertembungan agak rumit, oleh itusemak pertembungan dengan bentuk proksi

bentuk proksi adalah versi termudah bentuksebenarbentuk proksi tidak pernah dilukis

Kumpulan pertembungan dengan bentuk proksi, tetapi tanpa children, hasilkan bentuk tertembungtanpa boleh dilihat

tingkap dllhad dunia tanpa boleh dilihat

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 77

Sintaks: CollisionNod pengumpulan Collision mengesan jikapemerhati bertembung dengan kumpulan bentuk

collide - enable/disable pengesanproxy - mengesan bentuk mudahchildren - nod children untuk dikesancollideTime - hantarkan masa pada pertembungan

DEF Collide Collision {collide TRUEproxy Shape {geometry Box { . . . } }children [ . . . ]

}ROUTE Collide.collideTime TO OuchSound.set_startTime

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 78

Contoh penggunaan sensor proksidan kumpulan pertembungan

[prox2.wrl]

14

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 79

Contoh: Collision

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 80

Pengoptimuman pengesananpertembungan

Collision adalah on (default)offkan seboleh mungkin

Wapaubagaimanapun, jika nod bapa offkanpertembungan, nod anak tidak boleh onkansemulaPertembungan berlaku apabila pemerhatibertembung dengan bentuk, tetapi bukandaripada bentuk yang bertembung denganpemerhati

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 81

Penggunaan pengesan berbilangSeberapa bilangan pengesan boleh mengsanpada masa yang sama

boleh mempunyai pelbagai keolehlihatan, proksimiti, dan pengesan pertembungankawasan pengesan boleh bertindihsensor berbilang boleh dicetuskan

TH3813 11 VRML 9 © Dr. Shahrul Azman Mohd [email protected] 82

http://www.ftsm.ukm.my/jabatan/tp/samn/TH3813.htm

http://www.ftsm.ukm.my/jabatan/tp/samn/personal.htm