Giới thiệu về ngôn ngữ mô hình hoá thực tại ảo VRML

Ngôn ngữ mô hình hoá thực tại ảo (VRML) là ngôn ngữ sử dụng mô hình phân cấp trong việc thể hiện các tương tác với các đối tượng của mô hình. Ra đời phiên bản đầu tiên vào tháng 10 năm 1994 (VRML 1.0) , cho đến nay VRML đã phát triển tới phiên bản 2.0 với các chức năng mạnh mẽ , nhanh chóng trở thành chuẩn phát triển cho nhiều chương trình đồ họa VRML là ngôn ngữ Internet 3D – ngôn ngữ dùng để phát triển đồ hoạ 3D trên WEB , có cấu trúc chặt chẽ , với khả năng mạnh mẽ , giúp cho việc xây dựng các ứng dụng 3D một cách nhanh chóng .

doc19 trang | Chia sẻ: haohao89 | Lượt xem: 7330 | Lượt tải: 1download
Bạn đang xem nội dung tài liệu Giới thiệu về ngôn ngữ mô hình hoá thực tại ảo VRML, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Giới thiệu về ngôn ngữ mô hình hoá thực tại ảo VRML _Virtual Reality Modeling Language_ Khái niệm : Ngôn ngữ mô hình hoá thực tại ảo (VRML) là ngôn ngữ sử dụng mô hình phân cấp trong việc thể hiện các tương tác với các đối tượng của mô hình. Ra đời phiên bản đầu tiên vào tháng 10 năm 1994 (VRML 1.0) , cho đến nay VRML đã phát triển tới phiên bản 2.0 với các chức năng mạnh mẽ , nhanh chóng trở thành chuẩn phát triển cho nhiều chương trình đồ họa . VRML là ngôn ngữ Internet 3D – ngôn ngữ dùng để phát triển đồ hoạ 3D trên WEB , có cấu trúc chặt chẽ , với khả năng mạnh mẽ , giúp cho việc xây dựng các ứng dụng 3D một cách nhanh chóng . Các thành phần không thể thiếu khi sử dụng VRML : Gồm các trình duyệt ( Browses) và bộ soạn thảo riêng dành cho ngôn ngữ VRML ( Editor) . Các file VRML chỉ có thể đọc nếu hệ thống có trình duyệt VRML Trình duyệt VRML giống như các trình duyệt Internet ( Như Internet Explorer hay Nescape Navigator ) Thực chất trình duyệt VRML được tích hợp vào các trình duyệt thông dụng Internet trên . Bộ soạn thảo VRML là môi trường cho phép người lập trình gõ mã VRML . Hiện nay , có nhiều bộ soạn thảo .Nhưng bộ soạn thảo VRML Pad là bộ soạn thảo thông dụng , cho phép người lập trình gõ mã VRML sau đó có thể dùng trình duyệt VRML trực tiếp để xem kết quả ngay lập tức. Tổng quan về ngôn ngữ VRML Cấu trúc chung của một file VRML : File VRML có phần mở rộng là WRL ( Viết tắt của từ WoRLd) .Một file VRML được cấu tạo từ các nút cơ bản . Sau đây ta sẽ tham khảo một số nút cơ bản trong VRML - Nút World Info : Đây là nút chứa thông tin chung của File VRML , được hiển thị trong thanh tiêu đề của cửa sổ trình duyệt . Ví dụ WorldInfo { title "Floppy's VRML97 Tutorial Example 1" info ["(C) Copyright 1999 Vapour Technology" "guide@vapourtech.com"] } -Thành phần cơ bản nhất của các nút trong VRML là các khối hình học cơ sở dùng để tạo nên thế giới 3D . Các đối tượng hìnhhọc cơ sở này bao gồm Hình hộp (Box) , Hình trụ (Cylinder) , Hình nón ( Cone) , Hình cầu (Sphere)…. Các đối tượng hình học cơ sở này xuất hiện trong nút Shape , với khuôn dạng sau : Shape{ Geometry primitive_name{ properties } } Trong đó , Primities_name là tên các đối tượng hình học , như : Sphere , Cylinder , Cone , Box , ….. Properties : Các thuộc tính hình học như bán kính (Radius) , độ rộng (width), kích cỡ (size) , chiều cao ( Height) …….. Ví dụ : Để vẽ một khối hộp, ta dùng đối tượng box .Cú pháp đoạn mã lệnh tạo khối hộp như sau: Shape { Geometry Box { size 1 2 1 } } Đoạn mã lệnh trên sẽ tạo ra một khối hộp với 3 kích cỡ lần lượt là 1 , 2 và 1 - Trong VRML , qui ước trục toạ độ như hình vẽ : X Y Z - Các phép biến đổi trong VRML gồm có : Phép quay , phép dịch chuyển , phép tỉ lệ Phép quay ( Rotation )- Cho phép quay đối tượng trong không gian 3 chiều Cú pháp : rotation x y z a Trong đó x, y ,z tương ứng là 3 trục , a là góc quay. - Phép dịch chuyển( Translation) : Cho phép chuyển dịch đối tượng đến vị trí có toạ độ bất kì trong không gian 3 D Cú pháp : translation x y z với x,y , z là các toạ độ theo 3 trục tương ứng. - Phép tỉ lệ (Scale) Cho phép nhân đối tượng với các tỉ lệ khác nhau. Cú pháp : scale x y z trong đó x,y,z là tỉ lệ theo 3 trục tương ứng. Ba loại biến đổi trên được sử dụng bên trong nút Transform Ví dụ : Transform { translation 1 1 1 rotation 0 1 0 0.78 scale 2 1 2 children [ USE FBOX ] } - Nút Appearance : Trong nút Shape, có một trường gọi là appearance .Trường này được sử dụng để chứa trường Appearance Ví dụ : DEF BOX Shape { appearance Appearance { material Material { } } geometry Box{} } - Nút material : Nếu một đối tượng không được định nghĩa material , ta sẽ không nhìn thấy đối tượng đó được. Nút Material có tất cả 6 trường : diffuseColor: Chứa màu sắc thông thường của đối tượng . Dạng thức của diffusecolor a b c trong đó a, b, c là các giá trị tương ứng với 3 màu RGB ( Red , Green , Blue ) SpecularColor:Cho màu sắc nổi bật của đối tượng chiếu sáng.Cú pháp giống diffuseColor EmissiveColor: Độ bóng AmbienIntensity : Số lượng các ánh sáng bao quanh mà đối tượng phản chiếu Shinines : Các ánh xạ của đối tượng Transperancy : Độ trong suốt của đối tượng 4. Một số phương pháp vẽ trong VRML - Trong VRML , chúng ta có thể vẽ trực tiếp các đối tượng. Tuy nhiên , trong nhiều trường hợp , đối tượng này được sử dụng lại nhiều lần. Nếu ta vẽ trực tiếp các đối tượng này thì sẽ mất rất nhiều thời gian và công sức . Ví dụ , trongmột lớp học có rất nhiều bộ bàn ghế. Các bàn ghế này giống hệt nhau. Như vậy , ta sẽ chỉ cần vẽ một lần , sau đó có thể dùng lại nhiều lần những bộ bàn ghế này. Có nhiều biện pháp đưa ra để giải quyết vấn đề này . Ta đưa ra 3 biện pháp thông dụng sau a) Sử dụng Hàm Inline Hàm Inline cho phép chúng ta gọi trực tiếp một đối tượng bên ngoài thế giới vào thế giới hiện tại. Cú pháp của Inline như sau : Inline { url “ Tên đường dẫn “} Với phương pháp này , ta sẽ vẽ đối tượng và lưu lại , giả sử với tên là “Doituong1. wrl” Sau đó , mỗi lần cần sử dụng đối tượng , ta chỉ việc gọi đối tượng thông qua hàm Inline Inline{ url “Doituong1. wrl” } b) Dùng từ khóa định nghĩa DEF ( DEFine) Từ khoá này cho phép ta định nghĩa một đối tượng hay một kiểu thuộc tính Giả sử ta định nghĩa một đối tượng banghe kiểu Transform DEF Banghe Transform { # Vẽ đối tượng } Sau đó , nếu muốn dùng lại đối tượng , ta chỉ việc gọi hàm bằng từ khoá USE ( sử dụng) USE Banghe c) Dùng từ khoá PROTO ( Hàm nguyên mẫu PROTOTYPE) PROTO TenHam [ #Các thuộc tính ] { # Xây dựng đối tượng } Các thuộc tính của hàm gồm có : Vị trí đặt đối tượng , góc quay , tỉ lệ ….. Khi muốn gọi đối tượng đã được định nghĩa nguyên mẫu , ta chỉ việc gọi tên đối tượng đó mà thôi Ví dụ : TenHam{} 5. Một số kĩ thuật đặc biệt trong VRML. - VRML không những cho phép ta thiết kế các khối hình học cố định mà nó còn cho phép ta tương tác với những gì trong không gian mà ta vừa vẽ ra . - Bản thân VRML cung cấp một loạt các nút tương tác ,còn gọi là nút cảm biến (Sensor) Các nút này sẽ điều khiển đối tượng trong VRML đáp ứng lại được với tác động của người dùng. Về phần này , tôi sẽ trình bày rõ ở mục sau , phần vẽ nhà C14 , với một số tương tác ở cửa kéo và cửa xoay. - Ngoài ra, VRML còn cho phép nhúng mã Java, Javascript vào bản thân ngôn ngữ Điều này tạo nên sức mạnh vô địch cho VRML. Để thêm mã Javascript vào VRML , ta phải xây dựng một nút Script. Nút này cho phép ta xây dựng tập các nút cùng với các trường , các sự kiện cho bản thân các nút đó. Ví dụ : Script { exposedField MFString url[] field SFBool directOutput FALSE field SFBool mustEvaluateFALSE eventIn Type eventInName field Type fieldName default value eventOut Type eventOutName } Đặc biệt , nút Script còn cung cấp trương url để chỉ ra các đoạn mã kịch bản trong các file khác Có 3 cách định nghĩa các đoạn kịch bản trong VRML - Thứ nhất : có thể dùng Java đã biên dịch trong file dạng .class bên trong trường url - Thứ hai : dùng mã JavaScript trong file dạng .js - Thứ ba : có thể thêm trực tiếp các đoạn mã Script vào trường url Ví dụ : Script { eventIn SFBool input field SFBool boolValue TRUE eventOut SFBool output url "filter.js" } Do phần này nằm ngoài đề tài của mình nên tôi không trình bày thêm mà chỉ dừng lại ở đây . B. Phần thiết kế và xây dựng nhà C 14 trường đại học Bách Khoa Hà Nội 1. Phân tích thiết kế nhà C14 : - Nhà C14 trường đại học Bách Khoa Hà nội có 5 tầng, phân cấp như sau : - Tầng 1 : Gồm văn phòng khoa Toán , giảng đường và 1 phòng thiết bị - Tầng 2 : Gồm giảng đường và các phòng thí nghiệm vật lí đại cường - Tầng 3 : Gồm giảng đường và các phòng thuộc khoa Mác Lê Nin - Tầng 4 : Gồm các phòng học nhỏ và giảng đường - Tầng 5 : Gồm giảng đường và các phòng học , phòng thí nghiệm của các lớp kĩ sư chất lượng cao Theo sơ đồ phân cấp trên , nhà C14 gồm có các phòng đặc trưng sau : - Giảng đường lớn : gồm 3 lớp , với 13 dãy bàn . Bên trong giảng đường có bảng , đèn , quạt, bàn ghế học sinh và giáo viên - Phòng học nhỏ , gồm 1 lớp , với 7 dãy bàn , trong có bảng , đèn , quạt, bàn ghế học sinh và giáo viên.. - Phòng thí nghiệm : Có kích thước tương đương phòng học nhỏ , gồm 2 dãy bàn thí nghiệm , 2 bàn dành cho giáo viên hướng dẫn thí nghiệm …. - Phòng nhỏ của các khoa Toán –Tin ứng dụng và Khoa triết : Nhỏ , có kích cỡ bằng hoặc bằng ½ phòng học nhỏ . Bên trong các văn phòng này có chứa bàn ghế và các thiết bị văn phòng - Ngoài những phòng đặc trưng trên ra , nhà C14 còn có các phòng đặc biệt như phòng giao nhận thiết bị , các dãy nhà vệ sinh , các bảng thông báo …………. Trên đây là liệt kê các phòng đặc trưng của nhà C14 . Còn một phần hết sức quan trọng để xây dựng nên nhà C14 , đó là việc thiết kế khung cho nhà C14 . Nhà C14 gồm có 5 tầng , được tách thành từng phần như sau : - Trần nhà C14 : Là phần trên cùng của nhà C14 – trên tầng 5 - Các nền tầng 2345 . - Các cột , trụ , bậc thang của nền nhà C14 ( Tầng 1 ) - Phần cầu thang 2 . Xây dựng chi tiết từng phần a) Khung nhà C14 : a1) Phần Cầu thang : - Cầu thang được xây dựng từ các phần tử nhỏ hơn là các bậc tam cấp , tay vịn cầu thang và một số thanh nối . Bậc tam cấp được xây dựng bởi nút Transform , trong đó có chứa một đối tượng hình học là một trụ . Trong VRML , việc định nghĩa một trụ được thực hiện bằng các lệnh sau: PROTO baccauthang[ Field SFVec3f pos 0 0 0] { Transform { Translation IS pos children [ Shape { appearance Appearance { material DEF myMa Material { diffuseColor .76 .66 .29 specularColor .36 .38 .06 emissiveColor .18 .16 .07 ambientIntensity .0433 shininess .19} } geometry DEF mybox Box { size 0.5 0.2 1.8 } } ] } } Trong đoạn mã trên , từ khoá PROTO nhằm định nghĩa một nguyên mẫu ( PROTOTYPE ) . Nguyên mẫu này sẽ được gọi ở các đoạn mã sau. Sau khi định nghĩa nguyên mẫu , ta có thể gọi nguyên mẫu này bằng cách gọi tên nguyên mẫu cùng với các thuộc tính của nguyên mẫu . Ví dụ , để gọi một bậc tam cấp đã được định nghĩa nguyên mẫu trước đó , ta chỉ việc gõ đoạn mã : baccauthang { Pos 0 0 0 } Trường pos , kiểu SFVect3f là kiểu thuộc tính về toạ độ 3 chiều . Ta định nghĩa trường pos kiểu SFVect3F để xác định toạ độ của các nguyên mẫu được gọi sau này Trường hợp gọi hàm nguyên mẫu trên , do có pos 0 0 0 nên chương trình sẽ đặt một bậc cầu thang tại toạ độ 0 0 0. Tiếp đó , trong hàm nguyên mẫu , ta đặt một nút con Transform để xác định các thuộc tính và hình dạng của nguyên mẫu Các trường Apperance để định nghĩa thuộc tính của nguyên mẫu .Thuộc tính ở đây gồm có : màu sắc , độ mịn , độ phản chiếu , độ trong suốt …. Trường Shape để xác định hình thể của nguyên mẫu Do ở đây Shape là dạng box nên nguyên mẫu có hình hộp , trường size trong Shape xác định kích cỡ của hình hộp , bao gồm 3 kích thước tương ứng với 3 cạnh hình hộp - Như vậy , sau khi định nghĩa nguyên mẫu về baccauthang, ta có thể gọi nhiều bậc cầu thang , ghép nối với nhau tại các vị trí thích hợp để tạo nên cầu thang - Cầu thang còn có tay vịn . Ta định nghĩa tay vịn cầu thang là một hình trụ , được tính toạ độ chính xác để đặt vào cầu thang. Transform { #Tay vin cua cau thang translation 0.37 -1.1 -0.7 rotation 0 0 1 -1.2 children [ Shape { appearance Appearance { material DEF Mat Material { diffuseColor .8 .8 .8 } } geometry Cylinder {radius .1 height 5.62} }] } - Các thanh nối tay vịn với các bậc tam cấp : định nghĩa các trụ đứng , nhỏ hơn . Transform { #Tay vin tren cua cau thang translation 0.4 .8 -1.3 rotation 0 0 1 1.2 children [ Shape { appearance Appearance { material USE Mat } geometry Cylinder {radius .1 height 5.62} }] Sau khi xây dựng xong cầu thang, ta lưu lại với tên file là “cauthang. wrl “ Hình dạng của cầu thang như sau : - Xây dựng nền các tầng 2345 : Nền các tầng 2345 bao gồm : Phần nền – có dạng hình hộp , ở 2 bên có 2 phần lan can nhô ra phía trước . việc xây dựng phần nền được thực hiện bằng cách định nghĩa các hình hộp , với các kích thước và vị trí đúng , như sau : Transform { #Nen cua tang translation 2.55 1 7.5 children [ Shape { appearance DEF MyApp3 Appearance { material Material { diffuseColor 1 .85 0 specularColor .87 .25 .25 ambientIntensity .157 shininess 1 }} geometry Box { size 87 1 15 } }] } Transform { #Nen duoi cau thang ben phai translation 38.75 1 16.5 children [ Shape { appearance USE MyApp3 geometry Box { size 5 1 5 } }]} Transform { #Nen duoi cau thang ben trai translation -26.5 1 16.7 children [ Shape { appearance USE MyApp3 geometry Box { size 5 1 5 } }]} Transform {#Phan duoi cua giang duong translation -35.5 1 -7 children [ Shape { appearance USE MyApp3 geometry Box { size 11 1 15 } }]} - Ngoài ra , nền các tầng 2345 còn có các lan can , các thanh ngang . Lan can gồm các trụ dài , song song với nhau. Việc xây dựng lan can quá dễ dàng , ở đây tôi không đề cập đến. Sau khi xây dựng lan can , ta chèn vào phần nền đã xây dựng trước đó . Kết quả thu được nền các tầng 2345 như hình sau File kết quả được lưu lại với tên là tang2345. wrl - Xây dựng Nền nhà C14 : Phần này bao gồm phần nền tầng 1 , các trụ , bậc tam cấp và các tường bao quanh . Phần nền tầng 1 được xây dựng giống hệt như phần nền đã xây dựng cho tầng 2345 . Ngoài ra , còn có các trụ thẳng đứng ,nối từ tầng 1 đến tận nóc nhà . Các bậc tam cấp được xây dựng bằng cách chèn trực tiếp bậc tam cấp đã xây dựng trước đó ( Dùng hàm Inline ) - Xây dựng xong phần nền tầng 1 , ta thực hiện ghép tất cả các phần tử lại , tạo thành bộ khung cho nhà C14 Bộ khung của nhà C14 gồm : - Nền tầng 1 cùng với các trụ thẳng đứng , các tường bao , bậc tam cấp - Nền các tầng 2345 - Trần nhà ( thực chất là trần của tầng 5) - Các cầu thang đã xây dựng Trình tự xây dựng khung nhà C14 như sau : Trong file chính C14. wrl , dùng các hàm Inline để chèn các phần khác nhau vào . Nhà C14 có 2 cầu thang , bên phải và bên trái . Vi ệc chèn cầu thang còn bao hàm cả việc tính tọa độ cùng với góc xoay thích hợp. Khung nhà C14 được vẽ như hình sau : - Xây dựng các phòng học , giảng đường và phòng thí nghiệm . +) Xây dựng phòng học : Phòng học trong C14 gồm 2 loại : phòng học nhỏ và giảng đường lớn Phòng học được tạo bởi từ các bức tường , nền , trần , các thanh nối, bục giảng … Trong phòng học có đặt các vật dụng như bàn ghế học sinh , bàn ghế giáo viên.. Một phòng học nhỏ trong C14 có hình như sau : Phòng học gồm có : Các tường bao , nền : các phần này được xây dựng bằng cách định nghĩa các hộp : Transform { #Tuong ve phia phong 301 translation -7 0 0 children [ Shape { appearance Appearance { material DEF myMa Material { diffuseColor 1 .85 0 specularColor .87 .25 .25 ambientIntensity .157 shininess 1 } } geometry Box { size 0.4 4 12 } } ] } Định nghĩa bục giảng : PROTO bucgiang[ field SFVec3f pos 0 0 0 field SFVec3f tile 1 1 1 ] { Transform { translation IS pos scale IS tile children [ Shape { appearance Appearance { material Material { diffuseColor .88 .73 .34 specularColor .27 .13 .13 ambientIntensity .0933 shininess .31 } } geometry Box {size 1 1 1} } ] } Một phần quan trọng của phòng học đó là các cửa . Các cửa này có tương tác với ngứòi dung . Cánh cửa chính có thể mở xoay quanh trục Các cửa kéo có thể chuyển động tịnh tiến dọc theo một trục thẳng . Để có sự tương tác với người dùng , ta sử dụng các nút cảm biến ( Sensor) Transform { #Cua ra vao translation 0 0 0 children [ DEF SENSOR CylinderSensor { #diskAngle 0 maxAngle 3.14 minAngle 1.57 } DEF OBJECT1 Transform { children [ Shape { appearance Appearance { material Material { diffuseColor 1 1 1 } } geometry Cylinder { height 2.2 radius 0.05 } } Transform { translation .5 0 0 children [ Shape { appearance Appearance { material Material { diffuseColor 0.5 0.5 0.5 shininess 0.5 } } geometry Box { size 1 2.2 0.05 } } ] } ] } Phần xây dựng cánh cửa xoay được mô tả như sau : Trước tiên , ta định nghĩa một nút Transform để chứa toàn bộ cửa Trong nút Transform này , ta định nghĩa một cảm biến , kiểu Cylinder Sensor . Kiểu này cho phép một đối tượng có thể quay quanh một trục. Các trường MinAngle và MaxAngle xác định giới hạn góc quay của đối tượng. Trên đây mới xác định kiểu cảm biến . Để xoay quanh một trục , ta phải xây dựng trục đó . Trên đây , ta đã xây dựng một trục hình trụ : Trụ này có chiều cao 2.2 , bán kính 0.05 Shape { appearance Appearance { material Material { diffuseColor 1 1 1 } } geometry Cylinder { height 2.2 radius 0.05 } } Ngoài ra, ta còn phải xây dựng đối tượng . Trên đây, đối tượng quay quanh trục là một khối hộp có kích thước 3 chiều lần lượt là 1 , 2.2 và 0.05. Đây chính là cánh cửa . Transform { translation .5 0 0 children [ Shape { appearance Appearance { material Material { diffuseColor 0.5 0.5 0.5 shininess 0.5 } } geometry Box { size 1 2.2 0.05 } } ] } Để làm cho đối tượng hoạt động mỗi khi người dùng xoay đối tượng , ta phải truyền điều khiển tác động vào đối tượng từ người dùng đến cảm biến ROUTE SENSOR.rotation_changed TO OBJECT1.rotation Cánh cửa xoay trên đây có hình như sau : -Loại nút cảm biến thứ 2 mà ta xây dựng trong bài , đó là nút cảm biến Planet Sensor . Với loại cảm biến này , đối tượng có thể chuyển động tịnh tiến dọc theo một trục dưới sự tác động của người dùng. Trong bài này , ta sử dụng cảm biến Planet Sensor để tạo ra các cửa kéo. Việc sử dụng Planet Sensor cũng tương tự như việc sử dụng Cylinder Sensor . Đầu tiên ta cũng định nghĩa một cảm biến kiểu Planet Sensor DEF SENSOR PlaneSensor { maxPosition 1 0 minPosition 0.05 0 } Các trường maxPosition và minPosition là các giới hạn của chuyển động tịnh tiến. Sau đó ta xây dựng đối tượng (Định nghĩa đối tượng : DEF OBJECT Transform { ....} ) Để làm cho đối tượng hoạt động mỗi khi người dùng tác động đến đối tượng , ta phải truyền điều khiển tác động vào đối tượng từ người dùng đến cảm biến ROUTE SENSOR.translation_changed TO OBJECT.translation Để thêm bàn ghế vào lớp học , ta có thể dùng các hàm Inline để chèn các bàn ghế có sẵn vào. - Việc xây dựng giảng đường cũng tương tự như việc xây dựng lớp học . Nhưng giảng đường gồm có 3 tầng , tầng thứ nhất có 3 dãy bàn học , tầng thứ hai có 5 dãy , tầng thứ 3 cũng có 5 dãy. - Xây dựng phòng thí nghiệm cũng tương tự như việc xây dựng phòng học . Dưới đây là hình ảnh của giảng đường và phòng thí nghiệm Hình 12 : Giảng đường nhà C14 . Hình 13 : Phòng thí nghiệm nhà C14 C. Đánh giá kết quả thu được và phân công công việc Mô hình nhà C14 Trường đại học Bách Khoa Hà nội được xây dựng bởi nhóm sinh viên lớp Tin 7 – K44 – Khoa công Nghệ ThôngTin - Đại học Bách Khoa Hà nội . Nhóm sinh viên gồm : 1) Phùng Văn Cường 2) Lê Tài Đại 3) Nguyễn Trọng Đông 4)Nguyễn Hoàng Tú Phân chia công việc : -Nguyễn Hoàng Tú : Xây dựng các mô hình đồ vật ,như bàn , ghế , các dụng cụ thiết bị trong phòng thí nghiệm , trong giảng đường , …. - Nguyễn Trọng Đông : Xây dựng các mô hình phòng học , phòng nghỉ giáo viên .. - Lê Tài Đại : Xây dựng các giảng đường nhà C14 - Phùng Văn Cường : Xây dựng mô hình khung cho toàn bộ nhà C14 - Kết nối các môđun lại thành một mô hình hoàn chỉnh Thông qua đề tài này , chúng tôi đã hiểu biết thêm rất nhiều về việc xây dựng các mô hình 3D, đặc biệt là các mô hình 3D trên ngôn ngữ VRML Qua quá trình làm việc nghiêm túc , tích cực, chúng tôi đã thu được một số kết quả tốt. Tuy nhiên , do mới làm quen với ngôn ngữ mới đồng thời do thời gian quá eo hẹp, mô hình nhà C14 tuy đã xây dựng xong nhưng vẫn còn một số điểm chưa được như ý muốn. Chúng tôi mong nhận được sự đóng g
Tài liệu liên quan