Tryb natychmiastowy (grafika komputerowa)
Tryb natychmiastowy to wzorzec projektowy API w bibliotekach grafiki komputerowej, w którym
- wywołania klienta bezpośrednio powodują renderowanie obiektów graficznych na wyświetlaczu lub w którym
- dane opisujące prymitywy renderowania są wstawiane klatka po klatce bezpośrednio od klienta do listy poleceń (w przypadku renderowania prymitywnego w trybie natychmiastowym ),
bez stosowania rozległego przekierowania – a więc natychmiastowego – do zatrzymanych zasobów. Nie wyklucza to stosowania podwójnego buforowania .
Tryb zachowany to podejście alternatywne. Historycznie tryb zachowany był dominującym stylem w bibliotekach GUI ; jednak oba mogą współistnieć w tej samej bibliotece i niekoniecznie wykluczają się w praktyce.
Przegląd
natychmiastowym scena (kompletny model obiektowy prymitywów renderowania ) jest przechowywana w przestrzeni pamięci klienta zamiast w bibliotece graficznej . Oznacza to, że w aplikacji działającej w trybie natychmiastowym listy obiektów graficznych do renderowania są przechowywane przez klienta i nie są zapisywane przez interfejs API biblioteki graficznej. Aplikacja musi ponownie wydać wszystkie polecenia rysowania wymagane do opisania całej sceny za każdym razem, gdy tworzy nową klatkę jest wymagana, niezależnie od rzeczywistych zmian. Ta metoda zapewnia z jednej strony maksymalną kontrolę i elastyczność aplikacji, ale z drugiej strony generuje również ciągłe obciążenie procesora .
Przykłady systemów renderowania w trybie natychmiastowym obejmują Direct2D , OpenGL i Quartz . Istnieje kilka graficznych interfejsów użytkownika działających w trybie natychmiastowym, które są szczególnie przydatne w połączeniu z systemami renderowania w trybie natychmiastowym.
Prymitywne renderowanie w trybie natychmiastowym
Prymitywne dane atrybutów wierzchołków mogą być wstawiane klatka po klatce do bufora poleceń przez interfejs API renderowania . Wiąże się to ze znaczną przepustowością i czasem procesora (zwłaszcza jeśli procesor graficzny znajduje się na oddzielnej magistrali), ale może być korzystne dla danych generowanych dynamicznie przez procesor . Jest to mniej powszechne od czasu pojawienia się coraz bardziej wszechstronnych shaderów , dzięki którym jednostka przetwarzania grafiki może generować coraz bardziej złożone efekty bez konieczności interwencji procesora.
Renderowanie w trybie natychmiastowym z buforami wierzchołków
Chociaż polecenia rysowania muszą być wydawane ponownie dla każdej nowej klatki , nowoczesne systemy korzystające z tej metody są na ogół w stanie uniknąć niepotrzebnego powielania danych wyświetlania o większej zawartości pamięci, odwołując się do tych niezmiennych danych (poprzez pośrednictwo ) (np. tekstury i bufory wierzchołków ) w poleceniach rysowania.
Zobacz też
- GUI trybu natychmiastowego
- Pokaż listę
- Tryb zachowany , zwykle kontrastowany z trybem natychmiastowym
- Wykres sceny