Автор Тема: SGDK  (Прочитано 76679 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1091
  • Пол: Мужской
  • Закалён и плечист.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #180 : 31 Декабрь 2015, 23:48:28 »
ALKOSHA, вот, merry xmass!
Правда не думаю, что это Вам хоть как-то поможет. Там толком ничего и нет, кроме меню.
Цитата
worm, в сишке можно заключить переменную внутрь модуля таким образом, чтоб знать, в каком модуле она расположена ?
Ну вот как на крестах можно обращаться к переменным (полям) внутри класса, вписывая сперва имя класса... Короче, возможно ли на обычных сях модуль использовать, как отдельный класс на крестах?
К сожалению, тут я Вам не помощник :(

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #181 : 01 Январь 2016, 06:06:03 »
На  данный момент столкнулся с такой шляпенцией, как скачущий (подобно не москалям) ФПС, при появлении того или иного массива частиц.
Попытался стабилизировать картинку согласно предпоследнему примеру из статьи ЭлектроКардиоГама, представленной на хабре, но получил лишь ещё больше нестабильности. По всей видимости, из-за несколько иного получения тиков ф-ции getTick().
Хыыыы.

Добавлено позже:
А чем так хороша процедура очистки экрана
VDP_setReg(0x0b, 0x00); // set scroll mode to plane/plane
VDP_resetSprites();

VDP_setPlanSize(64, 64);

VDP_setVerticalScroll(PLAN_A, 0);
VDP_setVerticalScroll(PLAN_B, 0);
VDP_setHorizontalScroll(PLAN_A, 0);
VDP_setHorizontalScroll(PLAN_B, 0);

VDP_updateSprites();

VDP_fillTileMapRect(APLAN, 0, 0, 0, 64, 64);
VDP_fillTileMapRect(BPLAN, 0, 0, 0, 64, 64);

VDP_setTextPalette(0);
?

Почему бы просто не влепить:
VDP_clearPlan (VDP_PLAN_A,1);
VDP_clearPlan (VDP_PLAN_B,1);
VDP_resetSprites();
« Последнее редактирование: 01 Январь 2016, 07:06:26 от ALKOSHA »

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #182 : 01 Январь 2016, 20:46:55 »
Как вам один из боссов игры "Сотонический мячЬ"?



Добавлено позже:
Ещё добавлю Левиафана, Бегемота, Лилит и прочей нечисти по мелочи.

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1091
  • Пол: Мужской
  • Закалён и плечист.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #183 : 02 Январь 2016, 20:41:37 »
А чем так хороша процедура очистки экрана
Полный сброс ВДП) скроллы и т.д.
Как вам один из боссов игры "Сотонический мячЬ"?
Какой мужчина :blush:
(Если это не то, что я думаю. Я, хоть и атеист, все же ни в чем не уверен на все 100%)

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #184 : 03 Январь 2016, 21:41:03 »
Мда уж, напрягает этот рассинхрон по скорости игры при появлении разного рода частиц.

Эт вам не супер-марио пилить, где два\три спрайта приходится на один экран.

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #185 : 04 Январь 2016, 18:42:53 »
Если для синхронизации игрового процесса использовать SYS_setVIntCallback(), то возникают глюки в растровых эффектах.

Добавлено позже:
Вот как при подобной рамсе сделать примерно одинаковый темп игры?
https://youtu.be/9v3B1hzMwnQ?t=488

Добавлено позже:
Ещё, как вариант, можно каждое приращение по координатам умножать на дельтатайм, но это изврат. Во-превых, дополнительная нагрузка на проц. Во-вторых, программа громоздкая становится.

Добавлено позже:
ЫыыыыЪ

довыкобеливался с этими счётчиками кадров, что теперь выбивает в СДКшный отладчик. ;)


