forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Xors3D (http://forum.boolean.name/forumdisplay.php?f=126)
-   -   Xors3D. Шейдеры. Урок первый (http://forum.boolean.name/showthread.php?t=8564)

rr333 21.07.2009 13:14

Ответ: Xors3D. Шейдеры. Урок первый
 
'Устанавливает булевую постоянную ценность для объекта шейдера'- что это значит?
:crazy:

NitE 21.07.2009 13:29

Ответ: Xors3D. Шейдеры. Урок первый
 
rr333, 1/0

Knightmare 21.07.2009 14:52

Ответ: Xors3D. Шейдеры. Урок первый
 
В 3 части урока я перечислил функции для передачи данных для всего объекта. Думаю не сложно провести аналогию на сюрфейсы. В твоем случае нужно для всего объекта передавать. Думаю не надо быть гением, чтобы в доке найти прототип функции и по нему понять принцип работы.
К тому же, английский нужен в любом случае. Выучить на уровне чтобы читать статьи со словарем - не сложно (кстати школьной программы достаточно).

rr333 21.07.2009 16:17

Ответ: Xors3D. Шейдеры. Урок первый
 
И правда, невнимательно прочел статью. Т.е. это функцию xSetEffectFloat и т.п. А на уровне школьной программы я знаю немецкий, хоть и не хотел изучать его. А выше я привел пример моего перевода xSetEffectBool.

Ganociy 21.07.2009 16:49

Ответ: Xors3D. Шейдеры. Урок первый
 
Слушайте , действительно всё понятно.
Наконецто сбудется моя мечта . Поиграю я в свою игрушку с отстреливанием конечностей и даже ОНА БУДЕТ КРАСИВОЙ С ТЕНЯМИ!!!
и ещё РАЗ
СПАСИБО!!!!!!!!!!!!!!!!!!!

rr333 24.07.2009 20:54

Ответ: Xors3D. Шейдеры. Урок первый
 
У меня не получается получить доступ к элементам вектора. Копирую из документации:
float4 someVector;
someVector.x = 1.0f;
someVector.y = 2.0f;
Ошибка :
syntax error: unexpected token '.'

johnk 24.07.2009 21:37

Ответ: Xors3D. Шейдеры. Урок первый
 
Проще воспользоватся инициализатором:
float4 value = float4( 1, 2, 0, 0 );

rr333 24.07.2009 21:42

Ответ: Xors3D. Шейдеры. Урок первый
 
Ну а как тогда изменить например только 3 элемент?

Render 24.07.2009 21:52

Ответ: Xors3D. Шейдеры. Урок первый
 
Попробуй
float4 someVector = float4( 0, 0, 0, 0 );;
someVector.x = 1.0f;
someVector.y = 2.0f;

Видать чего-то компилятору не понравилось.

Knightmare 24.07.2009 21:54

Ответ: Xors3D. Шейдеры. Урок первый
 
Цитата:

Сообщение от rr333 (Сообщение 111737)
У меня не получается получить доступ к элементам вектора. Копирую из документации:
float4 someVector;
someVector.x = 1.0f;
someVector.y = 2.0f;
Ошибка :
syntax error: unexpected token '.'

Как бы, ты скопировал вот ИМЕННО этот код и не завелось? Или ты его скопировал, чота поменял, и не завлось? И ты уверен что именно в нем ошибка?
Ну просто там все норм и нету никаких ошибок. Хотелось бы конечно полностью увидеть код шейдера.

moka 25.07.2009 04:08

Ответ: Xors3D. Шейдеры. Урок первый
 
Ошибки в этом коде нету.
Вот, попробуй воспользоватьсяс этой прогой, просто скопируй в неё шейдер (или открой ею исходник шейдера), и нажми на билд, он подсветит строку ошибки.
http://moka.ucoz.ru/load/0-0-0-110-20

rr333 25.07.2009 11:03

Ответ: 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();
}
}

jimon 25.07.2009 12:49

Ответ: 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();
}
}


rr333 25.07.2009 13:15

Ответ: Xors3D. Шейдеры. Урок первый
 
Заработало! Значит элементы вектора можно изменять только в функции.

pax 08.10.2009 17:13

Ответ: Xors3D. Шейдеры. Урок первый
 
Кстати а зачем надо было создавать свои семантики для таких как WORLD, VIEW, PROJECTION, VIEWPROJECTION, WORLDVIEWPROJECTION и т.д. добавлением перфиксов "MATRIX_"? Конечно не сложно его добавить, но, как я понимаю, если шейдер будет разрабатываться в другом софте, то ИМХО лучше было-бы оставить общепринятые семантики... или же у вас они тоже поддерживаются?


Часовой пояс GMT +4, время: 20:03.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot