játékfejlesztés.hu
FórumGarázsprojectekCikkekSegédletekJf.hu versenyekKapcsolatokEgyebek
Legaktívabb fórumozók:
Asylum:    5468
FZoli:    4892
Kuz:    4455
gaborlabor:    4449
kicsy:    4304
TPG:    3402
monostoria:    3284
DMG:    3172
HomeGnome:    2919
Matzi:    2524

Pretender:    2498
szeki:    2440
Seeting:    2306
Geri:    2193
Orphy:    1893
Joga:    1791
Bacce:    1783
MaNiAc:    1735
ddbwo:    1654
syam:    1491
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] > 30 < [35] [40] [45] [50] [55] [56]
Tunyu - Tag | 449 hsz       Online status #200937   2014.02.10 04:58 GMT+1 óra  
Köszi a választ! Már találtam külföldi fórumokon ezzel kapcsolatos írásokat, és ha jól értelmeztem akkor az audiót a 3.6-os verzió óta több szálon is képes kezelni.Bár olyat is írtak hogy nem nagyon érdemes macerálni mert elég könnyen összeomlik az egész.

   
Seeting - Törzstag | 2306 hsz       Online status #200936   2014.02.10 00:35 GMT+1 óra  
Idézet
Tunyu :
Maga az unity mennyi teljesítményt vesz el a játékból?



Sokat. Egyébként Unity-s játékokat nem igazán lehet többszálasítani, mert a Unity API nem thread-safe.
   
Tunyu - Tag | 449 hsz       Online status #200906   2014.02.08 21:12 GMT+1 óra  
Újabb kérdés! Azt hogy hány magot használ a játék,lehet befolyásolni valahogy? Nagy sebességnél lezabálja az fps-t a játék, az egyik magot 100%-ban használja , a GPU is felpörög max-ra de viszont a kihasználtsága 0%, néha felugrik egy pillanatra 25%-ra.Így gondolom a procit kellene jobban nyomatni.Maga az unity mennyi teljesítményt vesz el a játékból?

Ezt a hozzászólást Tunyu módosította (2014.02.09 21:21 GMT+1 óra, ---)

   
Tunyu - Tag | 449 hsz       Online status #200865   2014.02.06 19:38 GMT+1 óra  
Ha a for ciklusba rakom a számítást, akkor működik. Viszont így át kell írnom az egész scriptet , de legalább működni fog.
Ismét köszi a segítséget!

Szerk.: Szerencsére mégsem kell átírnom az egészet, elég volt több helyen lefuttatni a for ciklust és a fogyasztást elosztottam a meghívott objektumok számával és hibátlanul megy.

Ezt a hozzászólást Tunyu módosította (2014.02.06 19:58 GMT+1 óra, ---)

   
Pretender - Törzstag | 2498 hsz       Online status #200855   2014.02.06 06:45 GMT+1 óra  
Ahogy nézem az a baj, hogy először végigmész mindkét listán egy for ciklussal, és eltárolod 1-1 változóban az adott elemet: ez ugye a H2 és az O2fuel (majd ugye az O2). Miután véget ért mindkét ciklus, akkor nézed az összehasonlításokat, azután számolod a fogyasztást, stb. Így mindig csak a listában utolsó elemként szereplőkre fogod ezt elvégezni.

   
Tunyu - Tag | 449 hsz       Online status #200841   2014.02.05 20:24 GMT+1 óra  
Itt a FixedUpdate után hívom. A H2 egy kapcsoló de az is csak az első objektum scriptjén nézi hogy igaz-e, és a fogyasztás is csak az első tankból történik.

Ezt a hozzászólást Tunyu módosította (2014.02.05 20:45 GMT+1 óra, ---)

   
Pretender - Törzstag | 2498 hsz       Online status #200840   2014.02.05 20:11 GMT+1 óra  
Egy kis kód sokat segítene a probléma megkeresésében.

   
Tunyu - Tag | 449 hsz       Online status #200839   2014.02.05 19:54 GMT+1 óra  
Miért van az hogy a GUI scriptben az összes üzemanyag tartály scriptben tárolt adatot be tudom kérni, viszont egy másik scriptben amiben ezeket az adatokat módosítanom kéne csak egy tartály adatait tudom módosítani,a többi mindig tele van?!

   
Viperion - Tag | 540 hsz       Online status #200821   2014.02.04 21:37 GMT+1 óra  
Szerintem te a yield re gondolsz.
Lentebb már írtam ezt de nemtudom kipróbálni,hogy az if es megoldás vagy a coroutinos e a takarékosabb.