Поменять цвет фона - и будет мортал-комбад... Ну или оставить такой, как есть и будет почти как FlashBack.
« Последнее редактирование: 04 Январь 2016, 22:07:09 от ALKOSHA »

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #186 : 04 Январь 2016, 23:03:17 »
Тута http://live13.livejournal.com/469940.html пример "Догонялки" более-менее стабильно пашыт, в качестве счётчика использую getTick, но почему-то в начале игры некоторое время рендерер (апдейт спрайтов) не обновляется, так же, как и было со счётчиком кадров (только при кадровом счётчике ещё и растр всяко-разно блымал при попытке пер-пиксельного скроллинга).

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #187 : 09 Январь 2016, 13:16:13 »
  while(TRUE)
{
handleInput();
 if(star_game_f==TRUE)
{
u32 current = getTick();
u32 elapsed = current - previous;
previous = current;
lag += elapsed;
while (lag >=VAR)
{
upgate_gaym();
lag -= VAR;
}
 SPR_update(sprites, 80);
}

Вот если VAR равно 10-ти, то игровой процесс безупречен, картинка гладкая, но первые пару секунд спрайты не обновляются, тогда как координаты их обновляются с бешенной скоростью.
Если же VAR сделать равным 50-ти, то всё обновляется сразу, но картинка получается слайдшоу.

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #188 : 09 Январь 2016, 21:14:14 »
Добавил спрайт босса 136*176 пикселей. Сделал двухкадровую анимашку - тормозит.
Много времени уходит на распаковку. Если сделать без компрессии, не так сильно лагает.

Надо как-то прокэшировать спрайты в оперативе.

Добавлено позже:
 можно ли затереть набор символов, хранящийся в VDP-RAM?

Добавлено позже:
Прожорливый выдался босс. Сожрал тайлы двух плэйнов.
Придётся пожертвовать одним из плейнов и на нём нарисовать босса, а не в виде спрайта.
« Последнее редактирование: 09 Январь 2016, 21:36:38 от ALKOSHA »

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #189 : 10 Январь 2016, 21:06:33 »
Хыыыыы :oldgamer:

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #190 : 15 Январь 2016, 14:22:06 »
Пробовали забадяжыть какие-нибудь эффекты на СГДК ? (статическая сетка для игор, типа  "крестиков-ноликов" не в счёт)

Ща парюсь с параллакс-скроллингом. Сложновато зациклить текстуру, чтоб можно было "бесконечно" скроллить в одном направлении.



Добавлено позже:
Автор СДКи уверяет, что сделал оптимизон симметричных изображений.
Но почему-то у меня абсолютно симметричные изображения грузятся в видео-озу полностью (обе части).
Сранно...  :neznayu: (изображения спокойно делятся на 2 части и на 8-ми-пиксельные тайлы, но почему-то компилятор ресурсов так не считает.)
« Последнее редактирование: 15 Январь 2016, 14:41:55 от ALKOSHA »

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #191 : 16 Январь 2016, 20:53:54 »


Оффлайн Ogr

  • Пользователь
  • Сообщений: 7477
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #192 : 16 Январь 2016, 21:54:01 »

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #193 : 16 Январь 2016, 22:26:44 »
Бэтман то фигня.  Пер-пиксель-параллакс-скроллинг на сеге встречается в каждой третьей игре.

А вот именно такой параллакс, как в Toy Story, до сих пор диву даюсь как они его так замутили.
Обратите внимание на бэкграунд. Он реально как бы трёхмерный.
https://youtu.be/1HmB4ZOEMd0?t=1678

Той-стори вообще уникальная игруля. Единственный случай, где используется мультиколор (динамическое переключение пол-литр), из-за чего в заставках раза в два больше цветов, чем способна отобразить сега по дэфолту.
Это, пожалуй, единственная игра, где присутствует трэкерная музыка (в меню и титрах), именно не FM-синтез + один канал PCM, а  микширование сэмплов, как на Амиге или SNES.
« Последнее редактирование: 16 Январь 2016, 22:35:02 от ALKOSHA »

Оффлайн Ogr

  • Пользователь
  • Сообщений: 7477
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #194 : 17 Январь 2016, 00:28:37 »
 
Цитата: ALKOSHA
А вот именно такой параллакс, как в Toy Story, до сих пор диву даюсь как они его так замутили.

из паралакса там только пол.

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #195 : 17 Январь 2016, 00:43:35 »
 
из паралакса там только пол.

Из построчного скроллирования там только пол.

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #196 : 17 Январь 2016, 20:43:29 »
Реально ли ресетнуть на 0 таймер, считающий время с момента включения? >:(

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #197 : 20 Январь 2016, 20:43:28 »
Ок да?  o_0

Оффлайн s1nka

  • Пользователь
  • Сообщений: 1571
  • Пол: Мужской
    • Steam
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #198 : 21 Январь 2016, 16:38:57 »
ALKOSHA, Классно выглядит.

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #199 : 23 Январь 2016, 01:38:13 »
Курлык.


Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2538
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #200 : 23 Январь 2016, 03:24:33 »
шо за психоделический гемдев? :)

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #201 : 24 Январь 2016, 15:36:53 »
Начал делать Левиафана.
В ширину он 512 пикселей, ровно столько, сколько плэйн видео-контроллера.

Есть повод попрактиковаться в создании сайд-скроллерного движка. То есть, чтоб голова и хвост одновременно не светились на экране, в режиме реального времени надо закрашивать ту или иную часть, а потом снова генерировать за пределами экрана, чтоб глупый гей-мир ни о чём не догадался.


 :ohmy:

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1091
  • Пол: Мужской
  • Закалён и плечист.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #202 : 25 Январь 2016, 20:13:50 »
И кто еще кого учить должен? :lol: я бы так в жизни не сделал)

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #203 : 26 Январь 2016, 23:00:36 »

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #204 : 29 Январь 2016, 21:38:32 »
Чё-то с фиксами не вдупляю, как они работают.
Щас мяч дискретно рикошетит, так как интами вычисляется траектория.

