Kezdőoldal » Számítástechnika » Programozás » Unity -ben duplikált objektumo...

Unity -ben duplikált objektumok fizikája máshogyan viselkedik, miközben minden ugyanaz, mint az eredeti?

Figyelt kérdés

A lényeget videón is láthatjátok:


[link]


Van egy kis tanuló projektem, amiben összehoztam egy alap, számomra megfelelően működő autót, ami csakis kizárólag a Unity beépített komponenseire támaszkodik, vagyis rigidbody és configurable joint felel az autó fizikájáért. A probléma az, hogy a hierarchiában egy az egyben másolt/duplikált autóm kerekei, mintha nem ugyanabban az orientációban lennének. Ha egyenként átnézegetem az eredeti és a másolt objektum gyerek objektumait, ott sem találok semmi különbséget az értékekben, hisz nem is lehetséges, mivel egy az egyben másoltam az objektumot. Próbáltam a nevét ugyanarra átírni, mint az eredeti, vagy a hierarchiában az eredeti fölé helyezni, de egyértelműen nem ez a gond. Észrevettem korábban is, hogy a kerekek nem egyformán viselkednek előre-hátra haladáskor, ha másolatokat csinálok az éppen utolsó, jól működő meglévőről, mindig kell egy kis korrekciót végeznem manuálisan (ez az, amit változtatnom kell újra és újra az egyes másolatok esetében), mert enyhén jobbra vagy balra elkanyarodnak, attól függően, hogy előre vagy hátra megy az autó, illetve a sebességtől is függ.

De amit most a videón is láthattok, ez már nekem teljesen új, az első a jól működő autó, ahol enyhén előre gurulnak a kerekek, a másolt esetében viszont jobbra-balra dőlöngenek, de nem jövök rá, hol törnek el a dolgok. Próbáltam manuálisan az eredeti Transform értékeket másolni, vagy a rigidbody és a configurable joint értékeket is másolni és beilleszteni a másoltra, de úgy sem jó, miközben látszólag mindkét objektum ugyanaz.



aug. 30. 21:50
 1/4 anonim ***** válasza:

Próbáld ki, ha prefabot csinálsz belőle és csak simán behúzod, esetleg scripttel instantiate-l hozod létre, akkor hogyan viselkedik.


Érdekes, lehet valami referencia az eredeti objectre utal. Még azt próbálhatod ki, ha kitörlöd az eredetit, akkor a másolaton van e missing, vagy simán eltávolított gameobject, vagy más referencia.

aug. 31. 07:57
Hasznos számodra ez a válasz?
 2/4 A kérdező kommentje:
Figyeld már ezt. Megvan az eredeti objektum, megcsinálom a másolatot, a videóban is látott módon viselkedik, tehát a másolat jobbra-balra dőlöng (ez a nemkívánatos viselkedés). Amikor megvan a másolat és elmentettem a projektet, bezárom teljesen. Újra megnyitom a projektet, és láss csodát, a másolat is megfelelően működik. :D Innentől kezdve a meglévő másolat jól működik, de ha megint csinálok másolatot, akár az eredetiről, akár a másolatról, akkor az új példányok megint nem működnek, csak ha újraindítom a projektet. Egyébként Unity 2022.3.38f1 verziót használok.
aug. 31. 12:30
 3/4 anonim ***** válasza:
Érdekes működés, de azért megnézném a prefabos részt is, hátha a prefabból létrehozva egyből megy.
aug. 31. 14:22
Hasznos számodra ez a válasz?
 4/4 anonim ***** válasza:
Nyilvánvaló, hogy a másolásnál nem inicializál valamit, amit a környezet újraindítása megold. Nem ez lenne az első eset, mert általános probléma szinte minden komplex fejlesztőkörnyezetben.
szept. 3. 04:02
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!