Trong bài này tôi sẽ nói về phần rất quan trọng về thế giới 3D. Như bạn đã biết thế giới này nằm sau thiết bị cầm tay của chúng ta. Và tạo lại những gì phức tạp và đẹp nhất của mắt con người. Để thực hiện được điều này chúng ta sử dụng camera, nó trong thế giới thực mô phỏng của mắt người. Để sử dụng điều này chúng ta sử dụng các phương trình toán học.
Trong bài này tôi sẽ đưa điều thú vị
về camera, và phương trình toán học đằng sau nó. Sự khác nhau giữa thấu kính
(lens) lồi (convex) và lõm (concave). Sự chiếu là gì (projection), các ma trận,
quaternion (bộ 4) và cuối cùng là ma trận nổi tiếng Model View Projection.
- Tổng quan
Đầu tiên chúng ta xem cơ bản về camera, nó làm việc
như thế nào trong thế giới thực, ống kính khác nhau, như thế nào để zoom, dịch
chuyển, quay, và các nội dung tương tự khác. Ngay sau khi củng cố các khái niệm
này chúng ta hãy đi sâu OpenGL và hiểu làm thế nào tất cả điều đó có thể phù
hợp trong ứng dụng của chúng ta. Và cuối cùng chúng ta đi tới viết mã nguồn và
làm thế nào để chúng làm việc.
Từ opengl1x, opengl2x camara là 1 điều mà chúng ta
muốn biết, với ứng xử của shader (GLSL) chúng ta có thể có được sự điều khiển kinh ngạc
trên hệ thống. Với việc điều khiển camera trong opengl chúng ta có 2 hoặc 3 kiểu
camera, Nhưng khi chúng ta lập trình bản thân chúng ta có thể khởi tạo
bất kỳ kiểu camera nào. Trong bài này tôi sẽ nói về cơ bản của camera.
Orthogonal và perspective camera
- CAMERA TRONG THẾ GỚI 3D
Mắt của con người là thấu kính lồi, nó hội tụ các
hình ảnh để tạo thành hình ảnh lộn ngược trên võng mạc. Thông thường, ống kính
máy ảnh được hình thành bởi các ống kính nhiều thấu kính lồi và lõm, nhưng hình
ảnh cuối cùng trông giống như một thấu kính lồi, giống như mắt của con người.
Hình ảnh cuối cùng phụ thuộc vào nhiều yếu tố, không
chỉ có loại của ống kính, trong thế giới tổng quát, hình ảnh dưới đây cho
thấy làm thế nào một bức tranh trông giống như thật đằng sau mỗi loại ống kính.
(Hai loại ống kính khác nhau)
Cả hai loại này có thể tạo ra một hình ảnh bằng một
bản gốc, có nghĩa là, với một góc rất nhỏ của sự biến dạng, tùy thuộc vào
khoảng cách của các đối tượng từ các ống kính và góc nhìn. Những hình ảnh tiếp
theo sẽ hiển thị các thuộc tính quan trọng nhất của một máy ảnh.
Camera
attributes
Các khu vực màu đỏ trong hình trên là không thể nhìn
thấy từ máy ảnh, do đó, bất cứ đoạn nào trong vùng này sẽ bị cắt bớt. "The
depth of field" là khu vực có thể nhìn thấy, tất cả các fragments bên
trong nó sẽ được hiển thị. Thông thường từ " The depth of field "
cũng được sử dụng để mô tả một hiệu ứng đặc biệt, hiệu ứng của Lens Blur. Như
đôi mắt của con người có TIÊU CỰ đối tượng bên ngoài xa tâm có vẻ mờ hơn, hiệu
ứng Lens Blur mô phỏng tập trung, làm cho các đối tượng bên ngoài tập trung có
vẻ mờ. Vì vậy, lý do tại sao tôi không đặt thuộc tính “Focus” vào hình ảnh
trên? Bởi vì focus là một tính năng đặc biệt chỉ trong một số máy ảnh, máy ảnh
cơ bản trong 3D không cài đặt khả năng focus. Các thuộc tính quan trọng khác là
" Angle of View " (Góc nhìn), Miêu tả cho góc
ngang có thể nhìn thấy máy ảnh. Bất cứ fragments bên ngoài góc độ này sẽ không
được hiển thị cho máy ảnh. Thỉnh thoảng " Angle of View "
cũng được sử dụng để miêu tả khu vực dọc, nhưng thông thường chúng ta thích để
xác định tỉ lệ của hình ảnh cuối cùng bằng cách sử dụng chiều rộng và chiều
cao.
Các máy ảnh hiện đại là rất chính xác và có thể tạo
ra các hiệu ứng tuyệt vời bằng cách sử dụng các thuộc tính và kết hợp các loại
ống kính. Bây giờ chúng ta hãy trở lại với thế giới ảo của chúng ta và làm thế
nào chúng ta có thể chuyển thành những thuộc tính và hành vi của toán học. Tuy
nhiên, trước khi di chuyển đến các máy quay phim 3D, chúng ta cần hiểu rõ hơn
một chút về toán học trong thế giới 3D.
bài viết rất hữu ích
Trả lờiXóa