|
Xors3D Графический движок с поддержкой DirectX9 |
10.08.2014, 19:26
|
#136
|
Бывалый
Регистрация: 23.11.2011
Сообщений: 863
Написано 334 полезных сообщений (для 866 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Вот данная программа.
|
(Offline)
|
|
Эти 4 пользователя(ей) сказали Спасибо tirarex за это полезное сообщение:
|
|
11.08.2014, 01:13
|
#137
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,023
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Примечательно:
Слева текстура загружена с флагом 4, справа маска через шейдер.
Текстура DDS, сохранена в режиме "DXT5 ARGB 8 bpp | interpolated alpha", + mip-map.
|
(Offline)
|
|
11.08.2014, 01:16
|
#138
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
у тебя пороговое значение обрезания разное
|
(Offline)
|
|
11.08.2014, 01:24
|
#139
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,023
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Сообщение от Mr_F_
у тебя пороговое значение обрезания разное
|
Плоха понял, но в Хорсе никаких значений по обработке альфа-канала не поменять.
Короче надо юзать шейдеры, сам Хорс делает что-то не так.
Может мне кто-нибудь объяснить почему сохраняю шейдер через блокнот (винды) и он не работает, а через tv3d shader editor работает О_О
WTF&!
(а теперь всё работает... ок будем считать это локальные глюки...)
|
(Offline)
|
|
11.08.2014, 01:26
|
#140
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Плоха понял, но в Хорсе никаких значений по обработке альфа-канала не поменять.
|
xSetAlphaRef была у ксорса функция.
в шейдере просто сам выбираешь с каким значением сравнивать.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
11.08.2014, 01:40
|
#141
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,023
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Сообщение от Mr_F_
xSetAlphaRef была у ксорса функция.
в шейдере просто сам выбираешь с каким значением сравнивать.
|
Действительно.
Но она была переименована в xEntityAlphaRef
|
(Offline)
|
|
11.08.2014, 06:02
|
#142
|
Мастер
Регистрация: 12.01.2009
Сообщений: 980
Написано 389 полезных сообщений (для 632 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Сообщение от Arton
Может мне кто-нибудь объяснить почему сохраняю шейдер через блокнот (винды) и он не работает, а через tv3d shader editor работает О_О
WTF&!
|
Возможно блокнот сохранил в UTF8, а компилятор шейдеров только в ANSI воспринимает.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
11.08.2014, 15:11
|
#143
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,023
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Сообщение от Samodelkin
Возможно блокнот сохранил в UTF8, а компилятор шейдеров только в ANSI воспринимает.
|
Да должен быть ANSI, просто блокнот пошутил надомной, а я поверил. Думал файл в UTF-8 должен быть, хотя помню что Хорс с UTF не дружит.
|
(Offline)
|
|
12.08.2014, 03:27
|
#144
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,023
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Поискал через яндекс и гугл (прошерстил урок Хорса), нашёл интересный урок по HLSL, но то что было нужно не увидел.
Как сделать что бы текстура с двух сторон накладывалась?
|
(Offline)
|
|
12.08.2014, 03:35
|
#145
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
BackFace'ы?
|
(Offline)
|
|
12.08.2014, 04:00
|
#146
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
CullMode = None ставь в технике
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
12.08.2014, 04:09
|
#147
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,023
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Сообщение от Mr_F_
CullMode = None ставь в технике
|
Спасибо.
Хм, а что насчёт правильного освещения?
Т. к. освещение одинаково для обеих сторон.
|
(Offline)
|
|
12.08.2014, 05:17
|
#148
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Хм, а что насчёт правильного освещения?
Т. к. освещение одинаково для обеих сторон.
|
в шейдере ты можешь определить сторону.
юзай семантику VFACE: http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
в зависимости от неё флипаешь нормаль.
|
(Offline)
|
|
12.08.2014, 06:15
|
#149
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,023
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Сообщение от Mr_F_
|
Что мне делать я понял, но как не знаю, увы я знаком только с blitz basic
У меня тут бред да?
int VFACE;
if (VFACE < -1 )
{
float lit = dot(-input.normal , -lightDirection);
}
else
{
float lit = dot(input.normal , -lightDirection):
}
|
(Offline)
|
|
12.08.2014, 11:42
|
#150
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
да, потому что ты объявляешь пустую неопределённую переменную и сравниваешь ещё с чем-то.
VFACE над вставить в входящие данные PS.
там где у тебя всякие TexCoords : TEXCOORD0, туда же вставляешь что-нибудь типа whatFace : VFACE.
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо Mr_F_ за это полезное сообщение:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 03:14.
|