COR PRETA INVISIVEL NO BITBLT

USUARIO.EXCLUIDOS 30/08/2007 20:48:12
#233476
Olá a todos =D
Estou com um probleminha com meu joguinhu 2d usando bitblt =(
eu colokei um fundo no jogo, soh q o sprite do "carinha" tem fundo preto, e o fundo fica junto com o char
como eu poderia fazer com q a cor preta do "carinha" ficasse invisivel em relação ao fundo do jogo =(

OBRIGADÃO
PRECISO MUITO DESSA INFORMAÇÃO
;D
USUARIO.EXCLUIDOS 31/08/2007 07:27:16
#233496
Resposta escolhida
Primeiro vc tem que criar duas imagens.
Uma com o fundo branco e a outra com o fundo preto. e os
objetos na com o fundo branco tem que estar preto.
ai vc utiliza o bitblt com vbSrcAnd na figura real e depois com vbSrcPaint na figura com o fundo branco com os objetos em preto.

Ficou meiu complicado?
ta anexado o código!
USUARIO.EXCLUIDOS 31/08/2007 07:28:44
#233498
oops, exqueci de anexar!, agora ja ta anexado!
USUARIO.EXCLUIDOS 31/08/2007 07:42:33
#233501
Ixi =X
seria muitissimo dificil, pois a imagem das sprites dos "carinhas" tem 18mb O.o
fazer isso demoraria d+
eu achei um código que faz sem precisar disso
estou estudando ele e tentando encachar no meu joguinhu
quando conseguir fecho o topico, vai q eu n consigu =X
USUARIO.EXCLUIDOS 31/08/2007 12:48:35
#233593
use a api:

Public Declare Function TransparentBlt Lib msimg32 (ByVal hdcDest As Long, ByVal nXOriginDest As Long, ByVal nYOriginDest As Long, ByVal nWidthDest As Long, ByVal nHeightDest As Long, ByVal hdcSrc As Long, ByVal nXOriginSrc As Long, ByVal nYOriginSrc As Long, ByVal nWidthSrc As Long, ByVal nHeightSrc As Long, ByVal crTransparent As Long) As Long

acho que e uma boa escolha!
USUARIO.EXCLUIDOS 31/08/2007 12:53:10
#233595
Como usa =X
USUARIO.EXCLUIDOS 31/08/2007 13:08:50
#233599
ta ai o exemplo
USUARIO.EXCLUIDOS 31/08/2007 14:19:47
#233622
Obrigadao cara =D
Funcionou semi-perfeitamente =X
Tipo, quando movimenta os sprites os rastros ficam, e soh saem quando o foco sai do formulario(alt+tab)
Fica assim:

=X
USUARIO.EXCLUIDOS 31/08/2007 14:42:52
#233627
Consegui arrumar =D
usei refresh
Char(Index).Refresh
Muito Obrigado cara
Você não sabe o quanto me ajudou.
Tópico encerrado , respostas não são mais permitidas