Th3813 03 pengenalan vrml

8
1 VRML Pengenalan TH3813 03 VRML 1 Okt/Nov 2000 © Dr. Shahrul Azman Mohd Noah [email protected] 2 Kegunaan VRML bangunkan aksi dan dunia 3D bangunkan grafik berinteraktif menyokong kedua - dua pengguna tunggal atau berbilang terbitkan grafik melalui internet TH3813 03 VRML 1 Okt/Nov 2000 © Dr. Shahrul Azman Mohd Noah [email protected] 3 Kegunaan VRML HTML < VRML < Bahasa C takrifkan dunia 3D yang boleh dipaparkan di mana-mana melalui Internet •satu imej hanya satu pandangan •tidak boleh diubah •model 3D menyokong banyak pandangan •boleh diubah TH3813 03 VRML 1 Okt/Nov 2000 © Dr. Shahrul Azman Mohd Noah [email protected] 4 Pembangunan VRML World Wide Web (pelayan WWW) antaramuka grafik Internet Pencipta daripda Silicon Graphics (Open Inventor) mudah digunakan, pandangan berstruktur, deskripsi objek TH3813 03 VRML 1 Okt/Nov 2000 © Dr. Shahrul Azman Mohd Noah [email protected] 5 Pembangunan VRML VRML berdasarkan format Open Inventor bahasa deskripsi pandangan untuk Web VRML 1.0 Oktober 1994 VRML 2.0 August 1996 (Moving Worlds oleh Sil. Graphics HoloWeb oleh Sun Microsystems ActiveVRML oleh Microsoft Out of This World oleh Apple) TH3813 03 VRML 1 Okt/Nov 2000 © Dr. Shahrul Azman Mohd Noah [email protected] 6 Pembangunan VRML VRML 1.0 untuk hasilkan dunia 3D yang statik dan pautan VRML 2.0 pergerakan objek objek bertindakbalas terhadap peristiwa (event) gunakan objek multimedia (bunyi dan video)

Transcript of Th3813 03 pengenalan vrml

Page 1: Th3813 03 pengenalan vrml

1

1

VRMLPengenalan

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 2

Kegunaan VRMLbangunkan aksi dan dunia 3D bangunkan grafik berinteraktifmenyokong kedua- dua pengguna tunggal atau berbilang terbitkan grafik melalui internet

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 3

Kegunaan VRML

HTML < VRML < Bahasa C

takrifkan dunia 3D yang boleh dipaparkan di mana-mana melalui Internet

•satu imej hanya satu pandangan

•tidak boleh diubah

•model 3D menyokong banyak pandangan

•boleh diubahTH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 4

Pembangunan VRMLWorld Wide Web (pelayan WWW)

antaramuka grafik InternetPencipta daripda Silicon Graphics (Open Inventor)

mudah digunakan, pandangan berstruktur, deskripsi objek

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 5

Pembangunan VRMLVRML

berdasarkan format Open Inventorbahasa deskripsi pandangan untuk WebVRML 1.0 Oktober 1994VRML 2.0 August 1996(Moving Worlds oleh Sil. GraphicsHoloWeb oleh Sun MicrosystemsActiveVRML oleh MicrosoftOut of This World oleh Apple)

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 6

Pembangunan VRMLVRML 1.0

untuk hasilkan dunia 3D yang statik dan pautanVRML 2.0

pergerakan objekobjek bertindakbalas terhadap peristiwa (event)gunakan objek multimedia (bunyi dan video)

Page 2: Th3813 03 pengenalan vrml

2

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 7

Fitur-fitur VRML 2.0Objektif utama VRML 2.0

untuk berikan pengguna pengalaman yang lebih kaya, menarik dan interaktif berbanding dengan VRML 1.0untuk berikan asas yang kukuh untuk perkembangan VRML di masa hadapan, mudah, pantas kepada semua (pembanguna browser, pereka bentuk dunia maya, dan pengguna akhir)

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 8

Fitur-fitur VRML 2.0Pertingkatkan dunia statikInteraktifAnimasiPenskriptanPemprototaipan

Pertingkatkan dunia statik(warna tanah/langit, fog, bunyi, ………)

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 9

Fitur-fitur VRML 2.0Interaktif

(pengesan, penentuan perlanggaran, ….)Animasi

(interpolators, ……)Penskriptan

penskriptan mengambil input daripada pengesan dan janakan peristiwa berdasarkan input yang boleh mengubah nod-nod lain

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 10

Fitur-fitur VRMLPemprototaipan

prototaip - satu jenis kejadian nod baru, antaramuka berparameter

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 11

Perubahan daripada VRML 1.0Jenis nod baru

nod Group (collision, transform)maklumat browser (Background, NavigationInfo, Viewpoint, WorldInfo)Lights & Lighting (fog)SoundShapes (nod geometry + nod property)AppearanceSensorsNod khusus (special nodes) TH3813 03 VRML 1

Okt/Nov 2000© Dr. Shahrul Azman Mohd Noah

[email protected] 12

Perubahan daripada VRML 1.0Jenis nod yang disingkir

AsciiText ---> WorldInfoInfo ---> WorldInfoSeparator ---> Transformtransformation nodes ---> Transform

Page 3: Th3813 03 pengenalan vrml

3

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 13

VRMLperlu kepada editor teks - --- > xxx.wrlbrowser - --- > SGI Cosmo Player

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 14

Membina sebuah duniafail VRML merupakan koleksi objek- objekobjek

objek fizikal (geometry, color, material, 3D position)soundslightsviewpoints

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 15

Membina sebuah dunia

Nod Objek

Nod

adalah

Medan (fields)

(satu nod boleh mempunyai lain-lain nod)

(setiap satu nod mempunyai medan)

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 16

shape node

geometry node appearance node

Menghasilkan silinder berwarna ungu#VRML V2.0 utf8Shape {

appearance Appearancematerial Material {}

}geometry Cylinder {}

}

1.0

2.0

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 17

Struktur fail VRMLShape {}

merupakan nod container asas untuk objek geometryia merangkumi nod appearance bagi geometry

Geometry{}Sphere, Cylinder, Box, ConeIndexedFaceSet

geometry Sphere{ }geometry Cone { }

medan (fields) TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 18

Struktur fail VRMLmaterial Material { }

tanpa nod ini, objek tidak kelihatan (black)nod Material yang kosong, objek yang terpapar berwarna light grey (default colour)

Page 4: Th3813 03 pengenalan vrml

4

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 19

#VRML V2.0 utf8Shape {

appearance Appearance {material Material { }

}geometry Cylinder {

radius 3.0radius 6.0side Truetop Falsebottom True}

}

Kes

nama nod: Cylinder

nama medan: radius

medan (fields)

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 20

material Material {diffuseColor .5 0 .5shininess .5

}

appearance {}

material {} texture{}

(colour, smoothness, shiny)properti bagi permukaan

colour Red Green Blueblack 0 0 0white 1 1 1purple .5 0 .5

red 1 0 0green 0 1 1blue 0 0 1

shininess (0 ----- 1)

soft reflection sharp highlight

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 21

material Material {diffuseColor x x xshininess xambientIntensity x?Transparency?

}

Shape{ }

Appearance{ }

Material{ }

……..fields

medan bagi nod Shape

medan bagi nod Appearance

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 22

Diagram SceneTerbahagi pada 2 kategori:

nod pengumpulan (grouping nodes)nod bukan pengumpulan (non-grouping nodes)

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 23

Grouping nodesGroup, Transform, LOD, Switch, Anchor, Inline, CollisionGrouping nodes digunakan untuk gabungkan objek dalam kumpulanMereka boleh mempunyai anak (children)Tidak semua nod boleh menjadi anak kepada grouping node

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 24

Grouping Node#VRML V2.0 utf8Transform {

---------------- # sebarang medan transformchildren [

Shape{ ------- # nod Shape-------}

]}

Page 5: Th3813 03 pengenalan vrml

5

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 25

Grouping Nodes

Transform

Shape Appearance

Cylinder

Material

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 26

KomenGroup {

children [ ] # an empty group}

Komen boleh berada di mana- mana barisIa tidak diendahkan mulai tanda # hingga ke akhir baris

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 27

Nod Inlinedigunakan untuk masukkan model VRML lain ke dalam scenesama seperti pautan (link)

Inline{url “xxxxx.wrl”

}

Inline{url “xxxxx.wrl”}

•prestasi akan menurun untuk mengambil data daripada server dan dimasukkan ke dalam scene.

•untuk model kecil, tampalkan data terus ke dalam scene

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 28

Kejadian (Instances)benarkan penggunaan semula nod yang sama beberapa kali dalam scenekejadian dihasilkan melalui namabila definisikan nod dengan satu nama, boleh gunakan semula nama tersebut pada mana- mana tempat yang kita hendak gunakan nod tersebutkelebihan kejadian

fail lebih ringkas dan mudah dibacasingkatkan masa downloadtingkatkan prestasi

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 29

Kejadian (Instances)jika properti asal nod yang dinamakan itu diubah, semua kejadian nod tersebut juga berubahuntuk mengubah appearance, boleh tentukan geometry dengan nama kemudian gunakannya dengan material dan tekstur yang berbeza

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 30

Kejadian (Instances)DEF BothBraziers Transform {

children [DEF Brazier Group {

children Inline {url “TMBrazierTlaloc.wrl”bboxCenter 799.5 127.01 -1187.5bboxsize 124 5 5}

Transform {children USE Braziertranslation 54.5 0 0}]translation 0 -1.43 0

}

Page 6: Th3813 03 pengenalan vrml

6

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 31

Nod Anchorbolehkan hiperlink pada scene yang lain, lamanHTML, bunyi, dan fail movie terdapat dalam rangkaian

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 32

Nod AnchorDEF Title Anchor {

url “Tenochitlan.html”description “The Aztec Citychildren [

Inline {url “TitleText.wrl”bboxSize 5.8 0.75 0bboxCenter 0 .37 0

}]

}

url ialah fail yang dipauti

description ialah “prompt” apabilatetikus menunjuk kepada objek anak

children ialah objek untuk “activatehiperlink bila pengguna “klik”

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 33

Nod Anchorchildren [

Inline {url “TitleText.wrl”bboxSize 5.8 0.75 0bboxCenter 0 .37 0

}Inline {

url “brazier.wrl”bboxCenter 0 0 0bboxsize 3.14 3.13 3.12

}]

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 34

Kumpulan TransformObjek boleh dikumpulkan pada kumpulan Transform yang sama

TransformInline

Transform Inline

scope 1

scope 1 & scope 2

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 35

Kumpulan TransformTransform {

---------------children [

Inline {---------------

},Transform {

----------------children [

Inline {---------------

}]

}]

}

Scope

- nod transform yang melibatkan ke semua nod di dalamnya

- nod transform dikatakan tersarang jika ia di masukkan dalam nod transform yang lain

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 36

Kumpulan TransformSusunan transform adalah penting Satu nod gunakan nod Transformnya sendiri, kemudian nod Transform bapanya, dan seterusnyaNod transform pada paras yang sama tidak memberikan kesan sesama sendiri

Page 7: Th3813 03 pengenalan vrml

7

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 37

Kumpulan TransformT1

T2

T

N1

N2

T T1 N1

T T2 N2

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 38

Pandangan sceneViewpoint

tentukan posisi mata dan arah pandangan pada scene yang samaviewpoint yang defaultialah (0 0 10) x

z

y

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 39

Pandangan scenefield of view

tentukan berapa jumlah scene yang dipaparkan (zoom, wide angle)ditentukan melalui nilai radian

1 radian = 57 darjah? radian = 180 darjah? radian = 360 darjah

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 40

Viewpoint berbilangboleh tentukan dahulu viewpoint berbilang dalam kedudukan, arah dan field of view yang berbeza, kemudian gunakan dengan namapertukaran daripada satu viewpoint ke satu viewpoint yang lain dianimasikan melalui scene oleh browser.

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 41

Viewpoint berbilangmenggunakan viewpoint dalam pautan Anchor

Anchor { url “chacmool”#TheGate”-------------------

}

viewpoint TheGate digunakan untuk melihat pautan nod “chacmool.wrl”

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 42

LOD (level of detail)digunakan untuk kurangkan kekompleksan objekdengan jarak (distance)

Page 8: Th3813 03 pengenalan vrml

8

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 43

LOD (level of detail)children LOD {

center xx xx xxrange [60, 200]levels [

Transform { # first level---------------

},Transform { # second level

---------------},Group { # last level

----------------}

]}

- center(x, y, z) ialah pusat bagi objek

- digunakan untuk mengira jarak antara pusat objek dan viewpoint

range[60,200]jika d < 60 lukis paras pertamajika 60<d<200 lukis paras keduajika d > 200 lukis paras terakhir

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 44

Interaksi penggunapengesan (sensors), peristiwa (events), jalan(routes)sensors ialah nod yang bertindak terhadap interaksi pengguna

Touchsensor - kesan “klik”ProximitySensor - kesan jarakPlaneSensor - kesan tidakan “drag”TimeSensor - kesan detikan masa

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 45

Interaksi penggunaterdapat 2 peristiwa (event) yang boleh dipanggil dalam setiap sensor - eventIn dan eventOut

TouchSensor

eventIn

eventOut

tukarkan nilai medan

hantar keluar nilai medan

TH3813 03 VRML 1Okt/Nov 2000

© Dr. Shahrul Azman Mohd [email protected] 46

Interaksi pengguna

TouchSensor

eventOut

PointLight

eventIn

buka lampu

route

route ialah hubungan antara dua nod