Форум программистов, компьютерный форум CyberForum.ru

Столкновение объектов - C++

Восстановить пароль Регистрация
 
Ksan
26 / 26 / 0
Регистрация: 02.11.2010
Сообщений: 370
24.05.2012, 12:43     Столкновение объектов #1
Собираюсь писать игру на SDL. В ней придется обрабатывать столкновения произвольных объектов. Меня интересует не физика, а именно как определить, столкнулись или нет и если столкнулись, то чем?

Проще говоря, есть игровая плоскость. По ней движутся 2 объекта. У каждого объекта есть Surface (2-мерный массив, в котором значения могут принимать 0 или 1. 0 - значит там пустота, 1 - не пустота. У каждого объекта есть координаты. Так вот как узнать, когда объекты столкнутся?

Я придумал 2 решения, но они ресурсотребовательны:

1) способ "в лоб": Сравнить каждую точку 1го массива с каждой точкой второго, если координаты одинаковые -> столкновение.
2) способ "по лбу": создать 2мерный массив игровой плоскости и скопировать на него один из массивов объектов. Потом сравнивать каждую точку другого массива с точкой на плоскости, где она (точка) находится.

Есть ли другие способы? И насколько оптимален 2рой мной описанный?

Добавлено через 1 час 3 минуты
uuuup

Добавлено через 49 минут
Uuup2
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.05.2012, 12:43     Столкновение объектов
Посмотрите здесь:

Графика С++, столкновение шаров C++
столкновение C++
C++ Столкновение объектов в играх
C++ В программе реализовать возможность записи объектов в файл и чтения объектов из файла
C++ Центральное столкновение шаров
C++ Столкновение шаров
Столкновение функций C++
Реализовать столкновение шарика со стенкой C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 17:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru