Ir ao conteúdo

Posts recomendados

Postado

eis o código para desenhar 1 linha:
 

WallDistance = WallDistance * Cos(RayRadians - Player.Radians) 'avoiding the Fish Effect
        RayHeight = (ObjectSize / WallDistance) * 200 ' is the height screen\
        a.drawline(x0,y0,x1,y1) A.DrawLine 475 + 50 + RayCounts, 200 / 2 - RayHeight / 2, 475 + 50 + RayCounts, 200 / 2 + RayHeight / 2

a linha vertical aparece sem problemas... agora queria mostrar com textura:
 

'obter o a linha mais curta(horizontal ou vertical):
        If VertDist < HorizDist Then
            ' Draw the vertical ray:
            A.DrawLine Fix(Player.PosX), Fix(Player.PosY), Fix(VertX), Fix(VertY)
            WallDistance = VertDist
            GridX = VertX Mod ObjectSize
            GridY = VertY Mod ObjectSize
        Else
            ' Draw the horizontal ray:
            A.DrawLine Fix(Player.PosX), Fix(Player.PosY), Fix(HorizX), Fix(HorizY)
            
            WallDistance = HorizDist
            
            GridX = HorizX Mod ObjectSize
            GridY = HorizY Mod ObjectSize
        End If
        'Debug.Print GridX & "  " & GridY
        WallDistance = WallDistance * Cos(RayRadians - Player.Radians) 'avoiding the Fish Effect
        RayHeight = (ObjectSize / WallDistance) * 200 ' is the height screen\
        'a.drawline(x0,y0,x1,y1) A.DrawLine 475 + 50 + RayCounts, 200 / 2 - RayHeight / 2, 475 + 50 + RayCounts, 200 / 2 + RayHeight / 2
        If (GridX = 0) Then
            StretchBlt A.MemoryHDC, 475 + 50 + RayCounts, 200 / 2 - RayHeight / 2, 475 + 50 + RayCounts, 200 / 2 + RayHeight / 2, picWall1.hdc, 0, GridY, 1, picWall1.Height, SRCCOPY
        Else
            StretchBlt A.MemoryHDC, 475 + 50 + RayCounts, 200 / 2 - RayHeight / 2, 475 + 50 + RayCounts, 200 / 2 + RayHeight / 2, picWall1.hdc, GridX, 0, picWall1.Width, 1, SRCCOPY
        End If

mas não desenha nada de jeito 😞
os calculos podem estar errados sem me aparecer:
image.thumb.png.a764846cb86737491015dabf4bda3175.png

onde errei para obter a linha da imagem?

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!