Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - Sharpnull

Страницы: Назад 1 ... 147 148 149 150 [151] 152 Далее
4501
maxSprite - максимальное количество массива указателей Sprite *sprites[..]; ?
Да, там заранее выделяется оперативная память и если вызвать лишний раз SPR_addSprite(Ex), то он не сработает и вернёт NULL.
vramSize - методом тыка подгонять, чтоб не перекрыло тайлы фона ненароком?
Посмотрел код, там такая история:
Тайлы лежат в памяти с 0-го адреса, до maps_addr (из vdp.c). После установки адресов VRAM (VDP_setBPlanAddress() и т. п.) этот адрес обновляется. По умолчанию (когда размер слоёв только 64x32, 32x64, 32x32) там памяти до начала слоя B. Максимальное количество тайлов, которые можно использовать - TILE_MAXNUM (в vdp.h есть другие полезные константы). При это немного взято вначале и в конце на системный шрифт. Спрайтовый движок (sprite_eng) выделяет тайлы заранее как раз перед шрифтом. Поэтому возможно использование низкоуровневых операций со спрайтами (функции из vdp_spr и vdp_tile), в этом случае обычно используют тайлы с начала TILE_USERINDEX.
Следовательно, если под тайлами фона имеются в виду тайлы, которые расположены вначале, то придётся расчитывать как-то самому (движок проверяет границы и сам лишнего не запишет в пределах vramSize). Либо больше места для спрайтов выделять заранее, либо для всего остального. При правильной установки адресов VRAM, на сами слои (т. е. фон, plan) ничего не залезет. В случае размеров слоёв 64х64, 128х32, 32х128 будет просто меньше места на 128 тайлов.

unpackBufferSize - это выделенная в ОЗУ память, которая используется только в SPR_update(), когда необходимо подгрузить тайлы (если только включена автоподгрузка SPR_FLAG_AUTO_TILE_UPLOAD), такое случается при смене фрейма SPR_setFrame() или анимации SPR_setAnim(), а значит можно примерно представить сколько одновременно спрайтов можно сменить одновременно за один кадр. Например, у Соника размер 25 тайлов, если одновременно 11 соников сменят анимацию, то памяти не хватит (по умолчанию 256).

Ещё важное: при SPR_FLAG_AUTO_TILE_UPLOAD (по умолчанию), каждый Sprite будет использовать тайлы VRAM, это значит, что вызов 5 раз SPR_addSprite() с одним и тем же спрайтом (даже если фрейм один, т. е. нет анимации) будет занимать при отображении памяти как 5 спрайтов, а не один. В примерах есть летающие пончики sgdk\sample\astrofra\starfield_donut, там не используется автоматическая загрузка, поэтому удаётся отобразить 32 пончика одновременно. Пример нужно брать из репозитория, а не архива 1.34 (sgdk134.7z), была исправлена ошибка, но всё равно остался косяк: MAX_DONUT должен быть 32, а не 65, иначе рисуются лишние спрайты и происходит отброс спрайтов, если включён лимит в эмуляторе.

В GensKMod или других эмуляторах есть возможность отладки, например вот VRAM из примера с Cоником.

4502
NES / Dendy / Игра про самолетики.
« : 10 Март 2018, 18:47:11 »
Terra Cresta?

4503
2D-игры старых консолей - это шедевры pixel art, в которые нужно играть без фильтров, в оригинальном соотношении сторон и с кратными размерами пикселями. Все эти мутные фильтры не больше чем ностальгия по заляпанным телевизорам и ужасно смотрится для глаз.

4504
Sega Mega Drive / Genesis / NES. Игра типа final fantasy
« : 09 Март 2018, 03:09:05 »
Поищите для начала среди этих http://www.listal.com/list/rpg-world-nes-edition.
Хотя ещё проще протыкать JRPG, например https://www.reddit.com/r/JRPG/wiki/complete_list_of_jrpgs (без картинок).

4505
Hard'n'Soft / Не виден внешний HDD.
« : 08 Март 2018, 17:50:05 »
Acider, на счёт софта от WD. Возможно требовалось установить драйвер WD SES.
Вообще какую-то информацию винда оставляет навсегда после подключения USB-устройства, не знаю могли ли эти настройки повлиять (настройки можно удалить, если что).

Флешка c NTFS нормально читается на приставке? Нужно точно удостовериться в чём проблема: HDD, винда или Xiaomi. Убедитесь, что случайно не использовали структуру разделов GPT, вместо MBR, в случае NTFS. Ну и про exFAT вы ничего не сказали.

На 4pda человек говорит об "обратном форматировании", похоже связано:
Цитата
Форматирование во внутренний формат флэшки или USB-HDD обратимо, нужно выбрать пункт меню Eject (емнип) и "Форматировать как накопитель USB".
ФС была NTFS, может с первоначальной EXT3 так бы не вышло. А, может, и да. Не знал.
После "обратного форматирования" USB-HDD файлы стали опять доступны.
Если там правда есть такой пункт, может сначала отформатировать во внутренний формат, а потом как накопитель USB? :)

