Регистрация    Забыли пароль?
Имя   Пароль  запомнить
  
 Просмотр темы
Вернуться на сайт: Russian Ziggyware - XNA Уроки Статьи Туторы Туториалы

Форум Russian Ziggyware | XNA Game Studio | HLSL
Автор 2D эффект для кадра
MisterX
Пользователь

Avatar пользователя




Новенький

Сообщений: 2
Зарегистрирован: 26 Января 2010, 19:07:18
Статус: offline
^ наверх ^
Опубликовано 26 Января 2010, 19:07:54
Как применить шейдер ко всему кадру а не а каждому изображению по отдельности?

У меня выводится 2 изображения ФОН и БЭТМЕН. Вот как я применяю шейдер который создает сетку на изображении:
spriteBatch.Begin(SpriteBlendMode.AlphaBlend, SpriteSortMode.Immediate, SaveStateMode.None);

fx.Begin();
fx.CurrentTechnique.Passes[0].Begin();
spriteBatch.Draw(ground, new Rectangle(0, 0, 640, 480), Color.White);
spriteBatch.Draw(batman, new Rectangle(200, 100, 159, 300), Color.White);
fx.CurrentTechnique.Passes[0].End();
fx.End();

spriteBatch.End();




Вот что у меня получилось:


Тоесть как видно из скрина, шейдер применился отдельно к фону и отдельно к герою.
Автор RE: 2D эффект для кадра
MisterX
Пользователь

Avatar пользователя




Новенький

Сообщений: 2
Зарегистрирован: 26 Января 2010, 19:07:18
Статус: offline
^ наверх ^
Опубликовано 27 Января 2010, 18:06:29
Уже разобрался. Нужно рисовать в RenderTarget, а потом к его текстуре применять шейдер.

Изменил(а) MisterX, 27 Января 2010, 18:06:47
Перейти на форум:
Powered by PHP-Fusion
Modified by PHP-Fusion SF Group © 2007 - 2010
Copyright © Narayan 2009
Copyright © JohnK 2008-2009
Ziggyware is © Michael Morton 2006-2009
569,715 уникальных посетителей
сейчас: 10 Сентября 2010, 09:09:27