Thực tại ảo (VR Virtual Reality) là công nghệ sử dụng các kỹ thuật mô hình hóa không gian, cùng với sự hỗ trợ của các thiết bị đa phương tiện để xây dựng một thế giới mô phỏng (môi trường ảo) bằng máy tính nhằm đưa người sử dụng vào một thế giới nhân tạo với không gian như thật. Người sử dụng sẽ không như người quan sát bên ngoài, mà trở thành một phần của hệ thống. Thế giới “nhân tạo” này không tĩnh tại, mà lại phản ứng, thay đổi theo ý muốn của người sử dụng nhờ hành động, lời nói,... Người sử dụng có thể nhìn thấy sự vật thay đổi trên màn hình theo ý muốn của họ và cảm nhận bằng các giác quan bởi sự mô phỏng này. Trong thực tế, người dùng không những nhìn thấy đối tượng đồ họa 3D nổi, điều khiển được đối tượng như quay, di chuyển,… trên màn hình, mà còn sờ và cảm thấy chúng như có thật. Ngoài khả năng nhìn (thị giác), nghe (thính giác), sờ (xúc giác), thực tại ảo còn có khả năng tạo các cảm giác khác như ngửi (khứu giác), nếm (vị giác), tuy nhiên hiện nay các cảm giác này ít được sử dụng đến. Hiện nay có khá nhiều khái niệm về thực tại ảo, một trong các định nghĩa được chấp nhận rộng rãi là của C. Burdea và P. Coiffet: “Thực tại ảo là một hệ thống giao diện cấp cao giữa người sử dụng và máy tính. Hệ thống này mô phỏng các sự vật và hiện tượng theo thời gian thực và tương tác với người sử dụng qua tổng hợp các kênh cảm giác. Đó là ngũ giác gồm: thị giác, thính giác, xúc giác, khứu giác, vị giác”.
Trang 14.2.4 Plane sensor
Cú pháp
PlaneSensor {
autoOffset TRUE
enabled TRUE
maxPosition -1 -1 # (- ∞, ∞)
minPosition 0 0 # (- ∞, ∞)
offset 0 0 0 # (- ∞, ∞)
eventOut SFBool isActive
eventOut SFVec3f trackPoint_changed
eventOut SFVec3f translation_changed
}
Ánh xạ chuyển động thiết bị trỏ vào mặt phẳng hai chiều song song với mặt phẳng Z=0 của hệ tọa độ địa phương
Cho phép người dùng thay đổi vị trí đối tượng
Sau khi kích hoạt thiết bị trỏ (nút chuột được nhấn xuống) đối tượng hình học cảm biến, sự
kiện isActive TRUE được gửi đi Chuyển động con trỏ được ánh xạ để dịch chuyển tương đối
trong mặt phẳng song song với mặt địa phương Z=0 của cảm biến và trùng với điểm ban đầu của chỗ giao nhau
Thuộc tính
enabled: Cho phép/vô hiệu hóa nút CylinderSensor
offset: Xác định vị trí ban đầu của vật thể Nếu giá trị là (0, 0, 0) vật thể sẽ di chuyển từ
vị trí ban đầu của nó
autoOffset
Với giá trị là TRUE thì vị trí ban đầu của lần di chuyển vật thứ hai sẽ bằng với vị trí kết thúc của lần di chuyển thứ nhất
Với giá trị là FALSE thì vật thể sẽ trở lại vị trí ban đầu sau khi di chuyển
maxPosition và minPosition
Xác định X, Y lớn nhất và nhỏ nhất
Được thiết lập để kiểm soát miền giá trị sự kiện traslation_changed
Trang 2Sự kiện
isActive: Gửi giá trị TRUE / FALSE khi chuột được nhấn / nhả
translation_changed:
Gửi trả vectơ 3D định hướng của vật thể sau khi di chuyển
Mỗi lần di chuyển tiếp theo, đầu ra tương ứng với tổng các dịch chuyển từ điểm giao
đầu tiên đến điểm giao mới cộng với giá trị offset
trackPoint_changed
Gửi tâm hệ tọa độ mới của vật thể sau khi dịch chuyển so với hệ tọa độ gốc
Sự dịch chuyển được định nghĩa bởi mặt phẳng Z=0 của hệ tọa tọa cảm biến
Nếu thiết bị trỏ được kéo ra ngoài mặt phẳng Z=0 trong khi kích hoạt (ví dụ, trên đường nằm ngang), trình duyệt có thể giải quyết theo các cách khác nhau(ví dụ, kiểm soát tất
cả các đường ngang)