4506
Это дополнительный уровень 1, а не 2 (разные источники путают порядок). Решатель выдал такое:
uRddrruLLullddRddlddrrrruulUUruLruLddddrddlUUddllluurDldRuuuuluurDD
Ходов: 67, Толчков: 14, Оптимальное по толчкам.
Начальное положение как в оригинале, смотрите картинку.

4507
Hard'n'Soft / Не виден внешний HDD.
« : 07 Март 2018, 11:14:41 »
HardWareMan, моделей MiBox'ов много, там либо Android 4.4+, либо Android TV. Последние модели держат FAT32, exFAT, NTFS.

Он стал отлично служить жестским диском, как и внутрений накопитель и проги туда ставились как по умолчанию, но компом не определяется в проводнике.
Инфу нашёл (если модель совпадает), MiBox форматирует только как Adoptable Storage (как внутренняя память, фишка Android 6+), что позволяет ставить программы, но диск не читается виндой (не только из-за файловой системы ext4 или f2fs). https://www.reddit.com/r/AndroidTV/comments/5c2wy5/new_mi_box_usb_drive_format/:
Цитата
On the mi box we only have "Format as internal storage" And even that is not working right. There is currently no option to format as portable storage. But by formatting as FAT32 or NTFS in something other than the mi box, such as a PC, it will apparently work as portable storage.
Так что, после форматирования через винду, диск будет работать только как внешний накопитель, без возможности установки приложений. Как вариант, можно иметь накопитель специально для приставки, а всякие другие файлы расшаривать через роутер, если у него есть USB-порт, или компьютер: DLNA, FTP, LAN. Ну и про USB-хаб не забываем.

4508
Hard'n'Soft / Не виден внешний HDD.
« : 06 Март 2018, 19:07:42 »
Acider, вот и открывайте раздел загрузок, похоже теперь для форматирования только "WD Drive Utilities для Windows" подходит. Там будет вкладка "Уничтожить" и на выбор NTFS и exFAT, попробуйте оба.
-------
А винда, приставка какие? (впрочем это пока и не важно :))

4509
Hard'n'Soft / Не виден внешний HDD.
« : 06 Март 2018, 18:36:41 »
Упустил момент, вам не важно, что не будет работать в приставке? Если диск от WD, попробуйте их фирменную утилиту для форматирования.

4510
Hard'n'Soft / Не виден внешний HDD.
« : 06 Март 2018, 18:29:33 »
Нужно писать подробнее и яснее: размер жёсткого диска и модель, что за винда, конкретная модель приставки, что за файловые систем использовались в каждом случае. Пробовали FAT32, exFAT?

4511
Ogr, жаль, что не получится, у Castlevania 3 маппер 5. Из pdf от 18-November-2014:
Recently the ability of replacing music is also added but this feature requires the user to have in-depth knowledge of the game. Currently, only mapper 000-004,007,009,010, 016, 153, 159 are supported at the moment.

4512
NeGAtiv4k, при большом желании возможно. Мы же не говорим о запуске на настоящем железе. В крайнем случае придётся отредактировать эмулятор.
Кстати, здесь сравнение версий Castlevania_III:_Dracula's_Curse/Regional_Differences, в самом низу разница в геймплее.

4513
GLEBON, разрывы экрана - это следствие отключенной вертикальной синхронизации, как я уже писал. Оно также и в новой работало, но не понятно на какой частоте сейчас работает ваш проц. Если в версии 1.51 с 333МГц и вкл. верт. синхронизацией не будет просадок fps - значит можно играть.

4514
ALKOSHA, я тут понял, что не учёл с функцией VDP_setPlanSize(): если ставить размеры 32*128, 64*64, 128*32, то изменение расположения VRAM обязательно, иначе будет пересечение памяти и соответственно вылезающие не к месту тайлы. Этот код показывал выше:
// these lines can be used in your code to change VRAM layout as olders SGDK (<= 1.30)
VDP_setPlanSize(64, 64);

VDP_setWindowAddress(0xB000);
VDP_setSpriteListAddress(0xBC00);
VDP_setHScrollTableAddress(0xB800);
VDP_setBPlanAddress(0xC000);
VDP_setAPlanAddress(0xE000);
Надо быть со всем этим осторожно, потому что вероятно влияние на другой функционал.

4515
Sophie Lhant, проверил, при 222/111 действительно будут тормоза. Параметры "По умолчанию" тоже подходят и в эмуляторе будет 333, что также меняется через эмулятор.

Если выставить Display options -> Wait for vsync -> always, будут просадки, а без верт. синхронизации будут разрывы экрана. renderer -> fast не спасает. В общем, на PSP нормально не поиграть.

4516
У меня он наоборот вылазит из другого конца экрана.
Говоря о спрайте (на sprite plan), он должен возвращаться с другой стороны при выходе за пределы слоя. Проблемы из вашего описания не видно. К тому же, затирание в эмуляторе, а вы, полагаю, говорите о проблеме только на реальном железе.

4517
Pelmengames, создайте :)
Там есть особенности, возможно проще всё-таки будет использовать программу.

