eSRAM+Xbox One+DirectX 11.2
Итак, как это работает, для не профессионалов. В общем случае в видеоиграх, любой объект покрыт текстурами. Для примера возьмем, 1080p каменную текстуру дороги, вся текстура сжимается и хранится целиком в оперативной памяти и, соответственно, занимает объем в памяти. В современных играх текстуры – наибольшие потребители памяти, по сравнению со всем остальным, что хранится в памяти.
С частично представленными ресурсами (partial resident resources), или же, как любит говорить Microsoft, с плиточными ресурсами (tiled resources), текстура разбивается на множество более маленьких плиток, позволяя вам загружать только те плитки, которые нужны для загрузки в данной части уровня. Таким образом, для нашей дороги, вам не нужны плитки, которые показывают все детали на расстоянии, для той части дороги, которая в 50 футах от игрока, вам достаточно показывать максимальную детализацию только на ближайшем расстоянии.
Чуть детальнее.
Марс покрыт двумя текстурами:
- 1 Гб диффузной карты;
- 2 Гб карт нормалей;
Используя плиточные ресурсы, аналогичная сцена была текстурирована, используя всего 16 Мб RAM.
Визуализация того, как расположены «плитки». Пурпурный отображает максимальный уровень детализации. Бирюзовый – минимальный.
Сравнение. Если использовать 16 Мб RAM, отключив плиточные ресурсы.
Плиточные ресурсы включены. Это позволяет показывать максимальный уровень детализации при приближении. Все еще используется 16 Мб RAM.
Пока плиточное текстурирование выполнялось на программном уровне, у него были некоторые ограничения. Однако, возложив это на плечи «железа», эти ограничения пропали. Без погружения в технические детали, плюсы от этого настолько велики, что это позволяет разработчикам, используя всего 16 Мб, хранить текстуры, которые раньше бы занимали 3 Гб!
Собственно, причем здесь eSRAM?
Ответ крайне простой: это действительно память произвольного доступа, доступ к любой ячейке памяти в любой момент занимает одно и то же время. И при использовании подобной технологии, она дает невероятный прирост к производительности.
Ее большой минус и причина, по которой она не используется повсеместно, в дороговизне, простой пример, чип в 32 Мбит, вы можете найти за 30 фунтов. Да, конечно Microsoft явно закупает их по цене на порядки более низкой, чем потребительская. Но, задумайтесь, чип в 4 Мбайта, стоит около 30 фунтов (примерно полторы тысячи рублей) для обывателя.
Также, вот объяснение, почему Microsoft предпочитает название плиточные ресурсы, а не плиточные текстуры. Все потому, что эта техника также позволяет добиться подобных эффектов в других областях, например в тенях.
Используется 16 Мб. Плиточные ресурсы отключены.
Используется 16 Мб. Плиточные ресурсы включены.
Промежуточный разработчик (Middleware Developer) Graphine Software также поднялся на сцену и продемонстрировал их Granite, используемый для стриминга плиточных ресурсов, которые были интегрированы в Divinity Dragon Commander by Lariat.
Для Xbox One крайне важно использование подобной техники, так как 32 Мб eSRAM может, в теории, хранить до 6 Гб плиточных ресурсов. Также, «Облачный гейминг» становится доступным на чуть ли не любом широкополосном соединении с интернетом. В сочетании с невероятной скоростью работы, которая по некоторым данным, составляет 192Гб\сек, связка DDR3+eSRAM, выбранная Microsoft, становится гораздо более понятной.
Личное мнение.
К сожалению, все зависит от разработчиков. Станут ли они использовать эти возможности. Впрочем, так было всегда, игроки на приставках гораздо больше зависят от желания разработчика, чем игроки на ПК. Если разработчики захотят, то будет прекрасно выглядящая игра с огромным миром и горой контента и в условиях ограниченных мощностей приставок, даже и без этих технологий. Последние эксклюзивы мира консолей каррентгена, уже почти пастгена, доказывают это.
Скорее всего, эта технология, удел эксклюзивов, но это просто догадки.
P.S. К сожалению, в FullHD разрешении картинок, нет.