я выбираю одну из них и хочу найти ближайшую, можно ли это сделать быстрее, чем О(n)?
Если точки фиксированы, и нужно часто получать ближайшую точку из множества, то можно единожды рассчитать lookup таблицу для всех точек и просто смотреть туда. Если точки постоянно разные, то, наверное, никак (но можно оптимизировать, чтобы проверять не все точки). Если меняется не слишком много точек, то можно делать амортизации таблицы, меняя её, например
Такую штуку делали Entagma (уроки по Houdini). Секунд 20-30 посмотрите, сразу поймете о чем речь. https://www.youtube.com/watch?v=uhYe-Cs46hs Сам экспериментировал и выходили кастомные варианты. Если заточиться и перевести с VEX -> GDScript / не уверен что есть функция аналог PCFind
Обсуждают сегодня