|
Xors3D Графический движок с поддержкой DirectX9 |
21.07.2009, 13:14
|
#16
|
Нуждающийся
Регистрация: 07.02.2009
Сообщений: 92
Написано 16 полезных сообщений (для 38 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
'Устанавливает булевую постоянную ценность для объекта шейдера'- что это значит?
|
(Offline)
|
|
21.07.2009, 13:29
|
#17
|
злобный флудер
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений (для 1,476 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
rr333, 1/0
|
(Offline)
|
|
21.07.2009, 14:52
|
#18
|
Дэвелопер
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений (для 2,920 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
В 3 части урока я перечислил функции для передачи данных для всего объекта. Думаю не сложно провести аналогию на сюрфейсы. В твоем случае нужно для всего объекта передавать. Думаю не надо быть гением, чтобы в доке найти прототип функции и по нему понять принцип работы.
К тому же, английский нужен в любом случае. Выучить на уровне чтобы читать статьи со словарем - не сложно (кстати школьной программы достаточно).
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо Knightmare за это полезное сообщение:
|
|
21.07.2009, 16:17
|
#19
|
Нуждающийся
Регистрация: 07.02.2009
Сообщений: 92
Написано 16 полезных сообщений (для 38 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
И правда, невнимательно прочел статью. Т.е. это функцию xSetEffectFloat и т.п. А на уровне школьной программы я знаю немецкий, хоть и не хотел изучать его. А выше я привел пример моего перевода xSetEffectBool.
|
(Offline)
|
|
21.07.2009, 16:49
|
#20
|
Разработчик
Регистрация: 02.06.2009
Адрес: Город Герой Ленинград
Сообщений: 392
Написано 33 полезных сообщений (для 74 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Слушайте , действительно всё понятно.
Наконецто сбудется моя мечта . Поиграю я в свою игрушку с отстреливанием конечностей и даже ОНА БУДЕТ КРАСИВОЙ С ТЕНЯМИ!!!
и ещё РАЗ
СПАСИБО!!!!!!!!!!!!!!!!!!!
|
(Offline)
|
|
24.07.2009, 20:54
|
#21
|
Нуждающийся
Регистрация: 07.02.2009
Сообщений: 92
Написано 16 полезных сообщений (для 38 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
У меня не получается получить доступ к элементам вектора. Копирую из документации:
float4 someVector;
someVector.x = 1.0f;
someVector.y = 2.0f;
Ошибка :
syntax error: unexpected token '.'
|
(Offline)
|
|
24.07.2009, 21:37
|
#22
|
Легенда
Регистрация: 01.10.2006
Сообщений: 3,705
Написано 296 полезных сообщений (для 568 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Проще воспользоватся инициализатором:
float4 value = float4( 1, 2, 0, 0 );
|
(Offline)
|
|
24.07.2009, 21:42
|
#23
|
Нуждающийся
Регистрация: 07.02.2009
Сообщений: 92
Написано 16 полезных сообщений (для 38 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Ну а как тогда изменить например только 3 элемент?
|
(Offline)
|
|
24.07.2009, 21:52
|
#24
|
Знающий
Регистрация: 12.07.2006
Сообщений: 283
Написано 16 полезных сообщений (для 32 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Попробуй
float4 someVector = float4( 0, 0, 0, 0 );;
someVector.x = 1.0f;
someVector.y = 2.0f;
Видать чего-то компилятору не понравилось.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
24.07.2009, 21:54
|
#25
|
Дэвелопер
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений (для 2,920 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Сообщение от rr333
У меня не получается получить доступ к элементам вектора. Копирую из документации:
float4 someVector;
someVector.x = 1.0f;
someVector.y = 2.0f;
Ошибка :
syntax error: unexpected token '.'
|
Как бы, ты скопировал вот ИМЕННО этот код и не завелось? Или ты его скопировал, чота поменял, и не завлось? И ты уверен что именно в нем ошибка?
Ну просто там все норм и нету никаких ошибок. Хотелось бы конечно полностью увидеть код шейдера.
|
(Offline)
|
|
25.07.2009, 04:08
|
#26
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Ошибки в этом коде нету.
Вот, попробуй воспользоватьсяс этой прогой, просто скопируй в неё шейдер (или открой ею исходник шейдера), и нажми на билд, он подсветит строку ошибки.
http://moka.ucoz.ru/load/0-0-0-110-20
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо moka за это полезное сообщение:
|
|
25.07.2009, 11:03
|
#27
|
Нуждающийся
Регистрация: 07.02.2009
Сообщений: 92
Написано 16 полезных сообщений (для 38 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Ну вот самый простой пример и та же ошибка:
float4 cvet=float4(.4f,.5f,.9f,1.0f);
cvet.y =1.0f;
float4 PSMain() :COLOR0
{
return cvet;
}
technique Cv
{
pass p0
{
PixelShader = compile ps_1_4 PSMain();
}
}
|
(Offline)
|
|
25.07.2009, 12:49
|
#28
|
|
Ответ: Xors3D. Шейдеры. Урок первый
думаю вот так будет работать
float4 PSMain() :COLOR0
{
float4 cvet=float4(.4f,.5f,.9f,1.0f);
cvet.y =1.0f;
return cvet;
}
technique Cv
{
pass p0
{
PixelShader = compile ps_1_4 PSMain();
}
}
|
|
|
Сообщение было полезно следующим пользователям:
|
|
25.07.2009, 13:15
|
#29
|
Нуждающийся
Регистрация: 07.02.2009
Сообщений: 92
Написано 16 полезных сообщений (для 38 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Заработало! Значит элементы вектора можно изменять только в функции.
|
(Offline)
|
|
08.10.2009, 17:13
|
#30
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Xors3D. Шейдеры. Урок первый
Кстати а зачем надо было создавать свои семантики для таких как WORLD, VIEW, PROJECTION, VIEWPROJECTION, WORLDVIEWPROJECTION и т.д. добавлением перфиксов "MATRIX_"? Конечно не сложно его добавить, но, как я понимаю, если шейдер будет разрабатываться в другом софте, то ИМХО лучше было-бы оставить общепринятые семантики... или же у вас они тоже поддерживаются?
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 14:19.
|