Как сделать однобитный альфа-канал

Любые вопросы связанные с 3D моделированием, работой в Photoshop

Как сделать однобитный альфа-канал

Сообщение i2GR » 14.01.2009, 19:25

а также Как пользоваться программой ToAce.exe.

Найденная мной информация не дала ответа на этот мой вопрос. Видел только сообщения на различных форумах про DXT-комрессию в рамках моделирования для MSTS. То есть сообщения типа "ее надо использовать". А, собственно, как имеено ее использовать????
Какую каппу нужно нажать в фотошопе, чтобы он обрабатывал альфа-канал как однобитный - тоже не нашел.
Как тогда сохранять 32-бит. текстуры с 1 бит. альфа-каналом для RS - не знаю.
Есть программа ToAce.exe. Замечательно. При конвертации с помощью нее TGA 1024х1024 в АСЕ, последний получается размером 1024х2048 :beak: и в нем оказываются нарисованы мип-уровни чуть ли не до 10-го в 2х2 пикселя. И мне они не нужны.

Поможите люди юобрые
Аватара пользователя
i2GR
 
Сообщения: 540
Зарегистрирован: 04.09.2008, 16:59
Благодарил (а): 260 раз.
Поблагодарили: 303 раз.
Блог: Просмотр блога (4)
Имя: Игорь

Re: Как сделать однобитный альфа-канал

Сообщение Mr. Angelo » 14.01.2009, 19:50

Рекомендую пользоваться Photoshop-ным плагином для сохранения в ACE.
Чтобы канал был однобитным нужно во первых его сделать таковым по существу: наиболее простой спосбо это выставить яркость на минимум, а контрастность на максимум.

Затем в настройках материала в 3DS MAX-е необходимо чтобы тип материала был Kuju Material, шейдер выбран BlendATexDiff
Если альфа 1-бит: Transparency = TRANS
Если альфа 8-бит (или альфы нет вовсе): Transparency = NONE

Так же рекомендую заглянуть в русскую версию мануала 4.07 Train Guidelines, где описаны все нюансы с альфой, шейдерами и настройками материалов.
Аватара пользователя
Mr. Angelo
 
Сообщения: 3227
Зарегистрирован: 03.01.2004, 22:22
Откуда: Тюмень
Благодарил (а): 361 раз.
Поблагодарили: 526 раз.
Блог: Просмотр блога (9)
Играю в: Train Simulator Classic
Роль: Сотрудник РЖД
Имя: Андрей

Re: Как сделать однобитный альфа-канал

Сообщение ER2-1050 » 14.01.2009, 23:44

Сделать альфу однобитной можно, переведя ее в фотошопе в меню Изображение\Режим из RGB в битовый формат, а затем обратно в RGB. Для ТРС - 100% работающий способ, и, насколько я знаю, для МСТС тоже.
Аватара пользователя
ER2-1050
 
Сообщения: 179
Зарегистрирован: 03.05.2006, 15:51
Откуда: Москва
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Играю в: Train Simulator Classic
Роль: Разработчик
Имя: Степан

Re: Как сделать однобитный альфа-канал

Сообщение i2GR » 15.01.2009, 16:40

Mr. Angelo
От того, на какую величину мы выкрутим контрастсность, яркость, насыщенность в канале фотошопа, рязрядность альфы зависеть не будет.
Например, если у нас есть 8 корзин, в которых лежат шарики, то от того, как мы наперекладываем из одной корзины в другую наши шарики, количество корзин не изменится, хоть даже если мы положим все шарики только в первую корзину и последнюю - их будет восемь. Насколько я понял из всех перечисленных Вами и мной не однократно перечитанных в тех аспектах, которые меня пока интересуют, руководствах, для прозрачности нужен файл имеено с альфа-каналом разрядностью 1 бит. То есть нужно убрать шесть корзин. Вот я и спрашиваю, как это делается, как 8-мибитная альфа превращается в однобитную.
кстати то, что все таки 1-й лод домика (который на 2000 фэйсов) я в игру впихнул уже с альфой, трафаретными тенями и ночными текстурами говорит, что существующие мануалы я читал. И конечно до уровня многих корифеев, особенно Вас, мне еще расти и расти. я ж только на самой низкой ступени прогресса - на домиках =), даже еще не перешел на следующую - цеховое оборудование =)
ER2-1050
Нельзя ли по английски, а?
Я так понял, что это Image - Mode галочку от RGB переносим куда? на bitmap? тогда обратно ни одно преобразование не доступно. В этом списке должно ли быть доступно Duotone?
Данные преобразования и при выбранном альфа-канале применяются ко всему изображению
Аватара пользователя
i2GR
 
