Bài giảng Đồ họa hiện thực ảo: Bài 5 - Lê Tấn Hùng

8 55 0
Bài giảng Đồ họa hiện thực ảo: Bài 5 - Lê Tấn Hùng

Đang tải... (xem toàn văn)

Thông tin tài liệu

Bài giảng Đồ họa hiện thực ảo - Bài 5: Nguyên lý 3D và phép chiếu - Projection cung cấp cho người học các kiến thức: Nguyên lý về 3D, đặc điểm của kỹ thuật đồ họa 3D, phép chiếu song song, phép biến đổi bối cảnh,... Mời các bạn cùng tham khảo nội dung chi tiết.

Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 Bài Nguyên lý 3D Phép chiếu-Projection Nguyên lý 3D „ „ Lê Tấn Hùng 0913030731 hunglt@it-hut.edu.vn (c) SE/FIT/HUT 2002 „ Ðồ họa chiều - 3D computer graphics bao gồm việc bổ xung kích thước chiều sâu đối tượng, cho phép ta biểu diễn chúng giới thực cách xác sinh động Tuy nhiên thiết bị truy xuất chiều, Do việc biểu diễn thực thi thông qua phép tô chát – render để gây ảo giác illusion độ sâu 3D Graphics việc chyển giới tự nhiên dạng mơ hình biểu diễn thiết bị hiển thị thông qua kỹ thuật tô chát (rendering) (c) SE/FIT/HUT 2002 Ðặc điểm kỹ thuật đồ hoạ 3D Các phương pháp hiển thị 3D Có đối tượng phức tapj đối tượng không gian 2D „ „ „ „ „ „ „ „ „ Các phép biến đổi hình học phức tạp Các phép biến đổi hệ toạ độ phức tạp Thường xuyên phải bổ xung thêm phép chiếu từ không gian 3D vào không gian 2D Luôn phải xác định bề mặt hiển thị (c) SE/FIT/HUT 2002 Perspective and Depth of Field Với thiết bị hiển thị 2D: „ Bao mặt phẳng hay bề mặt Có thành phần „ „ „ „ 3D viewing positions Kỹ thuật chiếu - projection: orthographic/perspective Kỹ thuật đánh dấu độ sâu - depth cueing Nét khuất - visible line/surface identification Tô chát bề mặt-surface rendering Cắt lát - exploded/cutaway scenes, cross-sections Thiết bị hiển thị 3D: „ „ Kính stereo - Stereoscopic displays* Màn hình 3D - Holograms (c) SE/FIT/HUT 2002 Exploded/cutaway scenes 3D GRAPHICS WORLD PIPELINE SCENE/OBJECT Shadows as depth cues Modelling coordinates: - world coordinate system, - object coordinate system 3D MODELLING VIEWING 3D CLIPPING Camera coordinates PROJECTION Screen/Window coordinates RASTERIZATION Device coordinates Different views of a 3D model (c) SE/FIT/HUT 2002 CuuDuongThanCong.com 2D PIXELMAP DISPLAY (c) SE/FIT/HUT 2002 https://fb.com/tailieudientucntt Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 3D - Modelling Clipping 3D x +y +z =r 2 2 view frustrum Polygonal 3D Modelling Implicit x = sin 4θ y = cos 2θ outside view so must be clipped Particles Parametric (c) SE/FIT/HUT 2002 Viewing and Projection (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 10 Rasterization 3d models camera setup viewport (c) SE/FIT/HUT 2002 Các bước xây dựng hình chiếu Phép chiếu täa ®é thùc 3D Định nghĩa phép chiu tọa độ theo vùng cắt Cắt theo view volum Định nghĩa hình chiếu Ảnh đối tượng mặt phẳng chiếu hình thành từ phép chiếu đường thẳng gọi tia chiếu (projector) xuất phát từ điểm gọi tâm chiếu (center of projection) qua điểm đối tượng giao với mặt chiếu (projection plan) (c) SE/FIT/HUT 2002 CuuDuongThanCong.com 11 khung nh×n Phép chiếu mặt phẳng chiếu tọa độ thiết bị Phép biến đổi vào cổng nhìn tọa độ thiết bÞ „ đối tượng khơng gian 3D với tọa độ thực cắt theo không gian „ view volume chiếu lên mặt phẳng chiếu Diện tích chốn view volume xác định gọi view volume mặt phẳng chiếu cho khung nhìn „ việc ánh xạ khung nhìn vào cổng nhìn cho trước hình để hiển thị hình ảnh (c) SE/FIT/HUT 2002 https://fb.com/tailieudientucntt 12 Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 Phép chiếu song song Parallel Projections ƒ Phép chiếu song song - Parallel Projections ƒ Phân loại phép chiếu song song dựa hướng tia chiếu Direction Of Projection mặt phẳng chiếu projection plane Phép chiếu trực giao (Orthographic projection) ƒ ƒ Ứng với mặt phẳng chiếu ta có ma trận chiếu tương ứng 1 0 [T y ] =  0  0 0 0 0 0 0 0 [T ] =  0 x 0   0 1 0 0 0 1 0 0 [T z ] =  0 0   0 1 0 13 (c) SE/FIT/HUT 2002 Phép chiếu trục lượng (Axonometric) 0 0 0 0 0  0 1 (c) SE/FIT/HUT 2002 14 (c) SE/FIT/HUT 2002 16 Trimetric „ Phép chiếu trục lượng „ Phép chiếu Trimetric „ sở tỉ lệ co - SF ảnh đối tượng trục khác SF- tỉ lệ co theo trục là: f x = x' 2x + y' 2x  xx'  ' x [T ] =  y'  xz   1 0 1 [U ] = 0 1 0 1 y x' y 'y y z' (c) SE/FIT/HUT 2002 1  1 1  1 f y = x' 2y + y' 2y f z = x' 2z + y' 2z 15 Phép chiếu Dimetric [T ] = [ Ry ][ Rx ][ Pz ] cos φ  =  sin φ   0 − sin φ 0 1   0 0 cos ϕ cos φ 0 0 − sin ϕ   0 1 0 cos φ  [T ] =   sin φ   sin φ sin ϕ cos ϕ − cos φ sin ϕ Là phép chiếu Trimetric với hệ số tỉ lệ co nhau, giá trị thứ lại tuỳ ý 0 1   sin ϕ 0 0 cos ϕ 0 0   1 0 0 0  0 0 0  0 1 f z2 = (xz'2 + yz'2 ) = sin2 φ + cos2 φ sin2 ϕ f y2 = ( x 'y2 + y 'y2 ) = cos ϕ φ = sin −1 ( ± 0 0 0  1 ϕ = sin −1 (± fz − f z2 fz ) ) (c) SE/FIT/HUT 2002 CuuDuongThanCong.com 17 (c) SE/FIT/HUT 2002 https://fb.com/tailieudientucntt 18 Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 Phép chiếu Isometric sin φ = − sin ϕ − sin ϕ sin ϕ − sin ϕ sin2 ϕ 1/ sin2 φ = = = 1/ − sin2 ϕ − 1/ sin ϕ = ± sin φ = ϕ = ±35.260 φ = ±450 f = cos ϕ = / = 0.8165 19 (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Parallel Projections 20 Phép chiếu xiên - Oblique „ „ Phép chiếu Cavalier Phép chiếu Cabinet orthographic oblique axonometric isometric (c) SE/FIT/HUT 2002 21 (c) SE/FIT/HUT 2002 22 (c) SE/FIT/HUT 2002 24 Phép chiếu Cavalier „   [T ' ' ] =  − a − b   0 0 0 0  0  1 a = f cosα b = f sin α   [T ] =  − f cos α   (c) SE/FIT/HUT 2002 CuuDuongThanCong.com „ − f sin α 0 0 0 0  1 23 „ f = 0, β = 900 phép chiếu trở thành phép chiếu trực giao Còn với f = kích thước hình chiếu kích thước đối tượng => cavalier Phép chiếu Cavalier cho phép giá trị α biến đổi cách tự α = 300 450 https://fb.com/tailieudientucntt Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 Phép chiếu Cabinet „ Oblique Projections Phép chiếu xiên với hệ số co tỉ lệ f = 1/2 f β = cos −1 ( = cos −1 ( + f 2 ) ) = 63.435 + (1 ) 2 D/2 D D D Cavalier Project Cabinet Projection (c) SE/FIT/HUT 2002 25 (c) SE/FIT/HUT 2002 Phép chiếu phối cảnh Perspective Projection Vanishing points „ Phép chiếu phối cảnh „ Các đoạn thẳng song song mơ hình 3D sau phép chiếu hội tụ điểm gọi điểm triệt tiêu - vanishing point „ „ Phân loại phép chiếu phối cảnh dựa vào tâm chiếu - Centre Of Projection (COP) mặt phẳng chiếu projection plane „ „ Each set of parallel lines (=direction) meets at a different point: The vanishing point for this direction Sets of parallel lines on the same plane lead to collinear vanishing points: the horizon for that plane Easy examples „ „ „ (c) SE/FIT/HUT 2002 corridor higher = further away Good way to spot faked images 27 Điểm triệt tiêu Vanishing point „ 26 28 (c) SE/FIT/HUT 2002 Perspective Projections 3-point perspective điểm triệt tiêu quy tắc - principle vanishing point 1-point perspective „ „ „ The number of principal vanishing points is determined by the number of principal axes cut by the projection plane If the plane only cut the z axis (most common), there is only vanishing point 2-points sometimes used in architecture and engineering 3points seldom used … add little extra realism 2-point perspective (c) SE/FIT/HUT 2002 CuuDuongThanCong.com 29 (c) SE/FIT/HUT 2002 https://fb.com/tailieudientucntt 30 Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 Phép biến đổi phối cảnh Phép chiếu phối cảnh 1 0 [Tr ] =  0  0 „ Phép chiếu phối ca?nh điểm đối tượng lên mặt phẳng 2D thu từ phép chiếu trực giao phép biến đổi phối cảnh 31 (c) SE/FIT/HUT 2002 Consider a perspective projection with the viewpoint at the origin and a viewing direction oriented along the positive -z axis and the view-plane located at z = -d y yP y = ⇒ yP = z d zd Tham số: „ „ „ „ centre of projection (COP) field of view (θ, φ) projection direction up direction a similar construction for xp d ⇒ y yp Perspective Projection Details 0 PROJECTION matrix CuuDuongThanCong.com divide by homogenous ordinate to map back to 3D space (c) SE/FIT/HUT 2002 0  x  0  y    0  z    0   34 Giả sử mặt phẳng đặt z = tâm phép chiếu nằm trục z , cách trục z khoảng zc = -1/r Nếu đối tượng nằm mặt phẳng z = đối tượng cho hình ảnh thật Phương trình biến đổi: [ x y z ][ Tr ] = [ x y z rz+1 ] ma trận biến đổi điểm phối cảnh [ Tr ] có dạng: perspective division [ Tr Flip z to transform to a left handed co-ordinate system ⇒ increasing z values mean increasing distance from the viewer (c) SE/FIT/HUT 2002 -z 0 0 −1 1d Phép chiếu phối cảnh tâm  x   x   xP   z d    y   y  ↔ y   P =  − z  zP   z d      −d  z d  1     0  x  0  y    − 0  z    0 0    x   x  1  xP   z d     y   y   ↔  y  = 0  P =   − z  0  zP   z d       −d   z d  0 1     33 (c) SE/FIT/HUT 2002  x  1  y  0  =  − z  0      0 32 (c) SE/FIT/HUT 2002 Perspective Projections Perspective Projections „ 0 0 0 r  0 1 35   ] =     0 0 0 0 0   r    (c) SE/FIT/HUT 2002 https://fb.com/tailieudientucntt 36 Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 phép chiếu phối cảnh tâm Phép chiếu phối cảnh tâm Y’ VP (y=10) VP ≡ y = 10 y 1 0 = 0  0 0 0 1 0 0   r 0   0 1 0 1 0 [x y z 1]  0  0 0 0 1 0 0  = 0 0 0   0 1 0 0 0 0 D’ 0 0 0  0 r  0 1 H C’ H’ G’ A’, E’B’, F’ C E A’, E’B’, F’x’ F x A’ E’ A F’ B x B z 0 0  = [x y rz+1] r  1 [x' y  x  y' z' 1] =  1  rz +1 rz +1   x y ' z ' 1] =   ( px + qy + 1) y ( px + qy + 1) 1 0 = 0  0  z ( px + qy + 1)  1 0  0  0 0  1 0 0 = 0  0   0  0 0 p q  0 0  0 1 1 0 = 0  0 tâm chiếu: [ -1/p 0 ] [ -1/q ] VP (Vanishing point) tương ứng trục x y điểm: [ 1/p 0 ] [ 1/q ] „ „ „ „ y ( px + qy + rz + 1) [x „ H' G' C' E' G' „ C' „ VP ( x = 10 ) VP ( z = 10 ) z' A', E' F' (c) SE/FIT/HUT 2002 CuuDuongThanCong.com x' B' B' 0 p  0  1 1 0  0  0 1 0 z 1]  0  0 y z ( px + qy + 1)] 38 0 0 0 q  0  1 1 0  0  0 0 p q  = [x r  0 1 0 y  1   = r  0    0 0 0 0 0 p q  r  1 z ( px + qy + rz + 1)] 40 tâm chiếu: „ trục x điểm [ -1/p 0 ], „ y điểm [ -1/q ] „ z điểm [ 0 -1/r ] VP tương ứng với giá trị : „ [ 1/p 0 ], [ 1/q ] [ 0 1/r ] [ Tc ] = [ Tpqr ][ Tz ] 1 0 = 0  0 F' A' x' 0 p q  = [x 0  0 1 (c) SE/FIT/HUT 2002 D' H' 1 0 z 1]  0  0  z ( px + qy + rz + 1)  y' D' 0 y y' VP ( y = 10) y [ Tpqr ] = [Tp ][Tq ][Tr ] 39 (c) SE/FIT/HUT 2002  x y' z ' 1] =   ( px + qy + rz + 1) 0 [x Phép chiếu phối cảnh tâm chiếu „ 0 p q  0  0 1 p q  0  1 0 (c) SE/FIT/HUT 2002 [ Tc ] = [ Tpq ][ Tz ] „ [x' 1 0 [T pq ] =  0  0 37 (c) SE/FIT/HUT 2002 [x' VP( x = 10) VP X=10 G D D’, H’C’, G’ D’ H’ C’,G’ y’ 41 0 p 1 q  0 r  0  0  0 0 0 1 0 0 = 0 0 0   0 1 0 0 p q  0 r  0 1 (c) SE/FIT/HUT 2002 https://fb.com/tailieudientucntt 42 Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 Phân loại phép chiếu (c) SE/FIT/HUT 2002 CuuDuongThanCong.com 43 https://fb.com/tailieudientucntt ... hunglt@it-hut.edu.vn 868 259 5 Phép chiếu Isometric sin φ = − sin ϕ − sin ϕ sin ϕ − sin ϕ sin2 ϕ 1/ sin2 φ = = = 1/ − sin2 ϕ − 1/ sin ϕ = ± sin φ = ϕ = ± 35. 260 φ = ± 450 f = cos ϕ = / = 0.81 65 19 (c)... https://fb.com/tailieudientucntt 12 Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 868 259 5 Phép chiếu song song Parallel Projections ƒ Phép chiếu song song - Parallel Projections ƒ Phân loại phép chiếu song song...Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 868 259 5 3D - Modelling Clipping 3D x +y +z =r 2 2 view frustrum Polygonal 3D Modelling Implicit

Ngày đăng: 11/01/2020, 20:45

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan