PMG http://forum.pmg.org.ru/ |
|
Проблемы с D3DXCreateTexture http://forum.pmg.org.ru/viewtopic.php?f=2&t=7765 |
Страница 1 из 1 |
Автор: | Ipkis [ 26 янв 2010 12:50 ] |
Заголовок сообщения: | Проблемы с D3DXCreateTexture |
Привет. Обращаюсь к вам за помощью, подскажите плиз В каих случаях сбоит D3DXCreateTexture или D3DXCreateTextureFromFile. Я тут ну просто... Структура проги такова: класс ландшафта, в нем переменные Device,VertevBuff,IndBuff и (и эта чтоб ее...) lpTexture. При создании экземпляра класса в WinMain, эти переменные благополучно инициализируются нулями. Формирую буфер вершин и индексов - все норм., но когда пытаюсь вызвать метод из класса ландшафта, содержащий D3DXCreateTexture(), перем. lpTexture не формируется - ошибка типа значение не может быть установлено... С чем это может быть связано? |
Автор: | kurlyak [ 19 сен 2010 22:17 ] |
Заголовок сообщения: | Re: Проблемы с D3DXCreateTexture |
D3DXCreateTexture() используется когда ты самостоятельно создаешь текстуру. То есть в программе на лету создаешь текстуру. Есть такой метод из интерфейса IDirect3DTexture9 Interface метод LockRect(). Так вот этот метод испльзуеться для доступа к поверхности твоей текстуры. Возможно в зависимости от высот твоего ланшафта ты захочешь создать в программе свою собственную текстуру. Например вершины ландафта покрыть белым цветом (вроде снег) а низины ландшафта покрыть зеленым цветом (вроде растительность). Ты можешь динамически создать свою текстуру в программе используя D3DXCreateTexture(). Второй вариант - ты не сам динамически создаешь текстуру, а у тебя есть готовое изображение (формат jpg, bmp, png, dds и др). У тебя есть например изображение зеленого цветового "шума" которое ты хочешь наложить на свой ландшафт для придания ему реалистичного вида. Для этой цели ты используешь функцию D3DXCreateTextureFromFile() - но ты испльзуешь ее только в случае если у тебя есть уже готовое изображение текстуры, текстурное изображение в файле. Во время инициализации программы ты создаешь глобальную переменную для текстуры. Затем здесь же в инициализации загружаешь файл изображения текстуры в свою переменную для текстуры. Далее при отрисовке ландшафта ты должен установить свою загруженную из файла текстуру, то есть ее переменную; функция установки текстуры перед рендерингом Device->SetTexture(0, my_Texture). |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |