crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Столкновение двух объектов, Реализация в C++/Qt с наименьшими затратами
QMainWindow
  опции профиля:
сообщение 3.12.2010, 11:22
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 198
Регистрация: 1.8.2010
Пользователь №: 1922

Спасибо сказали: 0 раз(а)




Репутация:   0  


День добрый.
Решил написать для себя небольшую программу(в 2D), в которой имитируется столкновение двух объектов (ящик и край экрана). Мне интересно, как это сделать и как это (примерно) делается на игровых движках. Первое, что пришло голову - это сделать таймер, объект ЯЩИК(QRectF например) и через каждые отрезки времени dt проверять через if-else координату ближайшей точки ящика к границе экрана. Вся эта штука движется и сталкивается по кинематическим законам и по закону сохр. импульса (энергии). Это рациональный подход? А если объектов много (например заставка с мыльными пузырями из Win7)? Что тогда делают, чтобы не тормазило?

Сообщение отредактировал QMainWindow - 3.12.2010, 11:24
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 3.12.2010, 11:37
Сообщение #2


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Есть замечательная книга М.Мозговой - Занимательное программирование. , там как раз первые несколько примеров подробно описывают твою задачу. Единственное код на паскале, но каждая строчка подробно разжевана.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
QMainWindow
  опции профиля:
сообщение 3.12.2010, 22:29
Сообщение #3


Участник
**

Группа: Участник
Сообщений: 198
Регистрация: 1.8.2010
Пользователь №: 1922

Спасибо сказали: 0 раз(а)




Репутация:   0  


Спасибо, качнул книгу, будем разбираться)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 23.4.2021, 8:57