Показать сообщение отдельно
Старый 27.11.2011, 21:37   #17
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: Directx 9 текстурирование объекта несколькими текстурами

там при загрузке ты должен указывать errorBuffer, посмотри какую ошибку возвращает.
инфа что ниже работает 100%. Я в своем проекте загружал эффект с релизацией вершинного и пиксельного шейдера и все работало
HRESULT hr = D3DXCreateEffectFromFileA(
		  globals::device,           // связанное устройство
		  fileName,     // имя исходного файла
		  0,                // нет объявлений препроцессора
		  0,                // нет интерфейса ID3DXInclude
		  D3DXSHADER_DEBUG, // флаги компиляции
		  0,                // параметры не используются совместно
		  &_effect,          // возвращает результат
		  &_errorBuffer);    // возвращает строку с ошибками

	// Выводим любые сообщения об ошибках
	if( _errorBuffer )
	{//если валится тут то ошибка при компиляции
		 ::MessageBoxA(0, (char*)_errorBuffer->GetBufferPointer(), 0, 0);
		 return false;
	}

	if(FAILED(hr))
	{//если валится тут то файл не нашел
		 ::MessageBox(0, L"D3DXCreateEffectFromFile() - FAILED", 0, 0);
		 return false;
	}

	return true;
ИМХО но Delphi для DirectX это как для грузчика программирование. Не совместимые вещи. В DX все на указателях, так что юзай C++
(Offline)
 
Ответить с цитированием