Zwracanie obiektu na danej pozycji

Programowanie w Unity.

Zwracanie obiektu na danej pozycji

Postprzez jarkozpl » 24 Sty 2019, 15:52

Witam,
Jak wykryć konkretny obiekt na danej pozycji?
Konkretnie mam obiekt biom1 i biomgenerator i chodzi o to żeby obiekt biomgenerator wiedział czy na jego pozycji i np. transform.position.x +5 jest już obiekt biom1.
jarkozpl
 
Posty: 4
Rejestracja: 24 Sty 2019, 15:47
Has thanked: 0 time
Been thanked: 0 time

Re: Zwracanie obiektu na danej pozycji

Postprzez Ether_141 » 24 Sty 2019, 16:56

No to normalnie sprawdzasz pozycje tego obiektu ifem, ale podejrzewam, że można i nawet trzeba zrobić to lepiej, a nie sprawdzać te pozycje w taki sposób.
Awatar użytkownika
Ether_141
 
Posty: 446
Rejestracja: 29 Sie 2015, 11:47
Has thanked: 0 time
Been thanked: 0 time

Re: Zwracanie obiektu na danej pozycji

Postprzez jarkozpl » 24 Sty 2019, 20:41

Nie rozumiem, w jaki sposób mam to sprawdzić ifem? Nie znam wielu funkcji c#. Wcześniej kodowałem tylko w gml a tam była funkcja instsnte_place(x, y), zwracają obiekt na określonych pozycjach,tutaj nie znalazłem takiego odpowiednika.
jarkozpl
 
Posty: 4
Rejestracja: 24 Sty 2019, 15:47
Has thanked: 0 time
Been thanked: 0 time

Re: Zwracanie obiektu na danej pozycji

Postprzez Hostur » 25 Sty 2019, 10:02

Albo trzymasz referencję do transforma tych obiektów i wywołujesz z jakąś częstotliwością Vector2.distance lub Vector3 distance do tych obiektów z poziomu biomgeneratora. Czyli przy generacji dodajesz taki obiekt do jakiejś listy aby móc po niej iterować. W zależności od szybkości przemieszczania się i dokładności jaką chcesz osiągnąć możesz to zrobić w funkcji update, fixedupdate, invokerepeating lub użyć coroutine.

Możesz też postawić box collidera i sprawdzać OnTriggerEnter

Możesz też puszczać sphearraycast co jakiś czas i sprawdzać co złapałeś na triggera

Użyj tych słów kluczowych w google i powinno się rozjaśnić, jak nie dasz rady to wróć z jakimś rozwiązaniem i zobaczymy co jest do poprawy
Hostur
 
Posty: 726
Rejestracja: 05 Sie 2015, 07:36
Has thanked: 0 time
Been thanked: 0 time

Re: Zwracanie obiektu na danej pozycji

Postprzez jarkozpl » 25 Sty 2019, 16:15

colliders nie działają bo obiekt nie porusza się tylko jakby teleportuje co 5f a długości nie chce mi zwracać bo tu nie ma funkcji zwracającej najbliższy obiekt i zawsze zwraca mi odległość od pierwszego obiektu ale to i tak by nie rozwiązało problemu bo obiekt biom generator tworzy wokół siebie 9 obiektów ale chcę żeby nie mógł postawić choćby 1 jeżeli w jakimś miejscu w którym miałby postawić ten 1 z 9 obiektów coś było.

Ja zwyczajnie muszę mieć funkcję która będzie mi zwracać obiekt w konkretnym miejscu ale nie na zasadzie że czy dany obiekt jest w tym miejscu tylko czy w tym miejscu jest jakiś obiekt i nie mogę użyć do tego collider bo on nie działa jeżeli obiekty się nie poruszają.
jarkozpl
 
Posty: 4
Rejestracja: 24 Sty 2019, 15:47
Has thanked: 0 time
Been thanked: 0 time

Re: Zwracanie obiektu na danej pozycji

Postprzez Palanthir » 25 Sty 2019, 22:24

Colider nie działa jeśli obiekty się nie poruszają ? Sprawdzenie czy obiekty są na danej pozycji nie odzwierciedli tego, czy w danym miejscu są jakieś obiekty ?
Palanthir
 
Posty: 99
Rejestracja: 31 Sie 2017, 16:13
Has thanked: 0 time
Been thanked: 0 time

Re: Zwracanie obiektu na danej pozycji

Postprzez Hostur » 29 Sty 2019, 07:59

Ja też niczego nie zrozumiałem.
Hostur
 
Posty: 726
Rejestracja: 05 Sie 2015, 07:36
Has thanked: 0 time
Been thanked: 0 time

Re: Zwracanie obiektu na danej pozycji

Postprzez patrykas1000 » 02 Lut 2019, 10:35

https://docs.unity3d.com/ScriptReference/Physics.html
https://docs.unity3d.com/ScriptReferenc ... phere.html
https://docs.unity3d.com/ScriptReferenc ... phere.html

Dokumentacja nie boli. Pamiętaj by wszystkie obiekty które można wykryć miały collider
OnTrigger/OnCollision nie będzie działać bo przynajmniej jeden z obiektów musi mieć rigidbody ale można dać rigidbody na collider który będzie sprawdzać.
patrykas1000
 
Posty: 344
Rejestracja: 16 Sie 2013, 21:35
Has thanked: 0 time
Been thanked: 0 time

Re: Zwracanie obiektu na danej pozycji

Postprzez Palanthir » 02 Lut 2019, 11:21

Geometry queris nie potrzebują rigidbody do wykrycia triggera i chyba są lepszym rozwiązaniem niż obiekty z colliderami.
Palanthir
 
Posty: 99
Rejestracja: 31 Sie 2017, 16:13
Has thanked: 0 time
Been thanked: 0 time


Wróć do Skrypty

Kto jest na forum

Użytkownicy przeglądający to forum: Google [Bot] oraz 3 gości

cron