Skip to content

Рандомізація та Random Seed

🇬🇧 English | 🇺🇦 Українська

Налаштування рандомізації додають керований розкид масштабу, відступів, зсуву та повороту між екземплярами. Кожен параметр задається діапазоном From..To; значення береться рівномірно з цього діапазону.

Розкид для секцій і труб (FSCElementRandomSettings)

Параметр Що варіює
Scale By Thickness (Y) / Scale By Height (Z) масштаб меша.
Left / Top / Right / Bottom Padding відступи (см).
Shift Horizontal (Y) / Shift Vertical (Z) зсув (см).
Roll Angle (X) нахил навколо осі елемента (градуси).
Rotate 0 or 180 випадковий поворот на 0 або 180°.

Розкид для стовпів і вузлів (FSCPointRandomSettings, FSCPointKnobRandomSettings)

Параметр Що варіює
X / Y / Z Scale масштаб по осях.
X / Y / Z Shift зсув по осях (см).
Roll (X) / Pitch (Y) / Yaw (Z) Angle кути (градуси).
Flip X / Flip Y випадковий поворот на 180°.

У режимі Curve параметри Pitch, Yaw та Flip ефекту не мають.

Прапорці ігнорування

На рівні конфігурації меша: Ignore Scaling / Padding / Translating / Rotation Randomization — вимикають відповідну групу розкиду для цього конкретного меша, не чіпаючи інших.

Random Seed

За замовчуванням розкид перекатується при кожній перебудові — тож два однаково налаштовані актори виглядають по-різному, а вподобаний варіант не зафіксувати. Секція Randomization на акторі це вирішує:

Параметр Призначення
Use Random Seed увімкнути детермінований режим.
Random Seed сид: з одним сидом структура збирається ідентично щоразу.
Randomize Seed (кнопка, лише редактор) підібрати новий сид і перебудувати.

Сид покриває все: масштаб, відступи, зсув, повороти, Flip і вибір випадкового меша. За замовчуванням Use Random Seed вимкнено — поведінка як раніше.

Зауваження. Зміна налаштувань, що впливають на кількість випадкових величин (додали секцію, увімкнули ще одну рандомізацію), зсуває послідовність, і вигляд при тому самому сиді змінюється — це властивість самого підходу.

Коли відбувається перерахунок

  • OnConstruction — при кожній зміні властивості в редакторі.
  • BeginPlay — на старті гри.
  • У runtime — через UpdateAfterChangeAnyProperty(), якщо Mobility ≠ Static (див. розділ 10).

Дивіться також