Как сделать прозрачный dds

Добавил пользователь Валентин П.
Обновлено: 04.10.2024

DDS и TGA имеют альфаканал. если тупо сохранять как PNG то получаю картинку на черном фоне и никакой полупрозрачности.
написал свою тулзу которая корректно сохраняет DDS или TGA как PNG. юзал GDI+
однако не верится что такое простое действие нельзя сделать в фотошопе.

progman
даже не знаю как у тебя так получалось)

kinyz
> даже не знаю как у тебя так получалось)
имеется Photoshop CS5
делаю:
Open File - открываю TGA у него есть альфаканал
в channels ставлю галку чтобы визуально убедиться что альфа есть
Save As - выбираю PNG
Png Option - Interlaced по длефолту None - не меняю

смотрю шо получилось в том же фотошопе - в PNG полупрозрачных областей нет, которые соотвествовали бы уровню прозрачности в альфаканале первичного DDS/TGA файла
да и ALPHA Channel в закладке Channels тоже нет

что я делаю не так?

Не лезь на вкладку Chanels. Ничего там не ищи и не добавляй. Для правильной работы прозрачности в PNG это ненужно.

Megabyte-Ceercop
> Не лезь на вкладку Chanels. Ничего там не ищи и не добавляй. Для правильной
> работы прозрачности в PNG это ненужно.
не лезу. один хрен DDS или TGA с имеющимся альфаканалом в PNG сохраняется без учета альфы
в итоге имею непрозрачный PNG

т.е у меня результат сохранения в PNG это полное игнорирование альфаканала исходного файла.
как заставить фотошоп сохранить в PNG с учетом полупрозрачности пикселей заложенной в альфаканале dds или tga не знаю. у меня не получается

Чтобы из TGA сделать PNG нужно:
Во вкладке каналов зажав клавишу CTRL выбрать альфа канал, будет выделена непрозрачная область.
Инвертировать выделение.
Перейти в слои, в TGA есть один слой. Вызвать меню правой кнопкой мыши > Layer via Cut.
Будет создан новый слой — всё непрозрачное вырежится в новый слой.
Удалить бэкраунд.
Таким образом будет 1 слой с прозрачностью. Прозрачность если есть, то на фоне будут квадратики серые-белые.

Теперь можно сохранять в PNG24.


В TGA есть только полный залитый слой, и отдельный альфа канал.

progman
У пнг - precomputed alpha - так что все верно. Т.е. если у тя картинка в колор - не прозрачна - то она и в пнг будет непрозрачна.

Создай новый файл. Создай новый слой. Удали слой background. На новом прозрачном слое нарисуй кисточкой слово х. и сохрани как пнг.

fzr125
> У пнг - precomputed alpha - так что все верно. Т.е. если у тя картинка в колор
> - не прозрачна - то она и в пнг будет непрозрачна.
дык. я то в курсе что у пнг precomputed alpha

вопрос в том почему фотошоп не умеет правильно пересохранить TGA в PNG и сделать эту самую precomputed alpha
очень неудобно сторонними тулзами пользоваться.
я подумал что я что то не так делаю. но видимо кривость фотошопа.

ЗЫ кстати почитал на форуме фотошопа - чтобы пнг с пролупрозрачностью правильно как TGA сохранить - те еще танцы с бубном.

мля пипец как через жопу:
1. открыть DDS
2. сделать копию слоя
3. layer->layer mask->from transparency
4. скопировать альфаканал в канал маски. ( он появится неактивным каналом в окне channels )
5. удалить нижний слой
6. сохранять как PNG

Ага. Запиши эти действия как новый Action. И прогони через него папку с такими TGA. File->batch.

$tatic
> Попробуй Fireworks
зачем если у меня такая мегасреда как фотошоп.
ну вот как я выяснил в 6 дейтсвий он делает сабж. зато всё можно на экшен посадить и быстро конвертить.
не хочу я ставить 10 софти чтобы с кграфикой работать. хочу иметь одну.

progman
> дык. я то в курсе что у пнг precomputed alpha
> вопрос в том почему фотошоп не умеет правильно пересохранить TGA в PNG и
> сделать эту самую precomputed alpha
ну хорошо. Давай рассуждать.

У тебя есть красивая фотка в ддс, но с альфа каналом на котором прописано слово х.
Тебе нужна фотка. Ты сохраняешь, а оно берет и режет ее. Тогда и тут были бы недовольные.

А если с двух сторон недовольные, но с одной стороны все готово, а с другой еще кодить нужно - зачем лишние движения? ))
Суть ясна?


Об игре

Учебник

ЧаВо

Файлы

Галерея

Видео

Наши блоги

О сайте

Форум

Реклама

Пользователей
Сейчас на форуме

Реклама

