Егор Поляков, Ну если владеешь владеешь каким нибудь прикладным языком типа C#,Java .. то проще на нем наляпать, а если с хостинга, то можно на том же php использую к примеру либу Imagick сгенерить нужное изображение.
Залейте код на jsfiddle.net, и объяснятие нормально что не работает, какие точки и зачем они нужны. Чего вы добиваетесь, и что должно произойти? Тут экстрасенсов нет
Мда.. вы вместо того чтобы изменить алгоритм на нормальный, навернули еще говна сверху.
Используйте requestAnimationFrame с ним игра будет побыстрее работать чем с setTImeout(loop,1000/60), А про setInterval я вообще рекомендую забыть и не использовать его нигде и никогда, а пользоваться только setTimeout
Afafks123132132165, Замудрено было изначально оно. Интересно ты сам придумал такой алгоритм? В принципе он то работает "как-то", ну я бы назвал это костылем, просто это обрезка лучей "на глаз". И для каждого луча по 1000 раз проходить и проверять, это не очень то.
Проверил скорость работы, мой алгоритм в ~30+ раз быстрее, а когда у тебя будет очень много объектов и особенно если будет больше лучей, то это играет весомую роль. Поэтому всетаки рекомендую разобраться. Ничего сложного, там основная фукнция это проверка пересечения двух отрезков и она же возвращает координаты точки пересечения, а квадрат это по сути 4 отрезка( 4 стороны), проверяем пересечение луча с каждой из сторон, и возвращаем точку пересечения ближайшую к началу отрезка луча (так как отрезок может проходить сквозь квадрат и будет 2 точки пересечения, пример).
А если у тебя в игре будет что то сложнее чем квадрат, какой нибудь полигон, то твой алгоритм окажеться бесполезным, ты же не будешь оберезать лучи по bbox'y полигона :D . А полигон можно представить как множество отрезков. И еще один момент это поворот, как только начнешь крутить свои квадраты, начнуться проблемы....
Встроить компилятор и файлы для компиляции, после выполнения кода , программа распаковывает компилятор, файлы компиляции, возможно отдельную программу для контроля которая вызовет компиляцию и заменит файлы...
Afafks123132132165, Именно 3д, точнее "псевдо-3д", ну роли это не меняет, это 3д. Просто эффект 3д получается за счет рейкастинга, вместо привычных нам камер и преобразований матриц которые лежат в основе привычного 3д. Зачем этим замарачиватся, раньше такое делали из-за малой мощности систем, а сейчас такое можно делать просто чтобы получить опыт который врядли где пригодится. Здесь подробно расписывается алгоритм создания подобной игры.