Respecto a Theread.Sleep() ahí tengo que discrepar, aunque voy a realizar una nueva pregunta y decir solucionado esta puesto que hacía referencia a Mover un Sprite. Según el código que expuse al principio
Código
Protected Overrides Sub OnPaint(e As PaintEventArgs) Dim de As Graphics = e.Graphics MOVER() DIBUJAR(de) 'Thread.Sleep(100) ' No lo pongo, va bien el programa End Sub
veo que la velocidad el juego va bien sin poner el retardo, es más si lo pongo aunque sea Thread.Sleep(1) se ralentiza demasiado y no me interesa. Para aumentar la velocidad tan solo tengo que aumentar el código siguiente
Código
Private Sub MOVER() Bola1.Pos.X = Bola1.Pos.X + 1 ' Aquí es donde aumentamos velocidad +2, +3 .... Bola2.Pos.X = Bola2.Pos.X + 1 If Bola1.Pos.X >= 800 Then Bola1.Pos.X = 0 If Bola2.Pos.X >= 800 Then Bola2.Pos.X = 0 Invalidate() ' Vuelva a dibujar el control End Sub
donde los objetos los movemos más rápidos, el valor mínimo es 1 puesto que es de tipo Point y representa el pixel en pantalla. Es una buena velocidad para un procesador I5, I3, pero baja un poco en un DUAL Core y sobre todo se ralentiza en un Pentium IV. Solución aumentar a +2 o +3 los objetos. Por eso voy a exponer otra nueva pregunta, aunque intentaré buscar por mi cuenta como siempre.
Gracias y saludos