Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > C/C++ > C/C++
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 20.02.2016, 00:16
Аватар для Klyaksa
Klyaksa Klyaksa вне форума
Новичок
 
Регистрация: 07.01.2012
Сообщения: 90
Репутация: 10
По умолчанию Работа с PixelShader

Всем привет! На днях хотел заюзать PixelShader поискал по инету нашел такой вот код (часто втречающийся)
Код:
HRESULT GenerateShader(IDirect3DDevice9 *pDevice, IDirect3DPixelShader9 **pixelShader, float r, float g, float b )
{
	char szShader[ 256 ];
	ID3DXBuffer *pShaderBuf = NULL;
	sprintf( szShader, "ps.2.0\ndef c0, %f, %f, %f, %f\nmov oC0,c0", r, g, b, 1.0f );
	D3DXAssembleShader( szShader, sizeof( szShader ), NULL, NULL, 0, &pShaderBuf, NULL );
	if( FAILED( pDevice->CreatePixelShader((const DWORD*)pShaderBuf->GetBufferPointer(), pixelShader)) )return E_FAIL;
	return S_OK;
}
Вроде и все можно запускать но не хочет он работать, приложение крашится и все. Где косяк то? Может есть другой способ создание своего шейдера? Юзаю так
Код:
GenerateShader( pDevice, &Shade_Red,    1.0f, 0.0f, 0.0f);//Красный

Последний раз редактировалось Klyaksa, 20.02.2016 в 00:40.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 04:53.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter