2009-04-07 36 views
6

Tôi tìm thấy vid này: http://www.youtube.com/watch?v=eVi6ThY3LRs Tôi tự hỏi nếu đó là một số loại hiệu ứng tiêu chuẩn của OpenGLES. Tôi khá chắc chắn nó là, vì tôi đã thấy điều này khá thường xuyên. KoiPond sử dụng nó, DuckDuckDuck sử dụng nó. Rất nhiều trò chơi sử dụng nó. Họ không phải tất cả các phi hành gia. Họ là những người lập trình bình thường;) Vậy làm thế nào là xong? Có bất kỳ hướng dẫn nào về điều này trên web không?Làm cách nào để tạo hiệu ứng nước với openGLES trên iPhone?

+1

làm thế nào để bạn biết họ đang lập trình viên bình thường không? –

+0

bạn nghĩ rằng họ không? ;) – Thanks

Trả lời

2

(ngoài đỉnh đầu của tôi) Có lẽ một méo lưới nơi kết cấu được ghim vào các đỉnh và do đó dường như gợn khi các đỉnh lưới được di chuyển? Bằng cách di chuyển một tập hợp các chuyển vị đỉnh xung quanh lưới, bạn có thể tạo một gợn đồng nhất như một mặt sóng ...

7

Ví dụ cũ có thể xem ví dụ 'distort'. Lưu ý rằng đây là một điều được tạo ra vào năm 1992 (chỉ cần nhìn vào distort.c).

Chương trình tuyệt vời gây ra những gợn sóng trong ảnh bất cứ khi nào nút chuột được nhấn. Một chế độ khác của chương trình hoạt động như một tấm cao su và có thể được kéo bằng cách kéo chuột.

Tôi đã quản lý để biên dịch ví dụ trên mac của mình.

  • Rename tất cả #include <GL/glut.h>-#include <GLUT/glut.h>
  • Thêm một usleep(33*1000); trong idle() chức năng
  • Đổi tên tập tin ripple_precalc.c-ripple_precalc.c.org (hoặc chỉ rm nó)
  • Compile với "cc *.c -framework GLUT -framework OpenGL" sẽ tạo ra một a.out
+0

Cảm ơn, tôi sẽ thử điều đó. Bạn có thể xem liệu nó có sử dụng những thứ không được hỗ trợ trong OpenGLES không? – Thanks

+0

Tôi nghĩ về cơ bản nó giống như mô tả của JeeBee, một lưới được bao phủ bởi một kết cấu và các đỉnh lưới được di chuyển với một số phép toán, tôi đoán một số động lực mùa xuân. Lưu ý rằng bạn cần chuyển đổi mã để xóa các lệnh gọi glBegin()/glEnd() ... – epatel

Các vấn đề liên quan