Główny ekran mojej aplikacji jest renderowany przez SKCanvasView. Kolory dokładnie odzwierciedlają wartości określone w kodzie.SKGLView znacznie ciemniejszy niż SKCanvasView
Gdybym zamienić w SKGLView (wersja z akceleracją sprzętową), zmiana ma inny kod, wynik wynosi 60% ciemniejsze:
<!--<skia:SKCanvasView PaintSurface="OnCanvasViewPaintSurface" />-->
<skia:SKGLView PaintSurface="OnCanvasViewPaintSurface" />
Dlaczego tak się dzieje i jak to naprawić to?
Co widzisz ogromne znaczenie dla mnie jako 'SKGLView' bazuje na OpenGL i dlatego światło geometrii wchodzi w grę. ALE w pętli renderowania widocznej na SKGLView, nie widzę gdzie w wersji "Sharp" można kontrolować źródło światła, wartość światła otoczenia, w którym kierunku "domyślne źródło światła pochodzi, itp .... Co czy wygląda na to, że obrócisz świat o 180 stopni? – SushiHangover
Jeśli chodzi o zużycie baterii, może to znacznie różnić się w zależności od urządzenia, to procesor w porównaniu z GPU, co i ile się przemieszcza oraz czy są tu proste tłumaczenia obiektów w GL , w porównaniu do malowania i podwójnego buforowania itp. płótna. Pamiętaj, że we wszystkich nowszych wersjach Androida malowanie na płótnie jest przyspieszane sprzętowo, to samo odnosi się do UIViews iOS, CoreGraphics i UIKit są przyspieszane. widoki nie są przyspieszane, ponieważ każdy system operacyjny ma swój własny menedżer układu (a Forms ma na nim swój własny) – SushiHangover
Do testowania baterii, użyj Statystyki baterii dla Androida, prosta konfiguracja na podstawie Dockera, Wykonaj normalny test użycia na chwilę używając Canvas na d zapisz wyniki w historyku i uruchom je ponownie w GL, a możesz porównać przebiegi: https://developer.android.com/studio/profile/battery-historian.html – SushiHangover