Sign in to follow this  
Fandy

Hammer World Editor (Tworzenie map CS:GO) - #3 "Wyposażenie" pomieszczenia

Recommended Posts

Poprzedni poradnik: Hammer World Editor - #2 Pierwsze pomieszczenie
 

CS:GO SDK


Hammer World Editor - "wyposażenie" pomieszczenia


 


 
Zaczynamy oczywiście w miejscu gdzie skończyliśmy ostatni poradnik. Mamy przygotowane pomieszczenie, wystarczy wyposażyć.
 
*props*
 
Zanim jednak przejdę do tworzenia elementów wyposażenia chciałbym wprowadzić byt prop_static, prop_dynamic oraz prop_physics które znajdują się w obiektach narzędzia Entity Tool xod6Blw.png
Najprościej mówiąc są to gotowe modele różnych obiektów o 3 głównych właściwościach, mianowicie:
 
prop_static - model statyczny, którego nie można ruszyć w grze
prop_dynamic - model dynamiczny który ma swoją animację i wykonuje ją w pętli
prop_physics - model fizyczny "spełniający" prawa fizyki w cs:go (np. jeżeli strzelimy w butelkę stojącą na ziemi, ta odskoczy na pewną odległość)

  • oświetlenie pomieszczenia


Zatem już na przykładzie, zróbmy jakąś lampę w środku naszego pomieszczenia za pomocą prop_static - wybieramy narzędzie Tworzenia bytów, szukamy w obiektach prop_static i umieszczamy w pomieszczeniu.
 
27Ao7Vi.png
 
Umieszczony byt widać jako taką bryłę, aby zmienić to w lampę - mając zaznaczony obiekt klikamy Alt+Enter
 
 
VLQVPOP.png
 
W tym okienku interesuje nas konkretnie World Model - zaznaczamy z listy właściwości i klikamy Browse po prawej na górze.
 
 
LVelyrq.png
 
Oto i okienko wyboru modelu dla naszego prop_static
Upewnij się że masz zaznaczone MDL Files aby można było przeglądać wszystkie modele a nie tylko z poszczególnych kategorii czy map.
 
*szybkie omówienie funkcji*:
Nad filtrem wyszukiwania mamy okienko modeli z których wybieramy co nam pasuje, natomiast zakładki pod podglądem umożliwiają kolejno (tylko najważniejsze): 
 
Render:
Wireframe - pokazuje szkielet modelu
Collision Model - pokazuje miejsca kolizji
No Ground - ukrywa otoczenie modelu
 
Sequences - pokazuje inne animacje wybranego modelu - jeśli takowe istnieją
 
Skins - pokazuje inne oteksturowanie modelu - jeśli takowe istnieje 
 
Info - pokazuje informacje czy wybrany model może być użyty jako prop_static / prop_dynamic / prop_physics

  • cd. oświetlenia


Kontynuując tworzenie lampy wpisujemy w filtrze np. light, wybieramy model który nas interesuje i potwierdzamy OK a następnie, w kolejnym okienku Zastosuj.
Po umiejscowieniu naszej lampy zostaje dodać źródło światła, bo sam model oczywiście nie daje.
 
Wybieramy ponownie narzędzie Tworzenia bytów i z obiektów wybieramy light. Ustawiamy w miejscu modelu lampy, lekko poniżej.
Włączamy okienko właściwości (Alt+Enter), zaznaczamy Brightness i wybieramy kolor RGB oraz jasność. Powinno być to wpisane w takim formacie: 
 
ZnkwPqK.png
 
Efekt w grze:
kAGUqy1.jpg

  • drzwi


Drzwi można zrobić na dwa sposoby:
 
1) używając prop_door_rotating - jeśli chcemy gotowy model i np. aby drzwi można było "podziurawić" tak jak na de_nuke (aby można było zniszczyć drzwi musi być oczywiście w informacji o modelu zaznaczone phisics)
*Pamiętaj!  Wielkości bytów props nie można zmieniać (można ale nie teraz o tym :D)  
 
2) tworząc bryłę w kształcie drzwi, nakładając teksturę i zmieniając w byt (Ctrl+T) func_door lub func_door_rotating
 
func_door - aby drzwi otwierały się przesuwając się np. do góry
func_door_rotating - aby drzwi otwierały się o ustawiony kąt
 
Zróbmy drzwi przesuwane na przycisk drugim sposobem. Tworzymy więc bryłę w otworze na drzwi i zmieniamy w byt (Ctrl+T) func_door.
Właściwości jest sporo więc polecam się pobawić a ja wspomnę tylko o najważniejszych, mianowicie:
 
Name - nadajemy nazwę tak aby przycisk który zrobimy wiedział co uruchomić
Delay before reset - ustawiamy czas po którym otworzone drzwi zamkną się samoczynnie - jeśli nie chcemy aby same się zamykały wpisujemy -1
Lip - dodatkowa wartość o ile drzwi przesuną się we wskazanym kierunku (jeśli nic nie wpiszemy drzwi przesuną się o swoją szerokość/długość - zależy w którą stronę otwieramy - więc zleją się z teksturą ściany gdzie zaczyna się otwór, czego nie chcemy)
Move Direction - kierunek w którym mają się otworzyć - zaznaczamy go na kółeczku pokazanym na screenie poniżej (kierunek na kółku odpowiada widokowi z góry) lub z listy obok Up/Down
OCLsAM1.png
 
Teraz przechodzimy do zakładki Flags i odznaczamy Touch Opens aby nasze dotknięcie nie spowodowało otworzenia drzwi.
 
Drzwi gotowe, przechodzimy zatem do przycisku. Tworzymy kolejną byłe na ścianie obok drzwi w kształcie przycisku i teksturujemy. Następnie zmieniamy w byt func_button, standardowe ustawienia właściwości wystarczą więc przechodzimy do zakładki Outputs
 
xD04Gui.png
 
My output named - wybieramy tam akcję na którą zareaguje nasz przycisk 
Targets entities named - wybieramy nazwę obiektu na który ma zadziałać przycisk - czyli nazwę drzwi, w moim przypadku to door_1
Via this input - funkcja która ma zadziałać po uruchomieniu przycisku - w tym przypadku Toggle - czyli przełącznik aby można było otworzyć i zamknąć drzwi
 
We flagach tym razem zaznaczamy: 
Don't move - aby po wciśnięciu przycisku ten nie ruszał się
Toggle - przełącznik on/off (bez tego też zadziała - bo ustawiliśmy to w Outputs - ale z tym można szybciej przełączać)
Use Activates - aby klawisz użycia w cs:go uruchomił przycisk 
 
Efekt w grze:
http://i.imgur.com/9QTQVUQ.mp4

  • okna


Stworzymy 2 okna - jedno które rozbije się po jednym uderzeniu/strzale i drugie które częściowo będzie się rozpadało tak jak np. na cs_office
 
1) Tworzymy więc bryłę w otworach na okna (grubość najlepiej 2-4 jednostek) i teksturujemy całą na Nodraw poza jedną dowolną stroną przez którą będziemy patrzyli w grze i nakładamy tam teksturę urban_glass_03 - dlaczego akurat taka? Ponieważ jako że nakładamy teksturę tylko na jedną stronę ta musi być tak zrobiona aby było ją widać z obu stron w grze (jeśli oczywiście chcemy aby było ją widać z obu stron) - tak jest właśnie z teksturą urban_glass_03
 
Teraz zmieniamy naszą bryłę w byt o nazwie func_breakable - opcji również sporo ale tutaj zostawimy domyślne
 
2) Robimy tak samo jak pierwsze z wyjątkiem zmiany bytu na func_breakable_surf oraz tekstury na prodwndwa która również jest specjalnie stworzona do częściowo niszczących się szyb.
 
Efekt w grze:
http://i.imgur.com/TZNSw0V.mp4
 

  • więcej props'ow - zastosowanie prop_dynamic i prop_physics


Tworzymy byt prop_dynamic i tak jak z prop_static wybieramy model - przykładowo wrone. Jak widać na screenie niżej w zakładce Sequences są różne animacje, ja wybrałem Eat_A
 
T7Q7ZBu.png
 
Aby ptak rzeczywiście wykonywał animacje trzeba wpisać jej nazwę do właściwości w pierwszej zakładce prop_dynamic w miejscu Default Animation
 
Możemy zrobić jeszcze prop_physics - wybieramy więc jakiś model np. butelkę, upewniamy się że ma właściwości physics w zakładce Info w oknie wyboru modelu i ustawiamy na mapie.
 
Efekt w grze:
http://i.imgur.com/8NSVVsE.mp4

  • Shoot frag! (+) 2

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.