Czy w jakichkolwiek innych silnikach jest coś równoważnego z drzwiami_portalnymi_portalu Portal 2? [Zamknięte]

9

Potrzebuję funkcjonalności dowiązanego_portalu_drzwi znajdującego się w Portalu 2. Przeszukałem trochę w UDK i przeważnie próbowałem zduplikować pistolet portalu. Czy ktoś wie, czy UDK, CryEngine, Unity3D lub jakikolwiek inny silnik ma coś podobnego? Nie jestem przeciwny używaniu Source, chcę tylko wiedzieć, jakie są moje opcje.

wolfadex
źródło
1
Mało znanych silników, ponieważ większość wywodzi się z Quake'a lub używa podobnych technik. Mniejsze lub mniej znane silniki wykorzystywały portale jako podstawową technikę eliminacji scen. Pamiętam, że CrystalSpace używał portali do łączenia wszystkich sektorów (podobnie jak działał Doom / Doom2, ale w pełnym 3D). Możesz spróbować tego silnika. Nie śledziłem na bieżąco jego rozwoju, więc nie wiem, czy przeszedł na inną technikę zarządzania scenami, czy nie.
Sean Middleditch,

Odpowiedzi:

8

Jestem prawie pewien, że Source Engine to jedyny silnik, który obsługuje to po wyjęciu z pudełka. Możesz przeczytać o niektórych problemach technicznych w artykule, który znalazłem na Gamasutra , skopiowanym tutaj dla przyszłych czytelników:

„Kolejnym problemem, na jaki natrafiliśmy, była potrzeba zmiany systemów opartych na odległości, takich jak poziom szczegółowości (LOD) dla modeli, ponieważ w naszej grze odległość jest zależna od lokalizacji portalu.

Oznacza to, że obliczenia odległości stały się wyborem trzech linii łączących dwa punkty, a nie tylko jednej linii. Ponadto linia wzroku może przejść przez jeden portal więcej niż raz, aby dotrzeć do celu.

Silnik źródłowy wykonuje wiele wcześniej obliczonych optymalizacji widoczności w celu wyrównywania. Umożliwienie użytkownikom łączenia mostów widoczności z portalami zwiększyło złożoność.

W celu lepszego renderowania zaimplementowaliśmy metodę rysowania bufora szablonów dla widoków portalu, co dało nam dużą elastyczność w obsłudze głębokości rekurencji portalu. To pozwoliło nam renderować nieskończenie dużą liczbę portali (ograniczonych tylko wydajnością), co sprawiło, że nasze „nieskończone” korytarze wyglądały całkiem schludnie.

Rysowanie szablonowe pomogło nam również rozwiązać problem prawidłowej integracji z innymi technologiami w silniku Source, takimi jak rozkwit HDR. Ponieważ musimy dwa razy renderować nasze sceny dla naszych portali, włożyliśmy wiele wysiłku w to, aby portale renderowały się tak szybko, jak to możliwe, takie jak specjalne wycinanie frustum widoku na podstawie krawędzi portalu i optymalizowanie listy renderowania do rysowania portalu. „

Pamiętam też, że czytałem gdzieś, że jest wiele specjalnych przypadków, takich jak portale po przeciwnych stronach tego samego bloku. Tworzenie portali nie jest prostym zadaniem.

EDYTOWAĆ:

Znaleziono inny dobry artykuł zawierający ten artykuł :

Szybko zdaliśmy sobie sprawę, że potrzebujemy bardziej niezawodnej metody renderowania portali i umożliwienia graczowi i innym obiektom płynnego przemieszczania się między nimi. Wymagało to od nas głębszego zagłębienia się w rendering i kod fizyki silnika Source i musieliśmy zaprogramować własny system portalu.

Zasadniczo musieliśmy powiedzieć systemowi fizyki Źródła, aby wykonał tymczasową dziurę tylko z jednej strony ściany i że wszystko za portalem jest połączone z geometrią w innej części mapy. Uruchomienie tego i optymalizacja rozwiązań do działania w czasie rzeczywistym było dużym wyzwaniem.

John McDonald
źródło
Warto zauważyć, że wiele z tych problemów stanowiło trudność z dodaniem portali do istniejącego silnika Source pochodzącego z Quake2. Istnieją inne silniki, które są oparte na portalach w celu eliminowania scen od pierwszego dnia.
Sean Middleditch,
Jakie silniki polecasz?
wolfadex,
0

Możesz to zrobić w Unity3D , używając renderowania tekstur i teleportowania gracza za drugim, jeśli zajrzy on do portalu, i wyłączając wykrywanie kolizji dla drugiego portalu, a następnie, gdy gracz wyjdzie z powierzchni, możesz włączyć jego kolizję wykrycie lub jeśli on po prostu przejdzie przez to, nie patrząc na to, po prostu teleportuj go do innego portalu (tylko zgadnij, nie wiem, czy to zadziała ...), ale nie wiem o pozostałych 2 ...

Host pełzający
źródło