Flutter wygięcie obrazka

1

Jak we flutterze przekształcić obraz w trochę bardziej skomplikowany sposób ? (nie mam na myśli obrót , skalowanie)
Czy można obraz wygiąć podając współrzędne wierzchołków ?

Na wejściu jest prostokąt a na wyjściu dowolny kształt
np.
obrazkek

W OpenGL/OpenGLES robi się to banalnie (operując współrzędną i UV tekstury) , zastanawiam się czy flatter jakoś umożliwia na tak niskim poziomie

1

Chyba CustomClipper powinien sobie z tym poradzić. Nie znam szczegółów ale może tutaj ciebie coś nakieruje

0

Na moje oko to CustomClipper nie pomoże, bo wycięcie fragmentu to nie to samo co "rozciągniecie"

Obejrzałem sobie architekturę https://flutter.dev/docs/resources/architectural-overview
i mi to wygląda na to że sam Flutter nie ma opcji zejścia do poziomu GPU bo jest to sprzeczne z założeniami projektu

Wiec na razie szukam jak połączyć FLuttera z OpenGL

Opcja 1) Przykładowy kod z użyciem Java
https://medium.com/@german_sa[...]h-texture-widget-f919743d25d9
Niestety przykład stworzy 3 lata temu i juz nie działa , pewnie jakby powalczył to by to uruchomił
3 lata dla flutter-a to przepaść ;)

Opcja 2) https://pub.dev/packages/flutter_opengl
Działa ! Połączenie Java i C++ , co prawda wysypuje się ale jakiś punkt zaczepienia jest

Czyli szanse na rozwiązanie problemu widzę ale w czystym Dart nie da się tego zrobić, trzeba kombinować

0

Ja nigdy nie robiłem niczego graficznego we Flutterze. Ciężko mi powiedzieć do czego jest zdolny, a do czego nie. Dziwi mnie tylko, że Flutter jest skupiony na 2D, a nie ogarnia takich "prostych" rzeczy? Może nazewnictwo jest mylące ale jaki byłby wynik jakby dać większą szerokość na dole, a mniejszą u góry? Rozumiem, że tam gdzie wartość jest większa niż oryginał robi się puste zamiast rozciągnąć obraz? Może to jest kwestia jakiegoś parametru typu Fill albo Stretch?

0

Chyba parę osób musiało tego szukać: Can I build 3D (OpenGL) apps with Flutter?

Pomiędzy GPU a flutterem jest "SKIA" https://skia.org/ też tam nie widzę nic co by mi pomogło

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0