De az biztos,hogy a legtakarékosabb de viszont nem túl szép megoldás az az lenne ha a monobehaviour os metódusokat amiket szüneteltetni akarok külön scriptbe rakni és akkor ki be lehetne kapcsolgatni őket.

   
Tunyu - Tag | 449 hsz       Online status #200820   2014.02.04 21:16 GMT+1 óra  
Valahol olvastam pár hete vagy hónapja hogy van valami szó amivel át lehet ugrani valahova máshova és aztán hívásra visszaugrik és onnan folytatja tovább.ezzel lényegében lehetne szüneteltetni.Cak nem tom hol olvastam ezt.

   
Viperion - Tag | 540 hsz       Online status #200819   2014.02.04 21:00 GMT+1 óra  
Pretender érti de te nem érted a problémámat versio.
Ha letiltom a gameobjectet akkor az egész script letiltódik és benne az összes update én ezt nem így akarom.

Igen szerintem sem értenék belle lófaszt sem de egyszer bele fog kellenem tanulni nem igaz. :-)

   
versio - Tag | 673 hsz       Online status #200817   2014.02.04 20:23 GMT+1 óra  
le is lehet tiltani az objectet, inaktivva teszed, oszt nem hivodik meg semmi

hiaba lenne profilered , nem ertenel belole lofaszt se
   
Pretender - Törzstag | 2498 hsz       Online status #200816   2014.02.04 20:08 GMT+1 óra  
Nem ezen fog múlni... Egy kb. semmit nem csináló függvény meghívása kb. semmibe nem kerül. Ne akadj fent ezen, és ifeld be az egészet.

   
Viperion - Tag | 540 hsz       Online status #200815   2014.02.04 20:06 GMT+1 óra  
Na mindegy mert úgy tűnik,hogy ezt nem lehet elérni sehogy csak if-el vagy coroutinokkal.
Vajon melyik a rendszerkímélőbb.Hm.

Egyébként tudom már,hogy hogyan lehet eszembe jutott.
Azt az update metódust amit szüneteltetni akarok bizonyos időközönként azt külön scriptbe rakom.
A többi pedig marad ahol van.

De kíváncsi lennek,hogy az if es vagy a coroutinos megoldás a jobb e lehet,hogy muszáj lesz beszereznem a pro verziót valahogy mert a free ben nincs profiller. Bakker.

Tényleg nem volna rossz egy ingyenes profiller hozzá,még ha primitívebb is.

   
Pretender - Törzstag | 2498 hsz       Online status #200814   2014.02.04 19:46 GMT+1 óra  
Miért akarod kikapcsolni? Miért nem jó, hogy egy nagy if-be rakod az egész update-t?

   
Viperion - Tag | 540 hsz       Online status #200811   2014.02.04 19:19 GMT+1 óra  
Ez így azért nem jó mert nem csak az egyik update fog kikapcsolni hanem az összes.
Én a scriptben el akarom érni azt,hogy kikapcsoljak egy momobehaviour-os függvényt.
De a többit ne.Ez nem sikerül.

   
Tunyu - Tag | 449 hsz       Online status #200810   2014.02.04 19:08 GMT+1 óra  

   
Viperion - Tag | 540 hsz       Online status #200809   2014.02.04 19:00 GMT+1 óra  
Mi a leghatásosabb módszer az update metódusok szüneteltetésére?
Például van egy script amiben van 3 fajta update és egy OnGui is és arra lennék kíváncsi,hogy mi a legrendszerigényesebb megoldás erre.