4518
Если используете snes9x, то можно просто положить ром в папку roms, а патч в patches. Имена должны быть одинаковые, например roms/game.smc, patches/game.bps. Ром игры должен совпадать по региону.

4519
Гугл отвечает: это патчи, которые необходимо применять к ромам.

4520
ParagonUnits, может быть и утечка от определённых сайтов. Посмотрите статью Firefox использует слишком много оперативной памяти (RAM) - как это устранить. Расход может быть от дополнений и тем. Нужно чтобы было включено аппаратное ускорение и установлены последние драйвера для видеокарты. Использование uBlock Origin и NoScript заблокирует лишние элементы и скрипты. Во вкладке about:memory сможете точно определить из-за чего расход, только там не очень наглядно.

4521
ALKOSHA, учитывая, что железо одно и желательно постоянное FPS, лучше добиться отсутствия просадок и простой цикл подходит. Впрочем, всё зависит от ситуации, игры не приставках тоже тормозят иногда.
Но на железе почему-то возникали непредвиденные глюки
SYS_disableInts и SYS_enableInts использовали? Проблема возможна в прерываниях, но это моё дилетантское мнение.
можно умножать каждое перемещение на дельта-тайм
Умножение и деление, особенно для 32-разрядных чисел - дорогое удовольствие для такого железа, тут лучше не увлекаться.

4522
ALKOSHA, без кода не обойтись, потому что при обычных условиях такого не должно быть. Неплохо было бы минимальный проект с одним спрайтом, на котором это видно. Пока будете разгребать и убирать лишний код, может сами поймёте. Если использовали код завязанный на расположении VRAM, попробуйте код из этого комментария (он должен вернуть адреса как раньше до версии 1.30):
// these lines can be used in your code to change VRAM layout as olders SGDK (<= 1.30)
VDP_setPlanSize(64, 64);

VDP_setWindowAddress(0xB000);
VDP_setSpriteListAddress(0xBC00);
VDP_setHScrollTableAddress(0xB800);
VDP_setBPlanAddress(0xC000);
VDP_setAPlanAddress(0xE000);

4523
godun, по первому видео, если не включать интернет, то всё работает. Свернули игру, включили сеть и загрузка пошла, но если закрывать сразу и только тогда включать сеть? Перед этим конечно все следы удалить.
По второму видео кажется, что если система однажды почуяла обновления (запуск с вкл. сетью), будет пытаться их установить, сделав где-то запись об этом, даже при отсутствии подключения в данный момент.

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

4524
godun, сохранения игры тоже удаляли?

4525
Пробовали отключать автоматическое обновление (System > Automatic Downloads and Uploads) и сносить, вставлять диск снова? Есть предположение, что обновление всё же пыталось установиться, когда было подключение к сети, даже без запуска игры.

4526
Mr2, жуть какая (это я про "универсальный интерфейс"). По-хорошему должно быть что-то типа такого, только OpenEmu для мака:

4527
как-то не могут увидеть чуть дальше
Люди об этом давно знают, просто никому это не нужно, включая разрабов этого добра, которые забрасывают рано или поздно.
конечно там еще проблема с авторскими правами будет
В распространении только хаков никаких проблем не было бы, потому что скачивались бы только патчи, а ромы пользователи брали бы сами из других источников.

4528
Игры легко запускать перетаскиванием в эмулятор.
Есть эмуляторы с менеджерами, типа RetroCopy. Элементарно пишется батник или свой менеджер, потому что везде есть способ запуска программы с аргументами. Допустим fceux нужно просто запустить, указав путь до файл: fceux.exe game.nes. Следовательно для батника достаточно написать fceux.exe "Gradius (U) [!].nes" или что-то вроде C:\fceux.exe "C:\Games\Gradius (U) [!].nes" (напомню, что кавычки нужны, если встречаются пробелы в пути). Можно создать ярлык для эмулятора (ПКМ -> Отправить -> Рабочий стол) и в свойствах ярлыка добавить аргументом путь до игры, там же иконку поменять на любую (прикрепил картинку на которой видно как это выглядит). Самый простой способ с ассоциацией уже высказали, меняется через свойства любого nes-файла.

4529
ALKOSHA, по умолчанию 64 на 32 тайла (512х256 пикселей). Меняется через void VDP_setPlanSize для обоих слоёв:
// vdp.h
void VDP_setPlanSize(u16 w, u16 h)

Set background plan size (in tile).

Parameters:
    w width in tile.
    Possible values are 32, 64 or 128.
    h height in tile.
    Possible values are 32, 64 or 128.
Получить значения можно через переменные u16 planHeight и u16 planWidth.
------
В доках не сказано, но в спецификации не доступны варианты 64x128, 128x64, 128x128:
SCROLL PLAYFIELDS
Two scrolling play fields. whose size in cells is selectable from;
32*32,    32*64,    32*128,
64*32,    64*64,    128*32

4530
На всякий случай: я уже поправил ссылки, gbs музыка здесь http://gbs.joshw.info/.

Страницы: Назад 1 ... 147 148 149 150 [151] 152 Далее