Сообщения: 540
Зарегистрирован: 04.09.2008, 16:59
Благодарил (а): 260 раз.
Поблагодарили: 303 раз.
Блог: Просмотр блога (4)
Имя: Игорь

Re: Как сделать однобитный альфа-канал

Сообщение Mr. Angelo » 15.01.2009, 17:14

RailLayer а ты не хами, гражданин. Я тебе нормальный совет дал, и не надо мне "залечивать" про корзины с шариками, чай не маленький ребенок.
А раз читал мануалы, то вывод один - невнимательно читал. А еще огрызаешься.

Если переключиться в ФШ на альфа-канал, и через Image -> Adjustments -> Brightness / Contrast изменить Яркость на минимум, а Контрастность на максимум - это превратит все серые пиксели альфы, в зависимости от их оттенка, либо в черные, либо в белые. Альфа станет 1-битной. Эффект будет тот же самый, как от способа описанного ER2-1050. ТРС, кстати, различает 1-битную альфу от 8-битной именно по наличию в альфа-канале (который может быть вынесен в отдельный файл, например BMP) серых пикселей. Если в альфа-канале будет хотя бы один серый пиксель (не приглядываясь можно его и не заметить), то в игре появятся глюки сортировки альфа-канала.
Описаный ER2-1050 способ собственно и пригоден только для случая, когда альфа-канал (а точнее сказать карта прозрачности) вынесен в отдельную BMP-шку.
Поскольку в KRS формат текстур ACE является промежуточным, то не имеет значения, сколько бит выделенно в структуре ACE под кодирование альфа-канала. В МСТС этот момент был ключевым, в КРС - уже нет. в КРС гораздо большее значение имеют настройки материала в MAX-е.
Аватара пользователя
Mr. Angelo
 
Сообщения: 3227
Зарегистрирован: 03.01.2004, 22:22
Откуда: Тюмень
Благодарил (а): 361 раз.
Поблагодарили: 526 раз.
Блог: Просмотр блога (9)
Играю в: Train Simulator Classic
Роль: Сотрудник РЖД
Имя: Андрей

Re: Как сделать однобитный альфа-канал

Сообщение vold » 15.01.2009, 17:45

По методу, кторый описал ER2-1050, галку надо ставить на "bitmap", а можно еще выбрать - "Indexed color" и в диалоге выбрать "Black and White". Естественно возможности работы с такими изображениями существенно ограничиваются, это определяется самим форматом битовой карты, естественно обратные преобразования становятся недоступны, поскольку информацию о цвете и оттенке (яркости цвета) в этом случае мы теряем, но и глюки с "альфой" в этом формате отсутствуют. Для режима "bitmap" надо использовать 50% слияние (50% threshold) из выпадающего списка, это значит, что мы приводим все светлые отенки ближе 50% белого, в белый цвет, соответственно темные оттенки станут черным цветом в изображении и даже после того как мы сохраним эту картинку в битовую карту с восемью битами на канал цвета(альфы), то все равно, наша альфа будет интерпретирована как однобитная, в примере с корзинами, все шарики будут черные, а один белый или наоборот, но идентифицировать их по цвету(яркости) можно будет без ошибок.
Аватара пользователя
vold
 
Сообщения: 278
Зарегистрирован: 07.09.2006, 11:36
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Играю в: Auran Trainz
Роль: Разработчик

Re: Как сделать однобитный альфа-канал

Сообщение i2GR » 15.01.2009, 19:40

Mr.Angelo
Понимаю,что спорить с райлроадсимнетовским "полубогом" на его родном "олимпе" себе дороже.
Но:
Во первых, я не хамил. На пренебрежительное "ты" не переходил. Подчёркиваю, на пренебрежительное и озлобленное. К людям, которые с пеной у рта на интернет-формуах требуют к себе почтительного обращения на "Вы", я не отношусь. К Вашей уважаемой персоне обратился нейтрально, что тип0 и спрятано за спойлером.
Во-вторых, про корзины с шариками я не "залечивал", как Вы изволили выразиться, создателя уже как минимум 3-й реинкарнации ТЭМ2 лишь для разъеснения вопроса: "что есть 1-битная альфа"и все с ней связанное в рассматриваемом контексте.
RailLayer спросил: "как сделать 1-битную альфу"
Mr.Angelo ответил: " RailLayer, 8-битный альфа канал выкручиваешь на максимум"


