Kompendium: Random Point in Bounding Box

Random Point in Bounding Box

Funkcja, która zwraca wektor przedstawiający losowy punkt lokacji określona przez pierwotny punkt oraz “Box Extent“.

Punkty wejścia:

  • Origin: Wektor przedstawiający centralną pozycję “Box Extent”
  • Box Extent: Wektor, który zawiera wymiary pudła określając objętość

Punkt wyjścia:

  • Return Value: Wektor przedstawiający punkt, który został wygenerowany losowo wewnątrz “Box Extent”

Przykładowe użycie: 

Ilustracja poniżej pochodzi z Blueprintu poziomu. “Box Trigger” o nazwie “SpawnArea” został postawiony na naszym poziomie do określenia strefy, gdzie przedmioty zostały stworzone w losowych pozycjach wewnątrz zasięgu tej lokacji. Gdy gra startuje, to akcja “ForLoop” powtarza akcję “SpawnActor” 20 razy by stworzyć 20 przedmiotów w losowych pozycjach. Pozycja każdego z przedmiotów może zostać uzyskana przez funkcję “Random Point in Bounding Box” używając “Origin” i “Box Extent” naszego “SpawnArea”.

16_bpc3_randompoint

Akcja “SpawnActor” potrzebuje struktury typu ‘Transform“, by została zastosowana przy tworzenia aktora. Gdy próbujemy połączyć wektor do “Transform” to edytor automatycznie tworzy konwerter używając wektora jako “Location“. Inne atrybuty “Transform” zostaną ustawione zgodnie z ich domyślnymi wartościami.

W “Collision Handling Override” parametr “SpawnActor” używa opcji “Try to Adjust Location, But Always Spawn“. Powoduje to sprawdzenie wszystkich przeszkód na danym poziomie i umieszczenie aktora w pobliskim miejscu, gdzie nie koliduje z żadną.


Źródło:http://romeroblueprints.blogspot.com/2017/04/bp-compendium-3-random-point-in.html