Инициализирую координаты.
fix16 x;
fix16 y;

bball.x=FIX16(120.00);
bball.y=FIX16(100.00);

Спрайт находится на координатах 0,0 .

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #205 : 30 Январь 2016, 10:25:27 »
Вы тестировали звуковой движок на реальной железке или на эмуляторе Gensoid ?
Воспроизведение WAV-сэмплов.
Именно не тех, что поставляются с примерами, а собственных каких-нибудь.
У меня одного зависает ?

Оффлайн bgr

  • Пользователь
  • Сообщений: 534
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #206 : 30 Январь 2016, 16:00:33 »
Вы тестировали звуковой движок на реальной железке или на эмуляторе Gensoid ?
Воспроизведение WAV-сэмплов.
Именно не тех, что поставляются с примерами, а собственных каких-нибудь.
У меня одного зависает ?
На новодельных клонах не виснет :lol:
http://romhacking.ru/forum/14-361-8
« Последнее редактирование: 30 Январь 2016, 16:47:05 от bgr »

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #207 : 30 Январь 2016, 16:48:33 »
А в генсоиде ? Можете скинуть семпл, который тестировали ?
У меня клон тоже относительно новодельный - 2000ый год от рождества Христова. На микросхеме SM801.
Такое ощущение, что при определённой амплитуде виснет.

Добавлено позже:
Ещё попробую сэмпл с плавным нарастанием громкости, дабы убедиться, что дело именно в амплитуде.
Что генсоид, что железка одинаково зависают при воспроизведении PCM.
« Последнее редактирование: 30 Январь 2016, 16:55:46 от ALKOSHA »

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1091
  • Пол: Мужской
  • Закалён и плечист.
    • ВКонтакте
    • Просмотр профиля
Re: Настройка SGDK
« Ответ #208 : 02 Февраль 2016, 00:50:45 »
ALKOSHA, я пользуюсь md.emu, там vgm проектов сгдк очень быстро проигрывается. Давно хотел сообщить о баге, но все никак руки не доходят... Да и что-то я в последнее время потерял интерес ко всему, включая кодинг и хацкинг.

Оффлайн ALKOSHA

  • Пользователь
  • Сообщений: 805
  • Люблю донди.
    • ВКонтакте
    • Просмотр профиля
Настройка SGDK
« Ответ #209 : 02 Февраль 2016, 09:03:53 »
Ну, к вгм претензий-то нет.
Тут проблема именно с PCM.
Сега зависает наглухо, когда пытается воспроизвести wav-звук. Причём некоторые сэмплы может немного начать воспроизводить и тоже зависает. А генсоид крашит - вылетает из программы, потом через несколько секунд в андроидовском трее сообщение "gensoid: anal error", что-то в этом роде. С амплитудой и дискретизацией ещё не баловался, пока что в "Кровавыше" пытаюсь расхлебаться с другой проблемой (не имеющей отношения к СГДКшным багам).