Próbowałem zbudować silnik 2,5D z teksturami głębi i normalnej mapy już od kilku tygodni, w odróżnieniu od tego, co tutaj zastosowano: Linky. Po przemyśleniu rysunek mapy głębi w shaderze fragmentu z tekstury był niemożliwy, ponieważ ES 2.0 brakowało zmiennej gl_fragDepth Znalazłem samouczek dla iOS, gdzie użyli glBlendEquation z trybem GL_MIN/GL_MAX do "fałszywego" buforowania głębi fragmentu do framebuffer-tekstury Linky. Niefortunnie błąd GLES20.glBlendEquation powoduje awarię aplikacji na obu telefonach (SGS 1/2) z wyjątkiem UnsupportedOperationException. Więc zastanawiam się, czy ktoś użył tej funkcji do jakiegokolwiek sukcesu? Wygląda na to, że GL_MIN/GL_MAX brakuje w specyfikacji Androida OpenGL ES 2.0, więc mam na szczęście tutaj ... Jakieś pomysły?Android GLES20.glBlendEquation nie działa?
BTW Wydaje się, że działa w GL11Ext, ale ponieważ używam shadera fragmentów do normalnego mapowania, to nie zadziała ode mnie.
Czy kiedykolwiek znalazłeś rozwiązanie tego problemu? – Jave
@jave Nie, nie zagłębiałem się w to ani dalej, ani nie miałem żadnych opinii na żadnym forum. Tak więc moim założeniem jest to, że nie jest on zaimplementowany w systemie Android OpenGL ES 2.0. Być może zostało to naprawione w nowszych wersjach systemu operacyjnego? Testowałem to używając systemu Android OS v2.3. –
Ok, sam wpadłem na ten problem kilka dni temu, ale też nie znalazłem rozwiązania. (Przy okazji przy użyciu Androida 2.2). Jeśli rozwiążesz problem, chciałbym zobaczyć, jak to zrobiłeś. – Jave