d3dxSprite - не могу нарисовать и все тут

Работа с 2D и 3D графикой, видео, звуком.

Модератор: Mikle

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

d3dxSprite - не могу нарисовать и все тут

Сообщение ВикторZX » 10.06.2008 (Вт) 13:32

уважаемые гуру dx-a.
помогите с исходником, а то я уже 2 часа с ним мучаюсь и ничего не выходит
У вас нет доступа для просмотра вложений в этом сообщении.
null

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

Сообщение ВикторZX » 10.06.2008 (Вт) 13:34

вы только не ругайесь, ибо dx я учу сооовсем недолго, кто ж мне горемыке поможет - то, как не вы...
null

lellel
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 207
Зарегистрирован: 19.12.2007 (Ср) 22:07
Откуда: Долгопрудный

Сообщение lellel » 10.06.2008 (Вт) 23:56

я конечно не гуру, но поюзав SDK разобрался...
после иннициализации директа надо создать тот самый спрайт
Код: Выделить всё
Set mySprite = D3DX.CreateSprite(D3DDevice)


у меня отрендерило.. правда ничего не видно.. точка какая то...

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

Сообщение ВикторZX » 11.06.2008 (Ср) 11:24

то что надо, как тут плюсы ставить на форуме
null

homeworld
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 110
Зарегистрирован: 07.12.2006 (Чт) 13:17

Сообщение homeworld » 11.06.2008 (Ср) 14:15

Код: Выделить всё
myRect.bottom = 128
myRect.Right = 128

lellel
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 207
Зарегистрирован: 19.12.2007 (Ср) 22:07
Откуда: Долгопрудный

Сообщение lellel » 11.06.2008 (Ср) 14:41

насколько я знаю на форуме нет такой системы отзывов...
рейтинг добавляется по мере роста числа оставленных сообщений...

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

Сообщение ВикторZX » 11.06.2008 (Ср) 14:41

вот что вышло
У вас нет доступа для просмотра вложений в этом сообщении.
null

Ktulhu
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 132
Зарегистрирован: 14.07.2007 (Сб) 14:03
Откуда: Киев, Р'льех

Сообщение Ktulhu » 11.06.2008 (Ср) 14:47

а D3DXSprite умеет спрайты в пространстве рисовать, или я что-то путаю?

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

Сообщение ВикторZX » 11.06.2008 (Ср) 15:14

теоретически да, для этого у спрайта есть метод drawTransform, там нада задавать параметры d3dmatrix , но только у меня почему-то не рисует (ну как всегда)
null

lellel
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 207
Зарегистрирован: 19.12.2007 (Ср) 22:07
Откуда: Долгопрудный

Сообщение lellel » 11.06.2008 (Ср) 16:51

лично я отрендерил с помощью drawTransform..

Ktulhu а что ты имеешь ввиду говорю спрайт в пространстве? я думал что это значит что в пространстве рисуется некая плоскость, но даже с помощью drawTransform рисуется картинка на экране(типа DirectDraw.. может это и есть он?) а не в пространстве.. насколько я понял отличие от Draw только в том, что тут более гибкая система преобразований(матрица)
Последний раз редактировалось lellel 12.06.2008 (Чт) 10:58, всего редактировалось 1 раз.

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

Сообщение ВикторZX » 12.06.2008 (Чт) 0:57

lellel писал(а):лично я отрендерил с помощью drawTransform..


покаж как сделал?
null

lellel
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 207
Зарегистрирован: 19.12.2007 (Ср) 22:07
Откуда: Долгопрудный

Сообщение lellel » 12.06.2008 (Чт) 9:49

что-то типа:
Код: Выделить всё
  Dim Mtrx As D3DMATRIX
  D3DXMatrixIdentity Mtrx
  element1.DrawTransform Texture1, RECT(0, 0, 128, 128), Mtrx, &HFFFFFFFF


в рендер это вставь...
здесь матрица без преобразований используется..

а вообще кажется у тебя там не 3D а плоская картинка.. нет Z буффера и все такое..
но я даже сделав это не увидел ничего принципиально отличающегося...

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

Сообщение ВикторZX » 12.06.2008 (Чт) 13:05

&HFFFFFFFF - не подскажете, как управлять цветом, вроде есть какая-то специальная функция в DX типа ARGB?
а то в ручную высчитывать как-то недосуг
null

lellel
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 207
Зарегистрирован: 19.12.2007 (Ср) 22:07
Откуда: Долгопрудный

Сообщение lellel » 12.06.2008 (Чт) 13:19

что ты понимаешь под "управлять цветом"?

StimorolD3DX
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 293
Зарегистрирован: 03.04.2007 (Вт) 18:19
Откуда: Kiev city

Сообщение StimorolD3DX » 12.06.2008 (Чт) 13:20

D3DColorARGB
D3DColorMake
D3DColorRGBA
D3DColorXRGB

lellel
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 207
Зарегистрирован: 19.12.2007 (Ср) 22:07
Откуда: Долгопрудный

Сообщение lellel » 12.06.2008 (Чт) 13:28

StimorolD3DX
а чем они отличаются?
вроде все кроме D3DColorXRGB возвращают цвет с альфой..

StimorolD3DX
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 293
Зарегистрирован: 03.04.2007 (Вт) 18:19
Откуда: Kiev city

Сообщение StimorolD3DX » 12.06.2008 (Чт) 13:29

Да ничем, кому в какой последовательности удобнее.

Ktulhu
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 132
Зарегистрирован: 14.07.2007 (Сб) 14:03
Откуда: Киев, Р'льех

Сообщение Ktulhu » 12.06.2008 (Чт) 16:27

lellel писал(а):лично я отрендерил с помощью drawTransform..

Ktulhu а что ты имеешь ввиду говорю спрайт в пространстве? я думал что это значит что в пространстве рисуется некая плоскость, но даже с помощью drawTransform рисуется картинка на экране(типа DirectDraw.. может это и есть он?) а не в пространстве.. насколько я понял отличие от Draw только в том, что тут более гибкая система преобразований(матрица)


имелл ввиду плоскость в пространстве. чтобы, например, партиклы ими рисовать.

Bonesnapper
Постоялец
Постоялец
 
Сообщения: 434
Зарегистрирован: 12.09.2004 (Вс) 15:39

Сообщение Bonesnapper » 12.06.2008 (Чт) 18:40

это?
У вас нет доступа для просмотра вложений в этом сообщении.

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

Сообщение ВикторZX » 12.06.2008 (Чт) 18:49

Bonesnapper писал(а):это?

fps 10...
null

Ktulhu
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 132
Зарегистрирован: 14.07.2007 (Сб) 14:03
Откуда: Киев, Р'льех

Сообщение Ktulhu » 12.06.2008 (Чт) 22:00

Bonesnapper
это. спасибо

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

Сообщение ВикторZX » 13.06.2008 (Пт) 10:22

а, кстати, не подскажете, в DX можна текстуру отрисовать на заднем буфере, а потом отрендерить, ну типа как в directDraw можна было мперва отблитить спрайт на офф-скриновую поверхность
null

Bonesnapper
Постоялец
Постоялец
 
Сообщения: 434
Зарегистрирован: 12.09.2004 (Вс) 15:39

Сообщение Bonesnapper » 13.06.2008 (Пт) 12:13

надо просто размер поменьше сделать тогда фпс больше будет
да и партиклов там 1500 :D

А для чего рендерить то на задний буфер тебе?

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

Сообщение ВикторZX » 13.06.2008 (Пт) 14:19

А для чего рендерить то на задний буфер тебе?[/quote]
честно говоря, такой прямой вопрос прям поставил в тупик...
да в принципе в визуализации двухмерной графики часто бывает нужно - например быстрее отрисовать картинку один раз и потом выводить ее по мере необходимости с заднего буффера, чем каждый раз отрисовывать заново.
null

Mikle
Изобретатель велосипедов
Изобретатель велосипедов
Аватара пользователя
 
Сообщения: 4148
Зарегистрирован: 25.03.2003 (Вт) 14:02
Откуда: Туапсе

Сообщение Mikle » 13.06.2008 (Пт) 16:11

потом выводить ее по мере необходимости с заднего буффера

Не получится - ты каждый раз портишь задний буфер своей геометрией.

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

Сообщение ВикторZX » 13.06.2008 (Пт) 19:30

Не получится - ты каждый раз портишь задний буфер своей геометрией.


ну и ладно
null

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

Сообщение ВикторZX » 13.06.2008 (Пт) 23:08

а освещение спрайты поддерживают?
null

ВикторZX
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 10.06.2008 (Вт) 13:07
Откуда: Киев

Сообщение ВикторZX » 14.06.2008 (Сб) 21:00

чтоб как-то вот так...
У вас нет доступа для просмотра вложений в этом сообщении.
null

Bonesnapper
Постоялец
Постоялец
 
Сообщения: 434
Зарегистрирован: 12.09.2004 (Вс) 15:39

Сообщение Bonesnapper » 15.06.2008 (Вс) 12:24

думаю через стандартный свет этого не сделаешь...

Mikle
Изобретатель велосипедов
Изобретатель велосипедов
Аватара пользователя
 
Сообщения: 4148
Зарегистрирован: 25.03.2003 (Вт) 14:02
Откуда: Туапсе

Сообщение Mikle » 15.06.2008 (Вс) 16:05

Это проще, чем стандартный цвет. Это просто наложение светлого пятна. В чем проблема?

След.

Вернуться в Мультимедиа

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 71

    TopList