#8 Курсы программирования в Delphi - Стрельба в танках. Потоки, конфликты потоков.
Таймкоды: 0:00 - Вступление, какие проблемы и задачи будут на занятии. Смотрим на код, написанный на прошлом занятии. 5:04 - Изменение перемещения танка. 10:17 - Потоки. 18:00 - Конфликты потоков. 29:05 - Предотвращение конфликтов потоков. 30:55 - Класс TMonitor - простой механизм блокировки потоков для предотвращения конфликтов. Демонстрация работы TMonitor. 57:06 - Начало реализации стрельбы. 1:04:22 - Еще раз про безопасное уничтожение объектов. Метод DestroySafe. 1:12:05 - Реализация хранения у объектов игрового мира ссылки на игру (объект TGame). Это полезно при обращении из логики объекта к спискам других объектов, например. 1:13:09 - О том, как избежать циклического использования юнитов, если это все-таки стало необходимо. 1:21:03 - Об оптимизациях для большого количества объектов игрового мира или в случае большого игрового мира. О разбиении мира на регионы. 1:28:50 - Продолжаем делать стрельбу. Попутно мы изменяем механизм проверки пересечений, который теперь возвращает список пересеченных объектов и может игнорировать объекты интересующего класса. 1:45:26 - Тип TClass - ссылка на класс, позволяющая проверять принадлежность какого-либо объекта своему классу. Демонстрация на примере игнорирования пересечений перемещающегося танка с объектами TBullet. 2:07:42 - Механизм времени жизни объекта. Автоматическое уничтожение пуль, если они существуют более 5-ти секунд. Пример с занятия: https://drive.google.com/open?id=0ByT...
(версия dll Quad Engine 0.8.0)