|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
14.08.2009, 17:39 | #51 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Щас попробую... Насчет переменной изменяющей положение персонажа в массиве - нет так как передвигаться по этим процедурам буду не только я но и другие персогажы игры, да к тому же зачем делать ее переменной если можно просто вычесть или прибавить 1. А вот насчет переменой попиксельного сдвига там почти также но раз эта скорость изменяемая тоггда конечно ее нужно делать переменной Но зачем ей делать знаки + или - если скорость в минус уходить не должна.
|
14.08.2009, 18:14 | #52 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
Shadow_1329, ты сначала хорошо хорошо подумай, потом говори "нет"
Попробую объяснить еще раз. Твой персонаж - центровой, это от него считается зона видимости карты, это его координаты лежат в основе "вырезания" фрагмента карты. Остальные персонажи двигаются как и двигались, они нам не нужны. Вот ушел какой-то перс за экран, он нам нужен? ...нет, ...и пусть себе ушел, его координаты нас не волнуют в прорисовке текущего кадра. Понятно? Про скорость. В школе учат, что скорость отрицательной не бывает, меняется вектор направления, ...считай что знак "+" или "-" это вектор направления. Если персонаж шел вперед со скоростью 2, то его смещение изменяется на 2, т.е. прибавляем. Если перс идет назад, мы должны отнимать скорость 2, ...теперь, внимание! если я прибавлю к смещению минус 2, куда пойдет перс? ...мы фактически убираем еще одно условие на смещение, оно теперь одно, но в зависимости от нажатой клавиши персонаж сам знает куда ему идти, ведь переменная скорости указывает не только приращение, но и "вектор", кроме того, в зависимости от того, положительное значение или отрицательное нужно выставлять направление анимации. Понятно?
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
14.08.2009, 18:23 | #53 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Понятно. Попробовал тот способ. Почему то подложка не перерисовывается заного. И все равно там что-то тормозит комп аж 78 процентов загрузки. Но перс теперь при передвижении не тормозит что уже радует! Ща буду исправлять.
|
14.08.2009, 18:40 | #54 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
А ты при запуске карты собрал подложку? ...если нет, то просто перекидывать нечего, вот и пусто. Укажи при старте флаг UpdateTerr True, ...и внимательно с переменными выреза участка карты, они должны быть заданы при старте, потом меняются динамически.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Последний раз редактировалось Beermonza; 14.08.2009 в 18:43. |
14.08.2009, 18:41 | #55 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Все терь норм. Но теперь когда он дооезжает до определенной координаты опять подложка не рисуется.
Вот код. Вроди все правильно... Код:
Последний раз редактировалось Shadow_1329; 15.08.2009 в 08:38. |
15.08.2009, 11:57 | #56 | |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
Цитата:
P.S Больше оффтопить не буду . |
|
15.08.2009, 22:51 | #57 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
Он и не ставит целью - сделать игру во что бы то не стало, ...ему интересно просто вот так копаться в коде, узнавать что-то новое, преодолевать трудности, ...да что я, ...он сам скажет, или уже сказал, нужно только внимательно посмотреть текст прошлых сообщений.
Слышь, Shadow_1329, ...а почему вдруг прорисовка объектов оказалась в сборе подложки? Вот только это в ней: Код:
Код:
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Последний раз редактировалось Beermonza; 15.08.2009 в 23:01. |
16.08.2009, 07:32 | #58 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Насчет того что сказал Beermonza да я это уже говорил. Может и не в этой теме, а хотя даже в этой. Начет прорисовки, щас попробую.
Работает!!!!!!!! Он работает!!!!! УРРА!!!!!!!!!!!!!!!!!!! Спасибо большое!!!!!!!!!! Токо вернулся к старой проблеме деревья сильно тормозят и загружают процессор=) Щас перейду на BitBlt() Н-да с BitBlt не тормозит вообще. Но прозрачность вокруг обьектов куда-то делась=( З.Ы. Я еще тут хотел узнать про тени от обьектов и свет на них(а то чтото я нигде тут этого не нашел), но думаю лучшев другой теме. Последний раз редактировалось Shadow_1329; 16.08.2009 в 09:44. |
16.08.2009, 17:34 | #59 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
BitBlt() не поддерживает прозрачность, он копирует пискели из источника в приемник. Давай-ка тут опишу создание буферов подложки и кадра более лучшим способом, это предмет темы.
Вот ты у себя создаешь буфера вот так: Код:
Код:
Код:
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
16.08.2009, 17:47 | #60 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Это прям так и написать? вместо Buf.Canvas.Draw(gx,gy,FullMap) писать это? Щас попробую.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как можно самому сделать так, чтобы программы грузились с диска, до загрузки ОС? | Лукманов Александр | Софт | 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 |