Kipróbáltam coroutinokkal.. :-(

Ha pedig bevezetek egy bool változót az meg nem megoldás mert az update akkor is meg fog hívódni.

Mi a megoldás?

Egyébként nem sokat érnek a próbálgatásaim mert nincs profillerem.

   
Pretender - Törzstag | 2498 hsz       Online status #200791   2014.02.03 22:23 GMT+1 óra  
@Tunyu:
Örülök, az a lényeg, hogy jó lett

@caindwan:
Hmm, ahogy látom kell egy Animation nevű komponens is, az hiányzik.
Az Animation komponensben lehet megadni az animációkat is többek között. Jó eséllyel van is ilyened, csak valamelyik gyerekénél az adott objektumnak.

szerk.:
Ja, egyébként nem ilyen "kioktató" jelleggel akartam mondani a screenshot csatolást, csak nincsenek hangsúlyok írásban.

Ezt a hozzászólást Pretender módosította (2014.02.03 22:29 GMT+1 óra, ---)

   
caindwan - Tag | 61 hsz       Online status #200783   2014.02.03 20:48 GMT+1 óra  
@Pretender:
Bocsi, csak kérni kell.
http://www.kephost.com/view3.php?filename=a1_2014_2_3_hmacx5577i.jpg

Jobb oldalt az inspector-ban az van megnyitva amin fut az animátor.

Ezt a hozzászólást caindwan módosította (2014.02.03 20:54 GMT+1 óra, ---)

   
Tunyu - Tag | 449 hsz       Online status #200782   2014.02.03 19:55 GMT+1 óra  
Ez a H2fuelMass egy objektumon (vagyis több ilyen objektumon) levő scriptben található szám (float). Ahonnan kimásoltam a kódrészt az egy GUI script ami a kamerához van adva és ide akarom meghívni az összes ilyen objektumnak a H2fuelMass értékét hogy összeadjam és kiírjam a képernyőre. Az eredeti script ez de itt csak egy objektumról tudom meghívni ezt az értéket.

Szerk.: Működik a nullázással,csak én voltam a hülye! A teszt kedvéért dupláztam a H2Tank-ot és mivel több script is igényli , azokon meg nem állítottam be újra hogy melyik tankot használja hibát írt több helyen is, én meg el sem olvastam hogy mit ír, egyből erre a scriptre gyanakodtam. Az a lényeg hogy működik,vagyis egy tankkal biztosan,de ha a többi scriptet is hozzá igazítom hogy több tankot kezeljen majd kiderül hogy tényleg működik-e. Köszi a segítséget!

Ezt a hozzászólást Tunyu módosította (2014.02.03 21:26 GMT+1 óra, ---)

   
Pretender - Törzstag | 2498 hsz       Online status #200779   2014.02.03 19:20 GMT+1 óra  
@Tunyu:
A H2fuelMass gondolom egy szám (int?), ami az összeget tárolja. Ez egy scripten belül van (ahonnan a kódrészletet bemásoltad). Ami ha nem egy "H2Tank" tagelt GameObjecthez van csatolva, akkor simán átteszed az adott kódrészletet az Update()-be:
Kód:
H2fuelMass = 0;
// a lenti kódrészlet

Akkor már érdekesebb a kérdés, ha a lenti Start() függvény szintén egy H2Tank tagelt objecthez van hozzáadva, mert akkor bizony nem nagyon tudod elkerülni az infinite countot. Esetleg lehet egy statikus listával próbálkozni, amit az Awake()-ben töltesz fel, és mivel statikus, ezért minden egyes példányhoz egyetlen tartozik.

De az utóbbit annyira nem ajánlom, inkább legyen egy dedikált objektumod, ahol a H2Tank fuelMasst szummázod. Ha még mindig nem értem, hogy pontosan mire gondolsz, akkor esetleg egy nagyobb kódrészletet / screenshotot csatolsz? Ha nem akarod ide, jöhet privibe is.

@caindwan:
Esetleg egy kicsi screenshotot érdemes lenne ide csatolni, hogy hogy néznek ki a komponensek, mihez mi van kapcsolva, stb.

   
Tunyu - Tag | 449 hsz       Online status #200761   2014.02.03 15:58 GMT+1 óra  
Pretender igen jól érted, csak én nem értem hogy te hogy gondolod ezt a for ciklus előtti nullázást!?
A fuelMass nem lehet nulla mert akkor nincs mit számolni, de ha jól sejtem másként értetted, úgyhogy légyszíves laikus nyelven magyarázd el nekem!

   
caindwan - Tag | 61 hsz       Online status #200756   2014.02.03 15:12 GMT+1 óra  
Most egy kicsit nem vagyok képben. Nekem van rajta egy Animator komponens, egye ilyen animation controller-es cucc. De amint sejtem ezt nem fogja elfogadni :/

   
Pretender - Törzstag | 2498 hsz       Online status #200750   2014.02.03 12:41 GMT+1 óra  
Ahogy a hibaüzenet is mondja, nincs Animation komponens az adott objektumhoz hozzáadva. Valószínűleg valamelyik gyerekének van csak. Azt meg vagy elkéred referenciaként, vagy megkeresed (van egy pár fajta Find(), meg ehhez hasonlók)

   
caindwan - Tag | 61 hsz       Online status #200747   2014.02.03 10:04 GMT+1 óra  
mert ezt próbáltam csak, azt írja, hogy:
"MissingComponentException: There is no 'Animation' attached to the "player_v201" game object, but a script is trying to access it. You probably need to add a Animation to the game object "player_v201". Or your script needs to check if the component is attached before using it."

   
Pretender - Törzstag | 2498 hsz       Online status #200746   2014.02.03 09:54 GMT+1 óra  
Az animációnak le lehet kérdezni az idejét:
Kód:
animation["animname"].time

AnimationState.time

   
caindwan - Tag | 61 hsz       Online status #200745   2014.02.03 09:46 GMT+1 óra  
Meg lehet azt oldani, hogy az Animator-ban a layer-ek futásának az idejét megkapjam? Olyanra gondoltam, ha az animáció pl. 0.21 mp-nél tart akkor a scriptben írjon egy int-be + 1-et.

   
Pretender - Törzstag | 2498 hsz       Online status #200743   2014.02.03 06:27 GMT+1 óra  
@Viperion:
Úgy értettem, h az Update() és a LateUpdate() sorrendek sem definiálták, ahogy esik úgy puffan. Mint mondtam, csak annyi a meghatározott, hogy először az összes Update() majd az összes LateUpdate().

@Tunyu:
Nem teljesen értem, hogy mire gondolsz, de ha az összegüket akarod folyamatosan frissíteni, akkor mondjuk tedd az Update()-be, csak előtte nullázd ki (még a for ciklus kezdete előtt).
Ha jól sejtem az a gondod, hogy ha ezt folyamatosan meghívod, akkor mindig az eddigi értékhez kezded el hozzáadni. De szólj, ha nem jól értettem valamit

   
versio - Tag | 673 hsz       Online status #200740   2014.02.03 01:22 GMT+1 óra  
Viperion :

csinalsz egy osztalyt . amiben van egy lista, vagy egy tomb, aztan az osszes updatebol , late updatebol vagy amibol meg akarsz meghivod ezt es csinalsz egy bejegyzest a hivo nevevel, aztan lefuttatod, majd megnezed a sorrendet , amugy saccra osszes update, majd osszes late update

de a lenyeg hogy a sok kerdezoskodes helyett CSINAJ mar valamit
   
Viperion - Tag | 540 hsz       Online status #200727   2014.02.02 21:07 GMT+1 óra  
Pedig ha igaz az,hogy a lateupdate metódus az összes update lefutása után hívódik meg akkor logikus,hogy a lateupdate metódusok mikor hívódnak meg.Tehát egyszerre.

De ha mégsem így van akkor egymás után kell,hogy meghívódjanak valamilyen sorrendben nem?
De van egy olyan érzésem,hogy ezt elég részletesen senki nem tudja. :-(

   
Tunyu - Tag | 449 hsz       Online status #200711   2014.02.02 12:17 GMT+1 óra  
Kód:
function Start(){
H2Tanks = GameObject.FindGameObjectsWithTag("H2Tank");
for(var i:int = 0;i < H2Tanks.Length;++i){
H2fuel = H2Tanks[i].GetComponent(H2Fuel);
H2maxFuelMass = H2Tanks[i].GetComponent(H2Fuel).maxFuelMass + H2maxFuelMass;
H2fuelMass = H2Tanks[i].GetComponent(H2Fuel).fuelMass + H2fuelMass;
}
}


Jó lenne némi segítség! Ha így egyszer hívom meg összeadja rendesen az értékeket, a maxFuelMass az állandó úgyhogy azzal nincs gond,de a fuelMass-t folyamatosan frissítenem kéne,de ha saját funkcióba írom akkor a végtelenségig összeadódik. Hogy lehetne megoldani hogy csak pl.: a 3 script értéke adódjon össze aztán megint csak a 3, és ne adódjon össze az egész folyamatosan.Hogy tudom meg a lista méretét?

Ezt a hozzászólást Tunyu módosította (2014.02.03 04:50 GMT+1 óra, ---)

   
Pretender - Törzstag | 2498 hsz       Online status #200704   2014.02.02 07:37 GMT+1 óra  
@Viperion:
Amennyire én tudom azoknak a sorrendje szintén nem előre definiált, viszont alapvetően szerintem kevés dolog kerül a LateUpdate()-be, szóval szerintem nem okoz gondot.

Most néztem csak, hogy a doksiban is csak ennyit írnak róla:
Idézet
LateUpdate() is called once per frame, after Update() has finished. Any calculations that are performed in Update() will have completed when LateUpdate() begins. A common use for LateUpdate() would be a following third-person camera. If you make your character move and turn inside Update(), you can perform all camera movement and rotation calculations in LateUpdate(). This will ensure that the character has moved completely before the camera tracks its position.


Ó, egyébként, ha az initnél is szükséged lenne valami ilyesmire, akkor arra meg ott az Awake()

@versio:
Ez az intro egyébként tök jól néz ki, csak szerintem érdemes lenne egy ilyen videóban valamit mutatni a termékről is, hogy mit tud, mivel jobb, mint a beépített rendszer, stb. Az ilyen összehasonlítós dolgokat egyébként szeretik az emberek. "Nézzed Béla, Unity renderrel kirakok 1M ojjektumot, aztán meg se moccan, ezzel meg szalad, mint a kergebirka"

   
versio - Tag | 673 hsz       Online status #200702   2014.02.02 03:38 GMT+1 óra  
nemsokara kesz az ION#

   
Viperion - Tag | 540 hsz       Online status #200691   2014.02.01 20:40 GMT+1 óra  
Omg pretender szuper vagy.Köszi.
És ha több lateUpdate is van?
Akkor ebben az esetben ha van több late update is,akkor ezek egyszerre fognek meghívódni az update metódusok lefutása után?

Ezt a hozzászólást Viperion módosította (2014.02.01 21:05 GMT+1 óra, ---)

   
Pretender - Törzstag | 2498 hsz       Online status #200690   2014.02.01 18:59 GMT+1 óra  
@Viperion: nem mondtam, hogy ugrál. De próbáld csak ki.
A kamerádnak állíts be targetnek egy GameObjectet, amit egy másik script segítségével mozgatsz. Mivel az update() hívások sorrendje előre nem definiált, simán lehet, hogy a kamera script update() előbb hívódik meg, mint a másik, ezáltal mindig "le lesz maradva" 1 frame-mel. Erre találták ki a LateUpdate() függvényt, ami biztosítja, hogy az ÖSSZES Update() után fog csak meghívódni.

   
Tunyu - Tag | 449 hsz       Online status #200686   2014.02.01 18:09 GMT+1 óra  
Bonyolult lenne megvalósítani azt hogy az objektumok camera felőli része legyen csak renderelve és nem a komplett objektum? Vagy ennek a scriptnek a működése még nagyobb erőforrást igényelne mint a komplett renderelés?

Ezt a hozzászólást Tunyu módosította (2014.02.01 22:28 GMT+1 óra, ---)

   
Viperion - Tag | 540 hsz       Online status #200676   2014.02.01 14:42 GMT+1 óra  
"A kameramozgatást meg értelemszerűen azért kell a LateUpdate()-be rakni, hogy ha elmozdulnak az objektumok, akkor a kamera a már elmozdított pozícióban legyen, és így nem fog "ugrálni". "
Ezt nem értem.Ennek semmi értelme.

Azért ugrál mert rosszul van megírva az updateban.
Bocsi,hogy ezt írom de nem bírom megérteni miért ugrál neked.

Ez a kettő ugyanaz:
void Update() {
//utasítás 1
//utasítás 2
}
-------------------
void Update() {
//utasítás 1
}

void LateUpdate() {
//utasítás2
}

----------
//A lateUpdate az teljesen felesleges csak akkor nem volna az,ha be lehetne állítani,hogy hány update után hívódjon meg legalább egyszer.

Ezt a hozzászólást Viperion módosította (2014.02.01 16:04 GMT+1 óra, ---)

   
subwaysoffear - Tag | 5 hsz       Online status #200667   2014.02.01 13:27 GMT+1 óra  
elkezdtem egy magyar unity tutorial sorozatot egészen az alapoktól

http://www.youtube.com/user/krisitof3/videos

   
Pretender - Törzstag | 2498 hsz       Online status #200661   2014.02.01 10:54 GMT+1 óra  
És a tapasztalat is ez
A kameramozgatást meg értelemszerűen azért kell a LateUpdate()-be rakni, hogy ha elmozdulnak az objektumok, akkor a kamera a már elmozdított pozícióban legyen, és így nem fog "ugrálni".

   
Torrents - Tag | 79 hsz       Online status #200658   2014.02.01 10:12 GMT+1 óra  
a lateupdate meg az update is minden képkockánál lehívódik csak a lateupdate az update után. így van írva a dokumentációban.

   
Viperion - Tag | 540 hsz       Online status #200650   2014.01.31 20:35 GMT+1 óra  
De a lateupdare az ugyanaz mint az update azzal kivétellel,hogy ez mindig az update után hívódik meg.
Így aztán ha az update 5 ször meghívódik akkor a benne levő függvényhívások is 5 ször hívódnak meg.
Ugyanaz az eredmény a lateupdateban is.

Öt update hívás egyenlő 5 lateupdate hívással.
Tehát teljesen mindegy,hogy a late updateban vagy az updateban van lekezelve a kamera mozgatás vagy valami más.

Mit tudok rosszul?


Tudtommal meg ha LateUpdate-t használsz akkor képkockánként hívja meg,így kisebb erőforrást igényel mint az Update és talán optimálisabb lesz a zoom.

Ezt nem értem a lateupdate is pont annyiszor hívja meg a benne lévő kódot ahányszor az update és pont annyiszor is fut le.

Hogy van ez?

   
Tunyu - Tag | 449 hsz       Online status #200641   2014.01.31 18:18 GMT+1 óra  
Tudtommal meg ha LateUpdate-t használsz akkor képkockánként hívja meg,így kisebb erőforrást igényel mint az Update és talán optimálisabb lesz a zoom.

Szerk.: Rosszul tudtam!

Ezt a hozzászólást Tunyu módosította (2014.02.01 06:51 GMT+1 óra, ---)

   
Pretender - Törzstag | 2498 hsz       Online status #200637   2014.01.31 17:03 GMT+1 óra  
Amennyire én tudom, az csak azt biztosítja, hogy az Update() hívások után hívódik meg. És a kamera mozgatása valóban ott történik (mármint a pozíció követése például)

   
Tunyu - Tag | 449 hsz       Online status #200635   2014.01.31 14:36 GMT+1 óra  
Kód:
LateUpdate()

   
Pretender - Törzstag | 2498 hsz       Online status #200625   2014.01.30 20:05 GMT+1 óra  
Áhá, csak találtam valamit, ami nem jó, szerencsére semmi köze az előzőhöz.
Csináltam zoomolást egérgörgővel, így ni:
Kód:
void Update()
{
    float wheel = Input.GetAxis("Mouse ScrollWheel");
    if (wheel != 0.0f)
    {
        newDelta = delta + (wheel * WheelMul);
        newDelta = Mathf.Clamp(newDelta, 0.0f, 1.0f);
    }

    delta = Mathf.SmoothStep(delta, newDelta, Time.deltaTime * ZoomSpeed);
}

Azonban észrevettem, hogy vsync (60 fps) és novsync (~260) esetén más-más tempóval nagyítok / kicsinyítek. Na mondom persze, más-más időközönként hívódik meg az update, a WheelMul után tolok egy újabb szorzót (szokásos Time.deltaTime), azonban ettől sem lett jó, a probléma ugyan az. (nagyobb fps = lassabb görgetés)

   
Pretender - Törzstag | 2498 hsz       Online status #200618   2014.01.30 16:19 GMT+1 óra  
szerk.:
Most mégis működik, a fene se érti.

Elkezdtem kicsit Unity-zni, de lehet, hogy tök rosszul tudok valamit.
Beimportáltam egy obj modellt. Ez eddig szuper. Drag & drop után viszont nem egy egyszintű prefab keletkezett (mint pl. egy Cube kreálásakor), hanem egy prefab, és annak a gyereke volt a tényleges mesh. Na mivel én ezt nem így akartam, csináltam egy empty prefabot, addoltam hozzá Mesh filtert és Mesh renderert, amit szépen beállítgattam, átadtam neki a materialt, stb. Így most már jó. Ezt ezzel a lendülettel el is "mentettem" (drag & drop vissza az assets közé), majd a jelenetből kiszedtem.

Írtam egy scriptet, ami referenciaként megkapja ezt a prefabet, majd sokszorosítja (Instantiate).

1. verzió:
A referenciaként a prefabet az assetsek közül kapta. A Start() fgvben tesztből átszíneztem 1-2-nek a material colorját, és láss csodát, mind átszíneződött. Sőt, miután a stoppal megállítottam, úgy is maradt.

2. verzió:
Fogtam az assetsek közül, drag & drop a jelenetbe. Most referenciaként a jelenetben szereplő prefabet adtam meg, és jól működik a materialozás, illetve az eredeti materialt nem bántotta.

Kérdés:
Miért működik másképp a két esetben? Az Instantiate elvileg lemásolja (ahogy nézem az insceptorban tényleg, oda van írva mindhez, hogy (clone) ), amitől azt várja az ember, hogy minden egyéb is másolódik. Arról nem is beszélve, hogy úgy működik csak rendesen, hogy ha a jelenetben is tartok egyet.
De ez így nem túl szép megoldás, nem akarom csak azért a jelenetek között tartani, hogy jól működjön, biztos valamit én rontok el.

   
caindwan - Tag | 61 hsz       Online status #200610   2014.01.29 13:56 GMT+1 óra  
A fene, hogy ezt nem vettem észre, hálás köszönet

Idézet
Torrents :
function OnCollisionEnter(collision : Collision)
{
Destroy (gameObject, 0);
}

nagy O és + l a collisionbe
Idézet
caindwan :
Heló!
Nem működik az onCollisionEnter, immár js-ben :
Kód:
function onCollisionEnter(colision : Collision){
    Destroy(gameObject, 0);
}

BoxCollider vs SphereCollider.




   
mogul - Tag | 153 hsz       Online status #200606   2014.01.29 02:20 GMT+1 óra  
ez a spline a kamera-pálya pontjainak vonala?

timer van? az a lényeg h ne kelljen programozni, csak beállítani az inspectorban az értékeket. legyenek spline prefabok pályáról, slow-mo-ról (ez nagyon egyszerű, time.scale vagy mi) stb. unity mérethez állítottan, vállmagasság, driver magasság, kerék-magasság... front-view ahhoz a gameobjecthez képest, és közelít(zoom) - közeledik (kocsizás-fahrt) - forog (svenk) - sweep oldalra, tehát a xtengellyel párhuzamosan move

   
versio - Tag | 673 hsz       Online status #200605   2014.01.29 01:29 GMT+1 óra  
elmeletileg megoldhato, van olyan beallitas hogy koveti a celt, es ha ez egy fantom objectum amit nem renderelsz ki, oda mozgatod ahova akarod, vagy egyszeruen csinalsz neki is egy spline palyat., ezen felul minden splineon beallithato 10 esemeny, aminel meghivodik egy script, , igy vegulis szinte barmit meg lehet csinalni, egy kis programozassal
   
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] > 30 < [35] [40] [45] [50] [55] [56]