Skip to main content
Stack Overflow на русском

Временная шкала для «Godot Fragment Shader Intersection»

Текущая лицензия: CC BY-SA 4.0

Post Revisions

12 событий
когда сменить формат что кем лицензия комментарий
31 окт. 2025 в 14:25 комментарий добавлен MBo Если пересечения будут часто, то отдельно считать факт пересечения ни к чему, ваше решение, если оно без ошибок - подойдёт. Если пересечения редки, то, вероятно, стоит их обсчитывать так, как у меня по ссылке, только нужно оценить, будет ли количество вычислений меньше, чем у вас до вычисления дискриминанта. ray.direction у вас единичный вектор, судя по отсутствию коэфф. а?
31 окт. 2025 в 10:44 комментарий добавлен Evil Giraffe @MBo Я хочу функцией get_intersection() получать bool значение, есть ли пересечение и если есть, то так же получить координаты точек пересечения. В последствии мне потребуется это для raycasting. Сдвиг координатной системы для получения центра сферы в (0,0,0) произвожу.
30 окт. 2025 в 2:03 комментарий добавлен MBo ОК, тогда поясните, что именно вы хотите получить. У вас в коде координаты (все?) предварительно исправляются помещением сферы в ноль координат? (Это я про зависимость от положения)
30 окт. 2025 в 0:41 история изменён Evil Giraffe CC BY-SA 4.0
Явно задал VERTEX как глобальные координаты до вершины и добавил перевод из смещенной системы координат. P.s. Нет, это не решение моей проблемы. В моей тестовой сцене сфера вообще стоит на (0, 0, 0) координате, так что вклад центра сфера нулевой
29 окт. 2025 в 19:27 комментарий добавлен Evil Giraffe @MBo большое спасибо, но это немного не то, что мне нужно
29 окт. 2025 в 19:19 комментарий добавлен MBo Вот как можно попроще проверить: ru.stackoverflow.com/a/921657/291659 ( Dot(pr, pr) сравнивать с квадратом радиуса сферы)
29 окт. 2025 в 19:17 комментарий добавлен Evil Giraffe @MBo В будущем мне потребуются точки пересечения (я уже нахожу их), но сейчас я проверяю факт попадания прямой в сферу и уже не справляюсь.
29 окт. 2025 в 19:13 комментарий добавлен MBo Вам нужно проверить факт попадания прямой в сферу или найти точку пересечения?
29 окт. 2025 в 18:57 комментарий добавлен Evil Giraffe @user7860670 Я хотел протестировать код и красить вершины сферы в красный, если луч, выпущенный из камеры в сторону этой вершины пересекает сферу. Как вы понимаете, в данном примере вся сфера должна стать красной, но в результате происходит что-то непредвиденное.
29 окт. 2025 в 18:54 история изменён Evil Giraffe CC BY-SA 4.0
Добавил поправку на координаты центра сферы. Однако это не решает проблему, так как ошибка возникает даже в случае, где координаты центра (0, 0, 0)
29 окт. 2025 в 18:53 комментарий добавлен user7860670 ¿А какой результат ожидается? ¿Вся красная или вся белая сфера или что-то еще?
29 окт. 2025 в 18:48 история задан Evil Giraffe CC BY-SA 4.0

AltStyle によって変換されたページ (->オリジナル) /