MMORPG Brasil
Ola, visitante! Agradecemos sua visita, para ter acesso a todo nosso conteúdo recomendamos que faça um cadastro no fórum, com ele você pode participar de tópicos e ter acesso a todas áreas da comunidade!

Participe do fórum, é rápido e fácil

MMORPG Brasil
Ola, visitante! Agradecemos sua visita, para ter acesso a todo nosso conteúdo recomendamos que faça um cadastro no fórum, com ele você pode participar de tópicos e ter acesso a todas áreas da comunidade!
MMORPG Brasil
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Ultilizando o DX7(BltFast)

Ir para baixo

Ultilizando o DX7(BltFast) Empty Ultilizando o DX7(BltFast)

Mensagem por Lucas Roberto Dom 26 Fev 2012, 11:55

Bom galera estou aqui para ensinar vocês a ultilizar o Directx 7 no Eclipse Origins.Vamos ao que interessa.


Primeiramente salve essa imagem e coloque na pasta "\Data Files\Graphics" do seu cliente.
teste.bmp

Logo em seguida abre a source do seu EO e vá no modDirectDraw7 e embaixo de "Public DDS_Bars As DirectDrawSurface7" adicione:
Código:
Public DDS_Teste As DirectDrawSurface7

Depois procure por "Public DDSD_Bars As DDSURFACEDESC2" e adicione embaixo:
Código:
Public DDSD_Teste As DDSURFACEDESC2

Pronto, "Public DDS_Teste As DirectDrawSurface7" vai servir para fazer a leitura do "teste.bmp" e, "Public DDS_Bars As DirectDrawSurface7" vai servir para a descrição em geral do mesmo(Height,Width,...,etc).

Agora na sub "DestroyDirectDraw" procure por:
Código:
Set DDS_Target = Nothing
    ZeroMemory ByVal VarPtr(DDSD_Target), LenB(DDSD_Target)

Em seguida coloque embaixo:
Código:
Set DDS_Teste = Nothing
    ZeroMemory ByVal VarPtr(DDSD_Teste), LenB(DDSD_Teste)

Ai podemos entender que fará a variavel de Leitura e de Descrição zerará,não tendo o "teste.bmp" como um grafico no DirectDraw.

Bom agora no final do modDirectDraw crie uma sub chamada "DrawTeste" e dentro dela coloque:
Código:

Dim Rec As RECT, X as Long, Y as Long

If DDS_Teste Is Nothing Then
        Call InitDDSurf("teste", DDSD_Teste, DDS_Teste)
    End If

With Rec
  .Top = 0
  .Bottom = DDSD_Teste.Height
  .Left = 0
  .Right = DDSD_Teste.Width
End With

X = 1 * 32
Y = 1 * 32

Engine_BltFast X, Y, DDS_Teste, Rec, DDBLTFAST_SRCCOLORKEY

Explicando:
Código:
Rec.Top = Coordenada do inicio do Draw, no sentido de pé |
Rec.Bottom = Coordenada de onde vai ser o fim do Draw, no sentido de pé |
Rec.Left = Coordenada do inicio do Draw, no sentido de lados -
Rec.Right = Coordenada de onde vai ser o fim do Draw, no sentido de lados -

X,Y = Coordenada de onde vai aparecer o grafico "teste.bmp"

DDBLTFAST_SRCCOLORKEY = Transparecia da cor que estiver no primeiro pixel do grafico "teste.bmp"

Agora na Sub "Render_Graphics" procure por "BltBars" e abaixo coloque:
Código:
'Drawing teste.bmp
DrawTeste

Agora rode o client e veja o resultado, lembrando que os grafico a ser ultilizado só pode ser em extensão "bmp" e em 24 bits, pois se não for isso, o Directx 7 não reconhece.

Créditos: Kintaro(Por criar o tutorial)
Lucas Roberto
Lucas Roberto
Membro Veterano
Membro Veterano

Mensagens : 1794

http://universogamesmmo.forumeiros.com/forum

Ir para o topo Ir para baixo

Ir para o topo


 
Permissões neste sub-fórum
Não podes responder a tópicos