νλ©΄ λ΄λΆμ κ· μΌνκ² μ μ μ°λ λ°©λ²μ λκ° μμκΉ?
λ¨Όμ λ μ¬λ¦΄ μ μλ λ°©λ²μ λλ€νκ² μ°λκ²μ΄λ€
μ΄λ¬λ©΄ μ λ€μ΄ νΉμ μμμ λμ³μκ³
μ΄λ€ μ λ€μ κ±°μ κ²ΉμΉ μ λλ‘ κ°κΉκ³ , μ΄λ€ μ λ€μ λ무 λ©λ€
μ΄μ© μ μμ΄ ν΅κ³μ μΌλ‘ μμ ν λλ€ν λΆν¬λ νμ°μ μΌλ‘ ν΄λ¬μ€ν°λ₯Ό λ§λ λ€.Β
κ·Έλ λ€λ©΄ μ λ€μ΄ λ무 κ°κΉμ§ μλλ‘Β μ΅μ 거리λ 보μ₯νλ©° 무μμμ±μ μ μ§νκ³ Β
곡κ°μ ν¨μ¨μ μΌλ‘ μ±μ μκ°μ μΌλ‘ μμ λλλ‘ ν λ°©λ²μ μμκΉ?
λ€λ₯Έ λ°©λ²λ€λ μκ² μ§λ§ μ΄λ° μν©μλ
νΈμμ‘ λμ€ν¬ μνλ§λ₯Ό μ΄μ©ν μ μλ€
λͺ¨λ μ λ€ μ¬μ΄μ μ΅μ 거리λ₯Ό 보μ₯νκ³ Β
λλ€νκ³ μμ°μ€λ¬μ΄ λΆν¬λ₯Ό λ§λ€κ³
λ€κ°ν 곡κ°μ ν¨μ¨μ μΌλ‘ μ±μΈ μ μλ€
μ¬λ¬ ꡬνμ΄ μμ§λ§ μ΄λ²μλ Bridson ꡬνμ νμ©ν΄μ μ¬μ©ν΄λ³΄κ² λ€
https://github.com/udit/poisson-disc-sampling/blob/master/addons/PoissonDiscSampling/poisson_disc_sampling.gd
μ μ½λλ₯Ό μ¬μ©νλ€
μμ΄ν
ν΄κΈμ νμλλ νλ©΄μΈλ° μΌλ°μ μΈ λλ€μ μ¬μ©νλ©΄ νμͺ½μΌλ‘ μΉμ°μΉ μ μμ΄ λΆνΈν¨μ΄ μλ€.
보면 μκ°μ μΌλ‘ κ· μΌνμ§ μκ³ κ²ΉμΉλ μ λ€μ΄ μ‘΄μ¬νλ€
λ°λ©΄ νΈμμ‘ λμ€ν¬ μνλ§μ μ¬μ©νλ©΄ μ λ€κ°μ μ μ§ν΄μΌ νλ 거리λ₯Ό μ€μ ν μ μκ³ Β
μ΄λ₯Ό ν΅ν΄ λλ€νμ§λ§ κ· μΌν κ²°κ³Όλ¬Όμ λ§λ€ μ μλ€
λ¨Όμ CollisionPolygon2Dλ‘ UI μμμ λΊ μμ΄ν
μ΄ λ°°μΉλ μμμ μκ°μ μΌλ‘ λ³Ό μ μλλ‘ μ§μ νκ³
μ λ΄λΆμμ μμ΄ν
μ΄ μμΉ ν μ μλ μ μ λ¨Όμ λ§λ€λλ‘ νλ€
νΈμμ‘ λμ€ν¬ μνλ§μΌλ‘ λ½μ μ λ€μ΄λ€ κ· μΌνκ² λΆν¬λμ΄ μλκ±Έ λ³Ό μ μλ€
μ΄μ μ΄κ±Έ μ€μμμ κ°κΉμ΄ μμλ‘ μ λ ¬νκ³
μμ΄ν
μ λ°°μΉνλ©΄ μμ±μ΄λ€
μ΄λ°κ² λΏλ§ μλλΌ μ μ°¨μ μμ±μ λ무 λ λ± μ§νμ§λ¬Όμ λΆν¬ μμ± λ±μ
λλ€νλ©° κ· μΌνκ² λ§λ€κ³ μΆμ μ¬λ¬κ°μ§μ νμ© κ°λ₯νλ€
Bridsonμ 거리 κΈ°λ° μκ³ λ¦¬μ¦μ΄λΌ μμ±ν ν¬μΈνΈ μλ₯Ό μ§μ νμ§ λͺ»νμ§λ§Β
μμ±μ 보μ₯ν΄μΌνλ ν¬μΈνΈ μκ° μμ κ²½μ°μλΒ
Weighted Sample Elimination λ± μκ³ λ¦¬μ¦μ μ¬μ© ν΄ λ³Ό μ μλ€
μ¬κΈ°μλ κ·Έ μ λλ‘ μ νν ν¬μΈνΈκ° νμνμ§ μμΒ
λΉ λ₯Έ μλμ μ λΉν νμ§κ³Ό κ°λ¨ν ꡬνμ κ· νμ κ°μ§κ³ μλ Bridson μκ³ λ¦¬μ¦μ μ¬μ©νλ€
κ°μλ¦λλ€ μ€λ νΈμμ‘λμ€ν¬μνλ§μΌλ‘ λ무μμ± λ§λ€κ³ μμλλ°
νΈμμ‘μ λ³΄κ³ λ¨μμ μ¬μμ μμμ‘μ΄ μκ°λ¬μ΄μ
κ·Έκ² λμ?
@γ γ 1996λ μΈκΈ° μνΈμ½€μ νμμ²μ΄ λ§‘μλ λ°°μμ λλ€
νΈμμ‘~ νΈμμ‘~
μ€ κ°μΆ