Pavel K, c++ не считает деление на 0 исключением если тип операнда int, измени тип , например, на float и будет тебе исключение. Ты просто перепупутал, при делении нуля на любое число - результат 0, а если наоборот, то безконечность или , как в ЯП - исключение.
GavriKos, как ты и предположил-пришось с преобразованием координат повозиться, в юнити оказывается есть метод для получения луча прямо из viewportа , не привык я , что в юнити все сделано за программистов, начал сам решение думать, а оно там уже есть))ну, все равно спасибо за помощь)