CHƯƠNG I. KHÁI QUÁT VỀ ĐỒ HOẠ 3D VÀ BÀI TOÁN HIỂN THỊ 3D Nội dung chính của chương sẽ trình bày khái quát về đồ họa ba chiều theo định hướng của đề tài và sơ lược bài toán hiển thị đối tượng 3D. Khái quát về kỹ thuật đồ hoạ 3D 1. Đồ họa 3D là gì? Như nhiều người đã biết, 3 - D thực ra là tên viết tắt của từ 3 - Dimension (3 chiều).
Kỹ thuật 3 - D mà người ta vẫn sử dụng một cách phổ biến hiện nay thường đi liền với khái niệm “đồ họa 3D” - tức là những hình ảnh được dựng nên một cách sống động như thật với sự trợ giúp của các phần mềm đồ họa vi tính. Mục đích chính của đồ họa 3D là tạo ra và mô tả các đối tượng, các mô hình trong thế giới thật bằng máy tính sao cho càng giống với thật càng tốt. Việc nghiên cứu các phương pháp các kỹ thuật khác nhau của đồ họa 3D cũng chỉ hướng đến một mục tiêu duy nhất đó là làm sao cho các nhân vật, các đối tượng, các mô hình được tạo ra trong máy tính giống như thật. Lịch sử phát triển - Thập niên 1960 Lịch sử của đồ họa máy tính vào thập niên 1960 còn được đánh dấu bởi dự án Sketch Pad được phát triển tại học viện công nghệ Massachusetts (MIT) bởi Ivan Sutherland.
Các thành tựu thu được đã được báo cáo tại hội nghị Fall joint Computer và đây cũng chính là sự kiện lần đầu tiên người ta có thể tạo mới, hiển thị và thay đổi được dữ liệu hình ảnh trực tiếp trên màn hình máy tính trong thời gian thực [1]. Hệ thống Sketch Pad này được dùng để thiết kế hệ thống mạch điện và bao gồm những thành phần sau: CRT màn hình Bút sáng và một bàn phím bao gồm các phím chức năng Máy tính chứa chương trình xử lý các thông tin 3 Với hệ thống này, người sử dụng có thể vẽ trực tiếp các sơ đồ mạch điện lên màn hình thông qua bút sáng, chương trình sẽ phân tích và tính toán các thông số cần thiết của mạch điện do người dùng vẽ nên. - Thập niên 1970 Kỹ thuật đồ họa đươc liên tục hoàn thiện vào thập niên 1970 với sự xuất hiện của các chuẩn đồ họa làm tăng cường khả năng giao tiếp và tái sử dụng của phần mềm cũng như các thư viện đồ họa. - Thập niên 1980 Sự phát triển vượt bậc của công nghệ vi điện tử và phần cứng máy tính vào thập niên 1980 làm xuất hiện hàng loạt các vi mạch hỗ trợ cho việc truy xuất đồ họa đi cùng với sự giảm giá đáng kể của máy tính cá nhân làm đồ họa ngày càng đi sâu vào cuộc sống thực tế.
- Thập niên 1990 Thập niên 90 phát triển đặc biệt về phần cứng, thiết bị hình học đồ họa Silicon. Xuất hiện các chuẩn công nghiệp: PHIGS (Programmers Hierarchical Interactive Graphics Standard) xác định các phương pháp chuẩn cho các mô hình thời gian thực và lập trình hướng đối tượng. Giao diện người máy Human- Computer Interface (HCI) OpenGL API (Application Program Interface - giao diện chương trình ứng dụng). Completely computer-sinh ra ngành điện ảnh phim truyện (Toy Story) rất thành công.
Các tiềm tàng phần cứng mới: Texture mapping (dán các ảnh của cảnh thật lên bề mặt của đối tượng), blending (trộn màu)…. - Thập niên 2000 đến nay Ảnh hiện thực, các cạc đồ hoạ cho máy tính (Graphics cards for PCs), game boxes and game players Công nghiệp phim ảnh nhờ vào đồ hoạ máy tính (Computer graphics becoming routine in movie industry): Maya (thế giới vật chất tri giác được)…. Các kỹ thuật đồ họa 1. Kỹ thuật đồ hoạ điểm (Sample based - Graphics) - Các mô hình, hình ảnh của các đối tượng được hiển thị thông qua từng pixel (từng mẫu rời rạc) - Đặc điểm: Có thể thay đổi thuộc tính của từng điểm ảnh rời rạc.
+ Xoá đi từng pixel của mô hình và hình ảnh các đối tượng. + Các mô hình hình ảnh được hiển thị như một lưới điểm (grid) các pixel rời rạc + Từng pixel đều có vị trí xác định, được hiển thị với một giá trị rời rạc (số nguyên) các thông số hiển thị (màu sắc hoặc độ sáng) + Tập hợp tất cả các pixel của grid cho chúng ta mô hình, hình ảnh đối tượng mà chúng ta muốn hiển thị. 1 Ảnh đồ hoạ điểm Phương pháp để tạo ra các pixel: - Phương pháp dùng phần mềm để vẽ trực tiếp từng pixel một. - Dựa trên các lý thuyết mô phỏng (lý thuyết Fractal, v.v) để xây dựng nên hình ảnh mô phỏng của sự vật.
- Phương pháp rời rạc hoá (số hoá) hình ảnh thực của đối tượng. - Có thể sửa đổi (image editing) hoặc xử lý (image processing) mảng các pixel thu được theo những phương pháp khác nhau để thu được hình ảnh đặc trưng của đối tượng [1]. Kỹ thuật đồ họa điểm 1. Kỹ thuật đồ họa Vector Mô hình đồ họa Các tham số tô trát Tô trát Thiết bị ra Hình 1.
Mô hình đồ họa vector - Mô hình hình học (geometrical model) của đối tượng. - Xác định các thuộc tính của mô hình hình học này - Quá trình tô trát (rendering) để hiển thị từng điểm của mô hình, hình ảnh thực của đối tượng. So sánh giữa Raster và Vector Graphics. Đồ họa điểm (Raster Graphics) Đồ họa Vector (Vector Graphics) - Hình ảnh và mô hình của các vật thể - Không thay đổi thuộc tính của từng được biểu diễn bởi tập hợp các điểm điểm trực tiếp của lưới (grid) - Thay đổi thuộc tính của các pixel sẽ - Xử lý với từng thành phần hình học dẫn đến thay đổi từng phần và từng cơ sở của nó và thực hiện quá trình tô 6 vùng của hình ảnh.
trát và hiển thị lại. - Copy được các pixel từ một hình ảnh - Quan sát hình ảnh và mô hình của này sang hình ảnh khác hình ảnh và sự vật ở nhiều góc độ khác nhau bằng cách thay đổi điểm nhìn và góc nhìn. Phân loại của đồ họa máy tính (Phân loại theo hệ tọa độ) - Kỹ thuật đồ họa: + Kỹ thuật đồ họa 2 chiều + Kỹ thuật đồ họa 3 chiều - Kỹ thuật đồ họa 2 chiều: là kỹ thuật đồ họa máy tính sử dụng hệ tọa độ hai chiều (hệ tọa độ thẳng), sử dụng rất nhiều trong kỹ thuật xử lý bản đồ, đồ thị. - Kỹ thuật đồ họa 3 chiều: là kỹ thuật đồ họa máy tính sử dụng hệ tọa độ ba chiều, đòi hỏi rất nhiều tính toán và phức tạp hơn nhiều so với kỹ thuật đồ họa 2 chiều.
- Các lĩnh vực của đồ họa máy tính: + Kỹ thuật xử lý ảnh (Computer Imaging): Sau quá trình xử lý ảnh cho ta ảnh số của đối tượng. Trong quá trình xử lý ảnh sử dụng rất nhiều các kỹ thuật phức tạp: Kỹ thuật khôi phục ảnh, kỹ thuật làm nối ảnh, kỹ thuật xác định biên ảnh. + Kỹ thuật nhận dạng (Pattern Recognition): từ những ảnh mẫu có sẵn ta phân loại theo cấu trúc, hoặc theo các tiêu chí được xác định từ trước và bằng các thuật toán chọn lọc để có thể phân tích hay tổng hợp các ảnh gốc, các ảnh gốc này được lưu trong một thư viện và căn cứ vào thư viện này ta xây dựng được các thuật giải phân tích và tổ hợp ảnh. + Kỹ thuật tổng hợp ảnh (Image Synthesis): là lĩnh vực xây dựng mô hình và hình ảnh của các vật thể dựa trên các đối tượng và mối quan hệ giữa chúng.
+ Các hệ CAD/CAM (Computer Aided Design/Computer Aided Manufacture System): kỹ thuật đồ họa tập hợp các công cụ, các kỹ thuật trợ giúp cho thiết kế 7 các chi tiết và các hệ thống khác nhau: hệ thống cơ, hệ thống điện, hệ thống điện tử. + Đồ họa minh họa (Presentation Graphics): gồm các công cụ giúp hiển thị các số liệu thí nghiệm một cách trực quan, dựa trên các mẫu đồ thị hoặc các thuật toán có sẵn. + Đồ họa hoạt hình và nghệ thuật: bao gồm các công cụ giúp cho các họa sĩ, các nhà thiết kế phim hoạt hình chuyên nghiệp làm các kỹ xảo hoạt hình, vẽ tranh.ví dụ: phần mềm Studio, 3D Animation, 3D Studio Max. Các chuẩn giao diện của hệ đồ hoạ Mục tiêu căn bản của các chuẩn cho phần mềm đồ hoạ là đảm bảo tính tương thích.
Khi các công cụ được thiết kế với hàm đồ hoạ chuẩn, phần mềm có thể được di chuyển một cách dễ dàng từ hệ phần cứng này sang hệ phần cứng khác và được dùng trong nhiều cài đặt và ứng dụng khác nhau. GKS (Graphics Kernel System): chuẩn xác định các hàm đồ hoạ chuẩn, được thiết kế như một tập hợp các công cụ đồ hoạ hai chiều và ba chiều. CGI (Computer Graphics Interface System): hệ chuẩn cho các phương pháp giao tiếp với các thiết bị ngoại vi. CGM (Computer Graphics Metafile): xác định các chuẩn cho việc lưu trữ và chuyển đổi hình ảnh.
VRML (Virtual Reality Modeling Language): ngôn ngữ thực tại ảo, một hướng phát triển trong công nghệ hiển thị được đề xuất bởi hãng Silicon Graphics, sau đó đã được chuẩn hóa như một chuẩn công nghiệp. PHIGS (Programmers Hierarchical Interactive Graphics Standard): xác định các phương pháp chuẩn cho các mô hình thời gian thực và lập trình hướng đối tượng. OPENGL thư viện đồ họa của hãng Silicon Graphics, được xây dựng theo đúng chuẩn của một hệ đồ họa năm 1993. DIRECTX thư viện đồ hoạ của hãng Microsoft, Direct X/Direct3D 1997.
Phần cứng đồ họa (Graphics HardWare) 1. Các thành phần phần cứng của hệ đồ hoạ tương tác CPU: Thực hiện các chương trình ứng dụng. Bộ xử lý hiển thị (Display Processor): thực hiện công việc hiển thị dữ liệu đồ hoạ. Bộ nhớ hệ thống (System Memory): chứa các chương trình và dữ liệu đang thực hiện.
Gói phần mềm đồ hoạ (Graphics Package): cung cấp các hàm đồ hoạ cho chương trình ứng dụng Phần mềm ứng dụng (Application Program): phần mềm đồ hoạ ứng dụng. Bộ đệm (Frame buffer): có nhiệm vụ chứa các hình ảnh hiển thị. Bộ điều khiển màn hình (Video Controller): điều khiển màn hình, chuyển dữ liệu dạng số ở frame buffer thành các điểm sáng trên màn hình.Các thành phần cứng của hệ đồ hoạ tương tác 1. Máy in Dot size: đường kính của một điểm in bé nhất mà máy in có thể in được Addressability: khả năng địa chỉ hoá các điểm in có thể có trên một đơn vị độ dài (dot perinch) Số lượng màu có thể vẽ trên một điểm: 9 Dot size Point per inch 8 - 20/ 100inch 200, 600 5/1000inch 1500 Máy vẽ 6,15/1000 inch 1000, 2000 1.
Màn hình (monitor - display) Màn hình là một thiết bị hoàn chỉnh dùng để hiển thị hình ảnh theo yêu cầu bao gồm tất cả những mạch phụ trợ cần thiết bên trong.