Введение в программирование трехмерных игр с DX9




Создание эффекта - часть 2


ppEffect — Возвращает указатель на интерфейс ID3DXEffect, представляющий созданный эффект.

ppCompilationErrors — Возвращает указатель на интерфейс ID3DXBuffer, содержащий строку с кодами обнаруженых при компиляции ошибок и их описанием.

Вот пример вызова функции D3DXCreateEffectFromFile:

// // Создание эффекта //

ID3DXEffect* Effect = 0; ID3DXBuffer* errorBuffer = 0; hr = D3DXCreateEffectFromFile( Device, // связанное устройство "effect.txt", // имя исходного файла 0, // нет объявлений препроцессора 0, // нет интерфейса ID3DXInclude D3DXSHADER_DEBUG, // флаги компиляции 0, // параметры не используются совместно &Effect, // возвращает результат &errorBuffer); // возвращает строку с ошибками

// Выводим любые сообщения об ошибках if( errorBuffer ) { ::MessageBox(0, (char*)errorBuffer->GetBufferPointer(), 0, 0); d3d::Release<ID3DXBuffer*>(errorBuffer); }

if(FAILED(hr)) { ::MessageBox(0, "D3DXCreateEffectFromFile() - FAILED", 0, 0); return false; }




Содержание  Назад  Вперед