Autor Wątek: UE3 darmowy  (Przeczytany 23189 razy)

Offline ConayR

  • Użytkownik

# Listopad 09, 2009, 03:49:49
Po takim interview pracownik powinien się trzy razy zastanowić, czy naprawdę chce tą pracę, bo najprawdopodobniej po przyjęciu wpakują go w crunch mode do łatania bugów w silniku. ;)
O to, to, to! Jeśli ktoś nie ma dla siebie szacunku, to polecam pracę w firmie, w której rekrutacja przebiega tak, jak opisał therealremi. Praca nie polega na ślepopoddańczym wykonywaniu rozkazów a na współpracy w grupie - bez względu na wiek, doświadczenie i pay grade. Firmy, w których rekruter gardzi aplikantem to firmy, które długo na rynku nie pożyją - przez takie powalone sito nikt normalny nie przejdzie (bo nie powinien).

Wszystko pięknie brzmi na papierze. W praktyce sprowadza się to do tego, że trzeba się uczyć wszystkiego, bo każdy senior z którym nam przyjdzie rozmawiać ma inny zestaw "podstawowych algorytmów i zagadnień". Rezultat: najlepsze szanse na dostanie pracy masz pisząc własny silnik / reimplementując bibliotekę standardową 
Ciekawe jak się dostaje pracę w MS nie mając na koncie systemu operacyjnego. Postulowana przez Ciebie praktyka jest chora, to wypaczenie idei rekrutacji. Pozostaje współczuć takich doświadczeń. Jakieś konkretne nazwy może? Będę wiedział których firm unikać. :)

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

st3tc

  • Gość
# Listopad 09, 2009, 15:26:05
Jakieś konkretne nazwy może? Będę wiedział których firm unikać. :)

Nie mógłbym tu podać z czystym sumieniem nazwy firm, bo to konkretni pracownicy okazali się twardogłowi/chcieli mi coś udowodnić. Może mieli zły dzień, może już tam nie pracują, może w rekrutacji uczestniczą tam tylko niskopoziomowcy z misją. Myślę, że zespoły z takim podejściem odfiltrujesz zwracając uwagę na to ile czasu zajmuje im produkcja jednej gry.
BTW mi się czerwone światełko zapaliło jak zapytali mnie się ile czasu zajęło by mi zaimplementowanie renderera do liczenia lightmap (czyli czegoś co bardzo dobrze działa w maxie - ich podstawowym pakiecie 3d)  ;)
*Nie żebym uważał się za nie wiadomo kogo, ciągle się uczę; to tylko moje ostrzeżenie dla osób, które w przyszłości chcą szukać pracy


Offline yarpen

  • Użytkownik

# Listopad 09, 2009, 15:33:12
BTW mi się czerwone światełko zapaliło jak zapytali mnie się ile czasu zajęło by mi zaimplementowanie renderera do liczenia lightmap (czyli czegoś co bardzo dobrze działa w maxie - ich podstawowym pakiecie 3d)  ;)
*Nie żebym uważał się za nie wiadomo kogo, ciągle się uczę; to tylko moje ostrzeżenie dla osób, które w przyszłości chcą szukać pracy
Nie chce zeby wyszlo, ze sie czepiam, ale wiele firm ma swoje bakery do lightmap, mimo "bardzo dobrego" dzialania w Maxie (Bungie na przyklad). Ba, wiele kupuje Beasta za ciezkie pieniadze. Oczywiscie, mozemy zakladac, ze sa idiotami i marnuja czas i pieniadze.
[Edit] Zeby rozwinac nieco temat... Czesto tez pytania tego typu na rozmowie naprawde nie sa po to, zebys od razu siadal i pisal renderer, chodzi o to czy masz ogolna idee. Swego czasu zadawalismy jakies pytanie zwiazane z rozchodzeniem sie dzwieku. Wielu osobom ciezko bylo sie przestawic na tryb "kombinowania" i byly przekonane, ze mamy z tym problem, wiec dostawalismy np. odpowiedzi typu: "uzyjcie FMODa". Odpowiedz niezla, ale w pytaniu chodzilo raczej o zobaczenie jak kandydat kombinuje. Ja lubie pytac o to jak wydlubac skladowe RGB z koloru 5:6:5 (czy jakiegokolwiek innego). Nie dlatego, ze chcemy zeby kandydat nam pisal konwertery do bitmap przeciez... Oczywiscie, jezeli ktos w kazdym pytaniu weszy podstep, to rozmowa robi sie nerwowa.
« Ostatnia zmiana: Listopad 09, 2009, 15:37:36 wysłana przez yarpen »

Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Listopad 09, 2009, 15:38:29
Cytuj
BTW mi się czerwone światełko zapaliło jak zapytali mnie się ile czasu zajęło by mi zaimplementowanie renderera do liczenia lightmap (czyli czegoś co bardzo dobrze działa w maxie - ich podstawowym pakiecie 3d)  ;)
Poprawna odpowiedź: pięć minut w MaxScripcie. ;)

