Zmiana w grze rzadko jest samym kodem. To Blueprint, materiał, model i tekstura w jednym changeliście. Touch Review otwiera każdy z nich w przeglądarce, pokazuje dokładnie, co się zmieniło, i pozwala skomentować konkretny node, piksel albo wierzchołek. Jedno review i jedna akceptacja, dla programistów i dla grafików.
Prawdziwe review małej funkcji: latarni, która migocze. Kod, Blueprint, materiał, model i tekstura, przejrzane w niecałe dwie minuty bez wychodzenia z przeglądarki.
Narzędzia do code review pokazują zmieniony .uasset jako „plik binarny, 9,5 MB”. Żeby zobaczyć, co grafik naprawdę zrobił, reviewer musi zsynchronizować zmianę, otworzyć edytor, znaleźć asset i porównać go z tym, co pamięta z zeszłego tygodnia. Więc większość zespołów tego nie robi. Touch Review robi to porównanie za Ciebie, w tym samym miejscu, w którym przeglądasz kod.
Obie wersje grafu stoją obok siebie i ruszają się razem: przesuwasz albo przybliżasz jedną, druga idzie za nią. Lista zmian po prawej mówi zwykłymi słowami, co się stało. Klikasz pozycję i obie strony centrują się na tym nodzie.

Graf eksportuje sam Unreal Engine, więc każdy node, kolor i podgląd zgadza się z tym, co widział grafik. Texture Sample pokazują prawdziwe tekstury, a stara strona pokazuje stare.

Otwierasz zmieniony mesh i oglądasz obie wersje razem, z teksturami. Przełączasz na mapę cieplną i odpowiedź jest w kolorze: zielone się nie ruszyło, czerwone tak. Słup tej latarni jest nietknięty, klosz urósł.


Postaw obie wersje obok siebie, przesuwaj suwak między nimi, przenikaj jedną w drugą albo pokaż samą różnicę. Touch Review liczy zmienione piksele, więc „przemalowano 9% muru” to fakt na ekranie.


Diffy obok siebie albo w jednej kolumnie, z kolorowaniem składni, komentarze do linii, wątki, które się zamyka. Każdy komentarz ma wagę, więc autor wie, co musi poprawić przed akceptacją, a co jest tylko luźną uwagą.

Każdy typ dostaje widok, który do niego pasuje. Tabela jest tabelą, krzywa krzywą, a graf grafem.
| Zawartość | Co widzisz | |
|---|---|---|
| C++, shadery, konfiguracja | Diff linii z kolorowaniem składni, wątki przy liniach | Gotowe |
| Blueprinty | Wszystkie grafy obok siebie, zmienne, komponenty, class defaults | Gotowe |
| Materiały i instancje | Graf materiału 1:1 z edytorem, podglądy tekstur, parametry | Gotowe |
| Static i skeletal mesh | Sześć widoków 3D z teksturami, mapa cieplna wierzchołków, LOD-y i materiały | Gotowe |
| Tekstury i obrazy | Obok siebie, suwak, przenikanie, różnica pikseli z licznikiem | Gotowe |
| Data Table, Curve | Arkusz z zaznaczonymi komórkami, krzywa narysowana na starej | Gotowe |
| Animacje i montaże | Oś czasu z notify, sekcje, sloty i sync markery | Gotowe |
| Systemy Niagara | Włączone i wyłączone emitery, parametry użytkownika, moduły | Gotowe |
| Mapowania wejścia | Akcja, klawisz, modyfikatory i triggery jako drzewo | Gotowe |
| Levele i mapy | Dodane, usunięte i przesunięte aktory, pokazane w viewporcie edytora | W trakcie prac |
Nie każdy chce kolejną kartę w przeglądarce. Panel Touch Review dokuje się w edytorze Unreal jak każde inne okno, z tymi samymi review, plikami i komentarzami.
Samo review to połowa roboty. Druga połowa to trafić z nim do właściwej osoby, niczego nie przeoczyć i wiedzieć, gdzie praca stoi.
Określasz, kto odpowiada za który folder: Content/Characters idzie do zespołu postaci, Source/AI do programistów AI. Nowe review przydzielają się według ścieżki i rozkładają równo na zespół.
Programiści sprawdzają testy i wydajność, graficy LOD-y, budżet trójkątów i rozmiar tekstur. Każde review dostaje swoją listę i nie da się go zaakceptować z pustymi polami.
Każde review przechodzi przez Twoje reguły: tekstury w potęgach dwójki i poniżej limitu, meshe w budżecie trójkątów, nazwy z właściwym prefiksem. Niespełnioną regułę widać, zanim ktokolwiek otworzy plik.
Zanim przeniesiesz poprawkę na inny stream, Touch Review sprawdza, od czego ona zależy. Jeśli Blueprint potrzebuje klasy C++, której na docelowym streamie jeszcze nie ma, widzisz to na czerwono, razem z changelistem do zabrania.
Gdy autor zaktualizuje zmianę, jeden przycisk pokazuje tylko to, co nowe od Twojego ostatniego review. Pliki ruszone ponownie dostają kropkę, więc nie czytasz tego samego diffu dwa razy.
Czas do akceptacji, review czekające dłużej niż tydzień, kto jest przeciążony, a kto blokuje pipeline. Panel dla leadów, policzony z samych review.
Nowe review, komentarze i głosy trafiają na kanał, który zespół i tak czyta, z linkiem prosto do pliku.
Ticket jest podpięty pod review, a jego status idzie za nim. Wynik preflightu z Horde pojawia się w review, a nieudany build blokuje akceptację.
Kto co zaakceptował i kiedy, zapisane na stałe i do wyeksportowania jako PDF. Opcjonalnie Perforce odrzuca submit, który nie ma zaakceptowanego review.
Asystent czyta zmianę przed zespołem i zostawia uwagi jako zwykłe, oznaczone komentarze. Domyślnie wyłączony i nigdy niczego nie akceptuje.
Review powstają z changelistów i shelve'ów Perforce, łącznie ze streamami, albo z TouchQuill. Z TouchQuill widzisz też wszystkie trzy wersje assetu w konflikcie i śledzisz funkcję mimo zmian nazwy.
Touch Review działa na Twojej infrastrukturze, jako jeden program albo w Dockerze. Assety i kod nie opuszczają studia. Logujesz się kontem Perforce albo Google Workspace.
Touch Review nie jest jeszcze publicznie dostępny. Do końca roku testujemy go z niewielką grupą studiów. Jeśli review grafiki to u Was bolączka, napisz. Odezwiemy się w sprawie dołączenia do testów albo po prostu pogadamy o tym, jak dziś przeglądacie zmiany.