У меня есть игровой движок Directx9, который создает свой обычный адаптер с этим форматом: D3DFMT_X8R8G8B8 У меня есть система, в которой я визуализирую некоторые объекты на закадровую цель рендеринга, как карты освещения. Затем я использую эти данные карты освещения для компоновки обратно в задний буфер, где они действуют как полноэкранная «маска» и позволяют мне получить эффект факелов или других источников света на темной сцене. Все работает просто отлично. Проблема в том, что я знаю, что мои большие закадровые цели рендеринга карты освещения имеют размер 16 МБ каждая, при большом разрешении, и мне действительно нужно только 8 бит данных (оттенки серого) от них, поэтому 75% 32-битной памяти цели рендеринга занимает отходы. (Я ориентируюсь на карты с низкими характеристиками). Я попытался создать цели рендеринга как D3DFMT_A8, но directx молча терпит неудачу (если я добавлю CheckDeviceFormat(), я вижу, что это происходит) и все равно создает 32-битный. Я использую функцию D3DXCreateTexture. У меня вопрос: какой формат лучше всего подходит для создания этих закадровых буферов?
Спасибо за вашу помощь, я не силен в вещах, связанных с рендерингом :)