Cytuj
Nie chce zeby wyszlo, ze sie czepiam, ale wiele firm ma swoje bakery do lightmap, mimo "bardzo dobrego" dzialania w Maxie (Bungie na przyklad). Ba, wiele kupuje Beasta za ciezkie pieniadze. Oczywiscie, mozemy zakladac, ze sa idiotami i marnuja czas i pieniadze.
Painkillera rozlightmapowano w Mayi i jakoś niczego mu nie brakowało. Inna kwestia, że fakt, firmy piszą własne bakery, ale robią to na pewno z innym podejściem niż "jak najszybciej można to zrobić, bez żadnych określonych wymagań na jakość tych lightmap". :)

Offline yarpen

  • Użytkownik

# Listopad 09, 2009, 15:42:54
Painkillera rozlightmapowano w Mayi i jakoś niczego mu nie brakowało. Inna kwestia, że fakt, firmy piszą własne bakery, ale robią to na pewno z innym podejściem niż "jak najszybciej można to zrobić, bez żadnych określonych wymagań na jakość tych lightmap". :)
Daj spokoj, baker z PK byl nie byl natywny z Mayi tylko pisany przez Sebe przez kilka miesiecy i ciagle usprawniany. W wielu grach wstawia sie propsy z edytora, nie w pakiecie 3D, ciezko wtedy to porzadnie wypalic.
Kurde, trzeci edit, dopiero doczytalem o wymaganiach co do jakosci lightmap... Prosze Cie... Poczytaj papiery Bungie o ich bakerze.
« Ostatnia zmiana: Listopad 09, 2009, 15:46:07 wysłana przez yarpen »

Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Listopad 09, 2009, 15:49:55
Cytuj
Daj spokoj, baker z PK byl nie byl natywny z Mayi tylko pisany przez Sebe przez kilka miesiecy i ciagle usprawniany. W wielu grach wstawia sie propsy z edytora, nie w pakiecie 3D, ciezko wtedy to porzadnie wypalic.
Skoro tak twierdzisz... Po prostu czytając dokumentację edytora PK odniosłem wrażenie, że wypalali to w Mayi. Właściwie to odniosłem wrażenie, że w Mayi robili wszystko, łącznie z ustawianiem wszystkich elementów, rozkładaniem UV pod lightmapy i samymi lightmapami, żeby w edytorze PK powstawiać już tylko elementy ruchome i parę innych rzeczy potrzebnych do silnika. No ale mogę się mylić.

Offline yarpen

  • Użytkownik

# Listopad 09, 2009, 15:52:02
Skoro tak twierdzisz... Po prostu czytając dokumentację edytora PK odniosłem wrażenie, że wypalali to w Mayi. Właściwie to odniosłem wrażenie, że w Mayi robili wszystko, łącznie z ustawianiem wszystkich elementów, rozkładaniem UV pod lightmapy i samymi lightmapami, żeby w edytorze PK powstawiać już tylko elementy ruchome i parę innych rzeczy potrzebnych do silnika. No ale mogę się mylić.
Wypalali to w Mayi, ale nie w bakerze out-of-the-box, tylko mocno poskryptowanym (nie 5 minut w MELu :))

st3tc

  • Gość
# Listopad 09, 2009, 16:01:32
Żeby było jasne, nie aplikowałem do Bungie ;) Może i w tej firmie X mają ambicje być takim Bungie, no ale zobaczymy na ile finansowanie im pozwoli.
Nikt mi nie wmówi, że jest sens pisać renderer na potrzeby liczenia lightmap w grze, który ma konkurować pod względem jakości z maxowym Mental Rayem albo LightTracer + HDRI. Chyba, że Microsoft pompuje w studio tyle kasy, że naprawdę nie wiadomo co z nią zrobić.

Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Listopad 09, 2009, 16:11:00
Nikt mi nie wmówi, że jest sens pisać renderer na potrzeby liczenia lightmap w grze, który ma konkurować pod względem jakości z maxowym Mental Rayem albo LightTracer + HDRI.
Sam renderer z liczeniem lightmap akurat nie ma tak wiele wspólnego, bo w przypadku lightmap stosuje się nieco inne techniki. Poza tym są pewne rzeczy, których standardowe bakery jeszcze nie zwykły oferować (typu normalmapped radiosity).

st3tc

  • Gość
# Listopad 09, 2009, 16:34:18
Nikt mi nie wmówi, że jest sens pisać renderer na potrzeby liczenia lightmap w grze, który ma konkurować pod względem jakości z maxowym Mental Rayem albo LightTracer + HDRI.
Sam renderer z liczeniem lightmap akurat nie ma tak wiele wspólnego, bo w przypadku lightmap stosuje się nieco inne techniki. Poza tym są pewne rzeczy, których standardowe bakery jeszcze nie zwykły oferować (typu normalmapped radiosity).

Wypiekałeś kiedyś w ogóle lightmapy w maxie? Bez żadnych wygibasów jesteś w stanie dostać rezultat identyczny z normalnym renderingiem, więc nie widzę powodów żebym miał interesować się algorytmami wypiekania lightmap. Szczerze mówiąc nie wiem czy są "pewne rzeczy" których render to texture maxa jeszcze nie wspiera i czy one coś istotnego wnoszą, ale wątpie ;) W każdym razie, gdym ja sam był w stanie takie coś napisać w sensownym czasie to pobiegłbym natychmiast na interview do Autodesku, zarabiać kilkadziesiąt razy więcej niż w firmie X ;)
IMHO argument, że są firmy, które piszą własne renderery do lightmap jest taki sobie. Np. pamiętam, że edytor oryginalnego Far Cry miał taką funkcjonalność. Pomijając fakt, że Crytek to firma z mega budżetem i ten renderer rzeczywiście działał szybko, to i tak rezultat umywał się do tego co dobry grafik mógły zrobić w maxie.

Offline human

  • Użytkownik

# Listopad 09, 2009, 16:52:35
Wracajac do tematu, wątpie, żeby wszystkie firmy zaczęły teraz używac silnika Unreala bo:
1. Jednak trzeba odpalić Epicowi te 25% a przy tytułach AAA 25% to już są miliony dolarów.
2. Unreal to jednak silnik, który lepiej sprawdza sie w indorach jak i niewielkich outdorach, wątpie, żeby dało się na nim zrobić Crysisa.
3. Ma wysokie wymagania sprzętowe, więc do casuali sie raczej nie nadaje. Przynajmniej na tą chwilę.
4. Nawet jeśli gra posiada calkiem nowe assety, ktore znacznie roznią sie od tych Unrealowych to i tak da sie odczuć ten silnik, a chyba nie o to chodzi żeby każda gra na rynku posiadała "to samo coś".
5. Udostepniony UDK jest tylko pod Windowsa. Jesli naprawde chce sie zarobić w Gamedevie to trzeba robić na konsole, a nie wiadomo jak wygląda licencja konsolowa tego silnika.
6. Dla mnie Unreal jest zbyt kanciasty, jestem zwolennikiem silników gdzie architekture i obiekty tworzy sie w programach graficznych np. 3d studio Max, a nastepnie importuje sie je do edytora i tam ustawia ich pozycje, obroty itd. Unreal jest bardziej zoptymalizowany pod brushe tworzone w jego własnym edytorze.

A tak na marginesie to według mnie pierwszy Unreal byl jednak najlepszy :)

Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Listopad 09, 2009, 17:05:36
Cytuj
Szczerze mówiąc nie wiem czy są "pewne rzeczy" których render to texture maxa jeszcze nie wspiera i czy one coś istotnego wnoszą, ale wątpie ;)
Jestem w stanie z powietrza wymienić parę takich "pewnych rzeczy", które dużo wnoszą:
- wypalanie zestawu kierunkowych lightmap (czyli takich, w które zachowują tez pewne informacje o kierunku padania światła - potrzebne do radiosity normalmappingu),
- generowanie UVki pod lightmapy tak, żeby obszary wymagające większych detali oświetlenia dostawały odpowiednio więcej tekseli,
- generowanie trójwymiarwej siatki z informacjami o przechodzącym przez ten punkt w róznych kierunkach oświetleniu (do oświatlania obiektów dynamicznych),
- zapisywanie oświetlenia per-vertex, zamiast per-texel (decydowane dynamicznie przez lightmapper, na podstawie charakteru oświatlenia i wielkości trójkątów),
- wypiekanie dedykowanych lightmap dla konkretnych zestawów świateł (do dynamicznej animacji jasności), łacznie z decyzją które fragmenty mapy są przez te światła dotykane (nie potrzebujemy przecież tego dla całej wielkiej mapy),
- wypiekanie masek cienia (czyli same cienie, bez reszty obliczeń danego światła)

Cytuj
4. Nawet jeśli gra posiada calkiem nowe assety, ktore znacznie roznią sie od tych Unrealowych to i tak da sie odczuć ten silnik, a chyba nie o to chodzi żeby każda gra na rynku posiadała "to samo coś".
Każdy silnik da się odczuć. Konkretny silnik == konkretny zestaw rozwiązań technicznych == rezultat zawsze wyróżniający się pewnymi wspólnymi cechami.

st3tc

  • Gość
# Listopad 09, 2009, 17:31:48
Cytat: Krzysiek K.
- wypalanie zestawu kierunkowych lightmap (czyli takich, w które zachowują tez pewne informacje o kierunku padania światła - potrzebne do radiosity normalmappingu),
- generowanie trójwymiarwej siatki z informacjami o przechodzącym przez ten punkt w róznych kierunkach oświetleniu (do oświatlania obiektów dynamicznych),
Wstawiasz w danym miejscu sześcian, wypalasz oświetlenie na jego teksturze i tworzysz z niej cubemape, którą potem samplujesz w grze normalnymi oświetlanych obiektów.

Cytat: Krzysiek K.
- zapisywanie oświetlenia per-vertex, zamiast per-texel (decydowane dynamicznie przez lightmapper, na podstawie charakteru oświatlenia i wielkości trójkątów),
Standardowo już jest ale jeżeli ma o tym decydować lightmaper to trzebaby jakiś skrypt dopisać.

Cytat: Krzysiek K.
- generowanie UVki pod lightmapy tak, żeby obszary wymagające większych detali oświetlenia dostawały odpowiednio więcej tekseli,
No możesz sobie ręcznie UVkę przeskalować. Żeby stwierdzić czy są jakieś ostre przeskoki oświetlenia w danym miejscu to trzeba najpierw wyrenderować, co nie? :)

Cytat: Krzysiek K.
- wypiekanie masek cienia (czyli same cienie, bez reszty obliczeń danego światła)
Już jest.

Cytat: Krzysiek K.
- wypiekanie dedykowanych lightmap dla konkretnych zestawów świateł (do dynamicznej animacji jasności), łacznie z decyzją które fragmenty mapy są przez te światła dotykane (nie potrzebujemy przecież tego dla całej wielkiej mapy),
Nie rozumiem, ... ale pewnie jest.

Przypominam, że mowa była o implementacji własnego renderera, a nie skryptu, który automatyzuje proces wypalania.

st3tc

  • Gość
# Listopad 09, 2009, 17:39:34
6. Dla mnie Unreal jest zbyt kanciasty, jestem zwolennikiem silników gdzie architekture i obiekty tworzy sie w programach graficznych np. 3d studio Max, a nastepnie importuje sie je do edytora i tam ustawia ich pozycje, obroty itd. Unreal jest bardziej zoptymalizowany pod brushe tworzone w jego własnym edytorze.
Chyba pomyliły Ci się wersje unreala :) Obecnie nacisk jest na modele (statyczne) wstawiane do mapy. CSG jest "bo jest" - bo tak wypada :).
« Ostatnia zmiana: Listopad 09, 2009, 17:44:31 wysłana przez st3tc »

Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Listopad 09, 2009, 17:42:13
Cytuj
Wstawiasz w danym miejscu sześcian, wypalasz oświetlenie na jego teksturze i tworzysz z niej cubemape, którą potem samplujesz w grze normalnymi oświetlanych obiektów.
Rozpatrując poszczególne punkty:
- kierunkowe lightmapy - jak to sobie wyobrażasz? wstawiać sześcian w miejscu każdego teksela?
- siatka 3D punktów oświetlenia - znowu jest problem gigantycznej liczby sześcianów, a do tego są one teraz zawieszone w przestrzeni, więc będą same z siebie wpływały na oświetlenie (a zbyt małe być nie mogą, bo w przypadku photon mappingu jakies fotony muszą w nie w końcu trafić).

Inna kwestia, że wypalenie tekstur oświetlonego sześcianu != cubemapa (w przypadku sześcianu jest pewien problem z normalnymi), więc tak, czy inaczej, takie podejście odpada.

Cytuj
Standardowo już jest ale jeżeli ma o tym decydować lightmaper to trzebaby jakiś skrypt dopisać.
Chodziło mi o mieszanie jednego z drugim.

Cytuj
No możesz sobie ręcznie UVkę przeskalować. Żeby stwierdzić czy są jakieś ostre przeskoki oświetlenia w danym miejscu to trzeba najpierw wyrenderować, co nie? :)
Dla całego levelu? Szkoda czasu na takie rzeczy.