Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > C++ > Разработка LIB

Ответ
 
Опции темы
Старый 13.09.2007, 10:23   #1
LD
ПроЭктировщик
 
Регистрация: 18.11.2006
Сообщений: 179
Написано 7 полезных сообщений
(для 16 пользователей)
Вопрос c++ и b3d

Хочу попробовать написать эффект glow для б3д на си, мне интересны две вещи:
1) как получить содержимое заднего (экранного, текстурного) буффера блица для последующей обработки?
2)как его вернуть блицу?
Извините, если тема повторная, я с мобильного, искать неудобно
(Offline)
 
Ответить с цитированием
Старый 13.09.2007, 17:30   #2
jimon
 
Сообщений: n/a
Re: Вопрос c++ и b3d

ну перехватываеш хендл DX7 Device и копаеш дальше в C++ как с DX7
 
Ответить с цитированием
Старый 13.09.2007, 18:38   #3
alcoSHoLiK
Дэвелопер
 
Регистрация: 17.01.2006
Сообщений: 1,512
Написано 78 полезных сообщений
(для 110 пользователей)
Re: Вопрос c++ и b3d

Хендл_буфера + 4 = указатель на содержимое буфера. Чтобы передать его в длл, надо в decls-файле в качестве типа параметра указать *, например
MyFunc(buffer_ptr*):"_MyFunc@4"
В C тогда нужно для параметра указывать тип unsigned char**.

Можно просто передать как целочисленный параметр. В С нужно будет сделать преобразование типа тогда.

Тут инфа про необходимые смещения http://blitz.pp.ru/forum/showthread.php?s=&threadid=203
(Offline)
 
Ответить с цитированием
Старый 16.09.2007, 06:55   #4
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Re: Вопрос c++ и b3d

можеш reinterpret_cast<>() заюзать, для перевода простой смертной переменной в указатель на чтолибо.
(Offline)
 
Ответить с цитированием
Старый 19.02.2009, 12:16   #5
-=Jack=-
ПроЭктировщик
 
Аватар для -=Jack=-
 
Регистрация: 10.01.2009
Адрес: хз
Сообщений: 177
Написано 18 полезных сообщений
(для 44 пользователей)
Ответ: Вопрос c++ и b3d

А можно и просто получить указатель на устройство, и использовать функцию IDirect3DDevice7::GetBackBuffer().
>как его вернуть блицу?
никак не надо. Ты получаешь указатель на буфер, а не его копию. Тоесть ты блокируешь его, делаешь своё дело, разблокируешь и данные уже записаны в бэк-буфер.
__________________
Я бы изменил мир, но Бог не даёт исходников...
(Offline)
 
Ответить с цитированием
Старый 19.02.2009, 19:22   #6
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: Вопрос c++ и b3d

-=Jack=-, полезно !
долго копал да ?
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос Черный крыс BlitzMax 1 31.03.2009 09:30
Вопрос Fant 3D-программирование 8 05.03.2007 15:26
Вопрос Akima Наш форум 5 31.12.2006 18:09


Часовой пояс GMT +4, время: 14:12.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com