Поскольку методы CG несколько загружают процессор, лучше всего написать метод, который вычисляет точку пересечения с использованием базовой геометрии.Или используйте алгоритм Sweep Line , он не должен быть слишком сложным.
РЕДАКТИРОВАТЬ: На самом деле, поскольку вы создаете игру-змею, в которой блоки расположены в сетке,можете просто пометить некоторые из блоков как , содержащие змею / что угодно , и если блок собирается помечаться дважды, то вы делаете все, что хотите, при пересечении линии.