|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
30.07.2009, 12:33 | #21 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
пыщь
|
30.07.2009, 13:26 | #22 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Проблема была в дереве. Токо егол убрал сразу все пошло. Но не факт, что действительно в этом была проблема. Я думаю ты JTG прав. Там у меня стоит лабел может это он память жрет, и из-за этого не выделяется память на Тбитмап и вылетае ошибка.
П.С. А персонаж в углу это НПС недоделанный |
30.07.2009, 20:25 | #23 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
В теме "Уроки по созданию игр для новичков" я специально поместил заметку про структуру Try..Except..End, ...загоняй содержимое процедур в Try, в Except пиши заполнение Log-файла, потом смотри файл, где твоя программа косячит. Потом все уберешь или отключишь.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
30.07.2009, 20:29 | #24 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Ок. Спасибо!
|
01.08.2009, 10:57 | #25 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Урра!!!!!!!!!!!!!!!!!!!!!!! Спасибо бльшое!!!!!!!!!!! Повнимательнее почитал ответ от Beermonza и зделал все как нужно, то есть сначала все отрисовал на отдельный битмап(по загрузке уровне), а в таймере его уже отрисовываю с передвижением и загрузка ЦП теперь 0% при том что теперь у меня там целые леса!!!!!! УРАААА!!!!!! Тлько вот трава при скролинге карты моргает и все остальные текстуры(несмотря на то ячто я уже чуть ли не пятый буфер ставлю).
|
13.08.2009, 17:02 | #26 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
У меня тут еще одня маленькая прблема. Как я уже сказал выше у меня все отрисовывается на битмап по загрузке уровня и при перемещении карты этот битмап как будто перемещается под ногами перса. Когда переходишь в другую клетку карта обновляется специальной процедурой. Но персонаж у меня двигается теперь по-другому. Когда зажимаешь на клавишу перс перемещается и срабатывает процдура обновления(иначе перс не прорисуется) и все тормозит. Процедура обновления - это простая прорисовка всего на экране. Либо я делаю через таймер что также тормозит. Подскажите оптимальный метод(токо не про использование директ икс и опенгл). Очень благодарен заранее!
|
13.08.2009, 18:39 | #27 | |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
Цитата:
Есть еще вариант разбить битмап с картой на квадраты и рисовать только те квадраты карты которые видны на экране. Это позволит уменьшить площадь рисуемого изображения. Хотя с canvas ты все равно не уйдешь далеко в плане производительности. Последний раз редактировалось Вадим Буренков; 13.08.2009 в 18:44. |
|
13.08.2009, 19:00 | #28 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
Скорее дело в том, что ваша процедура обновления заднего фона сработав один раз по условию, продолжает выполняться с интервалом основного таймера, поскольку алгоритм на разовое ее срабатывание еще не написан. Оно?
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Последний раз редактировалось Beermonza; 13.08.2009 в 19:05. |
13.08.2009, 19:37 | #29 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Нет это не совсем то. У меня она и должна выполнятся в течении всего передвижения персонажа с клавиатуры иначе никак. Но опять же все начинает очень тормозить и CPU загрузка = от 60 до 99% что не катит. Я имею ввиду можно ли как нибудь по другому выполнить прорисовку карты не обращаясь при этом к проверке положения обьектов. Или вообще не обращаясь к прорисовке всех обьектов?
|
13.08.2009, 19:45 | #30 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
так стоп...ты вечно перерисовываеш весь кадр(целиком по новой)?
или всетаки частями(именно ту часть что изменилась)? Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как можно самому сделать так, чтобы программы грузились с диска, до загрузки ОС? | Лукманов Александр | Софт | 1 | 18.04.2009 12:14 |
оптимизировать для максимальной скорости выполнения программы, т.е. заменить ее кодом на ассемблере | gusluk | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 6 | 10.12.2008 04:21 |
Увеличение и уменьшение картинок | zzzzz | Мультимедиа в Delphi | 2 | 30.08.2008 20:53 |
запуск программы после загрузки Windows | matus | Windows | 3 | 25.04.2008 11:16 |
отслеживание загрузки программы | ГОСЕАН | Общие вопросы Delphi | 4 | 13.12.2007 18:04 |