Автор Тема: Работа с текстурами, вопросы и ответы (Прочитано 101582 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Серия Mount & Blade

Другие игры

Серия Chivalry

Серия War of the.

Реестр других игр

Наши моды

Русь 13 век

Мододельня

Форум модов

Обмен опытом

В этой статье мы рассмотрим создание прозрачных текстур (или текстур с маской), которые применяются для создания лестниц, решеток, заборов, деревьев и пр.

Узнать прозрачную текстуру очень просто: она имеет ярко-синий фон (правда, иногда в программе Wally отображается другой фон, но последний цвет в таблице цветов правильный — ярко-синий); в названии такой текстуры в самом начале есть фигурная скобка «

На рисунке ниже показана текстура, синие места которой в игре будут прозрачными.

Основные трудности при создании текстур с маской возникают из-за оттенков синего цвета, которые необходимо закрасить чистым синим цветом (RGB: 0—0—255). Рекомендуем закрашивать в PhotoShop не кистью, а карандашом, т.к. он не дает оттенков цвета. Посмотрите на рисунок ниже:

Слева показан пример с большим количеством оттенков синего. В игре такая текстура, скорее всего, не будет прозрачной. Справа показан правильный вариант текстуры, на которой все оттенки синего закрашены чистым синим цветом (RGB: 0—0—255).

Техника создания прозрачной текстуры

Дальше мы приводим несколько хитрый метод создания прозрачной текстуры :) Дело в том, что все текстуры в Half-Life имеют максимум 256 цветов (прозрачные текстуры не исключение). Мы можем в PhotoShop'e посмотреть таблицу цветов, где видно какие цвета используются в картинке. В прозрачных текстурах последний цвет (нижний правый) определяет прозрачный фон и он должен быть чистым синим (RGB: 0—0—255).

Предположим мы хотим создать прозрачную текстуру из такой картинки:

Текстура с маской - Вертолет

Как видим, нам немного не повезло, и синий цвет идет в 3-м квадрате. Такая картинка прозрачной не будет, даже если мы выставим правильные параметры отображения для энтити-объекта.

Синий цвет идет 3-м, а должен идти последним.

Заменяем 3-й цвет на любой, кроме синего, а последний делаем синим

В итоге наша палитра будет выглядеть так:

Так выглядит правильная палитра для прозрачной текстуры — синий цвет последний

ВНИМАНИЕ! Теперь закрываем картинку, не сохраняя ее! На данном этапе нам нужно было лишь сохранить правильную палитру. Ведь когда мы поменяли синий цвет на другой, то и фон нашей картинки изменился на него.

У тебя на текстуре попросту нет прозрачности. Она вся черная (изначально такая была). Я в Photoshop дорисовал прозрачность и вуаля!

P.S. И нод Transparent нужно подключить к нижнему входу нода Mix, а не верхнему ;)

Хм, Артем, а в самом блендере на текстурке можно же нарисовать прозрачность?

А то если я пытаюсь там сделать, то у меня выходит белый фон (нот подправил)

5eb2b51932cc

Включи режим Rendered. Ты бы еще в Wireframe искал прозрачность :)

Для этого материал нужно создавать не в Cycles, а в Blender Internal. Поищи уроки, их достаточно.

Ищи в темах посвященных BGE. Именно там подобное часто используется.

Точно?)
Ладн, буду искать. Спс за ответ!

Доброго времени суток!
Так же не буду создавать кучу тем, задам вопрос в этой.

Как на альфа-канале сделать, чтобы текстура была не полностью прозрачная? Чтобы через нее было видно как через плотный полиэтилен?

Не текстурой это делается.

Возникла проблема: грани, обращённые внутрь и имеющие текстуру с альфа-каналом, тем не менее отображаются с внешней стороны, то есть изображение на них видно с обеих сторон. Как сделать, чтобы изображение было видно только с внутренней (правильной) стороны, а с наружной отсутствовало? Нормали в порядке.

скриншот

Возникла проблема: грани, обращённые внутрь и имеющие текстуру с альфа-каналом, тем не менее отображаются с внешней стороны, то есть изображение на них видно с обеих сторон. Как сделать, чтобы изображение было видно только с внутренней (правильной) стороны, а с наружной отсутствовало? Нормали в порядке.

Что за рендер, что было сделано? Больше конкретики…

Дык это такая текстура. Если ты круг создаешь квадратной картинкой с нарисованным кругом, то увеличивай тогда разрешение текстуры.

А при чём тут разрешение текстуры? Я спрашиваю не про качество, а про то, что текстура отображается с обоих сторон, хотя с тыльной стороны (на моём скрине при виде сверху) не должна быть видна. Может быть я плохо объяснил.

Я спрашиваю не про качество, а про то, что текстура отображается с обоих сторон, хотя с тыльной стороны (на моём скрине при виде сверху) не должна быть видна. Может быть я плохо объяснил?

Да нормально все, вроде, объяснил. Не понятно, почему текстура должна быть только с одной стороны? В Cycles же рендериш, а не игровом движке. Создай плоскость, наложи на нее текстуру и ты убедишься, что текстура отображается с двух сторон.

  • Для ответа в этой теме необходимо авторизоваться.

Авторизация

blender course

Рубрики

О сайте

На данном сайте Вы сможете найти множество уроков и материалов по графическому
редактору Blender.

Контакты

Для связи с администрацией сайта Вы можете воспользоваться следующими контактами:

Следите за нами

Подписывайтесь на наши страницы в социальных сетях.

На сайте Blender3D собрано огромное количество уроков по программе трехмерного моделирования Blender. Обучающие материалы представлены как в формате видеоуроков, так и в текстовом виде. Здесь затронуты все аспекты, связанные с Blender, начиная от моделирования и заканчивая созданием игр с применением языка программирования Python.

Помимо уроков по Blender, Вы сможете найти готовые 3D-модели, материалы и архивы высококачественных текстур. Сайт регулярно пополняется новым контентом и следит за развитием Blender.

Читайте также: