dAde maps

Quake 3 Arena: Org

Maposfera

Tymon's Webite

Tymon's Webite

NemiX Website

QuadQ3

Planetquake: LVL

Radiant - Level Design Tools

The ShaderLab: q3map2




powrót do requiem.prv.pl



Jump Pads

I. Na początku stworzymy prosty pad wyrzucający nas w górę, na wyższe piętro. Stworzyłem mały pokoik do prezentacji pada.

1. Textura pada rozciąga się zwykle na 4 kwadraty w radiancie. Tak więc na początku musimy zrobić blok z dowolnej textury, zajmujący 4 kwadraty, o wysokości jednego małego kwadracika.

Teraz należy jego górną ścianę pokryć texturą pada. Zaznaczamy ją i z menu "Textures" wybieramy "SFX" i odnajdujemy tam texturę pada. Najlepiej aby jego tło było takie samo jak kolor naszej podłogi.

Jeżeli textura źle leży, należy ją dopasować, by widzieć całego pada (klawisz S, przycisk "FIT").

W tym momencie należy zdecydować jaki chcemy mieć pad. Czy położony na równi z ziemią, czyli umieszczony w niej za pomocą CSG Subtracta, czy leżący na niej.

a) W pierwszym przypadku wystarczy umieścić go na równi z podłogą, a potem nacisnąć CSG Subtract i wyrównać texturę podłogi, by ładnie przylegała do textury pada (klawisz S i ustawić takie same dane, jakie ma pad - poprzednia lekcja, o CSG).

b) W drugim: Pad będzie wyglądał jak płaskie koło, widoczna będzie jedynie płaszczyzna do skakania. Zaznaczamy blok z padem (powinien leżeć na ziemi), klikamy jeden raz lewym klawiszem na widok z góry (to ustawi nam w jakim widoku ma zmienić się kształt bloku) i z menu "Brush" wybieramy "Arbitrary Sided", a w nowo otwartym oknie wpisujemy np. "20". Powstanie nam wcześniej wspomniane koło. Zwykle używając tej opcji, cały blok ponownie przybiera wygląd pierwotnej textury, więc należy znów zmienić jego górną ścianę na ścianę pada.

Możemy o połowę zmienić jego wysokość, korzystając z menu "Grid" - "Grid4".

To było jedynie ustalenie wyglądu pada. Sama textura nas nie popchnie w górę. Jeżeli teraz skończymy, to w grze, po wejściu na pada nic się nie stanie. By pad działał trzeba jeszcze zrobić triggera - texturę, której nadajemy różne funkcje - w tym wypadku funkcję pchnięcia (push). A więc po kolei:

2. Z menu "Textures" wybieramy "Common", a z okna textur (T) - "Trigger"

Następnie robimy blok, który powinien leżeć na texturze pada. Dobrze by było, aby był tej samej wielkości, co pad. Także może mieć kształt koła, by nie zdarzyła się sytuacja, że przechodząc obok pada, ten nagle nas wyrzuci w górę. Jeżeli wybraliśmy drugą co do budowy pada (leżące koło na ziemi) to powinniśmy texturę z triggera zrobić nieco wyższą (o 1 kwadracik). Nie jest to jednak konieczne.

Triggera nie odznaczamy, ponieważ trzeba jeszcze mu przypisać opcję pchnięcia (sam trigger nic nie robi). W jednym z widoków 2D klikamy prawym przyciskiem i z menu kontekstowego wybieramy "trigger" - "trigger_push".

Funkcję pchnięcia już mamy. Teraz należy ustalić w jakie miejsce (na jaką wysokość, do jakiego punktu) trigger będzie nas wybijał. W tym celu odznaczamy texturę triggera. W widoku np. z góry klikamy prawym klawiszem i wybieramy "target" - "target_position"

Pojawił nam się zielony kwadracik, który jest "celem" wybicia. Przesuńmy go na jakąś wysokość nad padem, tak abyśmy np. wskoczyli na wyższe piętro. Czyli należy go umieścić jakies 2 duże kwadraty nad płaszczyzną piętra, w małej odległości od jego krawędzi (byśmy skacząc przypadkiem nie zaczepili o podłogę naszej platformy)

