vram
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| vram [2026/10/09 18:15] – gecko | vram [2026/10/15 16:48] (текущий) – gecko | ||
|---|---|---|---|
| Строка 7: | Строка 7: | ||
| * **24-битный** - также известен как 24-bit Direct или True Color. На каждый канал выделено по 8 бит. Используется для вывода на экран и декодирования видео. | * **24-битный** - также известен как 24-bit Direct или True Color. На каждый канал выделено по 8 бит. Используется для вывода на экран и декодирования видео. | ||
| - | * **16-битный** - также известен как 15-bit Direct. На каждый канал выделено по 5 бит, старший бит - бит прозрачности | + | * **16-битный** - также известен как 15-bit Direct. На каждый канал выделено по 5 бит, старший бит - бит прозрачности. Этот режим позволяет хранить 32 × 32 × 32 = 32768 цветов. |
| - | * **8-битный индексированный** - использует 256-цветовую палитру. Каждый пиксель является 8-битным индексом в палитре. | + | * **8-битный индексированный** - использует 256-цветовую палитру, в которой хранятся 16-битные цвета. Каждый пиксель |
| - | * **4-битный индексированный** - использует 16-цветовую палитру. Каждый пиксель является 4-битным индексом в палитре. Подходит для простейшей 2D-графики и текста. | + | * **4-битный индексированный** - использует 16-цветовую палитру, в которой хранятся 16-битные цвета. Каждый пиксель |
| Для вывода на экран поддерживаются только прямые 24-битный и 16-битный режимы. Для текстур поддерживаются 16-битный, | Для вывода на экран поддерживаются только прямые 24-битный и 16-битный режимы. Для текстур поддерживаются 16-битный, | ||
| + | |||
| + | Значение бита прозрачности в пикселе текстуры (или в сплошном цвете примитива) зависит от ситуации: | ||
| + | * Если цвет пикселя черный (0, 0, 0), то нулевой бит прозрачности означает, | ||
| + | * Если цвет пикселя не черный, | ||
| ===== Адресация ===== | ===== Адресация ===== | ||
| Строка 17: | Строка 21: | ||
| VRAM адресуется как двумерный буфер разрешением 2048x512 байт, что эквивалентно 1024x512 пикселей в 16-битном цветовом режиме. В левом верхнем углу этого прямоугольника обычно находятся буферы кадра (вверху первичный, | VRAM адресуется как двумерный буфер разрешением 2048x512 байт, что эквивалентно 1024x512 пикселей в 16-битном цветовом режиме. В левом верхнем углу этого прямоугольника обычно находятся буферы кадра (вверху первичный, | ||
| - | Доступ к текстурам организован постранично. Текстурная страница - это логическая область размером 256x256 пикселей. GPU использует ее при текстурировании полигонов. Независимо от цветового режима, | + | Доступ к текстурам организован постранично. Текстурная страница - это логическая область размером 256x256 |
| Одна и та же текстурная страница физически занимает разный объем памяти, | Одна и та же текстурная страница физически занимает разный объем памяти, | ||
| Строка 24: | Строка 28: | ||
| * 16-битный - TP=2 - 256 пикселей - 128 KiB | * 16-битный - TP=2 - 256 пикселей - 128 KiB | ||
| - | Текстуры располагаются в VRAM с учетом того, что GPU адресует память 16-битными пикселями. Позиция текстуры (или CLUT) обычно зашивается в заголовок данных | + | Текстуры располагаются в VRAM с учетом того, что GPU адресует память 16-битными пикселями. Позиция текстуры (или CLUT) обычно зашивается в файл [[TIM]], где задается 16-битными координатами tx и ty, где: |
| * tx - горизонтальная координата в 16-битных пикселях; | * tx - горизонтальная координата в 16-битных пикселях; | ||
| * ty - вертикальная координата в строках | * ty - вертикальная координата в строках | ||
vram.1791569705.txt.gz · Последнее изменение: — gecko
