Wydano Dear PyGui 1.0.0 (DPG), wieloplatformowy zestaw narzędzi do tworzenia GUI w Pythonie. Najważniejszą cechą projektu jest wykorzystanie wielowątkowości i operacji przeciążania na stronę GPU w celu przyspieszenia renderowania. Kluczowym celem wersji 1.0.0 jest stabilizacja API. Zmiany naruszające kompatybilność będą teraz oferowane w oddzielnym module „eksperymentalnym”.
Aby zapewnić wysoką wydajność, główna część kodu DearPyGui została napisana w języku C++ przy użyciu biblioteki Dear ImGui, opracowanej przez tych samych autorów, ale przeznaczonej do tworzenia aplikacji graficznych w C++ i oferującej zasadniczo inny model działania. Kod źródłowy Dear PyGui jest rozpowszechniany na licencji MIT. Deklarowane wsparcie dla platform Linux, Windows 10 i macOS.
Zestaw narzędzi nadaje się do szybkiego tworzenia prostych interfejsów i tworzenia złożonych, wyspecjalizowanych GUI dla gier, aplikacji naukowych i inżynieryjnych, które wymagają wysokiej responsywności i interaktywności. Twórcom aplikacji do dyspozycji jest proste API oraz zestaw gotowych tradycyjnych elementów, takich jak przyciski, suwaki, przełączniki, menu, formularze tekstowe, wyświetlanie obrazów i różne sposoby układu okien. Wśród zaawansowanych funkcji zauważono obsługę tworzenia wykresów, wykresów i tabel.
Dodatkowo dostępny jest zestaw przeglądarek zasobów, edytor węzłów, system kontroli motywów i dowolne elementy odpowiednie do tworzenia gier 2D. Aby uprościć programowanie, dostępnych jest kilka narzędzi, w tym debuger, edytor kodu, przeglądarka dokumentacji i przeglądarka dzienników.
Dear PyGui implementuje abstrakcyjny tryb API (tryb zachowany) typowy dla bibliotek GUI, ale jest zaimplementowany na bazie biblioteki Dear ImGui, która działa w trybie IMGUI (GUI w trybie natychmiastowym). Tryb Utrzymany oznacza, że zadania związane z tworzeniem sceny przejmuje biblioteka, natomiast w trybie Natychmiastowym model wizualizacji jest przetwarzany po stronie klienta, a biblioteka graficzna wykorzystywana jest jedynie do końcowego wyniku, tj. Za każdym razem aplikacja wydaje polecenie narysowania wszystkich elementów interfejsu, tworząc kolejną gotową ramkę.
DearPyGui nie korzysta z natywnych widżetów dostarczanych przez system, lecz raczej renderuje własne widżety, wywołując graficzne interfejsy API OpenGL, OpenGL ES, Metal i DirectX 11, w zależności od bieżącego systemu operacyjnego. W sumie oferowanych jest ponad 70 gotowych widżetów.
Źródło: opennet.ru