Открытие файлов в формате DDS
Файлы с расширением DDS используются преимущественно для хранения растровых изображений. Подобные форматы встречаются во многих играх и обычно содержат текстуры той или иной разновидности.
Открытие файлов DDS
Расширение DDS является довольно популярным, и потому открыть его можно доступными программами без каких-либо искажений содержимого. Более того, существует специальное дополнение для Photoshop, позволяющее редактировать данный тип изображений.
Способ 1: XnView
Программа XnView позволяет просматривать файлы со многими расширениями, включая DDS, не требуя при этом оплаты лицензии и не ограничивая функционал. Несмотря на большое количество различных иконок в интерфейсе софта, использовать его предельно легко.
С помощью панели инструментов можно частично отредактировать изображение и настроить средство просмотра.
Через меню «File» после изменений DDS-файл может быть сохранен или конвертирован в другие форматы.
Данную программу лучше всего использовать исключительно для просмотра, так как после изменения и сохранения возможны потери качества. Если вам все же необходим полноценный редактор с поддержкой расширения DDS, ознакомьтесь со следующим методом.
Способ 2: Paint.NET
Программное обеспечение Paint.NET является многофункциональным графическим редактором с поддержкой множества различных форматов. Программа во многом уступает Photoshop, но при этом позволяет открывать, редактировать и даже создавать DDS-изображения.
Инструменты программы позволяют значительно изменить содержимое, предоставляя также удобную навигацию.
Весьма значимое преимущество программы заключается в поддержке русского языка. Если же вам недостаточно возможностей, предоставляемых данным софтом, можете прибегнуть к Фотошопу, заранее установив нужный плагин.
Заключение
Рассмотренные программы являются наиболее простыми средствами просмотра, даже учитывая специфику расширения DDS. В случае возникновения вопросов касательно формата или софта из инструкции, обращайтесь к нам в комментариях.
Помимо этой статьи, на сайте еще 12467 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
ITGuides.ru
Вопросы и ответы в сфере it технологий и настройке ПК
Где можно встретить файлы с расширением DDS и как их открывать
Сегодня обзор будет посвящен достаточно редкому формату файлов – DDS. Встречаются в повседневной работе за компьютером такие файлы крайне редко, часто пользователи даже не догадываются, что такие расширения существуют, что уж говорить про более насущные вопросы – чем можно открывать такие файлы и какими программами это лучше сделать, для чего их вообще открывать и кому это может понадобиться, что они в себе хранят и для чего используются, и многие другие.
Зачем нужны DDS файлы
Файлы с расширением dds предназначены для хранения изображений растрового формата. Рассматриваемый формат был разработан компанией Microsoft и изначально был создан под библиотеку DirectX SDK.
Что хранится в DDS файлах
Чаще всего файлы формата dds содержат данные о трехмерных текстурах. Они используются во многих программах для работы с 3d графикой, а также в современных играх с трехмерной графикой. В последнем случае в таких файлах хранятся текстуры и карты окружающей среды, которые задействуются в игровых приложениях. Кроме того, в файлах формата dds могут храниться заставки рабочего стола.
Одно из преимуществ формата заключается в том, что его поддерживают видеокарты DXTn, драйвера которых способны сжимать текстуры «на лету», что обеспечивает быстродействие. Сами файлы dds могут содержать текстуры в несжатом и в сжатом виде. Это позволяет широко применять такие файлы в современных консолях Play Station 3 и Xbox360.
Как открывать файлы DDS
Если вас интересует, как открыть dds файл с целью «просто посмотреть, что там внутри», то достаточно будет обычной программы-конвертера.
Очень удобно для этой цели приложение Right Click Image Converter, с помощью которого за несколько секунд можно конвертировать файл формата dds в jpg, png bmp и другие наиболее популярные форматы. Вам нужно будет просто щелкнуть правой кнопкой мышки по файлу и выбрать пункт “Convert to” (здесь надо будет выбрать необходимое расширение). Файл в выбранном формате будет сохранен в этой же папке.
Если вам надо редактировать файл dds или создать собственный, то можно воспользоваться, например, Adobe Photoshop. Предварительно с ресурса developer nvidia com (предварительно пробелы необходимо заменить на точки) нужно загрузить NVIDIA Texture Tools для Фотошоп. Данный инструмент позволяет открыть файл dds и сохранить с тем же расширением. Для других программ, которые работают с графикой, разработаны свои фильтры, предоставляющие возможность просматривать файлы dds.
Ну а для того, чтобы полноценно работать с форматом dds в разных программах (в 3D-редакторах и других приложениях, обеспечивающих импорт/экспорт игровых моделей с текстурами), скачайте утилиту nVidia DDS Utilities – она доступна на сайте NVIDIA.
Итак, мы убедились, что открыть файл dds не так сложно – необходимо просто установить нужные приложения и фильтры к ним.
Отблагодари меня, поделись ссылкой с друзьями в социальных сетях:
Расширение файла DDS
DirectDraw Surface
Что такое файл DDS?
Формат файла DDS (сокращение от DirectDraw Surface) содержит растровые изображения, используемые DirectX. Стандартный файл DDS содержит текстуры, фоны, обои, модели и карты текстур для компьютерных игр.
Метод сжатия формата DDS
Формат DDS может использовать сжатие, чтобы пожертвовать качеством для уменьшения размера файла, но это полностью необязательно. Формат использует алгоритм S3 Texture Compression. Данные файла DDS могут быть легко распакованы и обработаны с использованием стандартных функций и команд библиотеки DirectX.
Приложения в формате DDS
Формат файла DDS был создан для приложений рендеринга в реальном времени, таких как компьютерные игры. Использование растрового файла DDS в компьютерных играх делает игры более привлекательными для игрока. Файлы DDS также сокращают использование памяти совместимыми с DirectX графическими процессорами.
Происхождение формата DDS
Программы, которые поддерживают DDS расширение файла
В следующем списке перечислены программы, совместимые с файлами DDS, которые разделены на категории 4 в зависимости от операционной системы, в которой они доступны. DDS файлы можно встретить на всех системных платформах, включая мобильные, но нет гарантии, что каждый из них будет должным образом поддерживать такие файлы.
Программы, обслуживающие файл DDS
Как открыть файл DDS?
Отсутствие возможности открывать файлы с расширением DDS может иметь различное происхождение. К счастью, наиболее распространенные проблемы с файлами DDS могут быть решены без глубоких знаний в области ИТ, а главное, за считанные минуты. Мы подготовили список, который поможет вам решить ваши проблемы с файлами DDS.
Шаг 1. Получить NVIDIA Texture Tools

