![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
UDP Broadcast и OpenGL: проблемы
Grim © (2004-12-15 13:50:00)Доброго времени суток всем!
У меня такая проблема.
Есть два приложения. Первое сервер, он броадкастит по всей подсети через idUDPClient таблицу с координатами кораблей каждые 20 (50?) мсек.
Второе клиент - фактически OpenGL игра, которая все это отрисовывает в соответствии с полученной таблицей. Вот так все это выглядит в идеале.
У меня на событие idServerUDPRead идет довольно-таки простая процедура проверки и записи полученных данных. Если добавляешь один корабль (вся таблица - 32 байта), то все работает как положено быстро, если добавить три (96 байт), то начинает все тормозить (даже Отрисовка OpenGL).
Ах да отрисовка идет на Application.OnIdle;
может быть кто-нибудь сталкивался с подобным или просто знает в чем дело, помогите пожалуйста.
Есть мысли, по поводу использования Application.ProcessMessages. Я пробовал ставить его в конец обработки UDPRead, но в таком случае программа перестает реагировать на все последующие пакеты (корабль стоитна месте).
А может здесь надо использовать Tthread. OpenGL в один поток, обработку пакетов в другой. Но с потоками я еще ни разу не работал...
Reindeer Moss Eater (2004-12-15 14:18:00) [1]Программу отлаживают по частям, а не намешав все в кучу.