Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Arkanoid Con Direct Draw

Iniciado por GomeK, 13 de Mayo de 2005, 09:39:06 PM

« anterior - próximo »

GomeK

 Hola tengo que hacer un proyecto que se trata de un arkanoid en 2D con direct draw en visual basic, la question es que solo he logrado poner el fondo i un sprit que se trata de la barra de abajo, pero me falta los bloques y la pelota que destruya los bloques.
La pregunta que hago es como hago lo que me queda y si hay alguna fuente de informacion que pueda encontrar sea libro, manual, tutorial, etc etc etc
Muchissimas gracias!!!!

Capiflash

 Hola , si vas a hacer cosas en VB con las Directx , te recomendaría la dx_lib32 ( [Hex3] me va a tener que pagar por la publi que le hago )
Como su creador dice "lib32Programa tus juegos en Visual Basic de forma sencilla con dx_lib32 - Adelantos sobre dx_lib32 versión 2.0 en (http://dxlib32.se32.com"

Espero que te sirva de ayuda , un saludo .

Capiflash


Sacrifai

 Veamos, para empezar la pelota tendras que moverla con la siguiente formula (está en C, pero la adaptas facilmente a VB):

pelota.x=pelota.x+pelota.vel*cos(AngARad(pelota.Ang));
pelota.y=pelota.y+pelota.vel*sin(AngARad(pelota.Ang));

AngARad es una función simple para pasar de grados a radianes que es lo que requieren las funciones trigonometricas en el math.h :

double AngARad(double Angulo)
{
   return 2*3.1415*Angulo/360;
}

PD: No me pregunteis porque no lo hize con macro  (ole) .


Para el rebote con el stick:
   
pelota.Ang=0-pelota.Ang;
pelota.Ang+=stick.velX*2;

(esa no la tengo comprabada, si no rula bien cambia el 0 por alguno de estos valores hasta que salga bien: 90,180,270)

Ahora las colisiones:
http://www.vjuegos.org/modules.php?name=Co...showpage&pid=34

Ojea en esa página las colisiones de rectángulo a rectángulo.

Ahora en cada frame, tienes que comprobar si la pelota choca contra el stick o contra un bloque. Si pones muchos bloques te recomiendo que te hagas un sistema de zonas ( que es muy facil de hacer ) y si la bola está en tal zona, comprobar solo los bloques de esa zona.

PD: Eso si, el tema de las colisiones y el revote correcto con cada lado, no tengo suficientes matemáticas como para resolverlo  (grrr) .

[EX3]

 
Cita de: "Capiflash"Hola , si vas a hacer cosas en VB con las Directx , te recomendaría la dx_lib32 ( [Hex3] me va a tener que pagar por la publi que le hago )
Como su creador dice "lib32Programa tus juegos en Visual Basic de forma sencilla con dx_lib32 - Adelantos sobre dx_lib32 versión 2.0 en (http://dxlib32.se32.com"

Espero que te sirva de ayuda , un saludo .
Ese [Hex3] tendra que pagarte por que yo va a ser que no xDDD Es [EX3] sin H :P y un detalle importante, la dx_lib32 usa Direct Graphics (Direct3D 8) no Direct Draw, eso a lo mejor le puede resultar un problema si busca usar DirectX7 (por lo de DirectDraw mas que nada imagino) ya que la dx_lib32 funciona sobre DirectX8 pero eso ya que lo decida el.

GomeK, pasate por mi pagina y entra en la seccion de enlaces, ahi tienes varias paginas dedicadas a la programacion de juegos con DirectX en Visual Basic, de ahi podras sacar mucha informacion al respecto e incluso encuentres el codigo de algun arkanoid.

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.