Мне стало непонятно, что Вы имели ввиду, ведь каждая точка в канале в таком случае, все равно кодируется 8-ю битами.
Получается что тру 1-бит альфа канала окотором говорит RSdevdoc #4.03 и не говорит 9.04 в природе не существует. И вне завсимости от того выкрутили ли мы настройки или нет, движок обрабатывает их одинаков и мои проблемы с просвечиванием стен не из-за битности канала, аз из-за чего то еще, чего я не учел.

Если для движка 1-бит альфа канал = выкрученный, а 8-битный = невыкрученный, то почему различаются настройки прозрачности, я имею ввиду почему надо использовать в одном случае Z-BUFFER = TEST ONLY a в другом TRANSPARENSY=TRANS. Если это не имеет отношения к битности, тогда я на данном этапе своего развития не буду вдаваться в такие дебри.

PS Тему назвал не очень корректно, за это могу извиниться. Нужно было бы в название добавить "для RS"
Аватара пользователя
i2GR
 
Сообщения: 540
Зарегистрирован: 04.09.2008, 16:59
Благодарил (а): 260 раз.
Поблагодарили: 303 раз.
Блог: Просмотр блога (4)
Имя: Игорь

Re: Как сделать однобитный альфа-канал

Сообщение Mr. Angelo » 15.01.2009, 20:26

Разделение альфы на 1 битную и 8 битную - это момент чисто технически связанный с ACE-форматом от Kuju, который позволяет уменьшить размер файла, за счет выделения под альфа канал не 8 бит (ведер/корыт/тазиков) а только 1-го. При чтении текстуры в память, для альфа-канала все равно выделяется 8 бит.

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

Параметры (конкретно Transparency: TRANS) Kuju Material позволяют указать движку на то, что полутона альфаканала следует привести к абсолютно черному или абсолютно белому цвету (в памяти) при рендере изображения. Но поскольку при "насильственном" превращении полутонов к абсполютным цветам могут получить острые, неровные края альфы, то раз уже предпологаеся ее "1-битность", то лучшее ее вручную в фотошопе обработать должным образом.

Еще могу добавить, что Z-BUFFER = можно поставить и NORMAL, и если альфа с полутонами глючить не будет, то так и оставить.

2RailLayer: Не нужно ни кого приравнивать к полубогам, и прочего пафоса и "укусов". Не нужно корчить из себя ни "быдло" ни "интеллигента", ни сравнивать свой уровень развития с чем- и чьим-либо. Все это я говорю о твоих словах обращенных в мой адрес. Ранее на форуме я подобного с твоей стороны не замечал, и характер твоих сообщений в этой теме меня ввел в некое замешательство.
Подводя итог:
1) со мной тоже можно на "ты" (разве я где-то иначе просил или требовал?).
2) все остальное выяснение ситуации - либо в ЛС, либо в ICQ.
Аватара пользователя
Mr. Angelo
 
Сообщения: 3227
Зарегистрирован: 03.01.2004, 22:22
Откуда: Тюмень
Благодарил (а): 361 раз.
Поблагодарили: 526 раз.
Блог: Просмотр блога (9)
Играю в: Train Simulator Classic
Роль: Сотрудник РЖД
Имя: Андрей

Re: Как сделать однобитный альфа-канал

Сообщение Ulianka » 15.01.2009, 23:15

Прикольно... :)))
RailLayer, Анджело к полубогам не относится. Если хочешь, я тебе скажу где такового можно найти... без дураков. :) Тока не будем флудить, пиши в личку!
Аватара пользователя
Ulianka
 
Сообщения: 3060
Зарегистрирован: 07.02.2006, 00:54
Откуда: St.Petersburg
Благодарил (а): 205 раз.
Поблагодарили: 155 раз.
Имя: Александр

Re: Как сделать однобитный альфа-канал

Сообщение ER2-1050 » 15.01.2009, 23:20

RailLayer писал(а):ER2-1050
Нельзя ли по английски, а?
Я так понял, что это Image - Mode галочку от RGB переносим куда? на bitmap? тогда обратно ни одно преобразование не доступно. В этом списке должно ли быть доступно Duotone?
Данные преобразования и при выбранном альфа-канале применяются ко всему изображению

У меня русифицированная версия.
Нужно последовательно перевести из RGB в режим "градации серого"(он второй сверху в меню), а затем в "битовый формат" (самый верхний пункт). Возврат - в обратной последовательности.
Аватара пользователя
ER2-1050
 
