GPBasics 01: Một số hiệu ứng trong đồ họa 3D

Special Effects: Khác với Visual Effects (VFX) ở chỗ VFX được thêm vào sau khi hình ảnh đã được quay lại và xử lý rồi phát lên (post production), Special Effects là các hiệu ứng được thêm vào trực tiếp vào những hình ảnh đang diễn ra (nếu là ở trong điện ảnh thì SFX được dựng và được quay luôn vào khung hình).

Một số special effects phổ biến:

– Dynamic lights: nguồn sáng được tính toán ra các hiệu ứng, vì liên tục được tính toán dựa trên các thông số thay đổi nên được gọi là dynamic (động).

– Dynamic shadows: đổ bóng động – tức là dùng cho nguồn sáng và vật thể có di chuyển

– Dynamic shadows using the stencil buffer (shadow volume): đổ bóng realtime sử dụng stencil buffer (buffer dùng để lọc (loại bỏ hoặc giữ) các pixel).

– Environment mapping: phản chiếu của môi trường lên vật thể ví dụ khi ta nhìn vào mặt nước hoặc bề mặt kim loại thì sẽ thấy phản chiếu môi trường xung quanh trong đó, kỹ thuật này tạo ra hiệu ứng cho đồ họa 3D từ một ảnh (texture), bản thân ảnh đó cũng được dùng để tạo ra hiệu ứng của môi trường xung quanh, ví dụ như bầu trời,…

– Geo mip-mapped terrain: mip-maping là kỹ thuật thay đổi các chi tiết của hiệu ứng để tối ưu khả năng rendering, ví dụ chi tiết của các vật ở xa sẽ giảm bớt đi và tăng lên khi lại gần, Geo mip-map là một thuật toán mip-maping để render bề mặt địa hình.

– Billboards: các vật thể luôn quay về hướng của camera khi cam di chuyển

– Bump mapping: Tạo chi tiết bề mặt cho một vật thể, ví dụ vật thể là một khối không bị lồi lõm nhưng sau khi áp dụng bump map trong khi render thì sẽ hiển thị ra một vật có bề mặt lồi lõm tùy vào bump map được dùng. Normal mapping là một kỹ thuật tương tự, tuy nhiên khác với bump mapping ở chỗ bump map có thể được vẽ bởi các Artist còn normal map là sinh ra từ một vật có chi tiết bề mặt cao để áp dụng vào phiên bản chi tiết thấp của chính vật thể đó.

– Parallax mapping: tác dụng tương tự bump map và normal map, để tạo ra chi tiết hình ảnh cho vật thể, Parallax mapping là một kỹ thuật cải tiến của bump map, chỉ thực sự phát huy tốt tác dụng cho những vật thể cho chi tiết lồi lõm ít nhất là vài centimét, ví dụ như một khối gồm các viên gạch hay các hòn đá nằm cạnh nhau)

– Light maps: áp các hiệu ứng ánh sáng được render sẵn vào vật thể, ví dụ các game dùng GoldSrc engine của Valve như Half-life 1, Counter Strike… thì môi trường được sử dụng một số light map nhất định, nên hiệu ứng của hình ảnh không thay đổi, trừ khi được áp dụng thêm các hiệu ứng như lighting từ bóng đèn,….

– Particle effects: dùng các particles (vật chất nhỏ – chất điểm) để tạo ra các hiệu ứng như smoke, hiệu ứng cháy, nổ, tuyết rơi, mưa……trong game

– Sphere mapping: hiệu ứng phản chiếu lên bề mặt của vật hình cầu

– Texture animation: sự thay đổi texture của vật thể theo thời gian

– Skyboxes và skydomes: mô phỏng bầu trời bằng khối lập phương hoặc nửa khối cầu bao trùm các vật thể ở bên trong nó.

– Fog: sương mù

– Volume Light: ánh sáng chiếu thành vùng giới hạn, khác với spot light có hình dáng vùng sáng tương tự, volumetric light tạo ra được hiệu ứng nhìn thấy dược các chùm tia sáng trong vùng sáng đi qua chứ không sáng đồng đều như spot light.

Tất cả các hiệu ứng mình giải thích ở trên đều là những hiệu ứng mà Irrlicht cũng như các engine khác đang hỗ trợ (và nhiều hiệu ứng khác), hiểu biết về nó sẽ giúp bạn lựa chọn được các kỹ thuật và đạt được đồ họa mong muốn cho game mà bạn làm ra.

Comments

comments

Related Posts

GPBasics 06: Thực hành điều khiển nhân vật

Chào các bạn, hôm nay chúng ta sẽ cùng thực hành về điều khiển nhân vật, kết quả của bài này các bạn có thể xem tại video: Đầu tiên các bạn tạo một class mới như sau: #ifndef NINJA_H #define NINJA_H   #include <irrlicht.h>   // liệt kê các trạng thái của nhân vật […]

Read More

GPBasics 05: Căn bản về điều khiển nhân vật

Chào các bạn, trong tutorial này chúng ta sẽ làm việc với một số vấn đề trong điều khiển nhân vật. Chúng ta sẽ làm quen với khái niệm mới: Framerate independent movement. Trước khi đọc bài này thì chúng ta phải sử dụng các kiến thức về game loop (tài liệu về phần này […]

Read More