Мне кажется, это почти единственный "сбалансированный" по цветам режим для Векторовских игр. Всё-таки, 8 цветов и "быстрые" спрайты без маскирования - это не так уж и плохо. Есть только одна тонкость, и связана она с прокруткой экрана. Пожалуй, можно ухитрится написать движок с плавной вертикальной прокруткой, используя аппаратный скролл и цветовую схему выше (игра Полёт-не в счёт, там uni-planar спрайты, а нужны будут bi-planar). Проблема есть с горизонтальным скроллом - видна перерисовка уровня. Не смертельно, (на многих платформах видел и похуже) но-неприятно. Собственно, я и наколбасил вот это, http://sensi.org/~svo/scalar/ware/865/, чтобы оценить "мырганье" при перерисовке bi-planar уровня. Для себя счёл мырганье неприемлемым, и пришлось делать фрейм-буфер, что сразу ограничило количество цветов до 4х. Это было не такое простое решение, и, возможно мырганьем в горизонтали для некоторых игр можно и пренебречь.
Плавное движение спрайтов вполне возможно, правда с дискретизацией на 2 пиксела, а не на 1. Тогда и фаз надо в памяти хранить по 4 на спрайт. Их обязательно надо просчитать заранее (по-крайней мере, я храню все 8 фаз в памяти квазидиска), иначе быстродействие будет убито сдвигами. Естественно, всё чтение с квазидиска в видеопамять, - только стеком (включая и уровень и спрайты). Для оптимизации по быстродействию, байты в спрайтах можно хранить "змейкой". Прогнал тут тест на своём движке, и убедился что 12 спрайтов размером 32x32 пиксела плюс главный герой 24x64 - предел после которого начинает чувствоваться лёгкое замедление.
Есть ещё одна тонкая тонкость - sprite clipping. Негоже, когда спрайты болтаются по экрану, а потом исчезают на краю целиком. Проблема в том, что для клиппинга, даже на границах байт нужны отдельные стековые процедуры, и они значительно медленнее.
И всё-же, предложенная цветовая схема 4x4 наверное - самое то.
---------- Post added at 07:32 ---------- Previous post was at 07:14 ----------
Если честно, то с Metal Gear я проблем в смысле аппаратных ограничений
не вижу. Zanac в таком виде невозможен потому как на Векторе аппаратно прокручивается весь экран, и меню придётся убрать. Если делать программную прокрутку, не думаю что хватит быстродействия. Всё-таки у MSX - 9918 видеопроцессор с аппаратной поддержкой спрайтов и видеопамять в 2 раза меньше.