Сообщения: 179
Зарегистрирован: 03.05.2006, 15:51
Откуда: Москва
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Играю в: Train Simulator Classic
Роль: Разработчик
Имя: Степан

Re: Как сделать однобитный альфа-канал

Сообщение Цинк » 16.01.2009, 09:51

RailLayer писал(а):Нельзя ли по английски, а?
Я так понял, что это Image - Mode галочку от RGB переносим куда? на bitmap? тогда обратно ни одно преобразование не доступно. В этом списке должно ли быть доступно Duotone?
Данные преобразования и при выбранном альфа-канале применяются ко всему изображению

Сначала изображение надо преобразовать в градации серого: image -> mode -> grayscale
Затем в 1-битный ч/б image -> mode -> bitmap, причём обратно в RGB оно будет конвертиться только с промежуточной операцией перевода в градации серого (в CS3 точно так, в других версиях - неясно).
Изображение
Аватара пользователя
Цинк
 
Сообщения: 286
Зарегистрирован: 17.10.2006, 14:12
Откуда: Белгород - город первого салюта
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Имя: Александр

Re: Как сделать однобитный альфа-канал

Сообщение sfateev » 16.01.2009, 11:48

RailLayer писал(а):... При конвертации с помощью нее TGA 1024х1024 в АСЕ, последний получается размером 1024х2048 :beak: и в нем оказываются нарисованы мип-уровни чуть ли не до 10-го в 2х2 пикселя. И мне они не нужны...[/quote]

Очень даже нужны.., для RS. То, что MIP-уровни появляются на изображении в PShop, означает лишь то, что MIP-уровни выполнены корректно, ТoAce просто генерит их для конверсии в RS. Открой сконверченную .ace текстуру в том же TGATools, и ты увидишь нормальный размер 1024х1024. И не заморачивайся ты с однобитным каналом, просто выстави RGB + Transparent (1bit). ToAce сама сделает нормальную однобитную альфу.
Аватара пользователя
sfateev
 
Сообщения: 845
Зарегистрирован: 29.05.2006, 10:07
Откуда: Москва
Благодарил (а): 532 раз.
Поблагодарили: 73 раз.
Имя: Святослав

Re: Как сделать однобитный альфа-канал

Сообщение i2GR » 16.01.2009, 16:02

sfateev
Но в таком случае размер файла увеличивается с 2,2 до почти 5 мегобайт. Это ж нехорошо. Вот что меня смущает
Аватара пользователя
i2GR
 
Сообщения: 540
Зарегистрирован: 04.09.2008, 16:59
Благодарил (а): 260 раз.
Поблагодарили: 303 раз.
Блог: Просмотр блога (4)
Имя: Игорь

Re: Как сделать однобитный альфа-канал

Сообщение agmike » 16.01.2009, 16:12

В видеопамяти все равно находится только необходимый уровень, или максимальный если их несколько.
В TS2009 сейчас та же самая технология
The Cake is a Lie.
agmike
 
Сообщения: 1025
Зарегистрирован: 26.08.2006, 12:43
Благодарил (а): 0 раз.
Поблагодарили: 3 раз.
Играю в: Пульт ДНЦ

Re: Как сделать однобитный альфа-канал

Сообщение Mr. Angelo » 16.01.2009, 17:24

Но в таком случае размер файла увеличивается с 2,2 до почти 5 мегобайт. Это ж нехорошо. Вот что меня смущает


Кстати, MIP-map-ы были еще в МСТСных ACE-ах ;) Так что технология это давняя, и бороться с ней не нужно.
MIP-ы не нужны лишь тогда, когда текстура используется в 2D режиме. Например для оформления интерфейса игры (GUI) или 2D кабины в MSTS.

В остальных случаях, еще в МСТС опытным путем выяснено, что MIP-ы ощутимо снижают тормоза, особенно на не очень крутом железе.
Аватара пользователя
Mr. Angelo
 
Сообщения: 3227
Зарегистрирован: 03.01.2004, 22:22
Откуда: Тюмень
Благодарил (а): 361 раз.
Поблагодарили: 526 раз.
Блог: Просмотр блога (9)
Играю в: Train Simulator Classic
Роль: Сотрудник РЖД
Имя: Андрей

След.

Вернуться в 3DS Max & Photoshop

Кто сейчас на конференции

Сейчас этот форум просматривают: Claude [Bot] и гости: 0