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)

ANIK123 14.04.2012 22:04

Ответ: Xors3D. Шейдеры. Урок первый
 
При чем здесь полигоны? У спрайта их и так двое + в семантике шейдеров есть такая штука как PSIZE - специально для спрайтов
так почему же не получается?
Код:

Handle sprite = xCreateSprite();
Handle sha = xLoadFXFile("shaders//exp.fx");
xSetEntityEffect(sprite, sha);

Код:

texture diffuseTexture : TEXTURE_0; //текстура

//описываем сэмплер:
sampler diffuseSampler = sampler_state
{
        Texture = <diffuseTexture>; //привязываем текстуру
        //устанавливаем адресацию координат
        AddressU = WRAP;
        AddressV = WRAP;
        AddressW = WRAP;
        //устанавливаем фильтрацию
        MinFilter = ANISOTROPIC;
        MagFilter = ANISOTROPIC;
        MipFilter = ANISOTROPIC;
        //устанавливаем уровень фильтрации
        MaxAnisotropy = 4;
};

struct PSInput
{
        float2 texCoords : TEXCOORD0;
};

struct PSOutput
{
        float4 color : COLOR;
};

//пиксельный шейдер
PSOutput PSMain (PSInput input)
{
        PSOutput output;
        output.color.rgba = tex2D(diffuseSampler, input.texCoords).rgba;
        output.color.a = 0.1f;
        //output.color.rgb = (output.color.r + output.color.g + output.color.b) / 3;
        output.color.rgb = (0.0f, 0.0f, 0.0f);
        return output;
}

technique MainTechnique
{
        // Sequence of technique passes. This passes will performs on stage.
        pass p
        {
                AlphaBlendEnable= 1;
                PixelShader        = compile ps_3_0 PSMain();
        }
}

так можно ли как-нить закинуть шейдер на спрайт?

_____UPD__________________________________________________ _______________________________________
Аууу....))) Налипать текстурки весело, а с шейдерамы еще веселее)))))))

burovalex 29.10.2012 00:04

Ответ: Xors3D. Шейдеры. Урок первый
 
Knightmare
дружище, перезалей пожалуйста, почитать хочется :)

FREE MAN 29.10.2012 00:55

Ответ: Xors3D. Шейдеры. Урок первый
 
Держи http://area.xors3d.com/depository/do...first-steps-ru

Sapik 21.12.2013 01:41

Ответ: Xors3D. Шейдеры. Урок первый
 
Всем привет.Такой вапрос,есть анемированная модель (рук с оружием) руки скин на костях оружие нет, загружаю xloadanimmesh парент к камере, работает хорошо но как только накладываю шеидер вамп, с оружием все нормально а руки меняют координаты xpositionentity ? Что делаю не так? Изените есле не понятно выразил проблему.

FREE MAN 21.12.2013 19:09

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

Сообщение от Sapik (Сообщение 271721)
Всем привет.Такой вапрос,есть анемированная модель (рук с оружием) руки скин на костях оружие нет, загружаю xloadanimmesh парент к камере, работает хорошо но как только накладываю шеидер вамп, с оружием все нормально а руки меняют координаты xpositionentity ? Что делаю не так? Изените есле не понятно выразил проблему.

если ты используешь стандартный шейдер из поставки ксорса то он для статики, вот такая хрень и происходит, нужно курить другой шейдер, или дописывать стандартный.

Sapik 22.12.2013 14:02

Ответ: Xors3D. Шейдеры. Урок первый
 
Вззял стандартный шейдер (skining) дописал к нему бамп,все работает отлично (руки) на месте,но вот (оружиие) оно статично поетому его не видно.Возможно ли совместить статику и скин в одном шейдере? Или грузить отдельно ( xloadanimmesh (руки)) и одельно (xloadanlmmesh (оружие)) и парент (оружие,руки) может кто подскажет как правельнее или где я торможу,да и спасиба за ответ.

tirarex 22.12.2013 14:30

Ответ: Xors3D. Шейдеры. Урок первый
 
xgetchild()
xfindchild()

руки отдельно а оружие отдельно выбираешь и применяешь шейдеры

Sapik 22.12.2013 21:43

Ответ: Xors3D. Шейдеры. Урок первый
 
Я догадалса так применить но я заметел что на скин (руки) ИСТОЧНИК СВЕТА действует с одной стороны.Какбудто загрузилась модель в координаты 0,0,0 а СВЕТ 15,10,-5 хоть модель и парент( камерае) при перемищении позиция источника света не меняется только при повороте камеры и так в любых координатах сцены.Подскажите где мой косяк.

Sapik 26.12.2013 16:14

Ответ: Xors3D. Шейдеры. Урок первый
 
Всем доброго.Кто небуть писал шеидер для (skin) с источником света, diffuse+bamp+specular я понимаю что вапрос звучит так буто я выпрашеваю но мне любые подсказки будут полездны.Так как шеидеры только осваеваю.

Colossus 13.02.2014 04:19

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

Чел. Ты меня конечно извини, но тебе бы русский язык для начала освоить...

Sapik 13.02.2014 15:18

Ответ: Xors3D. Шейдеры. Урок первый
 
Colossus и это все что ты можеш написать про шеидер

moka 13.02.2014 15:47

Ответ: Xors3D. Шейдеры. Урок первый
 
Ты то что пытаешься выразить не можешь нормально написать.

Sapik 13.02.2014 19:26

Ответ: Xors3D. Шейдеры. Урок первый
 
moka.Твои примеры очень понятны.Но они для статики.Жаль что нет для скина с источником света.Я пробывал к примеру шейдера (skining) дописать источник света с (bamp) , частично используя твой шейдер.Источник света есть, но координаты источника света привязаны к скину и риагируют только на вращение.Надеюсь понятно выражаю суть проблемы.

moka 13.02.2014 22:03

Ответ: Xors3D. Шейдеры. Урок первый
 
При скине у тебя есть позиции текстелей и их нормали в статическом состоянии и в локальном пространстве модели, далее ты применяешь матрицу на нормали и позицию, тем самым получаешь уже анимированную позицию и нормали текселя, далее применяешь матрицу трансформации самого объекта, таким образом у тебя будут доступны позиция и нормаль текселя с учётом скиннинга, и уже применяешь свет как обычно.

CRASHER 06.04.2014 21:36

Ответ: Xors3D. Шейдеры. Урок первый
 
Когдаж второй урок выдет?)


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

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