2. CÁC THUẬT TỐN VẼ ĐƯỜNG
1.1. Sơ lược về quy trình hiển thị
Quy trình xử lí thơng tin trong đồ họa ba chiều là một chuỗi các bước nối tiếp nhau, kết quả của mỗi bước sẽ là đầu vào của bước tiếp theo.
Hình 5.2 – Quy trình hiển thị đối tượng ba chiều
Quy trình bắt đầu bằng việc xây dựng các mơ hình đối tượng. Các mơ hình này thường được mơ tả trong khơng gian ba chiều (x,y,z). Các mơ hình thường thể hiện vật thể (solid) hoặc bề mặt (boundaries) của đối tượng. Như vậy ta cĩ hai kiểu mơ hình hĩa. Trong solid modeling
các đối tượng đồ họa cơ sở thường được dùng để mơ tả các đối tượng cĩ thể tích (volume). Trong boundary representations(B-reps), các đối tượng được định nghĩa bởi bề mặt của chúng.
Các mơ hình thường được biểu diễn trong một hệ tọa độ cục bộ, mà ta gọi là hệ tọa độ đối tượng. Trong hệ tọa độ này chỉ cĩ bản thân đối tượng được định nghĩa, vì vậy gốc tọa độ và đơn vị đo lường thường được chọn sao cho việc biểu diễn đối tượng tiện lợi nhất.
Bước đầu tiên trong quy trình hiển thị là biến đổi đối tượng từ khơng gian đối tượng (object-space) vào một khơng gian chung gọi là khơng gian thực (world space). Trong khơng gian này các đối tượng, nguồn sáng, và người quan sát cùng tồn tại. Bước này được gọi là giai đoạn biến đổi mơ hình (modeling transformation).
Bước tiếp theo là một bước tối ưu hĩa. Trong giai đoạn loại bỏ đơn giản (trivial rejection) ta cần loại trừ tất cả các đối tượng khơng thể nhìn thấy. Điều này giúp chúng ta tránh được việc xử lí một số phần khơng cần thiết của cảnh (scene) mà ta đang chuẩn bị hiển thị ở các bước sau.
Tiếp theo ta phải chiếu sáng (illumination) các đối tượng cĩ thể nhìn thấy được bằng cách gán cho chúng màu sắc dựa trên các đặc tính của các chất tạo nên vật và các nguồn sáng tồn tại trong cảnh.
Sau khi chiếu sáng, ta phải thực hiện một phép biến đổi hệ tọa độ để đặt vị trí quan sát (viewing position) về gốc tọa độ và mặt phẳng quan sát (viewing plane) về một vị trí mong ước. Bước này gọi là bước đổi hệ quan sát. Sau bước này, các đối tượng được chuyển từ khơng gian thực sang khơng gian quan sát (eye space).
Trong khơng gian quan sát, ta phải thực hiện việc xén các đối tượng trong cảnh để cảnh nằm gọn trong một phần khơng gian chĩp cụt mà ta gọi là viewing frustum. Bước này sẽ loại bỏ hồn tồn các đối tượng (các mảnh đối tượng) khơng nhìn thấy được trong ảnh.
Bước tiếp theo ta sẽ chiếu các đối tượng xuống mặt phẳng hai chiều. Bước Projection thực hiện phép biến đổi từ khơng gian quan sát sang khơng gian màn hình (screen-space).
Trong bước rời rạc hĩa (rasterization) ta sẽ chuyển đối tượng thành các pixel. Cuối cùng, tồn cảnh sẽ được hiển thị lên màn hình.