Thông qua công nghệ này con người có thể tương tác với thế giới ảo một cách chân thực nhất và xu hướng này hiện đang phát triển mạnh mẽ tại nhiều nước trên thế giới.. Thông qua công nghệ
Trang 1MỤC LỤC
DANH MỤC HÌNH ẢNH 4
LỜI CẢM ƠN 5
LỜI MỞ ĐẦU 6
DANH MỤC VIẾT TẮT 7
TỔNG QUAN ĐỀ TÀI 8
CHƯƠNG I GIỚI THIỆU VỀ CÔNG NGHỆ THỰC TẾ ẢO 10
1 Giới thiệu thực tế ảo 10
1.1 Khái niệm Thực tế ảo 10
1.2 Đặc tính cơ bản của thực tế ảo 12
2 Lịch sử phát triển 13
3 Các thành phần một hệ thống VR 14
4 Các thiết bị cơ bản 15
4.1 Thiết bị định hướng và chuyển động 15
4.2 Thiết bị tương tác và phản hồi 18
CHƯƠNG 2 NGÔN NGỮ VRML 20
2.1 Giới thiệu về VRML 20
2.1.1 Khái niệm ngôn ngữ VRML 20
2.1.2 Định nghĩa ngôn ngữ VRML 20
2.1.3 Lịch sử phát triển của ngôn ngữ VRML 21
2.1.4 Đặc điểm của VRML 22
2.2 Các vấn đề cơ bản của VRML 23
2.2.1 Các thành phần của VRML 23
2.2.2 Công cụ hiển thị VRML 23
2.2.3 Tập tin của VRML 24
Trang 22.3 Tìm hiểu chi tiết về VRML 24
2.3.1 Các nút trong VRML 24
2.3.2 Kết cấu hình ảnh (image texture) 28
2.3.3 Movie Texture 29
2.3.4 Pixel Texture 29
2.3.5 Văn bản và kiểu font( text và fontstyle) 31
2.3.6 Các đối tượng cơ bản 32
2.3.7 Màu sắc trong VRML 34
2.3.8 Nhóm node 35
2.3.9 Một số phương pháp vẽ trong VRML 37
2.3.10 Texture Mapping 38
2.3.11 Script 38
CHƯƠNG 3 ỨNG DỤNG CỦA THỰC TẾ ẢO 40
3.1 Y học 40
3.1.1 Giảm đau 40
3.1.2 Chống lại nỗi sợ 41
3.1.3 Rối loạn stress sau sang chấn tâm lý 42
3.1.4 Điều trị tâm thần phân liệt 44
3.1.5 Phục hồi chức năng và giúp tái hòa nhập cộng đồng 45
3.2 Ứng dụng công nghệ tương tác thực tế ảo trong giáo dục 46
3.2.1 zSpace 46
3.2.2 ITCraft: Pop Up Sách 47
3.2.3 Aurasma 47
3.2.4 Arloon 47
3.3 Ứng dụng hệ thống máy phay CNC thực tế ảo 48
Trang 3KẾT LUẬN 50 TÀI LIỆU THAM KHẢO 51
Trang 4DANH MỤC HÌNH ẢNH
Hình 1: Các đặc điểm của VR 12
Hình 2: Các thành phần của hệ thống VR Phần mềm 14
Hình 4: 3D Mouse và SpaceBall 16
Hình 5: Mouse 17
Hình 6: Shutterglasses Head-Mounted Displays Cave 17
Hình 7: Cave 18
Hình 8: CyberTouch 19
Hình 9: CyberGrasp 19
Hình 10: Chương trình Snow World 41
Hình 11: Minh họa 42
Hình 12 :Nạn nhân rối loạn được chữa trị 43
Hình 13: Bệnh nhân điều trị tâm thần phân liệt 44
Hình 14: Bệnh nhân phục hồi chức năng 45
Hình 15: Học sinh học trên zSpace 46
Hình 16: Ứng dụng ITCraft: Pop Up 47
Hình 17: Ứng dụng Arloon 48
Hình 18: Màn hình mô phỏng VR-CNC sau khi tổ hợp hoàn tất 49
Trang 5LỜI CẢM ƠN Đầu tiên, tôi xin gửi lời cảm ơn chân thành đến cô Nguyễn Nương Quỳnh hướng dẫn tận tình cho tôi những kiến thức lý thuyết, cũng như các kỹ năng trong lập trình, cách giải quyết vấn đề, đặt câu hỏi … Cô luôn là người truyền động lực trong tôi, giúp tôi hoàn thành tốt giai đoạn hoàn thành luận án tốt nghiệp.Với sự chỉ bảo của cô, tôi đã có những định hướng tốt trong công việc triển khai và thực hiện các yêu cầu trong quá trình làm luận án tốt nghiệp
Tôi xin chân thành biết ơn sự tận tình dạy dỗ của tất cả các quý thầy cô Khoa Kỹ thuật – Công nghệ thông tin, Trường Đại học Quảng Bình
Bài báo cáo này có thể không tránh khỏi những sai sót, tôi rất mong được nhận những ý kiến đóng góp quý báu của quý thầy cô và các bạn học cùng lớp
để kiến thức về lĩnh vực này của tôi được hoàn thiện hơn
Đồng Hới, ngày 7 tháng 1 năm 2019 Sinh viên Nguyễn Tư Chung
Trang 6LỜI MỞ ĐẦU
Hiện nay, công nghệ thông tin được xem là một ngành mũi nhọn của các quốc gia, đặc biệt là các quốc gia đang phát triển, tiến hành công nghiệp hoá và hiện đại hoá như nước ta Sự bùng nổ thông tin và sự phát triển mạnh mẽ của công nghệ kỹ thuật số, yêu cầu muốn phát triển thì phải tin học hoá vào tất cả các ngành lĩnh vực
Công nghệ thực tế ảo đã trở thành một xu hướng bùng nổ mạnh mẽ trong thời gian gần đây và được coi là tương lai của công nghệ hiện đại Thông qua công nghệ này con người có thể tương tác với thế giới ảo một cách chân thực nhất và xu hướng này hiện đang phát triển mạnh mẽ tại nhiều nước trên thế giới
Sự bùng nổ của công nghệ hàng đầu này đã đem đến cho người sử dụng những trải nghiệm tuyệt vời Việt Nam cũng không hề chậm chân trong việc triển khai công nghệ này cũng như ứng dụng công nghệ này vào trong các lĩnh vực của đời sống
Chính vì vậy mà tôi đã chọn đề tài tốt nghiệp: “Tìm hiểu công nghệ thực tế ảo”
Khóa luận này gồm có phần mở đầu, kết luận và nội dung:
Chương 1: Giới thiệu về Công nghệ thực tế ảo
Chương 2: Ngôn ngữ VRML
Chương 3: Ứng dụng của thực tế ảo
Trang 7DANH MỤC VIẾT TẮT
VRML Virtual Reality Modeling
Trang 8TỔNG QUAN ĐỀ TÀI
1 Lý do chọn đề tài
Thực tế ảo (Virtual Reality) là một thuật ngữ mới xuất hiện khoảng đầu thập kỷ 90, nhưng ở Mỹ và châu Âu thực tế ảo đã và đang trở thành một công nghệ mũi nhọn nhờ khả năng ứng dụng rộng rãi trong mọi lĩnh vực (nghiên cứu
và công nghiệp, giáo dục và đào tạo, thương mại và giải trí, ) và tiềm năng kinh
tế, cũng như tính lưỡng dụng (trong dân dụng và quân sự) của nó
Tại Việt Nam, tuy là một lĩnh vực mới nhưng đã có những công trình rất hữu ích như: tái hiện lại con Sao La hay một Văn Miếu Quốc Tử Giám ảo mà ta
có thể đi lại quan sát trong đó
Chính vì tầm quan trọng cũng như khả năng ứng dụng to lớn đó nên việc nghiên cứu về thực tại ảo là vô cùng cần thiết Và trên cơ sở đó có thể xây dựng một ứng dụng thực tại ảo hoàn chỉnh Công nghệ thực tế ảo đã trở một xu hướng bùng nổ mạnh mẽ trong thời gian gần đây và được coi là tương lai của công nghệ hiện đại Thông qua công nghệ này con người có thể tương tác với thế giới
ảo một cách chân thực nhất và xu hướng này hiện đang phát triển mạnh mẽ tại nhiều nước trên thế giới Sự bùng nổ của công nghệ hàng đầu này đã đem đến cho người sử dụng những trải nghiệm cực tuyệt vời
2 Mục tiêu nghiên cứu
Mục tiêu chung: Tìm hiểu Công nghệ thực tế ảo (Virtual Reality)
Mục tiêu cụ thể: Tìm hiểu Tổng quan thực tế ảo, Ngôn ngữ VRML và một
số ứng dụng của Công nghệ thực tế ảo
3 Đối tượng nghiên cứu
- Thực tế ảo - VR
- Ngôn ngữ VRML
- Ứng dụng của thực tế ảo
4 Phương pháp nghiên cứu
Khi triển khai nghiên cứu tôi sử dụng phương pháp chính phân tích và tổng hợp lý thuyết Tôi tập trung nghiên cứu định nghĩa về khái niệm, thành
Trang 9phần, đặc điểm của Công nghệ VR; nghiên cứu Ngôn ngữ VRML và tìm hiểu một số ứng dụng của thực tế ảo trong một số lĩnh vực như Y tế, Giáo dục
5 Bố cục đề tài
Chương 1: Giới thiệu về Công nghệ thực tế ảo
Chương này giới thiệu về định nghĩa khái niệm, một số thiết bị Công nghệ
VR
Chương 2: Ngôn ngữ VRML
Chương này trình bày và tìm hiểu về Ngôn ngữ VRML
Chương 3: Ứng dụng của Công nghệ thực tế ảo
Chương này là 1 vài ứng dụng VR vào thực tế
Trang 10CHƯƠNG I GIỚI THIỆU VỀ CÔNG NGHỆ THỰC TẾ ẢO
1 Giới thiệu thực tế ảo
Thực tế ảo hay còn gọi là thực tại ảo (tiếng Anh là virtual reality, viết tắt
là VR) là thuật ngữ miêu tả một môi trường mô phỏng bằng máy tính Đa phần
các môi trường thực tại ảo chủ yếu là hình ảnh hiển thị trên màn hình máy tính hay thông qua kính nhìn ba chiều, tuy nhiên một vài mô phỏng cũng có thêm các loại giác quan khác khác như âm thanh hay xúc giác
1.1 Khái niệm Thực tế ảo
Thực tế ảo (Virtual Reality) là các môi trường giả lập với hình ảnh do con người chủ động thiết kế qua các ứng dụng phần mềm chuyên dụng, được hiển thị trên màn hình máy tính hoặc thông qua kính thực tại ảo nhằm đem lại những trải nghiệm thực tế nhất cho người xem Thế giới ảo này không tĩnh tại, mà phản ứng, thay đổi theo ý muốn của người sử dụng Điều này xác định một đặc tính chính của thực tế ảo, đó là tương tác thời gian thực, tức là máy tính có khả năng nhận biết được tín hiệu vào của người sử dụng và thay đổi ngay lập tức thế giới ảo Người sử dụng nhìn thấy sự vật thay đổi trên màn hình ngay theo ý muốn của họ và bị thu hút bởi sự mô phỏng này
Nhiều năm trở lại đây, khái niệm thực tế ảo trở nên đơn giản và dễ hiểu hơn, bắt đầu được ứng dụng ở hầu khắp mọi lĩnh vực trong cuộc sống
Công nghệ thực tế ảo giúp người dùng có được những trải nghiệm mà
không phải lúc nào cũng có thể cảm nhận được ở bên ngoài đời thực Bên cạnh những trải nghiệm thú vị, thì công nghệ thực tế ảo còn được ứng dụng vào rất nhiều các lĩnh vực khác nhau của cuộc sống
Ở các nước phát triển như Mỹ, Đức, Anh … công nghệ này đang được ứng dụng vào khoa học kỹ thuật, kiến trúc, quân sự, giải trí hay du lịch và
để đáp ứng nhu các cầu về nghiên cứu, giáo dục hay là thương mại, dịch vụ
Trang 11Với đặc thù riêng, công nghệ thực tế ảo rất phù hợp để phát triển lĩnh vực giải trí, việc du lịch qua màn ảnh nhỏ sẽ không còn nhàm chán thông qua màn hình máy tính hoặc tivi Thay vào đó, chỉ cần đội lên đầu chiếc kính thực tế ảo, người dùng có thể nhìn tận mắt các kỳ quan thế giới hiện tại, thậm chí cả quá khứ và tương lai tùy theo nội dung
Bên cạnh đó, việc trải nghiệm phim, game 360 độ… hay đơn giản là duyệt web, mạng xã hội cũng thú vị hơn rất nhiều so với thông thường Trong lĩnh vực y khoa, công nghệ thực tế ảo với những tiến bộ rất có ích đối với công tác chữa bệnh, nghiên cứu lẫn quá trình hồi phục của bệnh nhân
Hiện nay, công nghệ thực tế ảo đang được các nhà nghiên cứu tại Đại học Louisville (Mỹ) thử nghiệm trong việc chữa trị chứng rối loạn và ám ảnh tinh thần, Đại học Stanford (Mỹ) cũng đã sử dụng công nghệ này trong môi trường thực hành phẫu thuật
Trên thế giới, cũng như ở Việt Nam công nghệ thực tế ảo đang được
áp dụng phổ biến trong lĩnh vực giáo dục Giúp phá bỏ các rào cản gặp phải về mặt kinh tế và địa lý, công nghệ thực tế ảo cho phép con người trên khắp thế giới có thể tương tác với nhau một cách dễ dàng, từ đó nâng cao trình độ và khả năng giao tiếp tiếng Anh còn bị hạn chế
Hiện đã có rất nhiều công ty, nhóm Startup xây dựng các ứng dụng công nghệ thực tế ảo để đưa vào phục vụ công tác giảng và day học Nhờ
có công nghệ thực tế ảo, mà trẻ con có thể nhìn ngắm và tương tác với những còn vật, nhưng phong cảnh ở bất cứ nơi nào trên thế giới
Đối với ngành quảng cáo truyền thông, thì đây là sự lựa chọn tuyệt vời
để thể hiện những ý tưởng đột phá Những showroom tự động cho bất động sản, brochure tự trải nghiệm cho du lịch, những cửa hàng ảo cho thương mại trực tuyến,… là những ý tưởng có thể áp dụng công nghệ thực tế
ảo cho người dùng trải nghiệm
Trang 121.2 Đặc tính cơ bản của thực tế ảo
Tương tác thời gian thực (real-time interactivity): có nghĩa là máy tính có
khả năng nhận biết được tín hiệu vào của người sử dụng và thay đổi ngay lập tức thế giới ảo Người sử dụng nhìn thấy sự vật thay đổi trên màn hình ngay theo ý muốn của họ và bị thu hút bởi sự mô phỏng này
Cảm giác đắm chìm (immersion): là một hiệu ứng tạo khả năng tập trung
sự chú ý cao nhất một cách có chọn lọc vào chính những thông tin từ người sử dụng hệ thống thực tế ảo Người sử dụng cảm thấy mình là một phần của thế giới ảo, hòa lẫn vào thế giới đó VR còn đẩy cảm giác này “thật” hơn nữa nhờ tác động lên các kênh cảm giác khác Người dùng không những nhìn thấy đối tượng đồ họa 3D, điều khiển (xoay, di chuyển ) được đối tượng mà còn sờ và cảm thấy chúng như có thật Các nhà nghiên cứu cũng đang tìm cách tạo những cảm giác khác như ngửi, nếm trong thế giới ảo
Tính tương tác: có hai khía cạnh của tính tương tác trong một thế giới ảo:
sự du hành bên trong thế giới và động lực học của môi trường Sự du hành là khả năng của người dùng để di chuyển khắp nơi một cách độc lập, cứ như là đang ở bên trong một môi trường thật Nhà phát triển phần mềm có thể thiết lập những áp đặt đối với việc truy cập vào những khu vực ảo nhất định, cho phép có được nhiều mức độ tự do khác nhau (Người sử dụng có thể bay, xuyên tường, đi
Trang 13lại khắp nơi hoặc bơi lặn…) Một khía cạnh khác của sự du hành là sự định vị điểm nhìn của người dùng Sự kiểm soát điểm nhìn là việc người sử dụng tự theo dõi chính họ từ một khoảng cách, việc quan sát cảnh tượng thông qua đôi mắt của một con người khác, hoặc di chuyển khắp trong thiết kế của một cao ốc mới như thể đang ngồi trong một chiếc ghế đẩy… Động lực học của môi trường
là những quy tắc về cách thức mà người, vật và mọi thứ tương tác với nhau trong một trật tự để trao đổi năng lượng hoặc thông tin
2 Lịch sử phát triển
VR không phải là một phát minh mới, mà ngay từ năm 1962 Morton Heilig (Mỹ) đã phát minh ra thiết bị mô phỏng SENSORAMA Tuy nhiên cũng như nhiều ngành công nghệ khác, VR chỉ thực sự được phát triển ứng dụng rộng rãi trong những năm gần đây nhờ vào sự phát triển của tin học (phần mềm) và máy tính (phần cứng) Ngày nay VR đã trở thành một ngành công nghiệp và thị trường VR tăng trưởng hàng năm khoảng 21% và dự tính đạt khoảng 3,4 tỷ $ năm 2005 (theo Machover, 2004)
Những kỹ sư của Công ty Philco là những người đầu tiên phát triển HMD vào 1961, gọi là Headsight Cái mũ sắt bao gồm một màn ảnh và hệ thống theo dõi video đã những kỹ sư liên kết tới một hệ thống camera mạch đóng Họ dự định sử dụng HMD trong các tình huống nguy hiểm - một người có thể quan sát một môi trường thực sự từ xa, điều chỉnh góc quay camera bằng cách quay đầu Bell Laboratories đã sử dụng HMD cho những phi công lai máy bay trực thăng
Họ liên kết HMD với những camera hồng ngoại gắn bên ngoài máy bay giúp phi công có thể nhìn rõ ngay cả trong môi trường thiếu ánh sáng
Vào 1965, một nhà khoa học máy tính có tên Ivan Sutherland hình dung điều mà ông ta gọi là "Ultimate Display" Sử dụng hiển thị này, một người có thể thấy một thế giới ảo hiện ra như thế giới vật lý thật Điều này đã định hướng toàn bộ tầm nhìn về VR
Khái niệm của Suntherland bao gồm :
Một thế giới ảo mà ta có thể quan sát thông qua một HMD
Một máy tính để duy trì các mô hình trong thời gian thực
Trang 14 Các khả năng cho người sử dụng để thao tác những đối tượng thực tế một cách trực quan nhất.
Theo dự đoán của Gartner (tổ chức nghiên cứu thị trường toàn cầu), VR đứng đầu danh sách 10 công nghệ chiến lược năm 2009 Tại Mỹ và châu Âu thực tế ảo (VR) đã và đang trở thành một công nghệ mũi nhọn nhờ khả năng ứng dụng rộng rãi trong mọi lĩnh vực (nghiên cứu và công nghiệp, giáo dục và đào tạo, du lịch, dịch vụ bất động sản, thương mại và giải trí, ) và tiềm năng kinh tế, cũng như tính lưỡng dụng (trong dân dụng và quân sự) của nó
3 Các thành phần một hệ thống VR
Một hệ thống VR tổng quát bao gồm 5 thành phần: phần mềm (SW), phần cứng (HW), mạng liên kết, người dùng và các ứng dụng Trong đó 3 thành phần chính và quan trọng nhất là phần mềm (SW), phần cứng (HW) và các ứng dụng
Hình 2: Các thành phần của hệ thống VR Phần mềm
Phần mềm
Phần mềm luôn là linh hồn của VR cũng như đối với bất cứ một hệ thống máy tính hiện đại nào Về mặt nguyên tắc có thể dùng bất cứ ngôn ngữ lập trình hay phần mềm đồ họa nào để mô hình hóa (modelling) và mô phỏng
Trang 15(simulation) các đối tượng của VR Ví dụ như các ngôn ngữ (có thể tìm miễn phí) OpenGL, C++, Java3D, VRML, X3D, hay các phần mềm thương mại như WorldToolKit, PeopleShop, Phần mềm của bất kỳ VR nào cũng phải bảo đảm
2 công dụng chính: Tạo hình vào Mô phỏng Các đối tượng của VR được mô hình hóa nhờ chính phần mềm này hay chuyển sang từ các mô hình 3D (thiết kế nhờ các phần mềm CAD khác như AutoCAD, 3D Studio, ) Sau đó phần mềm
VR phải có khả năng mô phỏng động học, động lực học, và mô phỏng ứng xử của đối tượng
Phần cứng
Phần cứng của một hệ thống VT bao gồm: Máy tính (PC hay Workstation với cấu hình đồ họa mạnh), các thiết bị đầu vào (Input devices) và các thiết bị đầu ra (Output devices)
- Các thiết bị đầu vào (Input devices): Chúng bao gồm những thiết bị đầu ra
có khả năng kích thích các giác quan để tạo nên cảm giác về sự hiện hữu trong thế giới ảo Chẳng hạn như màn hình đội đầu HMD, chuột, các tai nghe âm thanh nổi - và những thiết bị đầu vào có khả năng ghi nhận nơi người sử dụng đang nhìn vào hoặc hướng đang chỉ tới, như thiết bị theo dõi gắn trên đầu (head-trackers), găng tay hữu tuyến (wire-gloves)
- Các thiết bị đầu ra (Output devices): gồm hiển thị đồ họa (như màn hình, HDM, ) để nhìn được đối tượng 3D Thiết bị âm thanh (loa) để nghe được âm thanh vòm (như Hi-Fi, Surround, ) Bộ phản hồi cảm giác (Haptic feedback như găng tay, ) để tạo xúc giác khi sờ, nắm đối tượng Bộ phản hồi xung lực (Force Feedback) để tạo lực tác động như khi đạp xe, đi đường xóc,
4 Các thiết bị cơ bản
4.1 Thiết bị định hướng và chuyển động
DataGloves
Thiết bị đo lường bàn tay phải cảm nhận được cả độ cong của các ngón tay
và vị trí, sự định hướng của cổ tay trong thời gian thực Thiết bị thương mại đầu tiên là DataGloves từ viện nghiên cứu VPL DataGloves bao gồm 1 găng tay nylon nhẹ có các cảm biến quang học được gắn ở các ngón tay
Trang 16Hình 3: DataGloves
3D Mouse and SpaceBall
Hình 4: 3D Mouse và SpaceBall
Chuột Logitech 3D dựa trên một mảng các vị trí siêu âm tham chiếu, đó là
1 cái kiềng gồm 3 loa siêu âm đặt ở 3 góc tam giác phát ra tín hiệu siêu thanh
Nó được sử dụng để theo dõi thiết bị thu, định hướng và chuyển động Nó qui định thành phần của tỷ lệ gửi ra trong tất cả 6 mức tự do: X, Y, Z, Pitch, Yaw,
và Roll
Trang 17Hình 5: Mouse
Shutter glasses
Hình 6: Shutterglasses Head-Mounted Displays Cave
CAVE là 1 nhà hát có kích thước 10 X 10 X 9 được đặt bên trong 1 Phòng lớn hơn có kích thước 35 X 25 X 13 Phòng bên ngoài phải được chiếu sáng trong suốt quá trình sử dụng CAVE Các bức tường của CAVE được tạo bởi các màn chiếu và sàn nhà cũng là một màn chiếu thẳng đứng Máy chiếu độ phân giải cao hiển thị hình ảnh lên toàn bộ nhứng màn ảnh khác bằng các tấm gương phản chiếu Người dùng sẽ đi vào bên trong CAVE và đeo 1 chiếc kính đặc biệt
Trang 18để có thể nhìn thấy những hình ảnh 3 chiều mà CAVE hiển thị Với những chiếc kính này người dùng có thể thấy các đối tượng thực sự nổi trong không khí và
có thể đi lại xung quanh chúng Điều này là hoàn toàn khả dĩ với các cảm biến điện tử Khung của CAVE được làm từ i-nox không từ tính để có thể can thiệp một cách tốt nhất vào các cảm biến điện từ Khi một người đi lại trong CAVE, chuyển động của họ được theo dõi bởi các cảm biến này và video sẽ điều chỉnh cho phù hợp Máy tính sẽ kiểm soát việc này của CAVE cũng như cả khía cạnh
âm thanh nữa Có rất nhiều loa được đặt trong CAVE dưới nhiều góc độ giúp cho không chỉ có hình ảnh 3 chiều mà có cả âm thanh 3 chiều nữa
Hình 7: Cave 4.2 Thiết bị tương tác và phản hồi
Các thiết bị này cảm nhận một số nhân tố sau của thiết bị khác gây ra: nhiệt độ, vận tốc di chuyển, sự chuyển động, áp lực và các ngoại lực khác
CyberTouch
Trang 19Hình 8: CyberTouch
CyberGrasp
Hình 9: CyberGrasp
Trang 20CHƯƠNG 2 NGÔN NGỮ VRML 2.1 Giới thiệu về VRML
2.1.1 Khái niệm ngôn ngữ VRML
VRML (Virtual Reality Modeling Language) là ngôn ngữ mô hình hóa thực tế ảo, một định dạng tập tin được sử dụng trong việc mô tả các thế giới và các đối tượng đồ họa tương tác ba chiều VRML được thiết kế dùng trong môi trường Internet, Intranet và các hệ thống máy khách cục bộ (local client) VRML còn được dự trù trở thành một chuẩn trao đổi đa năng cho đồ họa ba chiều tích hợp và truyền thông đa phương tiện VRML có thể được sử dụng trong rất nhiều lĩnh vực ứng dụng chẳng hạn như trực quan hóa các khái niệm khoa học và kỹ thuật, trình diễn đa phương tiện, giải trí và giáo dục, hỗ trợ web và chia sẻ các thế giới ảo
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ữ Interner 3D dùng để phát triển đồ họa 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 và chân thực nhất
2.1.2 Định nghĩa ngôn ngữ VRML
Ngôn ngữ 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, VRML được sử dụng để phát triển những hình ảnh 3D và quang cảnh trên Web Các file VRML có kích thức nhỏ, thường không quá 1Mb
Ngôn ngữ mô hình hóa thực tại ảo VRML là một chuẩn không chính thức
để mô tả thực tế ảo mà không phụ thuộc vào hệ điều hành thông qua Internet Chỉ với một file text bạn có thể mô tả, tương tác, điều khiển một thế giới ảo mà không bị hạn chế nhiều
Trang 21VRML cho phép truyền đi trong mạng những hình ảnh 3D Với kích thước khá nhỏ so với băng thông, phần lớn giới hạn trong khoảng 100 - 200Kb nên các file VRML được truyền đi một cách khá dễ dàng Nếu HTML là định dạng văn bản thì VRML là định dạng đối tượng 3D Hiện nay VRML có lợi thế là sự đơn giản, hỗ trợ dịch vụ web3D
2.1.3 Lịch sử phát triển của ngôn ngữ VRML
VRML đã trở thành một ngôn ngữ chuẩn cho việc mô phỏng tương tác thế giới 3D tren Web Với mục đích xây dựng định dạng chuẩn cho phép mô tả thế giới thực trên máy tính mà cho phép chạy trên môi trường web, VRML đã trở thành chuẩn ISO từ năm 1997
VRML ra đời vào mùa xuân năm 1994 ở hội nghị WWW được tổ chức đầu tiên tại Gieneva, Thụy Sĩ Tim Berners-Lee và Dave Raggett đã tổ chức ra phiên họp có tên là Birds of a Feather (BOF) để mô tả giao diện thực tế ảo trên WWW Nhiều thành viên tham dự phiên họp BOF đã mô tả nhiều dự án thực hiện việc xây dựng các công cụ hiển thị đồ họa 3D cho phép có nhiều thao tác hữu ích trên Web Những thành viên này đã nhất trí đồng ý sự cần thiết cho các công cụ này có một ngôn ngữ chung, phổ biến cho định dạng, xác định việc mô tả thế giới 3D và các siêu liên kết WWW Vì thế cụm từ “the Virtual Reality Markup Language” ra đời, từ Markup sau đó đã được đổi thành Modelling để phản ánh bản chất tự nhiên của VRML
Sau phiên họp BOF một thời gian ngắn thì tổ chức www-vrml mailing list được thành lập để tập trung vào xây dựng phiên bản VRML đầu tiên Sự hưởng ứng lời mời của tổ chức này kéo dài đến một tuần và có trên một nghìn khách mời tham dự Tại buổi họp chủ tịch Mark Pesce đã thông báo ý kiến của mình là đưa ra phiên bản phác thảo xây dựng VRML đã có sẵn ở hội nghị mùa xuân năm
1994 được tổ chức mới cách đó 5 tháng Bản phác thảo của Mark Pesce đã có được sự đồng ý chung
Vào tháng 3/1995 thì có một thảo luận trên www-vrml mailing list liên quan đến việc tạo ra những tương tác của người sử dụng với hoạt cảnh và tất cả
Trang 22mọi người đều đi đến thống nhất ý kiến những thứ mới đưa ra đó thực sự cần thiết cho VRML Công ty Silicon Graphics cộng tác với hãng Sony Research và Mitra để đưa ra phiên bản mới cho VRML Bản đệ trình của Silicon Graphics có tên là Moving Worlds đến tổ chức Request for Proposals cho việc xây dựng phiên bản mới VRML, bản đệ trình này là một minh chứng cho sự cộng tác thành công của tất cả các thành viên của Silicon Graphics, Sony và Mitra Năm
1996 tại New Orleans, phiên bản đầu tiên của VRML 2.0 được đưa ra
Vào tháng 7/1996 tổ chức tiều chuẩn quốc tế (ISO) đã thông nhất ý kiến phiên bản năm 1996 của VRML 2.0 như là một đề xuất mà sẽ được đưa ra xem xet vào tháng 4/1997 Sau khi bỏ phiếu về chuẩn ISO thì VRML97 được đưa ra như một chuẩn ISO vào năm 1997
Trang 232.2.2 Công cụ hiển thị VRML
Để hiển thị các file VRML thì ta sử dụng chương trình Cortona VRML Client của hãng Parallrl Graphics Chương trình sẽ giúp bạn thuận tiện hơn khi xem cắc mô hình ảo trên máy tính một cách trực quan sinh động
Yêu cầu trước khi cài đặt Cortona VRML Client:
- Hệ điều hành Microsoft® Windows® XP/7/8/8.1/10
- Trình duyệt Web Internet Explorer 8.0 trở lên, Netscape Navigator 8.0 trở lên, Mozilla Firefox 1.5 trở lên, Opera 8.5 trở lên
- CPU Intel Pentium 4 hoặc AMD Athlon 64
- RAM tối thiểu 4Gb
- Độ phân giải màn hình tối thiểu 1024x768
- Card đồ họa hỗ trợ 3D và cài đặt DirectX 12
Cortona VRML Client tương thích với hầu hết các trình duyệt như Internet Explorer, Netscape Browser, Mozilla, Mozilla Firefox và các công cụ văn phòng như Word, PowerPoint
Tính năng của Cortona VRML ClientCortona VRML Client sẽ trình diễn toàn bộ mô hình 3D trên máy tính một cách hoàn hảo như khi người tạo ra đó ứng dụng hoàn chỉnh trên toàn bộ hiệu ứng trên nhiều hệ thống như Flash, DirectX9, MPEG4 Khi bạn truy xuất vào một ứng dụng VRML, toàn bộ hình
Trang 24mô phỏng sẽ được trình diễn tương tác trên nền 3D dạng mở Rất ấn tượng và bắt mắt
2.2.3 Tập tin của VRML
Tập tin của VRML có thể tạo ra từ nhiều cách: dùng một trình soạn thảo văn bản như Nopepad để soạn thảo, sau đó lưu file với phần mở rộng là wrl Hoặc ta có thể soạn thảo trên một trình soạn thảo dành riêng cho VRML như VRML Pad và chạy trực tiếp ứng dụng
Một file VRML gồm có các phần như: header, scene graph, prototype và event routing
Header: dùng để nhận dạng tập tin VRML và cách mã hóa Header của file VRML bắt đầu bằng dấu # Ngoài lần xuất hiện đầu tiên ra thì dấu # đánh dấu những gì theo sau nó là phần chú thích File tiêu đề của VRML có dạng:
#VRML V1.0 ascii dành riêng cho phiên bản VRML 1.0 và #VRML V2.0 utf-8 dành cho phiên bản 2.0.
Scene Graph: chứa những node mô tả các đối tượng và các thuộc tính
đi kèm Nó gần như một cây phả hệ gồm các nhóm đối tượng.
Prototype: cho phép một tập các nút kiểu VRML được mở rộng bởi người sử dụng Các định danh kiểu này có thể được bao hàm trong file (mà chúng được sử dụng) hay định nghĩa ở bên ngoài (file đó).
Event routing: một số nút có thể phát sinh những sự kiện đáp trả những thay đổi môi trường do tương tác phía người dùng “Event routing” cho phép một sự kiện phát sinh được truyền đến các “đích”- những nút trong hệ thống, từ
đó gây ra những thay đổi cho riêng nút đó và hệ thống.
2.3 Tìm hiểu chi tiết về VRML
2.3.1 Các nút trong VRML
Nút đầu tiên thường là nút WORLDINFO chứa thông tin đặc tả về file vrml sau đó là các loại nút khác để xây dựng nên file vrml
Trang 25Nút này chứa thông tin chung về thế giới ( the world) như tiêu đề của thế giới, được hiển thị trong thanh tiêu đề của cử sổ browser tương tự như cờ TITLE trong HTML WorldInfo cũng có thể chứa một chuỗi thông tin, chứa các thông tin khác về file Bạn có thể đặt vào các từ khoá cho các search engine Một nút WorldInfo mẫu được chỉ ra ở dưới đây:
WorldInfo {
title "Floppy's VRML97 Tutorial Example 1"
info ["(C) Copyright 1999 Vapour Technology"
có thể hình dung cỏc nỳt như các lớp trong lập trình hướng đối tượng VRML không cho bạn định nghĩa thêm các nút mới của mình mà chỉ được dùng các nút
cơ bản của nó Một hình dạng hình học bất kỳ cú thể được xây dựng qua nút Shape Cấu trúc của nút này có dạng như sau:
Shape{
appearance Appearance{
material Material{
diffuColor 1 0 0 Shininess 0
textture ImageTextTure{}
Trang 26Chúng ta điểm qua một số nút cơ bản:
Các nút appearrance
Khi chúng ta nhìn thấy đối tượng FBOX chúng ta đã định nghĩa trước đây, nút Shape có một trường gọi là appearance, nó sử dụng để chứa trường Appearance được chỉ ra dưới đây:
DEF FBOX Shape { appearance Appearance { material Material {
} } geometry Box { }
}
Ví dụ này có một trường bên trong nút Appearance, trường material Theo cách này có các nút bên trong các nút dường như là khó khăn, nhưng cho phép bạn định nghĩa các hình dạng do sử dụng DEF và USE Điều này là hiệu quả trong việc có nhiều đối tượng theo cùng một cách quan sát Nút Appearance có thể chứa trường material và texture trường material chứa nút Material Nút texture chứa một trong số các loại nút kết cấu Những điều này được mô tả trong phần sau, trước tiên chúng ta giải quytết các nút Material
Các nút Material
Nút Material: có thể chứa 6 trường, đó là: