Praca gamedev - wymagania.

Praca gamedev - wymagania.
DC
  • Rejestracja:około 4 lata
  • Ostatnio:28 dni
  • Postów:3
0

Cześć,

Czy są na forum osoby pracujące w gamedev jako programiści? Chciałbym zapytać o kilka informacji. Jak wyglądają wymagania dla osób chcących wejść w temat? Z reguły w ofertach jest to dosyć ogólnikowo opisane, jak wygląda to faktycznie? Interesuje mnie temat UE oraz C++, co poza tym? W jakim stopniu dwa powyższe? Jak wygląda praca od kuchni? Jeśli nie chcesz udzielać informacji publicznie chętnie pogadam przez priv. Z góry dziękuję za wszelkie informacje 🙂

Boski
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 2 godziny
  • Postów:132
0

Pracuję w gd ale w unity/c#, na jakieś ogólnogamedevowe pytania mogę Ci odpowiedzieć

Z takich niezależnych od technologii na plus może być:

  • umiejętność korzystania z repozytoriów (z tego co wiem większość na unrealu leci z Perforce lub ew Plastic)
  • portfolio własnych projektów
  • próbki kodu (nie musi być cały projekt, może być plugin własnego autorstwa, albo jakiś moduł)
  • udziały w gamejamach

nie skupiałbym się na blueprintach, ale na kodzeniu w c++

unreal ability system - to często przewijało mi się w ogłoszeniach jako wymaganie

edytowany 1x, ostatnio: flowCRANE
Spine
  • Rejestracja:prawie 22 lata
  • Ostatnio:14 minut
  • Postów:6632
0
Dave_Cx napisał(a):

Interesuje mnie temat UE oraz C++, co poza tym? W jakim stopniu dwa powyższe?

W stopniu pozwalającym na stworzenie kompletnej gry.
Na pewno powinieneś mieć w swoim portfolio przynajmniej jakieś demko pokazujące Twoje poczynania.
Najlepiej jakaś gierka, której mechanika jest zbliżona do projektu firmy, do której się rekrutujesz.
Może w tej grze być nawet jeden grywalny poziom.
Bo przecież jak już masz zaprogramowane wszystkie elementy rozgrywki, to zrobienie kolejnych poziomów to robota dla grafików i level designerów.

Jeśli chcesz wejść do firmy jako początkujący, to musisz poszukać/poczekać na staż dla początkujących.
Ale jeśli chcesz od razu siąść do projektu danej firmy, to wypadałoby żebyś wcześniej wykazał się w boju...


🕹️⌨️🖥️🖱️🎮
edytowany 2x, ostatnio: Spine
WhiteLightning
  • Rejestracja:prawie 14 lat
  • Ostatnio:około 2 godziny
  • Postów:3169
1

@Spine ale prosta kompletna gre robisz teraz w kilka godzin z AI, z tego polowa czasu to ogarniecie tymczasowych assetow.

Zobacz pozostałe 3 komentarze
obscurity
miało nie wyglądać jak g... :) w grze 99% czasu zajmuje dopracowanie prostych elementów żeby było grywalnie, a AI tego nawet ogarnie bo nie będzie mogło zagrać i poczuć gry. Tu widać że jest najprostsze możliwe sterowanie i animacje. Te czołgi nawet nie skręcają tylko poruszają się jak pająki. Wyklikałbym to w 15 minut w unity bez żadnego kodu
WhiteLightning
@obscurity: wyklikaj i wrzuc, chetnie zobacze co mozna w 15 minut zrobic
obscurity
@WhiteLightning: ale gdzie jest limit użycia assetów bo równie dobrze mogę użyć gotowego szkieletu gry i dodać swój napis. Nie trudno zrobić klona istniejącej gry z popularną mechaniką - z czy bez AI
WhiteLightning
zalozmy ze mozesz uzywac pojedyncze grafiki, dzwieki itp. zdrowy rozsadek, z klonem wiadomo, gitlab clone jakiejs gry Open Source, zmiana drobiazgu i juz :)
obscurity
no właśnie mi o to chodzi że AI to nie wiele więcej niż klon kodu jakiejś gry open source ze zmianą drobiazgu. AI nie wprowadził żadnej rewolucji do gamedevu bo już wcześniej można było zrobić grę korzystając z gotowych klocków w parę h. AI pomaga znaleźć te klocki ale jak już się znajdzie jakiś błąd to zazwyczaj błądzi w kółko i proponuje to samo rozwiązanie. Nie jest też najlepsze w łączeniu klocków ze sobą i finalnie zazwyczaj musi wkroczyć człowiek i nagle wchodzi w spaghetti o którym nie ma pojęcia bo wszystko robiło AI i łatwiej to wszystko zaorać i zrobić od początku
Boski
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 2 godziny
  • Postów:132
1

Właśnie dlatego nie wspominałem o całym, kompletnym projekcie (choćby małym) bo wtedy pojawia się kwestia architektury, relacji między klasami i komunikacji między nimi.
To cały temat rzeka, nie wymaga się super ogarniania tego od juniora, ale ai to nie radzi sobie z tym całkowicie.
Całkiem dobrze sobie radzi jak chcesz, żeby napisał Ci fragment kodu odpowiedzialny za xxx.
A jak zrobisz wiele takich fragmentów, i chcesz je później połączyć, każdy w innym stylu i sposobie, no to problem.
Można podobnie powiedzieć, że odpalasz 3-4 kursy na youtube, robisz w dzień grę i wysyłasz - ale w kontekście pracy zawodowej to też słabo - większość samozwańczych mentorów z youtube uczy tylko złych nawyków, albo swoich własnych, oderwanych od rzeczywistości teorii. Fajnie, że działa - nie neguję tego - ale no w pracy trzeba czegoś więcej.

DC
  • Rejestracja:około 4 lata
  • Ostatnio:28 dni
  • Postów:3
0

Dziękuję za liczne odpowiedzi. No właśnie i tu pojawia się temat, że trzeba czegoś więcej. Czym jest to "coś więcej" skąd czerpać takie info? Zakładam że w przypadku projektów większości gier jest wiele ról programistycznych i nie każdy jest one man army tylko odpowiada za konkretną cześć kodu/mechaniki gry. Jeśli chodzi o staże czy z waszego doświadczenia są one skierowane głównie dla młodych? Studentów? Czy nie ma to znaczenia. Na codzień zajmuje się programowaniem zgoła innym tematycznie. Czy są takie opcje żeby zaczynać stażem/praktykami i łączyć to z dotychczasową pracą?

Boski
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 2 godziny
  • Postów:132
1

Z tym coś więcej pisałem kontekście architektury i całych projektów wysyłanych razem z cv. A tak to myślę, że najlepszy jest czas. Jak na własnych doświadczeniach / prywatnych projektach człowiek się uczy, dochodzi do tego co działa lepiej co gorzej, wiadomo posiłkując się rzeczami z internetu, ale nie bezmyślnie przepisując.

nie każdy jest one man army tylko odpowiada za konkretną cześć kodu/mechaniki gry

W zależności od rozmiaru firmy. W małych firmach przy kilku programistach, to każdy robi wszystko, zwłaszcza bliżej premiery.
W większych firmach pojawiają się specjalizacje. Ktoś ogarnia gameplay, ktoś programuje UI, ktoś multiplayer.

Nie wiem jak staże, ale dodam tylko, że trzeba uważać mocno na januszy biznesu. Mam wrażenie, że w tej branży pojawiają się o wiele częściej.
Żeby nie być gołosłowny, z samego ostatniego roku (a o wielu akcjach pewnie nie wiadomo):
https://cdaction.pl/publicystyka/wygrali-sprawy-sadowe-ale-dalej-nie-odzyskali-wyplat-pracownicy-sheepyard-games-w-trudnej-sytuacji
https://www.cdaction.pl/publicystyka/prezes-opuscil-firme-teraz-developerom-nie-ma-kto-zaplacic-za-prace-absurdalna-sytuacja-w-brave-lamb
https://www.cdaction.pl/publicystyka/zaleglych-wyplat-nie-przelewa-od-niemal-roku-dzis-dziala-w-kanale-zero-tak-o-prezesie-intermarum-mow
https://cdaction.pl/publicystyka/nie-otrzymali-wyplat-zostali-zwolnieni-czuja-sie-oszukani-dramat-pracownikow-ironbird-creations-i-kr

Jeszcze jedno przemyślenie:
Warto poprzeglądać oferty, nawet już te nieaktualne. I poczytać czego wymagają. Jedno z ostatnich z działu programowanie ze skillshota (pod unreal):

Dobra znajomość narzędzi silnika (UMG, Materials, Behavior Tree itd.)
Znajomość popularnych pluginów i frameworków (GAS, Lyra, ALS i inne) lub chęć się ich nauczenia.

i już wiadomo czego się poduczyć/o czym poczytać. Zwłaszcza jak w kilku ogłoszeniach wymagają tego samego.

Spine
  • Rejestracja:prawie 22 lata
  • Ostatnio:14 minut
  • Postów:6632
0
WhiteLightning napisał(a):

@Spine ale prosta kompletna gre robisz teraz w kilka godzin z AI, z tego polowa czasu to ogarniecie tymczasowych assetow.

Jeśli masz jakiekolwiek doświadczenie, to może tak.
Jak ktoś jest nemo, to nawet z AI mu zejdzie dłużej.

A na rekrutacji i tak wyjdzie nieznajomość podstaw, jeśli zadadzą Ci kilka pytań na temat projektu tworzonego zbyt niesamodzielnie.


🕹️⌨️🖥️🖱️🎮
JD
  • Rejestracja:8 miesięcy
  • Ostatnio:około 2 miesiące
  • Postów:65
0

Ogólnie to weź też pod uwagę ten aspekt, że gamedev to jedna z najgorszych psychicznie dziedzin IT.
Nikt ci nie zabrania pisać gier, tylko dobrze poczytaj w co się pakujesz.

Gamedev znany jest z bezlitosnych deadline'ów i wyciskana nienormalnej normy z pracowników.
Poczytaj anonimowe wypowiedzi w necie o ludziach, którzy nieraz zostawali na noc w biurze, bo deadline'y są tak napięte, że robią darmowe nadgodziny przez całą noc. Gra została np. zapowiedziana na 10 grudnia i nie ma opcji, że jej firma nie zrobi. Nieważne, czy siłą, terrorem, mikrozarządzaniem czy innymi taktykami, ale pracownicy są sprowadzani do parteru i mają tak zasuwać że ta gra ma się po prostu pojawić nawet jak będą wycieńczeni i głodni, nikogo ich zdrowie nie obchodzi. Nadgodziny to w zasadzie codzienność, poganianie i pospieszanie na każdym kroku. Nie mówię, że w innych dziedzinach tego nie ma, ale w gamedev to po prostu już norma zaakceptowana przez społeczeństwo, a potem wychodzi np. gra strzelanka z błędami, w której nie da się zmienić broni, ale deadline był ustawiony i torturowani psychicznie pracownicy dowieźli badziewie zgodnie z deadlinem.

Nie robię w grach, ale zaznaczam ci tylko, byś sobie poczytał w internecie prawdziwe komentarze jak wygląda gamedev w praktyce (nie słodkie i propagandowe filmiki z wytwórni).

Mnie najbardziej wkurza obecne upolitycznianie gier i lewackie lobby od dziwnego tworu sweet baby inc. Na szczęście nie ma tego wszędzie, ale developerem też ryją wtedy beret 😄 Bardziej jako odbiorca się zdziwiłem jak po kilku latach zainstalowałem sobie league of legends i zobaczyłem postacie murzynów robione tylko specjalnie pod serial na netflixie czy normalne animacje w grze zastąpione jakimiś gejowskimi narzutkami. Odinstalowałem natychmiast zanim się porzygałem.

edytowany 1x, ostatnio: JunDev
loza_prowizoryczna
  • Rejestracja:ponad 2 lata
  • Ostatnio:około 6 godzin
  • Postów:1606
1
JunDev napisał(a):

Ogólnie to weź też pod uwagę ten aspekt, że gamedev to jedna z najgorszych psychicznie dziedzin IT.
Nikt ci nie zabrania pisać gier, tylko dobrze poczytaj w co się pakujesz.

Gamedev znany jest z bezlitosnych deadline'ów i wyciskana nienormalnej normy z pracowników.

Piszesz o gamedevie gdzie robią w zasadzie korpo-maszynki. Bez urazy ale w korpo nie ostają się najbystrzejsi (w żadnej branży). To co piszesz dot. właśnie ich, pewnie zakredytowanych, autystycznych, ew. bojących zmian. Takich się wyciska w każdej branży bez różnicy (jeden taki dziennikarz z TV skończył w schowku na miotły).

Ale jest gamedev o którym się nie mówi bo to niepoprawne - ten od wirtualnych maszynek pachino po alternatywy Leisure Suit Larry bez mrugnięcia okiem. Tym się ludzie nie chwalą a tam są prawdziwe pieniądze i innowacja.


Przetrzyma wszystko
DC
  • Rejestracja:około 4 lata
  • Ostatnio:28 dni
  • Postów:3
0

Dziękuję za odpowiedzi. Gdzie szukać ogłoszeń? Skillshot, Nfj, jjit? Czy odżywanie się bezpośrednio do danego dewelopera to dobry pomysł?

Boski
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 2 godziny
  • Postów:132
1

bezpośrednio, bez ogłoszenia - robiłem tak jak szukałem pierwszego stażu/praktyki na studia, i w 1 przypadku zadziałało. Pracy nigdy tak nie szukałem, ale czemu by nie spróbować. Tylko teraz jest niezbyt ciekawa sytuacja, dużo ludzi szuka pracy, może być ciężej. Skillshot i kiedyś na justjoin było nieco ofert

Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)