Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Программирование (http://zx-pk.ru/forumdisplay.php?f=14)
-   -   Игра "Вера". Что еще можно ускорить? (http://zx-pk.ru/showthread.php?t=1139)

axor 21st July 2005 10:53

Quote:

Originally Posted by newart
Напомни, у тебя поле по знакоместам скролиться или по тайлам?

По тайлам.

axor 21st July 2005 10:54

Quote:

Originally Posted by Shiru
Это и есть поиск по фронту волны, о котором я тебе говорил.

Минин Володя (который делал для меня процедуру) сказал, что она так и сделана.

axor 21st July 2005 10:57

Quote:

Originally Posted by Raider
Я так понял, выводишь на экран асинхронно прерываниям.

Теперь вывод экрана привязан к прерываниям. Но может отказаться от этого?

В первой деме вывод экрана не был привязан и выводился асинхронно.

Quote:

Originally Posted by Raider
Вопросец - за один игровой "тик", один оборот игрового цикла, сколько спрайтов выводятся на экран? Сколько раз отработает этот кусочек кода?

Если ты имеешь ввиду вывод тайла, то один тайл за цикл (формирование теневого экрана) выведется 144 раза. Это происходит после того, как теневой экран выкидывается на видимый экран.

Raider 22nd July 2005 15:52

Quote:

Originally Posted by axor
Теперь вывод экрана привязан к прерываниям. Но может отказаться от этого?
В первой деме вывод экрана не был привязан и выводился асинхронно.
Если ты имеешь ввиду вывод тайла, то один тайл за цикл (формирование теневого экрана) выведется 144 раза. Это происходит после того, как теневой экран выкидывается на видимый экран.

Ну мож имеет смысл убивать 512 байт памяти и заменять серию ADD..
на такое:

LD H,XX
LD L,YY
LD A,(HL)
INC H
LD H,(HL)
LD L,A
. . .
хотя в гейме я бы не стал. в демке - обязательно.

axor 25th July 2005 10:46

Quote:

Originally Posted by Raider
Ну мож имеет смысл убивать 512 байт памяти и заменять серию ADD..
на такое:

LD H,XX
LD L,YY
LD A,(HL)
INC H
LD H,(HL)
LD L,A
. . .
хотя в гейме я бы не стал. в демке - обязательно.

Согласен. В игре такое уже не нужно.

Полагаю, что практически достигнут логический конец ускорения в разумных пределах конечно. Кардинально уже ничего не ускорить.

Теперь нужна скоростная процедура поиска пути.

Кто знает, как делал Медноногов?

Shiru 25th July 2005 11:45

Quote:

Originally Posted by axor
Кто знает, как делал Медноногов?

У него там совсем другой случай, и другой принцип поиска - обход по часовой/против часовой стрелки. Юнит трассирует путь по прямой на пару клеток вперёд себя, если там стенка - он делает проверку, в какую сторону нужно пройти меньше клеток для того, чтобы можно было продолжать идти в нужном направлении. Этот способ не даёт 100% нахождения пути, но работает быстрее, и больше подходит для динамических препятствий (специфика RTS).

Он в каком-то журнале описывал используемый в ЧВ алогоритм более подробно и понятно. Не помню, по-моему, ещё в ZX-Format'е каком-то.


All times are GMT +4. The time now is 21:08.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.