ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Общие вопросы программирования (https://forum.antichat.xyz/forumdisplay.php?f=206)
-   -   D3D9 Sprite (https://forum.antichat.xyz/showthread.php?t=1375644)

Akazuki 11.01.2021 00:21

Здравствуйте, после рисования спрайта пропадают ники игроков и 3D Label. Они смещаются в верхний левый угол.

Код рисования спрайта

C++:





Код:

sprite
->
Begin
(
D3DXSPRITE_ALPHABLEND
)
;
sprite
->
Draw
(
spriteTexture
,
NULL
,
NULL
,
NULL
,
0xFFFFFFFF
)
;
sprite
->
End
(
)
;



https://forum.antichat.xyz/attachments/27645717/

SR_team 11.01.2021 01:01

Весь код показывай. В этом кусочке нет ошибок

Akazuki 11.01.2021 01:26

Перед этим создается текстура и спрайт

C++:





Код:

GetD3DDevice
(
)
->
CreateTexture
(
plugin
::
screen
::
GetScreenWidth
(
)
,
plugin
::
screen
::
GetScreenHeight
(
)
,
1
,
D3DUSAGE_DYNAMIC
,
D3DFMT_A8R8G8B8
,
D3DPOOL_DEFAULT
,
&
spriteTexture
,
0
)
;
D3DXCreateSprite
(
GetD3DDevice
(
)
,
&
sprite
)
;


kin4stat 11.01.2021 02:00

Ломается рендер сампа

Ну тут расписывать много не надо. Как только начинаешь выводить на экран текст - преобразования Мировых координат в экранные будто резко перестают работать. А происходит вот такая дичь(смотреть в левый верхний угол. На белую полосу не обращайте внимания, приколы оконного режима):

www.blast.hk


Вот тут это обсуждалось.

стоит вообще все сохранить чтобы наверняка:

C++:





Код:

D3DMATRIX last_world
,
last_view
,
last_projection
;
g_pd3dDevice
->
GetTransform
(
D3DTS_WORLD
,
&
last_world
)
;
g_pd3dDevice
->
GetTransform
(
D3DTS_VIEW
,
&
last_view
)
;
g_pd3dDevice
->
GetTransform
(
D3DTS_PROJECTION
,
&
last_projection
)
;
// RENDER
g_pd3dDevice
->
SetTransform
(
D3DTS_WORLD
,
&
last_world
)
;
g_pd3dDevice
->
SetTransform
(
D3DTS_VIEW
,
&
last_view
)
;
g_pd3dDevice
->
SetTransform
(
D3DTS_PROJECTION
,
&
last_projection
)
;



Время: 01:52