Pha chế độ trong Cocos2D với glBlendFunc


9

Chúng tôi đã cố gắng sao chép các chế độ hòa trộn phổ biến nhất có sẵn trong Photoshop và Quartz 2D, nhưng chúng tôi chỉ đưa ra 3 chế độ và sau một thời gian dài tìm kiếm trực tuyến.

Đối với bất cứ ai quan tâm, đây là:

  • Nhân = GL_DST_COLOR, GL_ONE_MINUS_SRC_ALPHA
  • Màn hình = GL_MINUS_DST_COLOR, GL_ONE
  • Tuyến tính Dodge = GL_ONE, GL_ONE

Bạn có thể thử các chế độ này và các chế độ khác như vậy trong hành động trực tuyến, tại trang web rất hữu ích này: http://www.andersriggelsen.dk/glblendfunc.php

Bây giờ, chúng tôi sẽ đánh giá cao nếu có ai có thể cung cấp cho chúng tôi các chế độ hòa trộn bổ sung mà chúng tôi có thể tạo lại bên trong Cocos2D, vì trải nghiệm Open GL của chúng tôi thực sự rất hạn chế.

Cảm ơn bạn trước!

Luận


1
Tuyến tính Dodge (Thêm) = GL_ONE, GL_ONE có hoạt động như vậy đối với bạn giống như tại andersriggelsen.dk/glblendfunc.php và photoshop không? nó làm cho spites trong suốt? không làm việc cho tôi
Rakka Rage

Câu trả lời:


4

Tin xấu là bạn không thể thực hiện tất cả các chế độ hòa trộn của photoshop với glBlendFunc, mặc dù có rất nhiều kết hợp mà bạn có thể sử dụng.

Tin vui là, khi bạn chuyển sang shader, cuốn sách màu cam (Ngôn ngữ tạo bóng OpenGL, http://www.amazon.com/exec/obidos/ASIN/0321637631/khongrou-20 ) chứa một chương với các shader để mô phỏng sự pha trộn của photoshop các chế độ.

May mắn thay, tất cả những gì bạn có thể cần trong thế giới tiền shader là ba chế độ pha trộn phổ biến nhất;

  • Thêm: GL_ONE, GL_ONE
  • Pha trộn: GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA
  • Nhân: nhiều loại, chẳng hạn như số bạn đã đề cập: GL_DST_COLOR, GL_ONE_MINUS_SRC_ALPHA

CHỈNH SỬA :

Câu hỏi liên quan (gần như trùng lặp) trên stackoverflow: /programming/818230/photoshop-bleinating-mode-to-opengl-es-without-shaders

Trình trộn pha trộn Photoshop: http://mouaif.wordpress.com/2009/01/05/photoshop-math-with-glsl-shader /

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.