Kolejnym krokiem będzie połączenie triggera i targeta ze sobą (w końcu skąd trigger ma wiedzieć, w kierunku jakiego targeta ma wybić, jeżeli na mapie jest np. takich wiele?). Tak więc nie odznaczając kwadraciku targeta wchodzimy w jego właściwości (klawisz N) i tam piszemy w polu KEY: "targetname" (czyli nazwa celu), a w polu VALUE: "push1" (każdy target musi mieć swoją, dowolną, niepowtarzającą się nazwę). Naciskamy enter i nazwa celu jest nadana.

Wychodzimy z okienka właściwości, a następnie odznaczamy targeta. Teraz zaznaczamy triggera i wchodzimy w jego właściwości, a tam wpisujemy w KEY: "target" (czyli cel), a VALUE: "push1" (nazwa musi być taka sama, jak nazwa targeta, ponieważ wchodząc na pada trigger wybije nas do celu o nazwie "push1"). Naciskamy enter i wychodzimy z okienka.

Trigger i target połączyły się zieloną linią. Pad jest skończony.

Możemy skompilować mapę i przetestowac pada. (Nie zapomnijcie o pozycji startowej i światłach [jeżeli pokój jest zamknięty, bez nieba] !) Jeżeli źle nas wybija (np za nisko, czy za wysoko, lub zaczepiamy o ścianę - wracamy do radianta i zmieniamy położenie targeta).

Tak wygląda pierwszy pad:

II. Drugi rodzaj jump-pada to taki, pchający nas na inną platformę, na tym samym poziomie, lub wyższym, ale oddalonym o kawałek drogi (coś jak pady na q3dm17 do raila). Wyżej był to opis prostego pada, który wybija nas w górę. Można też zrobić, że powyższy pad będzie nas przenosił między platformami, jednak jego textura bardziej pasuje do pionowego odbijania się. O wiele lepiej wygląda druga textura i mała konstrukcja pada, którą za chwilę tu opiszę.

1. Najpierw konstrukcja. Do prezentacji pada użyłem tego samego pokoiku, co w przypadku 1. Jest to podłużna konstrukcja z dwoma platformami.

Na jednej z platform umieścimy pada. Najpierw zróbmy jego szkielet. Będzie to pochylony blok z texturą pada na górze. Zróbmy coś takiego, jak na poniższym rysunku. Prostokątny blok, a na jego górną ścianę połóżmy texturę z grupu "SFX", np: "launchpad_blocks16d". Niestety nie ma tego typu pada o texturze takiej, jak podłoga, którą tu użyłem, więc nieco nieestetycznie to wygląda:P Ale do nauki to nieistotne.

Teraz zedytujmy ten blok (zaznaczamy i naciskamy klawisz V), by wyszło nam coś takiego:

2. Następne czynności są takie same jak opisywane wyżej, w punkcie 2. Różnią się jedynie kształtem triggera (będzie pochylony prostokąt zamiast koła), nazwami celów (targetów) - zamiast "push1" będzie "push2", oraz położeniem targeta. Myślę, że stosując się do powyższych wskazówek, nie powinno wam to sprawić kłopotów. Opisze jeszcze w skrócie ułożenie targeta do takich padów (przemieszczających nas na odległość). Cel takiego pada powinien być umiejscowiony mniejwięcej w połowie drogi (może troche więcej niż połowa) między obiema platformami oraz powinien leżeć w pewnej wysokości nad platformą, do której prowadzi. Nie wiem jak to dokładnie działa, ale zależy to od odległości między plaftormami - im dalej, tym wyżej target. Trzeba za każdym razem kompilowac mapę i sprawdzać jego działanie, by nie było takich motywów, że robiąc mapę kosmiczną wchodzicie na pada, a ten wybija was w przestrzeń za platformą, do której chcieliście się dostać, lub nie dolatujecie tam. W moim przypadku stosunek odległości między platformami, do wysokości ułożenia targeta wynosi: 8:2 (8 - odległość w dużych kwadratach między platformami, do 2 - wysokość ułożenia targeta, również w dużych kwadratach w odniesieniu do poziomu platform). W takim wypadku skok jest w sam raz. Ale powtarzam jeszcze raz - pady wymagają testów. Wynik mojej pracy widać poniżej: