Trang

5/10/13

Erosion shader (from RM (GLSL) to HLSL in Irrlicht

Chuyển hiệu ứng xói mòn từ RenderMokey (GLSL) sang Irrlicht (HLSL & GLSL)

Hiệu ứng này làm cho vật liệu bị cũ đi một cách rất hay và chân thực. Dùng hiệu ứng này trong Game thì sẽ tiếc kiệm rất nhiều công sức để tạo nhiều mô hình (các đồ vật cũ hay khác nhau một chút)
Trong RenderMonkey  chỉ có hiệu ứng này dạng GLSL shader chứ không có HLSL. Mình đã nâng cấp cái project đó của RM lên để có hiệu ứng này chạy trong HLSL.
Việc chuyển code shader này sang Irrlicht thì lại rất dễ. Vì mọi ví dụ từ RM đều chuyển sang Irr một cách dễ dàng.
Mình đang nghiên cứu chuyển các file .fx hay gfx sang thành project trên RM rồi sau đó chuyển nó sang Irr. Trước tiên mình bắt đầu bằng hiệu ứng mặt biển trong ví dụ của NVidia SDK .
Nhưng phải khắc phục thêm nhiều thứ như texCube chuyển thành tex2D, các phép toán ma trận, và hoán đổi toạ độ x,z....
Cũng mai là do mới làm xong hiệu ứng phản xạ môi trường nên phần phản xạ mình áp dụng ngay vô luôn (thay texCube bằng tex2D trong HLSL do Irr không support SamplerCube)
 

Sau đây là clip của hiệu ứng xói mòn :

Bài đăng phổ biến