Шаг 2. Проверьте версию NVIDIA Texture Tools и обновите при необходимости

Шаг 3. Назначьте NVIDIA Texture Tools для DDS файлов
Если у вас установлена последняя версия NVIDIA Texture Tools и проблема сохраняется, выберите ее в качестве программы по умолчанию, которая будет использоваться для управления DDS на вашем устройстве. Следующий шаг не должен создавать проблем. Процедура проста и в значительной степени не зависит от системы
Процедура изменения программы по умолчанию в Windows
Процедура изменения программы по умолчанию в Mac OS
Шаг 4. Убедитесь, что DDS не неисправен
Если проблема по-прежнему возникает после выполнения шагов 1-3, проверьте, является ли файл DDS действительным. Проблемы с открытием файла могут возникнуть по разным причинам.
1. Убедитесь, что DDS не заражен компьютерным вирусом
Если файл заражен, вредоносная программа, находящаяся в файле DDS, препятствует попыткам открыть его. Немедленно просканируйте файл с помощью антивирусного инструмента или просмотрите всю систему, чтобы убедиться, что вся система безопасна. Если файл DDS действительно заражен, следуйте инструкциям ниже.
2. Убедитесь, что структура файла DDS не повреждена
Если файл DDS был отправлен вам кем-то другим, попросите этого человека отправить вам файл. Возможно, файл был ошибочно скопирован, а данные потеряли целостность, что исключает доступ к файлу. При загрузке файла с расширением DDS из Интернета может произойти ошибка, приводящая к неполному файлу. Попробуйте загрузить файл еще раз.
3. Убедитесь, что у вас есть соответствующие права доступа
Существует вероятность того, что данный файл может быть доступен только пользователям с достаточными системными привилегиями. Переключитесь на учетную запись с необходимыми привилегиями и попробуйте снова открыть файл DirectDraw Surface.
4. Убедитесь, что в системе достаточно ресурсов для запуска NVIDIA Texture Tools
Операционные системы могут иметь достаточно свободных ресурсов для запуска приложения, поддерживающего файлы DDS. Закройте все работающие программы и попробуйте открыть файл DDS.
5. Убедитесь, что у вас установлены последние версии драйверов, системных обновлений и исправлений
Современная система и драйверы не только делают ваш компьютер более безопасным, но также могут решить проблемы с файлом DirectDraw Surface. Устаревшие драйверы или программное обеспечение могли привести к невозможности использования периферийного устройства, необходимого для обработки файлов DDS.
Руководством по программированию для DDS
Direct3D реализует формат файлов DDS для хранения несжатых или сжатых текстур (Дкстн). Формат файла реализует несколько разных типов, предназначенных для хранения различных типов данных, и поддерживает однослойные текстуры, текстуры с MIP-карты, карты кубов, карты томов и массивы текстур (в Direct3D 10/11). В этом разделе описывается компоновка файла DDS.
Сведения о создании текстуры в Direct3D 11 см. в разделе как создать текстуру. Справку по Direct3D 9 см. в разделе Поддержка текстур в D3DX (Direct3D 9).
Макет файла DDS
DDS-файл — это двоичный файл, который содержит следующую информацию:
Параметр DWORD (контрольное число), содержащий четырехсимвольное кодовое значение «DDS « (0x20534444).
Описание данных, содержащихся в файле.
Данные описаны с описанием заголовка с помощью _ заголовка DDS. формат пикселей определяется с помощью DDS _ PIXELFORMAT. Обратите внимание, что структуры DDS _ и DDS _ PIXELFORMAT заменяют нерекомендуемые структуры DDSURFACEDESC2, DDSCAPS2 и ддпикселформат DirectDraw 7. DDS _ ЗАГОЛОВОК является двоичным эквивалентом DDSURFACEDESC2 и DDSCAPS2. DDS _ PIXELFORMAT является двоичным эквивалентом ддпикселформат.
Указатель на массив байтов, содержащий сведения о главной плоскости.
Указатель на массив байтов, содержащий сведения об остальных плоскостях, например об уровнях MIP, гранях в кубической текстуре, глубин в объемной текстуре. В статьях, ссылки на которые приведены ниже, представлены дополнительные сведения о структуре DDS-файлов для текстуры, кубической текстуры или объемной текстуры.
Для форматов, сжатых в виде блоков, вычислите тон следующим образом:
Max (1, ((ширина + 3)/4)) * блочный размер
Размер блока составляет 8 байт для форматов DXT1, BC1 и BC4 и 16 байт для других форматов, сжатых в виде блока.
Для R8G8 _ B8G8, G8R8 _ G8B8, устаревших UYVY-упакованных и устаревших форматов YUY2-Упакованные, вычисляют шаг как:
((ширина + 1) >> 1) * четырех
Для других форматов Вычислите шаг как:
(ширина, * бит на пиксель + 7)/8
Для выравнивания байтов можно разделить на 8.
Вычисленное значение высоты не всегда равно пошаговому вызываемому средой выполнения, которое в некоторых ситуациях и в других ситуациях выдается в виде DWORD. Поэтому рекомендуется копировать строку сканирования за раз, а не пытаться копировать весь образ в одну копию.
Варианты DDS
Существует множество средств для создания и использования файлов DDS, но они могут различаться в зависимости от того, что они требуют в заголовке. Модули записи должны заполнять заголовки как можно более полно, а читатели должны проверить минимальное значение для обеспечения максимальной совместимости. Чтобы проверить файл DDS, читатель должен убедиться, что размер файла не менее 128 байт для размещения магического значения и основного заголовка, магическое значение — 0x20534444 («DDS»), _ размер заголовка DDS — 124, а DDS _ PIXELFORMAT в заголовке — 32. Если для DDS _ PIXELFORMAT dwFlags задано значение ддпф _ FourCC, а для двфауркк задано значение «содержимым DX10», общий размер файла должен составлять не менее 148 байт.
Стандартный PIXELFORMAT DDS _ должен быть предпочтительным для обеспечения максимальной совместимости для хранения несжатых данных RGB и данных DXT1-5, так как не все средства DDS поддерживают расширение содержимым DX10.
Использование массивов текстур в Direct3D 10/11
Новые структуры DDS (_ заголовком DDS и _ заголовком dds _ DXT10) в Direct3D 10/11 расширяют формат файлов DDS для поддержки массива текстур, который является новым типом ресурсов в Direct3D 10/11. Ниже приведен пример кода, в котором показано, как получить доступ к различным уровням mipmap в массиве текстур с помощью новых заголовков.
Общие форматы файловых ресурсов DDS и связанное содержимое заголовка
| Формат ресурса | dwFlags | двргббиткаунт | дврбитмаск | двгбитмаск | двббитмаск | двабитмаск |
|---|---|---|---|---|---|---|
| _Формат DXGI _ R8G8B8A8 _ UNORM D3DFMT _ A8B8G8R8 | RGBA для DDS _ | 32 | 0xFF | 0xff00 | 0xff0000 | 0xff000000 |
| _Формат DXGI _ R16G16 _ UNORM D3DFMT _ G16R16 | RGBA для DDS _ | 32 | 0xFFFF | 0xffff0000 | ||
| ** _Формат DXGI _ R10G10B10A2 _ UNORM D3DFMT _ A2B10G10R10 | RGBA для DDS _ | 32 | 0x3ff | 0xffc00 | 0x3ff00000 | |
| _Формат DXGI _ R16G16 _ UNORM D3DFMT _ G16R16 | заdds _ RGB | 32 | 0xFFFF | 0xffff0000 | ||
| _Формат DXGI _ B5G5R5A1 _ UNORM D3DFMT _ A1R5G5B5 | RGBA для DDS _ | 16 | 0x7c00 | 0x3e0 | 0x1F | 0x8000 |
| _Формат DXGI _ B5G6R5 _ UNORM D3FMT _ R5G6B5 | заdds _ RGB | 16 | 0xf800 | 0x7e0 | 0x1F | |
| DXGI _ a8 _ UNORM D3DFMT _ A8 | заdds _ Alpha | 8 | 0xFF | |||
| D3DFMT _ A8R8G8B8 | RGBA для DDS _ | 32 | 0xff0000 | 0xff00 | 0xFF | 0xff000000 |
| D3DFMT _ X8R8G8B8 | заdds _ RGB | 32 | 0xff0000 | 0xff00 | 0xFF | |
| D3DFMT _ X8B8G8R8 | заdds _ RGB | 32 | 0xFF | 0xff00 | 0xff0000 | |
| ** D3DFMT _ A2R10G10B10 | RGBA для DDS _ | 32 | 0x3ff00000 | 0xffc00 | 0x3ff | 0xc0000000 |
| D3DFMT _ R8G8B8 | заdds _ RGB | 24 | 0xff0000 | 0xff00 | 0xFF | |
| D3DFMT _ X1R5G5B5 | заdds _ RGB | 16 | 0x7c00 | 0x3e0 | 0x1F | |
| D3DFMT _ A4R4G4B4 | RGBA для DDS _ | 16 | 0xf00 | 0xf0 | 0xF | число 0xF000 не |
| D3DFMT _ X4R4G4B4 | заdds _ RGB | 16 | 0xf00 | 0xf0 | 0xF | |
| D3DFMT _ A8R3G3B2 | RGBA для DDS _ | 16 | 0xE0 | 0x1c | 0x3 | 0xff00 |
| D3DFMT _ A8L8 | _светимость DDS | 16 | 0xFF | 0xff00 | ||
| D3DFMT _ L16 | _светимость DDS | 16 | 0xFFFF | |||
| D3DFMT _ 8 | _светимость DDS | 8 | 0xFF | |||
| D3DFMT _ A4L4 | _светимость DDS | 8 | 0xF | 0xf0 |
| Формат ресурса | dwFlags | двфауркк |
|---|---|---|
| _Формат DXGI _ BC1 _ UNORM D3DFMT _ DXT1 | DDS _ FourCC | «DXT1» |
| _Формат DXGI _ BC2 _ UNORM D3DFMT _ DXT3 | DDS _ FourCC | «DXT3» |
| _Формат DXGI _ BC3 _ UNORM D3DFMT _ DXT5 | DDS _ FourCC | «DXT5» |
| * _Формат DXGI _ BC4 _ UNORM | DDS _ FourCC | «BC4U» |
| * _Формат DXGI _ BC4 _ снорм | DDS _ FourCC | «BC4S» |
| * _Формат DXGI _ Bc5 _ UNORM | DDS _ FourCC | «ATI2» |
| * _Формат DXGI _ Bc5 _ снорм | DDS _ FourCC | «BC5S» |
| _Формат DXGI _ R8G8 _ B8G8 _ UNORM D3DFMT _ R8G8 _ B8G8 | DDS _ FourCC | «РГБГ» |
| _Формат DXGI _ G8R8 _ G8B8 _ UNORM D3DFMT _ G8R8 _ G8B8 | DDS _ FourCC | «ГРГБ» |
| * _Формат DXGI _ R16G16B16A16 _ UNORM D3DFMT _ A16B16G16R16 | DDS _ FourCC | 36 |
| * _Формат DXGI _ R16G16B16A16 _ снорм D3DFMT _ Q16W16V16U16 | DDS _ FourCC | 110 |
| * _Формат DXGI _ R16 _ float D3DFMT _ R16F | DDS _ FourCC | 111 |
| * _Формат DXGI _ R16G16 _ float D3DFMT _ G16R16F | DDS _ FourCC | 112 |
| * _Формат DXGI _ R16G16B16A16 _ float D3DFMT _ A16B16G16R16F | DDS _ FourCC | 113 |
| * _Формат DXGI _ R32 _ float D3DFMT _ R32F | DDS _ FourCC | 114 |
| * _Формат DXGI _ R32G32 _ float D3DFMT _ G32R32F | DDS _ FourCC | 115 |
| * _Формат DXGI _ R32G32B32A32 _ float D3DFMT _ A32B32G32R32F | DDS _ FourCC | 116 |
| D3DFMT _ DXT2 | DDS _ FourCC | «DXT2» |
| D3DFMT _ DXT4 | DDS _ FourCC | «DXT4» |
| D3DFMT _ UYVY | DDS _ FourCC | UYVY |
| D3DFMT _ YUY2 | DDS _ FourCC | «YUY2» |
| D3DFMT _ CxV8U8 | DDS _ FourCC | 117 |
| Любой формат DXGI | DDS _ FourCC | СОДЕРЖИМЫМ DX10 |
* = Надежный модуль чтения DDS должен иметь возможность обрабатывать эти коды устаревших форматов. Тем не менее такой модуль чтения DDS должен предпочесть использовать расширение заголовка СОДЕРЖИМЫМ DX10 при записи этих кодов форматов, чтобы избежать неоднозначности.
** = Из-за некоторых долгосрочных проблем в распространенных реализациях модулей чтения и записи DDS, самым надежным способом записи данных 10:10:10:2-Type является использование расширения заголовка СОДЕРЖИМЫМ DX10 с кодом _ формата DXGI «24» (то есть _ форматом DXGI _ R10G10B10A2 _ UNORM Value). _Данные A2R10G10B10 D3DFMT должны быть преобразованы в данные типа 10:10:10:2 перед их записью в виде _ _ файла DDS формата DXGI R10G10B10A2 _ UNORM.
Конвертация PNG в DDS в формате DXT5 и просмотр результатов на лету при помощи python
Если вы уверены, что понимаете чего ожидать от формата DXT5, то проверьте себя: в спойлере анимация — слева PNG картинка 4×4 пикселя, справа — преобразованная в DDS(DXT5)
Если вас это не удивит — смело проходите дальше.
Общий обзор формата DXT5 и инструмента, который позволяет увидеть результат конвертации на лету.
Статья не рассчитана на профи, она ознакомительная.
Для кого
Что такое S3TC / DXT
Если очень кратко — это сжатие изображения для того, чтобы: а) оно использовало меньше (v)RAM; б) быстрее загружалось в (v)RAM.
Тут я позволю себе оставить ссылку на табличку, где есть краткая сводка форматов и зачем/когда их использовать вот.
Если вы хотите более подробно почитать о том, как этот формат может использоваться в играх, то вот вам статья в 4-х частях на английском или, если вы предпочитаете почитать по каким формулам происходит само сжатие, то вот статья русском, на английском.
Проблематика
DXT5(я его взял как пример, т.к. его использую в текущем проекте) является форматом сжатия с потерей, поэтому мы жертвуем цветом. Первое — цвета будут не в формате по 8 бит на RGB, т.е. не RGB888, а в формате RGB565. С этим ещё пол беды. Но самая главная проблема(на мой взгляд) — это то, что в рамках одного текселя(texel), который составляет 4 на 4 пикселя, на выходе будет максимум 4 цвета: 2 базовых и 2 дополнительных.
Представим, что вы разработчик (или дизайнер / художник), который до этого не сталкивался с разработкой игр(как пример) и решили создать красивый разноцветный спрайт в стиле pixelart/2D, или просто картинку на фон(опять таки растровую, а не векторную).
Взяли в руки мышь/планшет, нарисовали. Вроде красиво(примем условность, что это красиво).
Чтобы преобразовать его в DDS, нужно воспользоваться GIMPом, фотошопом с плагинами или чем-то подобным. Но результат вы увидите только после того, как откроете получившийся файл.
Давайте же посмотрим, что получилось(представим, что видим только правую часть картинки, в случаете открытия DDS файла GIMPом):
Девушка определённо погрустнела, цветы завяли, диадема стала верёвочкой. «Мда» скажете вы. Вот если бы я видел, что получится раньше… А вот тут может помочь (условно помочь) инструмент, который я собрал для своих нужд — Pyglet PNG to DDS editor
Зачем
Для редактирования / правки исходного файла, подбор приблизительных цветов, составление приблизительной палитры.
Данный «редактор» на лету преобразует PNG изображение в DDS и сразу видно, что получится при конвертации и вставке спрайта в игру.
Почему
Потому, что я не нашел инструментов, которые позволяют на лету увидеть то, как будет выглядеть твоя картинка/текстура.
И это всё?
На данном этапе да. Много чего можно допилить в такой «редактор», но всему своё время.
Больше хотелось бы узнать у сообщества: как вы решаете такие ситуации, когда нужна проверка того, что будет с текстурой на выходе.



















