• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    BYDKUNITY 3D
    JAACOB
    JAACOB --- ---
    APH: jednak vi o cem mluvi, ale hlavne mi byl sympaticky tim, ze se neboji vytahnout kostlivce ze skrine a strilet do vlastnich rad. Proste uzna, ze je v Unity neco fest spatne a pripoji tipy jak minimalizovat skody. S tim resenim realnych problemu - potvrzuju, ze dela konzultanta. Jednou u nas byl resit performance issues.
    APH
    APH --- ---
    JAACOB: very cool )

    jop; a je trochu showman ale vidno ze riesil aspon realne pripady z praxe
    JAACOB
    JAACOB --- ---
    Vyborny talk btw - taky doporucuju...
    JAACOB
    JAACOB --- ---
    APH: Tam jsem primo sedel... ,)
    APH
    APH --- ---
    JAACOB: je sanca ze nerobite vsetko uplne optimalne, minimalne toto https://youtu.be/_wxitgdx-UI?t=23m39s by som pozrel

    '... protoze se prej chysta zase nova verze...'
    - to urcite nie
    chysta sa akurat UIElement/s ako superset imGUI pre editor
    (zatial ani neviem ci to spristupnia v runtime, ale myslim ze nie)
    JAACOB
    JAACOB --- ---
    SHIGORBIRDMAN: no zdrojaky k UI sice jsou, ale stejne ti polovina pruseru vznika volanim primo do C++ coru enginu, takze s tim udelas prd (cely RectTransform je v UnityEnginu napr.). Neco jsme ohli, neco ohnout neslo. Navic se to jejich UI uz ani neudrzuje, kaslou na pull requesty a podobne, protoze se prej chysta zase nova verze... :)
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    JAACOB: jooo, unity a gui.... a to je ten posledni pokus pridany ke konci ctverky aspon jakztakz pouzitelny, i kdyz jako obvykle s unity je tak extremne snadne s tim udelat neco, co ti totalne zabije vykon...
    (hlavne... jsou k nemu zdrojaky... takze kdyz uz neco zkurvi, nebo se tam neco kurvi, je jakas takas sance s tim neco udelat)
    JAACOB
    JAACOB --- ---
    BYDK: hele ono na osobni mikroprojekty to nebyva kriticke, takze se staci vyhnout nejvic heavy vecem (napr. FindObjectOfType v updatu) a nemusis to moc resit, pokud nebudes mit pech a nevyrobis omylem treba extremne heavy GUI - coz se v Unity da i pri relativne jednoduchem layoutu, protoze jejich GUI je fakt pruser...
    Problem pak nastava v pripade, ze delas velky projekt, zdimes z telefonu maximum a potrebujes kazdej prd optimalizovat. U nas treba pro Shadowgun Legends aktualne pisem vlastni GUI renderer aspon pro ingame HUD, protoze ty spajky, ktere vyrabi unitacke GUIcko je neco nepochopitelne otresneho...
    BYDK
    BYDK --- ---
    JAACOB:Zdravim, jak Vas tak posloucham, tak jsem rad, ze nejsem nejaky extra programator a porad delam primitivni datove struktury a vyuzivam parenteni komponent, proste jednoduche programovani, nejlepe v JS. Defakto jsem nenarazil na nic, co bych nemohl dat dohromady a zda se, ze jsem si usetril hodne nervu. :)
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    JAACOB: bojim se na to podivat :)
    JAACOB
    JAACOB --- ---
    SHIGORBIRDMAN: Ono celkove je na kriticke party nejlepsi pouzivat uplne nejprimitivnejsi datove struktury a prakticky se vyhnout celemu OOP. Jestli budem chtit v budoucnu zneuzit ten Uniti jobsystem, tak se budem muset nejdriv naucit psat vsechno zase trochu jinak...viz:
    Unite Austin 2017 - Writing High Performance C# Scripts
    https://www.youtube.com/watch?v=tGmnZdY5Y-E
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    SHIGORBIRDMAN: k temu enumum - mam nejasny pocit, ze v 5.6 tohle uz vyresili, stejne jako par dalsich problemu s boxingem a generovanim garbage, ale jelikoz ja budu jeste nejakou dobu zakousnuty na 5.4 (a ke svemu neuveritelnemu nasrani na 4.7...)
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    JAACOB: omg... dobre vedet, ze je lepsi pouzivat cisty virtual nez interface :/ (coz obcas kvuli snaze udrzeni nejake cistoty a decouplingu kodu pouzivam...)
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    APH: ahem, comparery a hashe a mono v unity, prosim nepripominat :) zjisteni ze pro kazdy dictionary pouzivajici jako klic custom struct (cili i ENUM!!!) musim pripisovat vlastni komparer, jinak to sype pri pristupech garbage... eh... ale serializace dictionary aby to fungovalo jak to funguje je kurva primitivni, za predpokladu, ze klice budou samy o sobe serializovatelny. Jenze ne, unity... takze kdyz uz to nekde mam, musim mit serializovatelny seznam klic / polozka a pak si ho v aktivaci prevest na dict...

    Listy pridali uz v 2.6? njn... kdyz ja se s tim nemsylem zkousel srat uz za doby, kdy byl mac only a neco v nem prasim uz od nejake 2.1... kurva, ten cas leti :)
    JAACOB
    JAACOB --- ---
    OT v ramci aktualni diskuze, ale dnes vcelku diskutovane tema v praci kolem IL2CPP: https://jacksondunstan.com/articles/4560
    APH
    APH --- ---
    nj bezny den s unity dalo by sa zhrnut ;0)
    - inak tie shadery - z unity stock shadermi to robi tiez ? - lebo napr. custom editory pre shadery/materialy su cirkus samy osebe a neni to trivialne dobre integrovat do editora
    nemozem si spomenut ze by to v serializovanom text subore prehadzovalo polozky - ale ja tak max nastavim trochu pohybem s hybatkami a moc nespekulujem

    s dictionaries by - kvoli tomu ze su unordered - museli viac prplat do mona kvoli hashtable a comparerom imho

    btw som to vyhrabal - List pridali v 2.6 (minus dve petiletky nazad aTo je pekne)
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    APH: dela mi to 5.4, obcas pri zmene materialu ma tendence nahodne prehazet poradi textur. Proste sahnu na material a neco zmenim (nastaveni, texturu, cokoli) zmenim mu texturu, preserializuje se a prehazi poradi. Kdyz na nej sahnu znovu, preserializuje se jinak. Jsou to modifikovane uber shadery, ale proc to tohle dela, to mi fakt hlava nebere... beru to proste jako jednu z tech unity dark magic fuckupu, ktere tam proste obcas jsou. Tohle je aspon jen lehka pruda oproti jinym vecem - jako nahodne poskozeni odkazu na interni dll vedouci k nutnosti kompletniho reimportu, jinak nefunguje treba gui, obcasny instant auto crash po smazani predkompilovane dll a jejim nahrazeni zdrojaky, ktery pak zpusobuje tichy crash pri kazdem spusteni, dokud se nesmazou script libraries...
    Aktualne me nejvic vyprudil lightmapper v 5.6, a to natolik, ze jsem vzdal upgradovani. Prejebat skripty a lighmap builder a materialy a nejak zase nahackovat funkcnost normalmap pro lightmapy, to bych nakonec nejak zvladl...

    Ale kdyz lightmapper v nekterych levelech "crashne", resp si zabere 32 giga fyzicke ram a k tomu plny swap soubor a pak pocitac nedela nic nez ze swapuje, dokud to necrashne (jednou jsem to nechal bezet pres noc)...

    Driv to byvalo Unity of Love and Hate, od petky mam pocit ze uz je to jen pure hate :(
    zacinam se tesit, az mi to skonci a prejdu za ostatnimi na unreal (kde mi bude praskat zilka z jinych veci, o tom nepochybuju :) minimalne z "bleskove" kompilace c++ nebo tech blueprintovych klikacich sracek ;)

    Jinak poradi ve slovniku neni z podstaty nijak definovane, neni to ordererd collection. coz neznamena, ze by ji unity sakra nemohlo serializovat, ale jak rikam, i List<> zacali serializovat az nekdy od 3 neco.
    JAACOB
    JAACOB --- ---
    Ad ty promichane properties materialu - neupdatoval jsi mezitim? Muze se stat, ze ti libovolny asset zacne serializovat novejsi verzi (je to videt v textovych assetech - verze serializace).
    Plus jeste jsem resil v praci "procistovani" nepouzitych properties materialu pro grafiky a nas resource analyzer. Protoze kdyz na materialu prepinas shadery, on si interne pamatuje vsechny nastavene parametry. Tzn. nastavis material s shaderem1, nastavis props, nastavis mu jiny shader2 a nastavis props, pak se rozhodnes, ze chces radsi pouzit zase shader1 a on si pamatuje nastaveni predesle properties pro shader 1 (a zustanou mu i nepouzite props pro shader 2 zejo). AFAIK treba pripadne reference na textury pri buildu vyhaze, ale v editoru zustavaji...nemuze to souviset?
    APH
    APH --- ---
    "proc do prdele po sahnuti do materialu unity prehazi naprosto nahodne vsechny polozky, takze to uz pak fakt nejde comparovat"
    to mozno snad v 3.5 ( no dobre 4.6 ) ne ?
    determinizmus serializacie sa ak uz nic ine, tak postupom case aspon zlepsuje

    to btw suvisi aj s tymi slovnikmi - v 'normalnom' .NETe nie je zarucene poradie, co je imho jeden z dovodo preco to nejak moc neriesia
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    JAACOB: pred chvili mi unity spadlo a po restartu oznamilo, ze mam mismatch v asset databazi a ze bude delat reimport... uz to bezi hodinu a to jsem rad, ze se mi to stalo na VR repozitari :D (reimport androidu jsou ted diky genialite unity den, jestli ne vic... :D)

    ze furt neni serializace dictionaries, to povazuju za naprostou curakovinu (nicmene... dlouho nesla serializace listu, jen arrays, protoze all hail unity :). Uz jsem davno vzdal nadeji, ze to nekdy daji dohromady, protoze to by proste cele museli vyhodit a predelat nejak rozumneji a to oni ne :) kdyz jednou pochopis tu zkurvenou logiku, tak se kolem toho da bruslit, ale je to obcas strasna nasiracka... Opravdu neverim, ze zrovna tohle kdy daji nejak dohromady :/

    jak jsem rikal, mam tendence radsi vsechno srat do jsonu / xml, kdyz uz nic, tak se to da aspon rozumne verzovat, narozdil od obcas neskutecne zmateneho jejcih yaml (proc do prdele po sahnuti do materialu unity prehazi naprosto nahodne vsechny polozky, takze to uz pak fakt nejde comparovat).


    Ceka me jeste par mesicu nahaneni v unity, ale uz jsem se zarekl, ze pristi vikendovy "toy project" radeji zkusim znovu Godot :)

    Kliknutím sem můžete změnit nastavení reklam