Просмотр полной версии : WarCraft 1 - под классический 128+TR-Dos
Ты слишком много времени тратишь на полемику. Делай, как считаешь нужным и если это действительно будет революция - все злопыхатели утрутся.
А пока всё идет как будто бы неплохо. Интересно, сколько сожрёт ИИ. Ну и реальные баталии это минимум по 10 юнитов с каждой стороны.
Думаю, даже 6:6 уже будет нечто.
... (https://vk.com/wall-139511064_4778)
Не удержался, простите...
Dimon spb
22.05.2021, 17:47
Думаю, даже 6:6 уже будет нечто.
ну реальная игровая ситуация - нападаешь на базу группой юнитов (6?), на базе защита(6?) и пеоны ещё бегают. Так что 10:10 это минимум. Иначе какой это Варкрафт?
- - - Добавлено - - -
Тут звучала правильная мысль - не перерисовывать то, что не требуется. Но это противоречит планируемой куче кадров анимации - даже если юнит стоИт, всё равно стреляет или мечом машет - надо перерисовывать
vlad-kras
23.05.2021, 11:50
Четырем месяцам работы посвящается.
Я думаю Ворон делается, если без уровней - за неделю в одно рыло. Так что я вас не понимаю. Вон тема на форуме про 64*48 уже 15 лет мусолится, - ни одной поделки не сделали. Я взял и за вечер видос сделал в этом режиме. ИЗИ.
хммм ок. Ждем Ворона через две недели. Недели я думаю тебе хватит на уровень.
Я имел в виду за столько напишет чел, кто в асме не прерывался кодить, а также имеет уже на винчестере все нужные процедурки математики, вывода и т.д. Вот он без проблем за неделю соберёт из кусков. Я же буду копаться несколько дольше, пытаясь выискать нужные экземплы и сорцы. Собсно суть открытия ветки в этом и заключается - хочу отдать на реализацию профессионалу. А на себя возьму обеспечение красоты.
Юниты успешно побежали по карте!
До второй демки - рукой подать.
Вопрос телезрителя знатокам: сколько именно недель / месяцев содержится в слове несколько ?
Где-то 2% работы сделано.
PS: Про два процента -- я серьёзно.
Какие еще будут версии?
Какие еще будут версии?
Тут за слово м/\3ниа карточки раздают, у меня есть версии но говорить я конечно их не буду.
У Медноногова кстати тоже WIP демки были кто не помнит, можно сравнить https://vtrd.in/release.php?r=86dddf156c1e127bbc86e4265292ce50 вроде самая ранняя.
Трям!
Может мне кто-нибудь объяснить, каким методом ТС рисует фон (он описал алгоритм действий скролла и вывода спрайтов). Но перерисовка фона как у него происходит? Или он имел в виду, что смотрит спрайт где находится и под ним заменяет фон, как бы делая рефреш фона, с затиранием спрайта, как в итоге? Если такой способ, то спрайт может занимать 4 тайла в разный момент времени.
Да, при скролле делается фриз процесса игрового, так проще. Хотя в UFO1 там процесс движения спрайтов не останавливался и всё тормозило.
В rts Jackal, там движок как я понял, другой, отличный от ворона. Лес похож на спрайтовый, что-ли. Так как появляются тормоза, если на экране много леса. Но там как понимаю, связано с тем, что часть спрайтов "прячутся" за лесом и постройками, мостами. Да и стрелы там летают по синусоиде и могут промазать, что динамичнее выглядит.
Про 8 процедур скролла - это жирно. А не проще 4 и объединять попарно, если по диагонали двигаем?
Немного лирики...
У Медноногова ворон - это по большей части большой визуальный обман и иллюзия, в алгоритмах ИИ тоже. Т.к. решить задачу в лоб не получится с нашими характеристиками ZX. Многие трюки можно в переписке его найти. И как по ней видно много времени ушло на "высокий уровень" отработки алгоритмов ИИ.
P.S.: Ну и чтобы его переплюнуть (скинуть, растоптать, снести с трона и пъедестала), нужно ориентироваться на ВТОРОГО Ворона. Псевдо-3D (за объектами там юниты всё-таки не прячутся, в отличии от Jackal), подземные туннели (телепорты), летающая техника, с разными тенями, куева туча юнитов на экране и т.п. Вот что надо переплёвывать).
П.П.С.: И по-поводу недели на изичах. Учитывая, что научная парадигма сообщества zx на zx-pk практикует философию науки, как устоявшуюся за многолетия, в контексте предложений и желаний ТС, как проекцию на ТС сложившегося опыта (читай, что говорит ТС, то он и утверждает, то он и умеет, либо некто из его окружения). Любое проявление научной революции, в научной парадигме воспринимается как попытка сдвинуть границы рациональной научной деятельности, где некоторые задачи оказываются неразрешимыми, что приводит к сомнениям в научном сообществе. В итоге все попытки лингвистической, фонетической и синтаксической интерпретации ТС своих изречений нивелируется на фоне проявления им же научной революции. Исходя из выше сказанного, научная революция пытается изменить парадигму программирования (к удивлению, во многих различных определениях парадигмы программирования), что по сути также влияет на парадигму, как философию, её шаблоны и представления. Исходя из этого, не вникая в остальные парадигмы, т.к. очевидна связь "Один-ко-многим", интерпретация выражения "за неделю на изичах" воспринимается сообществом как утверждением ТС о своей состоятельности в этом вопросе, хотя ТС и указывает на то, что не употреблял слово "Я" в данном контексте. Но то, что он задел идею парадигм, не предоставив субъекта, либо сущность, которая хотя бы на словах, пользуясь своим авторитетом, в сообществе подтвердила данное высказывание, хотя бы вербальным способом - говорит о том, что утверждения, попытка научной революции, изменение точек сбора парадигм, есть ни что иное, как попытка вызвать Парадокс. Хотя и являющимся по своей сути на данном моменте - виртуальным парадоксом, взаимоисключающим (противоречащим) суждениям, оказывающимся в равной мере доказуемыми, где второе из доказательств выливается на данный момент в 50 страниц темы, чтобы на конечном этапе подтвердит этот Парадокс, либо его опровергнет.
DragonsLord
24.05.2021, 13:41
спасибы тут обнуляли
Это не важно. Можно подумать у меня спасибосы до-обнулённого периода. Ха-ха. Очень смешно.
Четырем месяцам работы посвящается.
Это тоже враньё. Тот Варик, который вы видите писался ну наверное неделю - полторы. До этого я занимался писанием уровня под Алниевский 3D-engine с допиливанием самого движка до кондиции. Посмотреть на результат можно по ссылке из моей подписи - игра "Elite" 21. Исходники опубликованы в журнале Алония на весь мир.
в дальнейшем (если у кого-то или даже у меня) возникнет желание перерисовать графику - пересобрать будет реально?
Теоретически графику сменить проблем не вызовет. Подкорректировать чуток процедуры вывода, если уж сильно спрайты будут по размеру отличаться и всё заработает.
а важно что Ворон написан и выпущен
Факт релиза, безусловно, даёт Медному уважуху. То, что он первую rts выпустил ещё плюсик в копилочку.
То, что Ворон не оптимален и можно быстрее - к бабке не ходи.
Тут звучала правильная мысль - не перерисовывать то, что не требуется.
Правило касается мест экрана, где ничего не происходит. Именно по этой причине я отказался от идеи анимировать воду. Бесполезнейшая трата тактов в rts. У Медного вода анимируется возможно из за того, что он рефрешит весь экран. Скорее всего именно так, т.к. отключение анимации водички у него никаким образом на fps не влияет. У меня же алгоритмы рисования гораздо быстрее и юнитов можно будет иметь в итоге в бою одновременно гораздо больше. Точнее, не больше, а столько же, но без тормозов.
Какие еще будут версии?
По моей версии минимум 50% проекта уже готово. Если не больше.
Может мне кто-нибудь объяснить, каким методом ТС рисует фон
При запуске 1 раз отрисовывает все 144 тайла и всё. Я давал полый код этого куска здесь в ветке. Далее только динамические методы: рефрешер+спрайтовалка.
Если такой способ, то спрайт может занимать 4 тайла в разный момент времени.
Спрайт 3х3 может и 6 тайлов рефрешинга запросить на изичах, просто стоя на исходной позиции.
В rts Jackal, там движок как я понял, другой, отличный от ворона. Лес похож на спрайтовый, что-ли.
В шакале наложение спрайтов, а значит карта двухуровневая, т.е. отрисовывает он её в два прохода. Делайте выводы о скорости. И релиз карты шириной в два раза больше, чем лезет на экранчик карты - самое тупое решение из все, когда либо мною виденных. Меганеудбно. Играл, знаю.
Про 8 процедур скролла - это жирно. А не проще 4 и объединять попарно, если по диагонали двигаем?
Ты сказал: "Давайте весь экран рефрешнем полностью раз, а потом полностью второй раз". Гыгы. Скроллеры не занимают много места.
Ну и чтобы его переплюнуть (скинуть, растоптать, снести с трона и пъедестала), нужно ориентироваться на ВТОРОГО Ворона.
Достаточно первого Варика. Доказательство скидывания с пъедестала элементарно: Медный хотел сделать варик, но не смог. А я смогу. Более лёгкого доказательства и представить сложно.
polikarpov76
24.05.2021, 15:46
Ну вот демотивировали уважаемого автора и он теперь того гляди бросит проект. Давайте организуем краудфандинговую кампанию, пусть пишет новый варик за донат!
Lethargeek
24.05.2021, 15:53
Медный хотел сделать варик, но не смог. А я смогу. Более лёгкого доказательства и представить сложно.
пффф, тут уже 15 лет могут даже клон R-TYPE за 30 дней, ты не переплюнешь этот рекорд :p
DragonsLord
25.05.2021, 22:58
Смотрел код Ворона. На 51 юните в кадре стоит ret. То, есть больше - он отрисовать не может.
Также в коде есть миррор спрайтов. Нафига отражённые присутствуют в графике - вааще хз.
Рефрешера фона под конкретным юнитом не встретил, т.е. скорее всего я прав - рефрешится всё поле.
Для ускорения обсчёта ИИ юнитов - всё разбито на квадранты 8х8 тайлов. И юниты сортируются по квадрантам.
Для этого, - хедера юнитов два. Один по IX это все параметры, и по IY только номер юнита в массиве с квадрантами.
По поводу "гениального решения расхода юнитов", которое многие крутые кодеры поют диферамбами Медному, выражается всего в одном байте. Если не может сейчас куда-то пройти, ставит себе в задания #80 (128), - код отложенного поиска. Собсно, ВСЁ. Больше ничего там нет.
Понаписал умного всякого, разбираться же в код ни кто не полезет... Там 51 юнит рисуется 51-ой подпрограммой ? :)
От тебя слишком много яду, при всем этом ты жалуешься на какие-то унижения от других. Плохо кончишь. Если быть точнее - не закончишь...
DragonsLord
26.05.2021, 07:23
Естеснно, ты не полезешь разбираться. Сообщаю тебе как оно там.
А заодно и всем, кому интересно, как работают ультрабыстрые "укороченные" алгоритмы.
null_device
26.05.2021, 09:13
Смотрел код Ворона.
....
Больше ничего там нет.
С подключением!
Эти моменты, для многих стали известны со времён выхода zx format #8.
И не тужился вроде. Ессесно не полезу, мне не интересно.
Ты если взялся то делай, тебя тут больше чем кода в твоей поделке.
[censored]
DragonsLord
26.05.2021, 14:35
известны со времён выхода zx format #8
Ага, в котором описано, как прекрасен волновой алгоритм и как его применять. А в Вороне им и не пахнет. Гыгы.
Касательно Варика: свёл все хедеры своих юнитов строго в Медноноговский формат. Не то, чтобы они прям идеальны, вовсе нет, но это позволит максимально быстро адаптировать процедуры Ворона под нужды вторичного использования. ИЗИ!
DragonsLord
27.05.2021, 15:17
Ещё в Вороне звук с позиционированием, чего я не ожидал там увидеть. Громкость уменьшается в прямой зависимости от расстояния до места события. Прикольная фишка.
DragonsLord
29.05.2021, 01:53
Код рефрешера и аниматора увеличился в 2,5 раза.
Теперь движок умеет отрисовывать и юниты размером 3х3 знакоместа.
https://c.radikal.ru/c41/2105/5f/b27f0b62efb7.png
Кто не понял, каким образом определяется зона рефрэшинга: это все тайлы, которые будут затронуты, при плавном перемещении спрайта из одной целочисленной позиции на карте в другую целочисленную позицию. Для спрайтов 3х3 зона рефрэшинга в пару раз больше по площади, чем у спрайтов 2х2, потому что спрайт торчит влево-вправо на 4 пикселя, а вверх на 8 пикселей от целочисленной позиции конкретного тайла.
DragonsLord
29.05.2021, 14:01
Алоний поплакался мне в жилетку, что у него эмуль постоянно находится в +turbo режиме, и Варик запускается с неадекватно высокой скоростью. Специально по заявкам наших телезрителей сделал синхру процессов в Игре под любую растактовку компа-проигрывателя:
- скроллер 2хhalt
- анимация юнитов 4xhalt
- пауза при кликах в системном меню 5xhalt
Теперь на компах с любой скоростью хорошо.
https://i.imgur.com/uFruZNA.png
Повелитель, у вас рефрешер вылез и торчит в сторону. (в древних сказаниях написано что спрайт 3х3 не может налазить на более чем 3х3 тайла 16х16)
DragonsLord
29.05.2021, 19:09
Если в реалтайме рассматривать, то да.
Если рассматривать всю цепочку от первой точки перемещения до последней - захватывает 4х3 тайла. У меня сделано универсально по второму методу. Если уж очень сильно станет не хватать скорости, придётся переписать по первому. Но пока и так нормально.
-----
В связи с фиксингом скроллеров под +turbo были изменены 4 из 8 скроллера, дабы оные позволяли прийти прерываниям. Результат: максимально адекватная, разогнанная и плавная работа скроллингов от супертормозного ZS Scorpion до ультрабыстрого Evo 14МГц.
Обнаружился минус технологии. Не хватает времянок, чтобы запихнуть сие в тайминги старых классических машин 128к,+2,+3 Спектрумов. То есть на них скроллеры наоборот замедляются на 1 halt. Прикинув, что эти машины не обладают TR-DOS, а Варик будет писан строго под TR-DOS, принял решение - ну и пофиг. :biggrin:
Если рассматривать всю цепочку от первой точки перемещения до последней - захватывает 4х3 тайла.
ну тогда да, жаль что по твоей задумке юниты 3х3 только по горизонтали ходят, как то не по варкравтовски получается.
- - - Добавлено - - -
А я понял, что бы избежать сложнейших тригонометрических расчетов ты просто перезаливаешь все вокруг с запасом, а что, современно молодежно.
Dart Alver
29.05.2021, 20:05
Прикинув, что эти машины не обладают TR-DOS, а Варик будет писан строго под TR-DOS, принял решение - ну и пофиг
Ну нынче они временами обладают DIV-MMC/IDE с ESXDOS а там TR-DOS эмулируется себе так вполне. ))
DragonsLord
29.05.2021, 21:36
юниты 3х3 только по горизонтали ходят
Ходят во все стороны.
у нынче они временами обладают DIV-MMC/IDE с ESXDOS а там TR-DOS эмулируется себе так вполне
Пусть буржуины плачут. Варик онли под Раша-Спектрумы! :v2_dizzy_punk:
Кстати, Ворон также писался онли под Russia. Там даже таблички нет под прерывания и на медленную память положено.
- - - Добавлено - - -
модно, стильно, молодёжно - конечно же не катит. Вот развесовка времянок:
- зелёный рефрэшер фона
- красный вывод спрайтов (на следующем кадре)
https://a.radikal.ru/a42/2105/de/88aea58638d8.png
Таким баланс быть не должен. Другое дело, что хедеры юнитов развиваются постепенно и ещё физически нет тех ячеек с данными, необходимыми для расчёта реалтайм положения, а значит более точного обсчёта рефрэшера. Но, будут. И уже скоро. Можно будет сыкономить процентов 40% от зелёной зоны. Скриншот сделан на 14МГц, кстати вот эту картинку он выводит фрэймово и без сечения лучом, вааще идеалити прям на бэк юуфере. И теперь с механизмом работы под +turbo сие можно просматривать и наслаждаться :tongue:
Lethargeek
30.05.2021, 09:59
разогнанная и плавная работа скроллингов от супертормозного ZS Scorpion до
Не хватает времянок, чтобы запихнуть сие в тайминги старых классических машин 128к,+2,+3 Спектрумов.
разве скорп не тормозней (без турбы) фирменных спеков?
DragonsLord
30.05.2021, 14:51
Проблема Скорпа - у него очень поздно начинается прерывание относительно экрана.
Визуально, по крайней мере, так.
По тактам не уверен, но вроде у Скорпа заявлено 69000, а у фирмы 66000.
В принципе, если мышку сделать в одно знакоместо, то и на фирме будет всё быстро проигрываться и скроллиться.
Lethargeek
30.05.2021, 15:17
По тактам не уверен, но вроде у Скорпа заявлено 69000, а у фирмы 66000.
у 128k+ фирменных 70908 и половина страниц медленная (причём в разных моделях разные номера медленных страниц)
у скорпа (вроде только раннего "жёлтого") ВСЕ страницы "медленные", но тормозят иначе (мб в среднем выйдет и меньше)
https://zx-pk.ru/threads/10708-printsip-raboty-m1-na-scorpion.html
DragonsLord
30.05.2021, 18:18
Я фирменным считаю режим 128к (не пентагон) в Spin
https://d.radikal.ru/d37/2105/b8/ebeec232b5a1.png
Lethargeek
30.05.2021, 19:29
Я фирменным считаю режим 128к (не пентагон) в Spin
так я и говорю, что там даже больше тактов в кадре, чем у скорпа
DragonsLord
30.05.2021, 19:30
По факту нет. И нет никакго смысла выяснять почему.
null_device
31.05.2021, 00:39
Ага, в котором описано, как прекрасен волновой алгоритм и как его применять. А в Вороне им и не пахнет. Гыгы.
Либо мы читали, разные восьмые номера "формата". Либо, одно из двух. XD
Где пелись хвалебные дифирамбы волновому методу (https://zxpress.ru/article.php?id=15234), я - не увидел.
"Oгибаниe препятствий" - в НЛО-1 оно
было из рук вон никакое - герой застревал
у каждого столба. А пришельцы просто пос-
тoяннo перемещались в пoлуслучайных нап-
равлeниях - конечно, они куда-нибудь да
попадали :) [эффект Броуновского движeни-
я]
Pасчёту маршрута в НЛО-2 посвящена
большая статья в ZXF #6 (c примером на
Бейсике :) Там применён метод волновой
трассировки.
Расчёт маршрута в ЧВ могу рассказать
только на пальцах. Герой идёт в направлe-
нии цели. Натыкаясь на препятствие, он
осматривает его справа и слева по контуру
(периметру? Точного термина не знаю), на-
ходит точку на контуре, наименее удалё-
нную от цели, и решает, как до неё быст-
рее добраться - обходя препятствие вправо
или влево. Обходит препятствие и продол-
жает движение напрямую к цели. И так он
обходит все препятствия, пока не дойдёт
до цели.
Dart Alver
31.05.2021, 00:52
а у фирмы во время рисования битовой картинки идет выравнивание на 7й такт из 8 при каждом обращении к медленной памяти, плюс дополнительные тормоза внутри команд из-за выставления на шину IR для рефреша (а у +2А/+3 вообще выравнивание на 8й такт из 8).
И сколько тогда грубо выходит тактов на прерывание при работе с медленной памятью ?
Lethargeek
31.05.2021, 02:30
Тактов больше, но тормоза у фирмы намного жестче, чем у Скорпа
а вот не факт - например, при переброске цепочкой ldi тормозов не будет практически, циклы попадают удачно в паттерн
у него всего-то выравнивание на четный такт при чтении кода операции (правда, во всем кадре), а у фирмы во время рисования битовой картинки идет выравнивание на 7й такт из 8 при каждом обращении к медленной памяти,
то есть жёлтый скорп несколько процентов всегда теряет, а фирменный может и нисколько не потерять
(хотя может и около 17% - но только если задаваться такой целью нарочно)
плюс дополнительные тормоза внутри команд из-за выставления на шину IR для рефреша
что еще за "дополнительные"? логика рефреша дело процессора и на клонах точно такая же
- - - Добавлено - - -
И сколько тогда грубо выходит тактов на прерывание при работе с медленной памятью ?
~1/3 кадра подвержена торможению с замедлением команды примерно вдвое (но опять же, если нарываться нарочно или это спектрум-16)
DragonsLord
31.05.2021, 16:02
То есть вы насчитали, что в худшем случае будет 59000 тактов.
По реальным змерам на реальном проекте видно, что там примерно 66000 тактов. На глазок. Что неоднократно озвучивалось во всяких демках и журналах с газетами.
DragonsLord
01.06.2021, 03:12
Волчьи всадники орды уже в игре:
https://d.radikal.ru/d29/2106/70/1a182103ae41.png
Отслеживание и проигрывание разнодлинных анимаций уже в игре. Из любой последовательности кадров.
И кто из этого волчьи всадники, прошу прощения ?
А это волчьи всадники? Я думал, что скорпионы, пардон(
DragonsLord
01.06.2021, 15:09
В динамике надо смотреть. В анимациях весь кайф.
Слип видел в виде видео - сказал "ахрененно!"
Я не подготавливаю специально промо-материалы. Всё, что вы видите, это банальные Alt+F8 во время рабочего процесса.
DragonsLord
02.06.2021, 05:10
Что интересно, все первоначальные демки Медного ВСЕГДА были ровно такими же тормозными, как и релиз. Ни разу я не увидел, что скорость вывода большая. Скорее всего он делал фулскрин рефреш и не парился особо, в стиле (кому надо, тот турбу включит).
DragonsLord
03.06.2021, 17:58
Исправил логику отрисовки мыши, которая запаздывала на 1 фрейм.
В виду пока неустранимых проблем с гарантированным приходом прерываний при нагруженности сцены поялялась заметная и неприятная ватность реакции стрелки на перемещение физической мыши.
Сейчас мышка отрисовывается без запаздывания, сразу же в том фрейме в каком считывался опрос физической мыши и клавы. Стало поприятнее и поадекватнее.
DragonsLord
04.06.2021, 11:07
Хедеры юнитов разрослись до планового максимума. Появилось более точное позиционирование до пикселя. А следовательно и чек-процедуры. Все процедуры переписаны с 8 битных на 16 битные. Рефрешер для случая спрайтов 3х3 дописан и видоизменён.
Ортогональное перемещение
Было:
https://c.radikal.ru/c12/2106/5d/5ecba9e60d91.png
Стало:
https://a.radikal.ru/a26/2106/e6/a0e9c00ae28d.png
Диагональное перемещение
Было
https://a.radikal.ru/a29/2106/2d/f451bb2bbdf1.png
Стало:
https://c.radikal.ru/c41/2106/70/1f7f2826afd9.png
Выигрышь смотреть в зелёной зоне рефреша. Красная зона - спрайтование. Тайминги Пентагоновские 3.5МГц.
- - - Добавлено - - -
Ща я ещё круче сделаю, - уже пишу. :tongue:
DragonsLord
04.06.2021, 14:35
Готово. Дописал.
Слип практически через день такие видосики получает:
https://disk.yandex.ru/d/kcKezuiYqdaarw
Ну да, прикольно. Голос твой, не похож на плохого человека.) А как ты рефрешишь фон, под каждым юнитом или под всеми сразу, а потом спрайты накидываешь? Ведь спрайты могут быть рядом, вплотную?
И, второй вопрос, спрайты 3х3 ты каким методом на тайле 2х2 размещаешь центровка или другое. Здесь немного непонятно, что брать за отчёт низ спрайта (советуют многие) или другое. У Медноногова в ЧВ2, там спрайты сверху вниз накладываются (про центровку не знаю), и нижние спрайты накладываются на те которые выше.
Вопросов много, не всё сразу.
Готово. Дописал.
Слип практически через день такие видосики получает:
Нормас, нормас
Как я и прикидывал - клэшинг с таким подходом - безумный.
Верхний центральный юнит когда залазит правым концом на желтую часть непонятного здания - она пропадает. Потому что там явно не в ручную было нарисовано, и INK с PAPER поменяты местами.
В общем чтобы не было таких вещей, то если и делать цветастость такую повышенную, то не особо варьируя PAPER, и уж точно не делать соседние INK и PAPER одного цвета, как в этих местах (на одном знакоместе зеленый INK и на соседнем такой же зеленый PAPER). Даже если сделать в логике чтобы юниты сверху этих блоков вообще не рисовались, курсор всеравно будет выворачиваться в этих местах наизнанку.
По красным дорогам боюсь тоже они лазить будут не очень красиво.
DragonsLord
04.06.2021, 15:34
Сначала тактический высокоуровневый модуль смотрит всех юнитов. Если точные попиксельные координаты (0..1023) сравнялись с грубыми потайловыми (0..63), то он модифицирует хедер юнита и отправляет его бежать в другие координаты.
Процедура подготовки таблицы для рефрешера отписывает в специальную табличку, где рефрешить. Просматривает всех юнитов. Для спрайтов 2х2 там всё понятно, динамика не нужна. При пробеге из одной клетки в соседнюю включены либо 2 либо 4 тайла постоянно. Для спрайтов 3х3 показанный динамический 16 битовый просчёт. От 4 до 9 тайлов соотвественно.
Затем сам рефрешер по подготовленной таблице делает обновление всех тайлов экрана.
После него модуль спрайтования перебирает и отрисовывает всех юнитов. При этом учитывается,
- что за юнит
- что он делает
- в какую сторону смотрит моськой
- сколько кадровая анимация для этого юнита и этого типа задачи
- на сколько пикселей приращение для данной анимации
- в какой странице памяти лежит дата спрайта
- нужен ли миррор
- обновляет таймер анимаций
- рисует в расчитанной 16 битовой позиции с точностью до пикселя.
Всё это будет происходить автоматически для всего разнообразия юнитов. Как только юнит добежит до указанной точки, для него цикл начнётся с начала.
непонятно, что брать за отчёт низ спрайта (советуют многие) или другое
Координаты левого верхнего угла спрайта 2х2. Так понятно?
- - - Добавлено - - -
Как я и прикидывал - клэшинг с таким подходом - безумный.
Верхний центральный юнит когда залазит правым концом на желтую часть непонятного здания
Да не будет там никакого клэшинга - юниты в варике по зданиям не бегают. Это просто фон случайный. Я же не это тестировал.
По красным дорогам боюсь тоже они лазить будут не очень красиво.
Дороги и мосты будут чёрные.
Чувак ты сколько не переделываешь у тебя один фиг рефрешер метит лишние тайлы. Вместо 4 в отдельных местах 11 перерисовывает, оно то конечно всем плевать но позорище же.
DragonsLord
04.06.2021, 15:55
Потому что там явно не в ручную было нарисовано, и INK с PAPER поменяты местами.
Глупости говоришь. Нет такого. В начале ролика квадрат по дому елозится, показывая тебе цвет папера. Вся графика в проекте отрисована вручную. Более того, прям на том же доме мышка висит. В каком месте её "выворачивает"?
Вместо 4 в отдельных местах 11 перерисовывает, оно то конечно всем плевать но позорище же.
Глупости говоришь. Нет такого. Максимально 9 тайлов единовременно.
Нет такого.
https://i.imgur.com/S9MLSzr.png
Считай.
- - - Добавлено - - -
Вообще как можно было вот эту торчащую вверх горбину сосчитать, у тебя талант.
Готово. Дописал.
Рассказывает голосом - вроде адекватный и даже располагающий к себе человек. Пишет на форуме - сразу Повелитель. Что за метаморфоза?)
https://i.imgur.com/o6F1TD2.png
нашел видео, на нем конечно не так легко поймать кривоту, но куда же без неё
Квадраты "больших юнитов"(катапульт) - вообще 3х3 знакоместа (24х24 пикселя). Рефрешер должен долбить по 4х4 знакоместа. На экране при этом не стирается предыдущий кадр, и поэтому фактический размер обновляемого ускользает - мы видим остатки отрисовки в предыдущих фреймах.
ЗЫ: Вообще лучше освоить OBS для записи с экрана, раз в 10 меньше видео весить будет.
Говорили мне умные люди не спорить с некоторыми. Вот я дурачек не послушал.
DragonsLord
04.06.2021, 16:41
Считай.
Чего считать? Это вывод длительной анимации туда-сюда, ибо нет на скрине чёрной стиралки фона. Рука/лицо...
Скриншот делался, чтобы показать не скрин, а бордюр.
нашел видео, на нем конечно не так легко поймать кривоту, но куда же без неё
И что на видео? Где ты больше 9 тайлов высмотрел?
Говорили мне умные люди не спорить с некоторыми.
Слушал бы умных людей, действительно, не опозорился бы так.
Я же тебе написал уже, что спрайты 3х3 это конаки, волки и катапульты. Конаки и волки бегают по 4 пикселя, у них этот расклад в принципе не наступает. Они его проскакивают. Такое может наступить только у одинокой катапульты и более того это сделано специально, чтобы очень сильно упростить код и сократить время его исполнения. Про частотную оптимизацию слышал когда-нибудь,?
- - - Добавлено - - -
Рефрешер должен долбить по 4х4 знакоместа.
Рефрешер не работает со знакоместами Спектрума. Он работает с тайлами карты уровня 16х16.
Рефрешер не работает со знакоместами Спектрума. Он работает с тайлами 16х16.
Согласен, это проще!
Рефрешер не работает со знакоместами Спектрума. Он работает с тайлами карты уровня 16х16.
На Спектруме в конечном итоге все работает со знакоместами. Может не непосредственно, а опосредованно, через "тайлы".
И если у тебя рендер юнитов происходит как обновление тайлов карты (предвычесленных), то для юнита размером 16х16 это будет вывод 2х2 тайла - 32х32 пикселей, хотя оптимальнее тут выводить 24х16 (что более чем 2 раза меньше байт весить будет, при полном подсчете пересылаемого добра). Или я что-то не понял.
DragonsLord
04.06.2021, 17:59
Ты не понял ровно то, что спрайты юнитов центрируются по тайловой сетке.
Один раз сядь, напиши варик, и все вопросы отпадут сами собой.
- - - Добавлено - - -
Рассказывает голосом - вроде адекватный и даже располагающий к себе человек. Пишет на форуме - сразу Повелитель. Что за метаморфоза?)
Называется "зеркальная подстройка". С нормальными посонами я в общении милаха. В ответочку посетителям "голубой устрицы" - только на понятном им диалекте.
32х32 пикселей, хотя оптимальнее тут выводить 24х16.
Это обновление части "испорченного" тайла, идея хороша, но писанины больше, прирост в скорости рефрешера будет, разумеется. А так - это мысль-напильник, даже надфиль.
Где ты больше 9 тайлов высмотрел (синий знак вопроса нарисаван на 9 тайлах, ибо ниже 4 тайла под спрайтом)?
Еще раз внимательно смотри на картинку, верхний левый спрайт, средний, верхний, средний. Ты должен понять разницу, даже ты, я в тебя верю. Хотя это не повредит общей картине, уже сейчас видно что это будет самый медленный недоделаный варкрафт на спектруме.
DragonsLord
05.06.2021, 01:31
Графика на видео специально тормозится (что подтверждается тем, как я свободно переткнул на 14МГц и ничего в 4 раза не ускорилось). В меню есть пункт, который снимает все искусственные паузы.
Еще раз внимательно смотри на картинку, верхний левый спрайт, средний, верхний, средний.
Ситуация поправлена. Фикс на 2 указанных пикселя написан. Проблема устранена. Спасибо за бдительность.
это будет самый медленный недоделаный варкрафт на спектруме
Глупости говоришь. Нет такого. Это будет самый быстрый из дописанных Варкрафтов на Спектрум.
Девять волков без нормалайза (максимальная скорость вывода) на 3.5МГЦ:
https://disk.yandex.ru/i/Hr8-5adyb-_O9Q
https://a.radikal.ru/a06/2106/24/49e50e398ef9.png
DragonsLord
05.06.2021, 04:27
Стресс-тест. 30 юнитов на экране без тормозов! 3.5МГц.
https://disk.yandex.ru/i/sBoPgdpP-vw8gQ
https://d.radikal.ru/d02/2106/51/896beae338cd.png
DragonsLord
05.06.2021, 18:14
Третья демка скоро выйдет.
DragonsLord
07.06.2021, 07:41
Написал альфа-версию Select Unit (персональный по ЛКМ):
https://a.radikal.ru/a26/2106/5b/f9ae4be1e2fe.png
https://c.radikal.ru/c16/2106/25/7f627cba3065.png
DragonsLord
07.06.2021, 12:05
Пробовал рамки всяко-разно. И целую (как в ЧВ), и сверху+снизу (как в ЧВ2), и слева+справа (кстати, лучше, чем в ЧВ2), и уголками (как показано выше), и не на всю высоту, а только под ногами юнита рамочку/кружочек... Всё не то. Всё отстойно.
Переделал. Теперь селектированные юниты маркируются лайфбаром. Истинный Варкрафт-стайл. Всё равно хотел привинчивать. Теперь идеалити, что по красоте, что по функционалу. Пришлось, правда, рефрешер 2х2 на динамический переписать.
Всё сделал. Всё зашибись. :tongue:
DragonsLord
08.06.2021, 05:03
Первая версия 8-битного "селект юнита" по тайловой сетке всесторонне протестирована и признана непригодной. Стёр нафиг.
Написал с нуля новую 16-битную по самим спрайтам юнитов на экране. Получилось афигенно! ИЗИ, посоны!!!
:v2_dizzy_punk:
Видеоотчёт:
https://disk.yandex.ru/i/Zy7h5s9KJTz3_w
https://d.radikal.ru/d01/2106/44/a7e910abae92.png
DragonsLord
08.06.2021, 09:35
Заметили, что при скроллинге не запарывает белую зону выезжающими из экрана спрайтами? Хотя это всё ещё черновой бэк буфер. Сделал полное клиппирование. ИЗИ :cool_std:
Это означает, что можно уже сейчас, не дожидаясь реализации чистового вывода, написать мини-карту. Я специально клиппирование спрайтов осилил, вовсе не для красоты, а чтобы эту самую белую полоску выделить под постройку и хранение карты. 8х8 - карта проходимости. 8х8 - карта вуали тьмы. И 8х8 результирующая по AND. Последняя будет кидаться на чистовой экран.
DragonsLord
09.06.2021, 00:44
Генерация события по клику ПКМ готова.
На обработчик события навешан минитрассер (подпрограмма более глобального трассера), позволяющий перемещать юнита на 1 тайл в любую сторону от текущей позиции юнита. То есть юниты начали, хоть и примитивно, но ходить!
Видео:
https://disk.yandex.ru/d/wd2s_JhlIHozdA
DragonsLord, сколько у тебя тактов уходит на вывод спрайта 16х16 и 24х24, подскажешь? В unreal там breakpoint ставишь в начале процедуры и в конце, он по выполнению в дебагер кинет и напишет сколько тактов снизу слева.
DragonsLord
09.06.2021, 09:42
Замерять такты целесообразно только у низкоуровневых простеньких процедур.
Проект уже на той стадии, когда миллион вещей влияют на миллион комбинаций вывода или не вывода тех или иных частей процедур, посему тактовка всегда разная.
Если тебя интересует не вывод конкретно в игре, а тупо сама рисовка в чистом виде без обвеса, то вот провёл синтетический тест на рисовку без подготовки данных:
2х2 = 6355t (198t - 1 байт+маска)
3х3 = 11619t (161t - 1 байт+маска)
данные могут незначительно плавать от позиции печати. Эти конкретно значения при печати в 0,0.
P.S.: Дидлик заявлял, что у него 5000 t на юнита с обвесом.. :eek_std: Проси код у Дидлика. (наверняка у него попроще - без клипинга, без миррора и строго на указанную ширину спрайта. у меня универсальная до 10х10 с клиппингом и миррором)
Это из-за того, что процедуру спрайтов взял чужую, без таблиц, для проверки механизма. Вывод одного спрайта гуляет от 6к до 12к тактов.
Нукася дай-ка мне эту процедуру. Мне 8 килобайт подсократить - не лишним будет. :cool_std:
DragonsLord
10.06.2021, 12:25
Слип попросил сделать новую мышку.
Ноу проблем :tongue:
https://a.radikal.ru/a15/2106/8d/54a13c5b71f3.png
Повелитель, в чём смысл выбора keyboard/mouse? Чтобы на компьютере без мыши (для реала это нормально), случайно выбрать "мышь" и быть наказанным? Советы по инглишу : Scrolling надо переименовать в Controls. "Mouse button" - убрать. inverse - переименовать в reverse m. btns. Mouse curcor - poiner speed. speed после x1 и x2 - убрать. Что такое Animation : normalize - я не понимаю.
Нукася дай-ка мне эту процедуру. Мне 8 килобайт подсократить - не лишним будет.
Пример №10 (https://abzac.retropc.ru/content?id=146). Там есть ещё пример №9 и №11
Пример №10. Там есть ещё пример №9 и №11
Покупал, в своё время абзацы, но решение на 4ку
DragonsLord
10.06.2021, 23:43
случайно выбрать "мышь" и быть наказанным?
Что за бред. Вы хоть демку то запустите, прежде, чем такие перлы писать! Всё управление в игре работает ПАРАЛЛЕЛЬНО и ОДНОВРЕМЕННО! Клавиатура с двумя раскладками, курсорные клавиши и мышь. Всегда! Данный пункт меню меняет логику скроллирования. При маусе - подвёл мышку к краю - само скроллится. При кейборде - подвёл мышку - само не скроллится, надо дальше кнопку давить.
Что такое Animation : normalize - я не понимаю
Убрать или включить искусственные задержки. В одном случае, независимо от скорости отрисовки будет ждать несколько тактов, в другом ждать не будет - начинает отрисовывать сразу же, как только закончил рисовать предыдущий цикл
Покупал, в своё время абзацы, но решение на 4ку
Дай-ка, плиз, мне код "на пятёрочку". Потестирую. А то у меня проблемы с памятью подступают не на шутку.
Дай-ка, плиз, мне код "на пятёрочку". Потестирую. А то у меня проблемы с памятью подступают не на шутку.
http://zxdn.narod.ru/coding/dv09dspr.txt этот я брал за основу, ну а дальше зависит от требований ;)
DragonsLord
11.06.2021, 07:23
этот я брал за основу, ну а дальше зависит от требований
Что показывает синтетический тест в чистом виде по тактам?
Что показывает синтетический тест в чистом виде по тактам?
Честно не помню, но хороший!
DragonsLord
11.06.2021, 21:39
Честно не помню, но хороший!
Так создай маленький луп в начале проги:
______di
metka_call_спрайтовыводилка
______jr_metka
Запусти эмуль, открой отладчик, поставь брэйкпоинт на строку с меткой и понажимай f8. Как только маркер перейдёт со 2 на 3 строку смотри что в тактах пишет.Сделай 8 тестов с входными данными в спрайтовалку с отличием в пиксель по горизонтали. Результаты опубликуй.
Результаты опубликуй.
не интересно, кому нужно пусть тестирует, показал от чего отталкивался, если интересно трайте и разбирайтесь!
DragonsLord
12.06.2021, 00:50
Допилил аниматор с трассером чтобы синергично работали.
Первый слой самого высокоуровневого трассера готов. Работает успешно на открытых пространствах. Огибать препятствия не умеет.
Пишу дальше....
Видео:
https://disk.yandex.ru/d/zQrhYmUwBv9lTg
DragonsLord
12.06.2021, 08:57
Дописал второй слой трассера, которого не смущают преграды. Теперь юнит может добежать до любой точки карты не зависимо от сложности маршрута.
Также показаны групповые забеги до 8 юнитов. Индикация таймингов трассера на бордюре включена.
Видео:
https://disk.yandex.ru/i/SLfK2Qz46MRjJA
https://d.radikal.ru/d04/2106/b5/460f6f77757c.png
DragonsLord, старик, я в тебя верю, ты смогёшь!
Спасибо за видосы, демки выглядят шикарно.
Возник единственный вопрос: юниты, когда бегут на дальние дистанции, пытаются найти кротчайший путь и забегают, так сказать, в "тупиковые места", потом возвращаются и бегут в нужном направлении. Если сделать повторный забег с того же места, они повторят тот же путь или запомнят "тупиковое место" и не будут в него заходить снова?
DragonsLord
12.06.2021, 19:25
Ну, хоть кто-то верит :tongue:
Я не зря сказал про неоднозначность. Даже я не могу сказать точно, как в данный момент времени побежит юнит. Ничего нигде не запоминается. Каждый такт для юнита "как в первый раз". Все решения принимаются динамически на лету. Чтобы юниту начать думать, сперва должна наступить проблема невозможности пути. А следовательно, "издалека" он не поймёт, что не надо туда бежать.
вывод цветного тайлового поля
можно в экран 7
можно в экран 5
куда адрес поставишь.
вызов тайла в рамках рисования целого поля
tile
вывод одиночного тайла
single_tile
75597
DragonsLord
13.06.2021, 06:57
Я не просил ничего про тайлы. Тайлами своими я более, чем доволен.
Я спрашивал про ультрабыструю спрайтовалку монохрома с точностью до пикселя без таблиц. Обязан присутствовать миррор. Клиппинг по возможности. Поддержка спрайтов 1х1, 2х2 и 3х3.
глянул код: работа со стэком с включёнными прерываниями. Ладно, может пригодится потом. Хотя мне Серёга Смирнов уже отгрузил подобное.
Я не просил ничего про тайлы. Тайлами своими я более, чем доволен.
Я спрашивал про ультрабыструю спрайтовалку монохрома с точностью до пикселя без таблиц. Обязан присутствовать миррор. Клиппинг по возможности. Поддержка спрайтов 1х1, 2х2 и 3х3.
глянул код: работа со стэком с включёнными прерываниями. Ладно, может пригодится потом. Хотя мне Серёга Смирнов уже отгрузил подобное.
Терпение. Они все взаимосвязаны.
Эта даёт 688 тактов на рисование тайла.
DragonsLord
13.06.2021, 09:44
Но пакет неполноценный. Не приложена тайлонарезалка с холста в эксклюзивном формате "сверху-вниз, снизу-вверх". Ни один спрайтмастер такое не сможет нарезать.
Но пакет неполноценный. Не приложена тайлонарезалка с холста в эксклюзивном формате "сверху-вниз, снизу-вверх". Ни один спрайтмастер такое не сможет нарезать.А это и не пакет, это переосмысление процедуры описанной в дежавю 6 что была указанна мне Дедли.
Я добавил цвет и сделал ещё пару модификаций под работу с прерываниями.
А спрайты надо подождать
Задача серьезная.
А это и не пакет, это переосмысление процедуры описанной в дежавю 6 что была указанна мне Дедли.
А если посмотреть код что выше кидал, от Death MoroZ'а, то ещё ускорить можно, в нашем случае средняя цена отрисовки тайла без атрибутов 679.5 тактов на тайл со всей обвязкой
DragonsLord
13.06.2021, 10:41
А если посмотреть код что я выше кидал, то ещё ускорить можно
Вот и скажи Джерри, что ты там "ещё ускорил", чтобы он сразу в предлагаемом пакете поправил.
А это и не пакет
Какой смысл в некоторых процедурах, если для них тайлы и спрайты невозможно ничем нарезать? Сразу тайлонарезалку/спрайтонарезалку в пакете приложи, чтобы умела быстро конвертить с атласов в данные. И плиз, без инверсии, как в прошлый раз, а то неудобно рисовать.
Вот и скажи Джерри, что ты там "ещё ускорил", чтобы он сразу в предлагаемом пакете поправил.
У Джери многому чему научился, спасибо ему.
ИМХО проблема пока что в цикле который нужно развернуть, вывод атрибутов впихнуть по середине между отрисовкой верха и низа тайла, и избавится от mult_36 (делается это в 5-6 строчек - 29 тактов)
DragonsLord
13.06.2021, 11:07
и избавится от mult_36
Классически mult_36 делается так (если ты об этом):
ld hl,num ;х1
add hl,hl ;x2
add hl,hl ;x4
ld de,hl
add hl,hl ;x8
add hl,hl ;x16
add hl,hl ;x32
add hl,de ;x36
.
Какой смысл в некоторых процедурах, если для них тайлы и спрайты невозможно ничем нарезать? Сразу тайлонарезалку/спрайтонарезалку в пакете приложи, чтобы умела быстро конвертить с атласов в данные. И плиз, без инверсии, как в прошлый раз, а то неудобно рисовать.
Умному человеку достаточно данных чтобы сделать самому.
Остальным придется подождать.
Классически mult_36 делается так (если ты об этом):
ld hl,num ;х1
add hl,hl ;x2
add hl,hl ;x4
ld de,hl
add hl,hl ;x8
add hl,hl ;x16
add hl,hl ;x32
add hl,de ;x36
Сделаешь как тебе надо.
Это там для наглядности.
У Джери многому чему научился, спасибо ему.
ИМХО проблема пока что в цикле который нужно развернуть, вывод атрибутов впихнуть по середине между отрисовкой верха и низа тайла, и избавится от mult_36 (делается это в 5-6 строчек - 29 тактов)Там 256 тайлов подразумевается
Ld l.a
Ld h,table/256
Ld a,(hl)
Inc h
Ld h,(hl)
Ld l,a
33
я вот не понял зачем он тут - mult_36 ?
я вот не понял зачем он тут - mult_36 ?Конкретно тут нафиг не нужен.
Он дракону нужен будет.
Там 256 тайлов подразумевается
LD H, HIGH SpritesTable
LD L, A
LD E, (HL)
INC L
LD D, (HL)
EX DE, HL
ну да 33 EX забыл
LD H, HIGH SpritesTable
LD L, A
LD E, (HL)
INC L
LD D, (HL)128 тайлов
А надо 256
128 тайлов
А надо 256
мне не надо )
DragonsLord
13.06.2021, 12:07
Остальным придется подождать.
Формат чтобы строго по золотому правилу: "INC - то, что темнее, PAPER - то, что светлее"
DragonsLord
13.06.2021, 17:53
Позапускал толпы с трассером. С любой толпой работает, но например 30 одновременно на экране - уже не режим Спека3.5, прямо скажем :biggrin: Даже 16 одновременно на экране уже предельное значение и подтормаживает. Где-то 12 юнитов боле менее комфортный fps. Нужен более быстрый отрисовщик...
DragonsLord
13.06.2021, 23:34
Дописал третий слой трассера, именуемый в простонародье "расход группы". Успешно.
Демонстрируется работа алгоритма на примере до 10 юнитов одновременно.
Видео:
https://disk.yandex.ru/i/PdPj-D-mKgoLtQ
https://c.radikal.ru/c33/2106/7f/e8c40b52e0ac.png
https://a.radikal.ru/a24/2106/4b/e0d15512c4c1.png
Красавело, криво косо но работает!
DragonsLord
14.06.2021, 00:30
- Ну, 6 челов ни разу не залипли. Так что ЧВ переплюнут.
Ты когда покажешь аналог? :biggrin:
Ты когда покажешь аналог?
Не я, а мы )
Работаем над поведением, прототипирую behavior tree, чтобы всё работало через неё.
DragonsLord
14.06.2021, 17:17
Так долго пишите, что на выходе рисуется минимум Старкрафт 4 с трассировкой лучей в стиле RTX3090 на Спектруме :biggrin:
Когда результат уже?
Так долго пишите, что на выходе рисуется минимум Старкрафт 4 с трассировкой лучей в стиле RTX3090 на Спектруме
ну, что поделать, хочется сделать качественно, это не в упрёк твоему проекту...
Когда результат уже?
Время, которого не всегда много!
DragonsLord
14.06.2021, 20:03
Я в принципе уже не могу писать. Память кончилась. Там 2 килобайта от силы есть и всё. Ждём релиза графических процедур от Джери. Это освободит мне 8 килобайт на таблицах, которых не будет, и я смогу продолжить радовать всех новыми фишечками :rolleyes_std:
Я в принципе уже не могу писать. Память кончилась. Там 2 килобайта от силы есть и всё. Ждём релиза графических процедур от Джери. Это освободит мне 8 килобайт на таблицах, которых не будет, и я смогу продолжить радовать всех новыми фишечками :rolleyes_std:
а с чего ты решил что она без таблиц?
DragonsLord
14.06.2021, 21:50
Ну, Джерри же понимает, что надо память экономить в таких проектах, как Варкрафт :biggrin:
Анимации и юнитов целиком вовсе не хочется урезать.
Ну, Джерри же понимает, что надо память экономить в таких проектах, как Варкрафт :biggrin:
Анимации и юнитов целиком вовсе не хочется урезать.
для вывода спрайтов достаточно 3840 байт находящихся в 7ой странице.
256 - на таблицу разворота
#0e *#100 = 3584 на таблицу шифта
*8 фаз анимации на спрайты с маской на всех юнитов влезет на изичах
*5 фаз анимации на спрайты с маской на всех юнитов влезет на изичах
*5 фаз анимации на спрайты с маской на всех юнитов влезет на изичах, но придется оставить 5 направлений
<==== вы находитесь здесь
*надо что-то сократить чтобы влез весь код
*надо еще что-то сократить чтобы влезла музыка
DragonsLord
14.06.2021, 22:07
Ни слова не понял. Особенно что такое "тиблица шифта".
Давай, без таблиц пили. Барс по ходу прав, не имеет это никакого смысла, ибо всякие перекладывания и сдвиги в регистрах напрямую не на много длинее по тактам, а таблиц не требует вообще.
"чтобы сократить чёнить ненужное, нужно сначала написать чёнить ненужное, а у нас памяти нет" (С) кот Матроскин
Ни слова не понял. Особенно что такое "тиблица шифта".
Давай, без таблиц пили. Барс по ходу прав, не имеет это никакого смысла, ибо всякие перекладывания и сдвиги в регистрах напрямую не на много длинее по тактам, а таблиц не требует вообще.
"чтобы сократить чёнить ненужное, нужно сначала написать чёнить ненужное, а у нас памяти нет" (С) кот Матроскин
по безтаблицам это к Барсу.
DragonsLord
14.06.2021, 22:25
А понял, 3584 - сдвиги + 256 миррор, итого вся таблица 3840.
Ну, чтож... Давай попробуем. 4,5 килобайта всё равно сыкономим от текущей реализации.
Когда код будет готов?
Когда код будет готов?
как только так сразу.
сам понимаешь. Работа. Дача. Дети. Семья. Комп
Слежу с интересом... :D Бегает, конечно, красиво... Потратить всю память на спрайты и процедуры вывода, это ну 10% кода игры. Куда остальные 90% пихать..? :v2_dizzy_tired2:
DragonsLord
15.06.2021, 12:58
Сядь напиши свою версию турбо-скоростной выводилки монохромных спрайтов с точностью до пикселя без таблиц. Поддержать форматы: 1х1,2х2,3х3 знакоместа. Миррор быть обязан. Клиппинг по возможности.
Как я уже говорил в видосе, где вы там высматриваете 10% не понятно. Готово уже 80% игры.
Сядь напиши свою версию турбо-скоростной выводилки монохромных спрайтов с точностью до пикселя без таблиц. Поддержать форматы: 1х1,2х2,3х3 знакоместа. Миррор быть обязан. Клиппинг по возможности.
Как я уже говорил в видосе, где вы там высматриваете 10% не понятно. Готово уже 80% игры.
Я где-то кидал ссылку на рабочий пример. Где-то 800 байт занимала процедурка.
Новую написать сейчас не могу, занят. Диззи 8 до ума довожу, уже почти все баги отловил. Осталось добавить фичи :)
- - - Добавлено - - -
Мысли по этому проекту: думаю, есть смысл сделать всего 2 фазы анимации на юнита. Спрайты сделать таким образом чтобы в них было как можно больше повторяющихся строк между фазами анимации, которые потом упаковать. Сама процедура вывода спрайта будет на лету распаковывать, какой-нибудь аналог RLE придумать. В том же Диззи фазы не лезли, сделал упаковку. т.е. основная идея, подключить художника и поставить перед ним такое ТЗ по спрайтам. Желательно, чтобы юнит был отрисован в 2-5 вариантах, чтобы выбрать можно было.
Далее восстановление фона за спрайтами сделать перерисовкой тайлов, причем процедурка должна отслеживать попадание N юнитов в тайл, чтобы не перерисовывать их многократно.
DragonsLord
15.06.2021, 13:26
Бросай баловство для детей. Займись взрослыми вещами :biggrin:
- - - Добавлено - - -
думаю, есть смысл сделать всего 2 фазы анимации на юнита
Претензия отклонена. В анимациях вся суть первого Варика. Вся его жизнь и очарованиею Вся его магия.
Далее восстановление фона за спрайтами сделать перерисовкой тайлов, причем процедурка должна отслеживать попадание N юнитов в тайл, чтобы не перерисовывать их многократно.
Ну значит не "следишь с интересом". Ибо, всё так и сделано.
Всякие анимации тайлов на карте лучше всего сделать точечным обновлением, а не делать обновление всей карты. Ну и всю эту байду вешать на таймер, т.н. дельта тайминг (как у Санчеза).
DragonsLord
15.06.2021, 13:29
Я где-то кидал ссылку на рабочий пример. Где-то 800 байт занимала процедурка.
Где мужик с демоном? Не канает. Она до 30к тактов жрёт. Ключевое слово "ультрабыстрая" нужна. Также не уверен о наличии там мирроа, и точно там нет клиппинга. - Надо переписать :biggrin:
Обязательное условие: работа со стэком при включённых прерываниях. Иначе невозможно нормально поддержать турбу.
Всякие анимации тайлов на карте лучше всего сделать точечным обновлением, а не делать обновление всей карты. Ну и всю эту байду вешать на таймер, т.н. дельта тайминг (как у Санчеза).
Я же говорю: всё так и сделано. Отмотай ветку назад - всё показано в видосах.
Dart Alver
15.06.2021, 14:20
Я же говорю: всё так и сделано.
Вопрос. На чистовой экран ты планируешь весь буфер всегда перекидывать или тоже только измененную часть ?
Как я уже говорил в видосе, где вы там высматриваете 10% не понятно. Готово уже 80% игры.
Готов только графический движок, да и то в виде демонстратора технологии. Это и есть 10%.
Чего у тебя нету, навскидку:
1) Менеджера юнитов
2) Менеджера построек
3) Системы событий (это вообще мегасистема, она сложнее графического движка, и изрядно)
4) Соответственно нет строительства/уничтожения
5) Нет боёвки
6) Ресурсов, кстати, тоже нет
7) Насчёт AI даже конь не валялся
Я ничуть не хочу тебя отговаривать от проекта, но объём работ всё же лучше оценивать объективно. Ты сейчас УЖЕ очень сильно не попадаешь в память даже 128 машины, и даже только по коду. С этим надо что-то делать.
DragonsLord
15.06.2021, 14:31
Вопрос. На чистовой экран ты планируешь весь буфер всегда перекидывать или тоже только измененную часть ?
Полностью всю зону тайлового поля 12х12 тайлов. т.е. 24х24 знакоместа.
Ничего "частичного" быть не может в принципе. Ибо нужно
- ультрабыстро,
- попасть правильно под луч горизонтальной развёртки,
- решить проблему с присутствием фреймовой мышки на нефреймовом игровом поле.
отсюда заключаем: должен быть постоянный тайминг.
- - - Добавлено - - -
Чего у тебя нету, навскидку:
Нет, это вы ни разу не смотрели в код Чёрного Ворона. Процедура "боёвка+добыча ресов" для юнита знаешь сколько занимает? От силы 50 строчек кода. То же самое по остальным пунктам твоего списка.
решить проблему с присутствием фреймовой мышки на нефреймовом игровом поле
"метод по DL" (https://zx-pk.ru/threads/32718-warcraft-1-pod-klassicheskij-128-tr-dos.html?p=1117934&viewfull=1#post1117934) не катит уже?
DragonsLord
15.06.2021, 16:44
"Методом DL" и будет всё сделано.
- - - Добавлено - - -
А обращали ли вы внимание, что Ворон2 заявлялся, как "двухуровневый"? На самом деле там нет ничего из двухуровневости. Он тупо плоский. Платформы тоже плоские. А также остаётся открытым вопрос, был бы ли он на 128к, ибо добавить фигову тучу самолётиков с 16 фазами поворота каждый... куда он собрался пихать, ежели в первом Вороне уже было памяти ноль? Короче, какой-то невнятный маркетинг...
А обращали ли вы внимание, что Ворон2 заявлялся, как "двухуровневый"? На самом деле там нет ничего из двухуровневости. Он тупо плоский. Платформы тоже плоские. А также остаётся открытым вопрос, был бы ли он на 128к, ибо добавить фигову тучу самолётиков с 16 фазами поворота каждый... куда он собрался пихать, ежели в первом Вороне уже было памяти ноль? Короче, какой-то невнятный маркетинг...
Сорцы выложены в свободный доступ
бери да смотри. У Медноногова под конец просто не хватало памяти он там чтото оптимизировал и удалял.
вроде даже вопрос стоял об удалении музыки. Но потом разработка была остановлена.
DragonsLord
15.06.2021, 17:48
Музыка в таких проектах нафиг не нужна. Ибо в течении уровня любой шедевр заманает. Если кто и хочет в фоне слушать - сами себе чёнить на плеере воткнёт, по настроению. Неповторяющееся.
Небольшой музончик допустим только в меню.
Тем более, извечны две проблемы:
- нет памяти
- любая музыка "слева" не прокатит, должна быть строго писанная на два канала. Ибо AY эффекты включены всегда. А их надо где-то играть.
DragonsLord
17.06.2021, 11:11
Катапульту вчера запилил.
Также перескинил дорожки и мосты. Провожу эксперименты по выявлению максимально читаемого варианта отображения с учётом наложения юнитов.
DragonsLord
17.06.2021, 18:12
Дамы и господа, спешу предложить вашему вниманию третью демку:
WARCRAFT - Orcs & Humans
version 0.03 alpha
http://dragons-world.ru/ZX_Spectrum/WarCraft_0_03_alpha.zip
https://c.radikal.ru/c13/2106/28/d3509e0b7078.png
Чтобы максимально насладиться процессом рекомендую выставить в эмуляторе ULA->280000 тактов (тайминг Evo), и снять в системном меню игры галочку с пункта "Animation normalize". Адаптация движка под турбо режимы позволит познакомиться с демкой без мерцания с максимально плавной и быстрой графикой.
Выбора группы юнитов рамкой, растягиваемой мышью, пока нет. Если захотите после демаркировки юнитов вновь поуправлять группой - перезагрузите демку.
------------------------------------------------------------------------------------------------------------
Внимание: разработчик проекта крайне нуждается в вашей моральной поддержке.
Моральную поддержку всегда можно перевести на следующие электронные кошельки :biggrin:
Яндекс.Деньги (они же yoomoney): 41001318897076
WebMoney: WMID: 890037554880
R418046365227 - рубли
Z401891667965 - доллары
Почему-то луч сечётся... Мыргает :|
https://d.radikal.ru/d34/2106/96/7c79f499ccc7.gif
DragonsLord
17.06.2021, 20:41
Мы по прежнему видим теневой бэкбуфер на экране. С чего бы мерцание вдруг ушло? :tongue:
На TS-confe по прежнему валится.
На скорпионе работает.
Когда группа приходит на место часть юнитов места себе не находят. :) тусняк тудой-сюдой тот еще.
Выбор юнита одной кнопкой мыши, указание точки прибытия другой кнопкой. ИМХО нелогично.
рекомендую выставить в эмуляторе ULA->280000 тактов
А как же классика? 3.5МГц Z80 m 128k
Но в целом пока позитивненько.
DragonsLord
17.06.2021, 21:12
На TS-confe по прежнему валится.
Ну, видимо, там память не совместима со стандартным 128к. Это же снапшот, а не образ диска. Он требует, чтобы в слотах, включая ROM, стояло что-то похожее на Пентагон. С trd-образа, естессно, и на Эве запустится на изичах.
Когда группа приходит на место часть юнитов места себе не находят.
Решений много. Пока обдумываю, как наиболее рационально пофиксить.
Выбор юнита одной кнопкой мыши, указание точки прибытия другой кнопкой. ИМХО нелогично.
Это стандарт Варкрафта любой версии. Да и 99% остальных rts. Привыкай к хорошему.
А как же классика? 3.5МГц Z80 m 128k
А что "классика"? Запусти на классике. Всё прекрасно работает и не тормозит. Я просто сказал, как убрать мерцание с триком на Turbo+
Ну, видимо, там память не совместима со стандартным 128к. Это же снапшот, а не образ диска.
Но тем не менее, снапы моей элитки на тойже TS-confe прекрасно работают.
Это стандарт Варкрафта любой версии. Да и 99% остальных rts. Привыкай к хорошему.
Ну я же сказал ИМХО. Ну не любитель я RTS, заценить могу, играть врядли буду.
А что "классика"? Запусти на классике
Ну какбы на классике и запускал, Выставлять туеву кучу тактов желания нет.
Про мерцания ответ видел. Пока вопросов нет.
DragonsLord
17.06.2021, 21:25
Но тем не менее, снапы моей элитки на тойже TS-confe прекрасно работают.
Ты, видимо, юзаешь не тот ассемблер, который я. Их три разных версии. Моя версия - самая старая и исконная по непонятной причине меняет 0 и 7 страницу в снапах. Может из за этого. Это никак не превозмогается.
Ну какбы на классике и запускал, Выставлять туеву кучу тактов желания нет.
Про мерцания ответ видел. Пока вопросов нет.
Там фикс стоит. На турбе она не разгоняется. Алоний попросил, - я сделал.
- скроллинг не разгоняется
- игровой процесс не разгоняется
- время отклика на кнопках в меню не разгоняется.
Посему можешь турбу включить, но нормалайз не снимать - будет почти один в один как "классика" с чистовым выводом.
Ты, видимо, юзаешь не тот ассемблер, который я. Их три разных версии. Моя версия - самая старая и исконная по непонятной причине меняет 0 и 7 страницу в снапах. Может из за этого. Это никак не превозмогается.
при чем здесь это?
1 установи стек
2 включи страницу
и выдели кстати свап страницами в отдельную процедуру.
Я тот ещё стерпёр. и юзаю SjASMPlus Z80 Cross-Assembler v1.07 RC7 (build 02-04-2008)
Что он там меняет мне вообще по барабану, при сохранении снапа ты же указываешь откуда будет старт, вот там я и ставлю все нужные включения страниц, установку регистра прерываний и т.п. Эта хрень же отрабатывает один раз, и размещай её хоть в буфере экрана.
- - - Добавлено - - -
и выдели кстати свап страницами в отдельную процедуру.
Не всегда целесообразно, иногда ловчее макросом делать
Не всегда целесообразно, иногда ловчее макросом делать
ммм? Это когда ты точно знаешь что делаешь
я щас просто процитирую
8812:
ld a,#07
ld bc,#7ffd
or #10
ld (#5b5c),a
out (c),a
8829:
8858:
8867:
и так каждый раз.
а потом у кого-то внезапно память кончается.
ld (#5b5c),a
Я наверное чего-тог не понимаю, но это на кой чёрт?
И вообще нельзя разве обойтись без OR? а сразу в аккумулятор загрузить то что надо...
З.Ы. Сам сторонник процедур, но иногда тратить 17 тактов на call и 10 на ret роскошь
Кроме того, если в прерываниях висит музыка/звуки/или иная хрень требующая переключения страниц в прерываниях, надо до кучи перед переключением страниц запрещать оные, и сохранять номер текущей страницы с переменной, дабы потом корректно выйти из прерывания.
DragonsLord
17.06.2021, 22:08
при чем здесь это?
1 установи стек
2 включи страницу
При чём тут это? Алоний чётко сказал ещё три месяца назад - мои снапы не запускаются на эмуле, настроенным быть Evo. И не могут быть запущены, пока не переткнёшь модель компьютера на нужную.Что его дико бесит и он постоянно орёт дурниной, чтобы я не делал снапы, а делал scl или trd :biggrin:
Но я принципиально не хочу, чтобы технические демы распространялись и оседали в аналах. Это просто демонстрашки текушей реализации алгоритмов, а не плэйби демо.
и выдели кстати свап страницами в отдельную процедуру
У меня макросы. Или ты намекаешь на лютую экономию памяти? А макрос что ли не как отдельная процедура оформляется интерпритатором?
Что он там меняет мне вообще по барабану, при сохранении снапа ты же указываешь откуда будет старт, вот там я и ставлю все нужные включения страниц, установку регистра прерываний и т.п.
Я хз почему, но Алоний чётко сказал - это не работает и не может работать. Никак. Пока не переткнёшь в эмуле вручную ROMы на нормальный спек.
Я наверное чего-тог не понимаю, но это на кой чёрт?
ну ты как маленький
это чтобы по приходу прерывания знать какая страница включена.
И вообще нельзя разве обойтись без OR? а сразу в аккумулятор загрузить то что надо...
З.Ы. Сам сторонник процедур, но иногда тратить 17 тактов на call и 10 на ret роскошь
вот по твоему примеру человек в макрос вписал процедуру свапа страниц
и теперь тратит по 12 байт вместо 5
Кроме того, если в прерываниях висит музыка/звуки/или иная хрень требующая переключения страниц в прерываниях, надо до кучи перед переключением страниц запрещать оные, и сохранять номер текущей страницы с переменной, дабы потом корректно выйти из прерывания.
штааа?
ты в каком ZX review такое ламерство вычитал?
зачем запрещать прерывания?
set_page
push bc ;делай раз сохраняем BC
ld bc,#7ffd ;делай два ВС=порт
or #10 ;делай три накладываем на страницу экран и ROM
cur_vpage equ $-1
ld (page),a ;сохраняем текущие показатели на случай переключения на прерываниях
out (c),a ;включаем текущую страницу
pop bc ;восстанавливаем ВС
ret
и где их тут запрещать и для чего?
- - - Добавлено - - -
У меня макросы. Или ты намекаешь на лютую экономию памяти? А макрос что ли не как отдельная процедура оформляется интерпритатором?
нет
вот это вывод спрайта
написанный на макросах
;can work in slow mem
prspr_y0_x0go
ex de,hl ;4
SPR2LINES0_x0
prspr_y2_x0_hgt16go
SPR2LINES1_x0
prspr_y4_x0_hgt14go
SPR2LINES0_x0
prspr_y6_x0_hgt12go
SPR2LINES1_x0
DOWNHL8_AFTERLINES1
prspr_y0_x0_hgt10go
SPR2LINES0_x0
prspr_y2_x0_hgt8go
SPR2LINES1_x0
prspr_y4_x0_hgt6go
SPR2LINES0_x0
prspr_y6_x0_hgt4go
SPR2LINES1_x0
DOWNHL8_AFTERLINES1
prspr_y0_x0_hgt2go
SPR2LINES0_x0
org $-1 ;-4
prspr_y2_x0_hgt0go
PRSPREND
а вот макросы для того чтобы это собралось в какой-то код
macro GOPRSPR
ld sp,hl
exx
if FULL7FFD
pop de ;нельзя портить de', bc
out (c),e ;pg
ld a,d ;f(yphase)
else
pop bc
ld a,c
out (0xfd),a ;-1t
endif
pop hl ;gfx
pop de ;scr
ld sp,hl
pop hl ;l = f(hgt, x&4)
if FULL7FFD
ld h,a ;f(yphase)
else
ld h,b ;f(yphase)
endif
jp (hl) ;f(yphase,sprhgt) ;для sprhgt=18 переход сразу на отрисовщик (x4) или на jp (x0), иначе на задержку
endm
macro PRSPREND
exx
add hl,de
GOPRSPR
endm
;вывод графики и атрибутов одновременно (по идее выигрыш 10(ret)+2*31(downhl8attr) = 72, т.е. можно раздуть на 8 тактов на двойную строку)
;входим с разных мест, получаем разную высоту спрайта при заданном yend = f(yphase, sprhgt)
;для нечётных yphase downhl8 оказывается в другом месте зигзага (т.к. графика спрайта одна на оба варианта)
macro SPR2LINES0_x0 ;28b
;выводим строку 0
pop de
ld (hl),e
inc l
ld (hl),d
inc l
pop de
ld a,(hl)
and d
or e
ld (hl),a
inc h
;выводим строку 1
pop de
ld a,(hl)
and d
or e
ld (hl),a
dec l
pop de
ld (hl),e
dec l
ld (hl),d
rrc h ;было h0=1, результат 0xa0+ ;+4t
;выводим атрибуты строк 0-1
pop de
ld (hl),e ;attr
inc l
ld (hl),d ;attr
inc h
endm ;172t
macro SPR2LINES1_x0 ;28b
;выводим атрибуты строк 2-3
pop de
ld (hl),e ;attr
dec l
ld (hl),d ;attr
sla h ;+4t
;выводим строку 2
pop de
ld (hl),e
inc l
ld (hl),d
inc l
pop de
ld a,(hl)
and d
or e
ld (hl),a
inc h
;выводим строку 3
pop de
ld a,(hl)
and d
or e
ld (hl),a
dec l
pop de
ld (hl),e
dec l
ld (hl),d
inc h
endm ;172t
macro SPR2LINES0_x4 ;28b
;выводим строку 0
pop de
ld (hl),e
dec l
ld (hl),d
dec l
pop de
ld a,(hl)
and d
or e
ld (hl),a
inc h
;выводим строку 1
pop de
ld a,(hl)
and d
or e
ld (hl),a
inc l
pop de
ld (hl),e
inc l
ld (hl),d
rrc h ;было h0=1, результат 0xa0+ ;+4t
;выводим атрибуты строк 0-1
pop de
ld (hl),e ;attr
dec l
ld (hl),d ;attr
inc h
endm
macro SPR2LINES1_x4 ;28b
;выводим атрибуты строк 2-3
pop de
ld (hl),e ;attr
inc l
ld (hl),d ;attr
sla h ;+4t
;выводим строку 2
pop de
ld (hl),e
dec l
ld (hl),d
dec l
pop de
ld a,(hl)
and d
or e
ld (hl),a
inc h
;выводим строку 3
pop de
ld a,(hl)
and d
or e
ld (hl),a
inc l
pop de
ld (hl),e
inc l
ld (hl),d
inc h
endm
;DOWNHL требует лишний inc h по сравнению с UPHL
;но при выводе вверх не получится rrc h для перехода к атрибутам
macro DOWNHL8_AFTERLINES1
ld a,l
sub -32
ld l,a ;NC=next third
sbc a,a
and -8
add a,h
ld h,a ;-8/+0
endm ;38t (+34 по сравнению с inc h)
macro DOWNHL8_AFTERLINES0
ld a,l
sub -32
ld l,a ;NC=next third
sbc a,a
and -4
add a,h
ld h,a ;-4/+0
endm ;38t (+34 по сравнению с inc h)
;b свободен, т.к. присвоить его = +7t, а выигрыш на его использовании только -6t
;можно освободить c=-32 (+6t), тогда out (c),e вместо ld a,e:out (0xfd),a (-3t)
;если чередовать столбцы: gfx,attr,gfx,attr,gfx, то можно сэкономить в генераторе на двукратном чтении тайлов, а тут на одном add hl,hl
;в восстановителе A используется только в downhl8, uphl8attr
macro RESPR2LINES
pop de
ld (hl),e
inc h
ld (hl),d
inc h
endm
macro RESPR_DOWNHL8
ld a,l
sub -32
ld l,a ;NC=next third
sbc a,a
and -8
add a,h
ld h,a ;-8/+0
endm ;38t (+34 по сравнению с inc h)
macro RESPR2LINESATTR
pop de
ld (hl),e
dec h
ld (hl),d
dec h
endm
macro RESPR1LINEATTR
pop de
ld (hl),d
dec h
endm
macro RESPR_UPHL8ATTR
org $-1
ld a,l
sub 32
ld l,a ;CY=previous third
sbc a,a ;0 = this third, ff = previous third
or 3 ;+3 = this third, -1 = previous third
add a,h
ld h,a ;+3/-1
endm
Я хз почему, но Алоний чётко сказал - это не работает и не может работать. Никак. Пока не переткнёшь в эмуле вручную ROMы на нормальный спек.
У тебя вызов процедур из ПЗУ идет это раз.
Ты страницу 7 включаешь после всех инициализаций это два.
DragonsLord
17.06.2021, 22:43
У тебя вызов процедур из ПЗУ идет это раз.
Я же вроде избавился. Сделал "по Санчезу", своё отдельное.
Ты страницу 7 включаешь после всех инициализаций это два.
После всех инициализация я могу включать что угодно. Ты сам сказал минуту назад.
Я же вроде избавился. Сделал "по Санчезу", своё отдельное.
нет у тебя вычисление адреса идет через ПЗУ.
После всех инициализация я могу включать что угодно. Ты сам сказал минуту назад.
ты не выставил стек
ты не впечатал страницу
а уже по адресу a4e1 впечатываешь f7d6 по адресу f7d4
так что хз
DragonsLord
18.06.2021, 10:34
ты не выставил стек
А зачем "выставлять стэк"? Он что, по умолчанию не выставлен разве куда надо?
Я же не собираюсь выходить из игры, например в TR-DOS, с продолжением работы.
ты не впечатал страницу
Что это значит? Написать PAGE 0?
В используемом ассемблере это ни на что не влияет и нифига не работает. Хоть куда эту строчку прописывай.
А макрос что ли не как отдельная процедура оформляется интерпритатором?
Интерпретатором чего?
Я хз почему, но Алоний чётко сказал - это не работает и не может работать. Никак. Пока не переткнёшь в эмуле вручную ROMы на нормальный спек.
Не используй п/п ПЗУ и всё будет работать.
А зачем "выставлять стэк"? Он что, по умолчанию не выставлен разве куда надо?
А кем он выставлен? А если игру запустить из бута в котором стэк вверху памяти?
А если стэк окажется посреди твоих данных или процедур?
DragonsLord
18.06.2021, 11:35
Интерпретатором чего?
А ты не в курсе, что ассемблер это интерпритатор мнемоник в двоичный код?
А если игру запустить из бута в котором стэк вверху памяти?
Наврядли Варик будет такого размера, чтобы его таскали по дискеткам с чужими бутами :tongue:
Это для меня новость. Всю жизнь думал что это компилятор.
А макрос что ли не как отдельная процедура оформляется интерпритатором?
Макрос это не процедура, вместо имени макроса в тело программы подставляется его код с заданными параметрами.
З.Ы. Для справки. Интерпретация это выполнение исходного кода программы без перевода его в машинный код.
DragonsLord
18.06.2021, 11:42
Ты филолог? И нашёл крупную несостыковку, ведущую к краху мироустройства? Или даже к коллапсу вселенной? :biggrin:
Залитые грани привинтил к элите? Нет? Без залитых граней не канает, - проект не будет принят в эксплуатацию. :cool_std:
Ты филолог? И нашёл крупную несостыковку, ведущую к краху мироустройства? Или даже к коллапсу вселенной?
Фи. Термины верные надо использовать.
Залитые грани привинтил к элите?
Не было, нет и не будет. В монохроме, да еще на низком разрешении залитые грани нафик не нужны.
DragonsLord
18.06.2021, 11:59
А я привинчу. И посмотрим, какая из версий войдёт в историю. Скинет Брабена с пьедестала
:v2_dizzy_punk:
А я привинчу. И посмотрим, какая из версий войдёт в историю. Скинет Брабена с пьедестала
:v2_dizzy_punk:А ещё привинти русский язык к дефендерсам и скинь Тибоха с пьедестала.
На изичах
DragonsLord
18.06.2021, 12:32
Не занимаюсь изи проектами. Только хардкор!
:v2_dizzy_punk:
... хардкор на изичах :biggrin:
DragonsLord
18.06.2021, 16:20
Переделал мосты так:
https://b.radikal.ru/b17/2106/d5/2d6f592d55ee.png
... наименее бесячий вариант.
Переделал мосты так:
https://b.radikal.ru/b17/2106/d5/2d6f592d55ee.png
... наименее бесит.
да ладно. а как же?
У тебя там желтый и красный у дорожки. Юнит станет красным на желтом? Ну такое себе решение, ну ладно.
Ну, естественно.
Есть стойкое 25 летнее желание запилить порт "War Craft: Orcs and Humans" на Спектрум.
Главное, не потерять это желание при столкновении с трудностями, рутиной и обхаивателями)) Удачи и терпения! :)
(19.05.2021, 19:56)
И, да, тропинки-дорожки реально какие-то не такие. Может лучше их сделать как в демке warcraft - жёлтыми, там они симпатичнее.
Он за всеми следит, если что.
DragonsLord
20.06.2021, 00:47
14 различных юнитов со всеми анимациями уже в игре!
5 кадровые анимации с масками. (кто там говорил "не влезет"? - изи!)
Видео:
https://disk.yandex.ru/i/fFbk5bmgFKtVYQ
https://d.radikal.ru/d35/2106/52/c14eb3cf8290.png
... теперь ждём Джерри, когда он допишет спрайтовалку, что спасёт 4,5 килобайта в проекте и позволит писать механики дальше.
DragonsLord
20.06.2021, 17:22
Думаю, в виду скудности анимаций юнитов на Спеке - мои будут разворовываться десятилетиями и ещё миллион раз увидим их во всяких проектах, как вторичное использование :biggrin:
Гордыня.
Чрезмерная вера в собственные возможности, вступающая в противоречие с величием Господа. Считается грехом, от которого происходят все прочие.
:v2_dizzy_priest:
DragonsLord
20.06.2021, 17:50
Что не помешало Слипу тырить юнитов с Ворона в свои Империи :biggrin:
Что не помешало Слипу тырить юниов с ворона в свои Империи :biggrin:
Он их не тырил. Медноногов их в свободное пользование запустил.
DragonsLord
20.06.2021, 19:24
Тырил свободно доступные. Ибо других нет.
О чём я сразу и написал.
... теперь ждём Джерри, когда он допишет спрайтовалку, что спасёт 4,5 килобайта в проекте и позволит писать механики дальше.
Ну жди. Последняя ветка осталась.
И конвертеры.
А пошто скелетов выпилил? У Медноногова были.
И ползуны тоже были.
DragonsLord
21.06.2021, 00:16
Память то не резиновая.
Ты пили-пили. Потом я ещё пробну версию сделать вообще без масок. Освободить две страницы памяти нахалявку да ещё и скорость вывода увеличить раза в полтора - сладкая цель.
Не зря я юнитов делаю такими относительно чёрными. :tongue:
- - - Добавлено - - -
Легендарный проект Варкрафт обрастает преданной фанбазой:
https://zxart.ee/eng/authors/g/grongy/warcraft-1-hud-mock-up/
Особо радует подпись автора: "Made in Izichi/Сделано на Изичах" :biggrin:
DragonsLord
21.06.2021, 18:17
Демонстрация скорости конечного продукта с включенной переброской на чистовой экран. Показано на 3.5МГц.
Отставить мерцание, стробоскоп, эпилептические припадки, сечение лучом! Даёшь красотень! Даёшь идеалити!!!
Видео:
https://disk.yandex.ru/i/pvsinDu_MVZXAg
Хардкорный пост с номером 666 :v2_dizzy_punk:
- - - Добавлено - - -
Выделил переключалку страниц в отдельную процедуру, вызываемую по call. И провёл ревизию по коду, удаляя лишние переключения. Выиграл 400 байт.
формат данных
байт маски развернутый по Х
байт спрайта
наложение OR/XOR
доступные размеры 1.2.3
конвертер тайлов будет, но позже.
Для такого крутого проггера как ты набросать конвертер - я считаю на изичах
75658
конвертер спрайтов
75659
DragonsLord
21.06.2021, 22:17
Я художник, а не кодер. Заставляете художника кодить rts. :tongue:
Lethargeek
21.06.2021, 23:48
норм шевелится, только видео сжимать получше желательно, гигабайт на 8 минут это перебор :v2_dizzy_aaaaa:
DragonsLord
25.06.2021, 20:12
Джерри, нахожу твой формат тайлов весьма схожим с тем, что рассказывал Серёга Смирнов. Один в один :biggrin:
Скоро тайлонарезалка релизнется?
Джерри, нахожу твой формат тайлов весьма схожим с тем, что рассказывал Серёга Смирнов. Один в один :biggrin:
Скоро тайлонарезалка релизнется?
ага именно оно и есть. только у меня источник другой.
по времени хз - времени мало
конвертер тайлов
и конвертер спрайтов
75741
sergio78
03.07.2021, 06:40
Ну как дела идут? еще хоть одна картинка нарисовалась?
Ну как дела идут? еще хоть одна картинка нарисовалась?Вон выше даже видео имеется.
А автор в бане за язык.
Может пишет, может нет.
К новому году оттает.
sergio78
03.07.2021, 09:49
Вон выше даже видео имеется.
Какое видео? где по ссылке-Ничего не найдено. оно c той же самой картинкой? мне тяжело по страницам бегать, можно ссылку, чтоб не пролистывать все. тут так тема разрослась, за такой промежуток, я уже 2 своих пека обновить успел.
Dimon spb
03.07.2021, 10:33
Какое видео? где по ссылке-Ничего не найдено. оно c той же самой картинкой? мне тяжело по страницам бегать, можно ссылку, чтоб не пролистывать все. тут так тема разрослась, за такой промежуток, я уже 2 своих пека обновить успел.
Думаю, он поудалял все видео от обиды. А может, потому что они по 3 гига весили. У меня один видос скачался на мой яндекс-диск, как выяснилось. Пережал в 180Мб )
https://disk.yandex.ru/i/1U-tbVdMkcJdsw
В общем, у него наклёвывался неплохой движок, а графу можно поправить. Жаль, если забросит. Очень уж ранимый товарищ, нервно относится к критике...
CodeMaster
03.07.2021, 11:35
Жаль, если забросит. Очень уж ранимый товарищ, нервно относится к критике...
А нечего было умышленно троллить.
null_device
03.07.2021, 12:34
Очень уж ранимый товарищ, нервно относится к критике.
Ничего удивительного:
Я художник, а не кодер. Заставляете художника кодить rts. :tongue:
https://gdepapa.ru/upload/users/2020/2020-01-28/user397862/files/d93c34e1135ad2b5b7028951e6e1ba9d.png
Закономерный результат, на стиль поведения, более подходящий на сайтах "Двач" или "Башорг".
Black Cat / Era CG
03.07.2021, 12:52
А шо, ДЛ у нас такой белый и пушистый весь такой интеллигентно изъяснялся, вежливый всегда такой. А тут тролли набежали и нагрубили. Имхо, накидываешь на пропеллер, будь готов, что в обратку тоже брызги полетят.
Dimon spb
03.07.2021, 13:57
А нечего было умышленно троллить.
Умышленно его никто не троллил, это он как раз провоцировал, дерзил по поводу и без. Ну и правила форума есть, элементарная воспитанность должна быть. Фильтровать базар надо, короче )
sergio78
03.07.2021, 14:25
В общем, у него наклёвывался неплохой движок, а графу можно поправить.
спасибо. А вы точно уверены, что это крутилось на обычном каноническом zx? на эмуляторе, можно накрутить и кучу памяти с мегагерцами, а сказать что оно на обычном 3.5 мгц это так идет. или вообще, вывести оконный оверлей с пека, перед страничкой эмулятора. смотрим видео с пека а думаем что это спектрум.
Black Cat / Era CG
03.07.2021, 14:31
Он снапы выкладывал же.
уверены, что это крутилось на обычном каноническом zx
А что удивительного, там нет игры, это не демки варквафтов которые есть на vtrd, это маленькая и самая простая часть движка с конверченой графикой. При этом уже потрачена вся память. Почти никто не сомневался что дл не сможет, а вот это вот все просто предлог слиться. Хотя это было забавно и имхо можно было чуть больше сделать, рано сдался. Подождем может нас ждет вторая серия?
По поводу троллинга все просто, если ты врываешься и начинаешь обсирать всех окружающих, и даже тех кого тут нет, то логично что это не всем понравится.
Dimon spb
03.07.2021, 16:33
спасибо. А вы точно уверены, что это крутилось на обычном каноническом zx? на эмуляторе, можно накрутить и кучу памяти с мегагерцами, а сказать что оно на обычном 3.5 мгц это так идет. или вообще, вывести оконный оверлей с пека, перед страничкой эмулятора. смотрим видео с пека а думаем что это спектрум.
Раскопал и снапы:
https://disk.yandex.ru/d/pu0S-1-d8aU1dw
https://disk.yandex.ru/d/15_aiBNA6bvkHw
https://disk.yandex.ru/d/11ePTu2CPqPGQA
Да не, все по-честному, действительно писАл. А память можно освободить в ущерб анимации, убрать один кадр у каждого юнита и уже прилично наберется, на ИИ как раз )
Я думаю, его терпели, потому что сейчас ценен каждый, кто что-то делает, особенно РТС с нуля а не не платформер на АГД, не так много энтузиастов осталось. Но у любого терпения есть предел.
CodeMaster
03.07.2021, 17:17
Умышленно его никто не троллил, это он как раз провоцировал, дерзил по поводу и без.
Ну, так и отвечали бы симметрично, как принято в международной политике, либо вообще не отвечали, если заданный тон не нравится, но нет.
А вы точно уверены, что это крутилось на обычном каноническом zx?
Вот примерно по этому, теперь гадайте пишет он или нет.
Dimon spb
03.07.2021, 17:50
Ну, так и отвечали бы симметрично, как принято в международной политике, либо вообще не отвечали, если заданный тон не нравится, но нет.
Т.е. надо было в ответ также сыпать разнообразными эротическими фантазиями в матерной форме? Интересные советы от модератора )
Насколько я знаю, в политике, особенно международной, бОльшим весом обладают как раз ассиметричные ответы ) Ну по крайней мере так учит руководство нашей страны.
CodeMaster
03.07.2021, 18:02
Т.е. надо было в ответ также сыпать разнообразными эротическими фантазиями в матерной форме?
Такое было пару раз на 100 страниц (хотя, чес гря и без особой провокации (в теме по крайней мере)), да "художники" они такие, они так видят.
Интересные советы от модератора )
Это не совет от модератора, а "у кого что болит, тот о том и говорит". Кроме того, там же был совет игнорировать, но его тоже конечно не увидел, т.к. он не затронул струны твоей души.
бОльшим весом обладают как раз ассиметричные ответы
В фантазиях тех, кому нечем ответить симметрично.
Ну по крайней мере так учит руководство нашей страны.
Оно так говорит, но поступает примерно симметрично, по классике.
Вот примерно по этому, теперь гадайте пишет он или нет.
Некогда ему писать, он на Ютубе комментит
Так разбаньте и узнаете
Казнить нельзя помиловать :D
Black Cat / Era CG
16.07.2021, 06:52
Он же в бане пока, поэтому переместился в дискорд, на сервер (или канал, не знаю, как это правильно там зовется) Алон Кодера.
cooper_rsm
25.07.2021, 09:28
Может пора уже разбанить топикстартера, обиженки?
BlastOff
23.09.2021, 02:41
Чтобы не ходить по 10 форумам, расскажите как идёт дело с разработкой этого проекта? Может видосики есть, скриншоты?
В августе кончилась память и я передал ему свою процедуру вывода спрайта использующую меньше памяти
до сих пор пока никаких подвижек.
ZX_NOVOSIB
24.09.2021, 16:38
до сих пор пока никаких подвижек.
А как же "за неделю на изичах"?
А как же "за неделю на изичах"?
Ну он же не про себя говорил а про суперкодера.
BlastOff
29.09.2021, 02:24
В августе кончилась память и я передал ему свою процедуру вывода спрайта использующую меньше памяти
до сих пор пока никаких подвижек.
Странно, что она в августе кончилась, я мечтал хотя бы о ноябре :v2_dizzy_christmas2
"Нужно больше памяти, милорд !"
ZX_NOVOSIB
29.09.2021, 12:32
припаять ещё ру5 и делов, или даже ру7
CodeMaster
29.09.2021, 12:55
припаять ещё ру5 и делов, или даже ру7
Чёужтам - SIMM'ы МГТФ'ом, но проект чисто под ориджинал 48К и 128К.
Lethargeek
29.09.2021, 18:50
А как же "за неделю на изичах"?
вероятно, это надо было понять как "первая неделя - на изичах, после - мучиться на сизифычах..."
ну што-с - когда можно игру скачать то? уже небось готово всё?
ну што-с - когда можно игру скачать то? уже небось готово всё?
как только Автор из бани выйдет то его можно будет и спросить
или велком к Алонию в Дискорд - он там СуперЭлиту делает на изичах.
Всё на изичах, а воз и ныне там(((
CodeMaster
18.10.2021, 17:40
Всё на изичах, а воз и ныне там(((
"Не теребите Клинтон, Билл уже потеребил" © Comedy Club
"Не теребите Клинтон, Билл уже потеребил" © Comedy Club
"А Хилари ты лезешь в политику?"))) (с) КВН Русская дорога
Всем привет, по просьбе Лорда Драгона
ссылка на видео (https://disk.yandex.ru/i/uqx0TMNFL03oMQ)
"Есть мысль вместо классических картинок перед загрузкой уровней сделать настоящие цветные видео-вставки из фильма ВАРКРАФТ. Конечно, на видео показано лишь раннее прототипирование, процесс конверсии будет совершенствоваться, но примерное представление можно получить. Видео играется на стандартном экране классического Спектрума на классической частоте процессора. 4 градации оттенков чанками 4х4 + атрибуты."
https://i.postimg.cc/GpDkR1Pf/3-in1.png
Спасибо за "в курсе"! Тралл сын Дунатара.
Dimon spb
10.11.2021, 22:30
Надо устроить голосование. У нас же демократия. Вдруг мухи победят?
Но если так хочется, уж лучше в 53c видео сделать. 50 fps на изичах, объем с учетом компрессии стремится к нулю )
уж лучше в 53c видео сделать
Это которые существующие только в эмуляторах вымышленные цвета?
Стандартный Спек, подключенный через RGB, показывает жуткое нечто взамен этого "интерлейсного мультиколора". Лучше уж с морганием 25 FPS.
Хотя в эмуляторах все отлично, ничего не моргает, несуществующие цвета выглядят прекрасно. Можно и сделать.
Black Cat / Era CG
11.11.2021, 10:53
Это которые существующие только в эмуляторах вымышленные цвета?
Стандартный Спек, подключенный через RGB, показывает жуткое нечто взамен этого "интерлейсного мультиколора".
Это про картинку атрибутами на шахматке. Сочетание инк и папер позволяют получить 53 "цвета" огромных "пикселей". 32х24 "пикселя" картинка.
Это про картинку атрибутами на шахматке
А, 8х8 шахматка. Ну тоже так себе... лучше уж тогда 4х4 чанками, по старинке. Вглядываться в огромные квадраты, пытаясь угадать, что же там нарисовано, то еще удовольствие.
Dimon spb
13.11.2021, 15:48
Вглядываться в огромные квадраты, пытаясь угадать, что же там нарисовано, то еще удовольствие.
Я давно придумал отличный способ - нужно прищурить глаза, чтобы картинка потеряла чёткость )
Всякие дитеренные картинки тоже так лучше становятся )
Со стороны, наверное, смотрится стрёмно - сидит мужик и щурится на монитор ))
Кстати, может, это и был план - сделать графику такой, что только с плохим зрением играть? ))
отличный способ - нужно прищурить глаза, чтобы картинка потеряла чёткость )
Мне и щуриться не нужно, достаточно очки снять =))
Лет 20 назад, когда использовал ЭЛТ-телевизор, было проще: у него аппаратное размытие чанков, бугога.
Теперь же в эмуляторах (и вообще на ЖК) приходится фильтры включать, чтоб эта каша глаз не резала...
По существу дела: не знаю, что там придумал автор, обещающий "цветные чанки без клэшинга", но е-мое.
Эта мода последних лет на цветные квадраты 8х8 выбешивает еще больше, чем 4х4 чанки в свое время.
Мне и щуриться не нужно, достаточно очки снять =))
Лет 20 назад, когда использовал ЭЛТ-телевизор, было проще: у него аппаратное размытие чанков, бугога.
Теперь же в эмуляторах (и вообще на ЖК) приходится фильтры включать, чтоб эта каша глаз не резала...
По существу дела: не знаю, что там придумал автор, обещающий "цветные чанки без клэшинга", но е-мое.
Эта мода последних лет на цветные квадраты 8х8 выбешивает еще больше, чем 4х4 чанки в свое время.Терпи от автора ты другого и не увидишь.
ну-с - пора-с? когда же будем играть?
ну-с - пора-с? когда же будем играть?
Прибегая к фольклору, "Обещанного три года ждут!" Проверяем на Острове сокровищ и... тут!))
Black Cat / Era CG
22.11.2021, 18:46
Остров пилят опять понемногу :)
Проверяем на Острове сокровищ
Привет всем...
За месяц - написать не получилось...
DragonsLord
25.12.2021, 20:53
Последнее видение интерфейсной части игры:
https://d.radikal.ru/d42/2112/90/4a6681a76fdf.png
NEO SPECTRUMAN
25.12.2021, 21:00
Дрололо вернулсо
Последнее видение интерфейсной части игры:
кому ныжны интерефейсы кода сама игра не влазёт в паметь?
Последнее видение интерфейсной части игры:
https://d.radikal.ru/d42/2112/90/4a6681a76fdf.png
что будет если счетчики золота и дерева будут больше 999?
NEO SPECTRUMAN
25.12.2021, 21:03
что будет если счетчики золота и дерева будут больше 999?
можно сделать 99К %)
Картинки неинтересно.
Снап в студию.
NEO SPECTRUMAN
25.12.2021, 21:19
Снап в студию.
щас драгонлорд вспомнит про сорцы илиты :)
NEO SPECTRUMAN
25.12.2021, 21:59
Последнее видение интерфейсной части игры:
https://d.radikal.ru/d42/2112/90/4a6681a76fdf.png
да и вообще
оригинальный интерфейс для левшей
я бы перенес панель на право
- - - Добавлено - - -
для правшей
панельки или справа или снизу
https://s3.gaming-cdn.com/images/products/6749/screenshot/game-steam-command-conquer-remastered-collection-wallpaper-2.jpg
https://miro.medium.com/max/1280/0*ec6EYTO506J-3-8z.jpeg
http://static.8gamers.net/images/images/obzoris2/68a9fe8bb9a9fd413c23370f50f7ba82/68a9fe8bb9a9fd413c23370f50f7ba82.jpg
https://gamewelcome.ru/upload/imgs_article/f11/f116037c1f242eece2a93e69af93e584.jpg
DragonsLord
25.12.2021, 22:07
В игре нет нужды тыкать в панель. 95% управления осуществляется тыканием в игровое поле.
https://d.radikal.ru/d17/2112/ce/5ec81ad42d87.png
NEO SPECTRUMAN
25.12.2021, 22:19
В игре нет нужды тыкать в панель. 95% управления осуществляется тыканием в игровое поле.
есть нет
с левва она режет глаз
- - - Добавлено - - -
это примерно так же вырвиглазно каак форумы с инфой о юзере справа
(там де должна быть более выжная инфа)
а нас заставляют читать текст слева экранов...
https://spectrumcomputing.co.uk/forums/viewtopic.php?f=6&t=6048
- - - Добавлено - - -
ну или можошь запусить airwolf 2 и прочуствовать неправильность направления движения :)
- - - Добавлено - - -
конечно наигравшимся фанатекам можот и привычно
но для других думаю такой варииант будет выглядеть спокойней
https://i.postimg.cc/w3K5gGdD/5ec81ad42d87.png
DragonsLord
25.12.2021, 23:03
Меню руссифицировано:
https://a.radikal.ru/a32/2112/08/3801c718a7d2.png
что будет если счетчики золота и дерева будут больше 999?
Не будет. Считается, что больше 999 на склад не лезет. А геймплейно ценники на всё будут сбалансированы так, чтобы данный предел фактически никогда не наступал.
Последнее видение интерфейсной части игры:
https://d.radikal.ru/d42/2112/90/4a6681a76fdf.png
Круто! С возвращением из баньки!)) Есть чего потыкать?
DragonsLord
26.12.2021, 12:24
Приветик. В знак протеста ничего не делал, сидя в бане. Пока потыкать нечего.
Сейчас перевожу проект на процедуры быстрого спрайтования от Джерри.
DragonsLord
26.12.2021, 15:07
Объективный тест на скорость процедур печати спрайта с точностью до пикселя (Джерри - красный, Санчез - зелёный):
https://c.radikal.ru/c29/2112/0b/2decfe7ab8cb.png
Чуда по скорости вывода не случилась. С учётом погрешности процедуры практически равной скорости. Единственное отличие: у Санчеза с нулевыми сдвигами спрайты также вбиты в таблицы - отсюда таблицы больше, а скорость вывода всегда одинаковая. У Джерри с нулевым сдвигом в отдельной ветке алгоритма. Отсюда: таблицы чутка поменьше, и с нулевым сдвигом вывод на треть быстрее.
Вердикт: при прочих равных логичнее перейти на процедуры от Джерри. Выигрыш 3,1 кб. И скорость в 1/5 фазе быстрее на треть, что в пересчёте = быстрее на 7%. Ну и прерывания всё время включены. Это хорошо.
И ещё, к Варику это никаким образом не относится, но процедуры Джерри умеют печатать в 7 страницу, при исходных спрайтах в другой верхней странице, т.е. подходят для игр с рисовкой одновременно в два экрана, типа игрушки Миши Гамаева. А также, на сколько я понимаю, умеют выводить спрайты производного размера (у Санчеза были конкретные размеры).
NEO SPECTRUMAN
26.12.2021, 17:25
В знак протеста ничего не делал
продолжай в том же духе
Лордик, мы верим в тебя )
Приветик. В знак протеста ничего не делал, сидя в бане. Пока потыкать нечего.
Сейчас перевожу проект на процедуры быстрого спрайтования от Джерри.
Да, лан, так уж и ничего? А видео с трёхмеркой?
- - - Добавлено - - -
Лордик, мы верим в тебя )
У меня не пропадает надежда, вдруг вернешься к героям потом. В это бы с большим удовольствием порубался на Спекке!
NEO SPECTRUMAN
27.12.2021, 12:02
Да, лан, так уж и ничего? А видео с трёхмеркой?
дрололо большую чассть времени ныл "сделайте все за меня" и "дайте все готовое"
хотя в отлчии от варика 3до он чото там делол
Dimon spb
27.12.2021, 23:18
Спокойно, а то пацан опять сорвётся и пойдет париться.
Я верю, всё получится. Не такое, как всем хотелось бы, но что поделать.
NEO SPECTRUMAN
27.12.2021, 23:22
Не будет. Считается, что больше 999 на склад не лезет. А геймплейно ценники на всё будут сбалансированы так, чтобы данный предел фактически никогда не наступал.
хватит всем :v2_lol:
- - - Добавлено - - -
Спокойно, а то пацан опять сорвётся и пойдет париться.
Я верю, всё получится. Не такое, как всем хотелось бы, но что поделать.
он быстрей заставит алония написать половину всего для илиты дума нужное подчеркнуть и оно выпустит
а вот варкрафты никода не выйдут
дрололо отказуетсо даже что либо паковать там...
и конец немного предсказуем
DragonsLord
28.12.2021, 14:58
Новости: проект полностью переведён на новые процедуры печати спрайтов с точностью до пикселя от Джерри. (это по геморою примерно, как переводить уже готовую рабочую сборку с UE4 на UE5).
По скорости не очень и прибавит, разве только для спрайтов 2х2, стоящих без дела на карте. Но 3 килобайта выигранной памяти на дороге не валяются :cool_std: Сие действо позволит писать геймплейные процедуры дальше.
Dimon spb
28.12.2021, 18:22
Не будет. Считается, что больше 999 на склад не лезет. А геймплейно ценники на всё будут сбалансированы так, чтобы данный предел фактически никогда не наступал.
Ремонт зданий пеонами предполагается? Кратность 100, в принципе, только для этого нужна, чтоб бабло списывать пропорционально ремонту. А так да, пусть пеоны по 1 таскают, ферма 3, мечник 4 стОят и т.д.
Раз уж спрайтовые процедуры такие всеядные, почему б не откусить верхнюю строку под ресурсы, так и ближе к оригиналу будет, и окно геймплея меньше станет - плюс несколько процентов к фпс.
DragonsLord
28.12.2021, 20:01
https://a.radikal.ru/a27/2112/67/7ea677ee94be.png
Предновогодний релиз. Баловаюсь. 42 юнита одновременно под трассером в группе. 7МГц.
Видео: https://disk.yandex.ru/i/4DFKIxw47N-o-Q
Dimon spb
28.12.2021, 20:13
7МГц? А как же
Под какую платформу собираюсь делать: я стойкий противник расширенных режимов и нового железа. Если делать, то строго под классику.
Я уверен, никто слова против не скажет, если игра в итоге будет под 7 Мгц и 256 памяти - один фиг все в эмулях будут запускать. Скорпион, допустим - тоже классика советского спектрумизма, не?
Либо, как я предлагал в соседней ветке - на слабых машинах ограничивать количество юнитов.
Это всё равно что делать еще один набор уровней - баланс игры изменится.
DragonsLord
28.12.2021, 20:36
Игра будет под 3.5МГц 128k онли с наличием Дэльта-тайминга.
Никаких релизов на турбированные машины или с большей памятью не планируется.
Данная приколюха просто предновогоднее веселье в ответочку на видос Миши Гамаева. Передаю ему пламенный привет!
:v2_dizzy_punk:
Игра будет под 3.5МГц 128k онли с наличием Дэльта-тайминга.
а будет ли вообще.....
Хотелось бы хоть какой-то снап, чтобы можно было потыкать кнопочки..... хоть какие-то.....
А то.. меня обидели на полгода, я в это время нифика ничего не делал....
А тут обиду сняли... и я резво начал пилить варкрафт/старкрафт etc....
ну какже вы все-таки зависимы....
sergio78
28.12.2021, 21:56
а будет ли вообще.....
ухаха.. блаженны верующие.
ухаха..
ухаха... Вы один из верующих???
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot