Archivo

Archive for 24 febrero 2010

[Taller] Windows Forms. Aprende a crear aplicaciones para Windows. Completo.

24 febrero 2010 7 comentarios

 

image

 

Si es que no aprendo. Me he vuelto a meter yo solito en otro lio. Resulta que ahora voy a dar un taller sobre Windows Forms. Será el proximo día 5 de marzo a las 11. Os dejo con más datos y con en enlace:

 

Aprende a crear aplicaciones para Windows desde cero. Camilo Galiana, quien también impartió el "Webcast C# para programadores de C++ y Java", se dispone ahora a hacer una clase práctica para enseñarnos a crear aplicaciones de escritorio en el sistema operativo Windows.

Fecha: Viernes, 05 de marzo de 2010

Hora: 11:00 – 13:00

Lugar: Edificio EPS 1 – Laboratorio L26

 

Enlace: http://alicante.dotnetclubs.com/eventos/talleres/taller-windows-forms-aprende-a-crear-aplicaciones-para-windows/

 

Lo más “fuerte” es que ya no quedan plazas. Se supone que asistirán unas 30 personas, pero no creo que vayan todas. Si te has quedado sin plaza y te gustaría asistir, puedes pasarte por el laboratorio unos minutos antes de empezar que seguro que hay plazas libres.

 

Un saludo

Categorías:Mis cosas, Universidad Etiquetas: ,

Parallax Scroll en XNA

22 febrero 2010 2 comentarios

Ya hacia tiempo que no escribía nada sobre XNA. Así que voy a escribir un cortito (pero útil) tutorial de como hacer Parallax Scroll en XNA.

 

image

 

Es muy facilito, y además de dejaros el código fuente del proyecto, os dejare también las imágenes y una explicación del código para que lo hagáis vosotros.

 

IMAGENES

Pinchar sobre la imagen, se os abrirá una nueva ventana. Guardaros esa imagen.

http://nosoyfriky.es/cosasxna/rocas.png

image

http://nosoyfriky.es/cosasxna/espacio.png

image

http://nosoyfriky.es/cosasxna/planeta.png

image

 

CLASE CapaParallax

Como podemos ver, esta clase tan simple representa una capa del fondo, el cual tiene una velocidad determinada, así como una textura.

 

  1 class CapaParallax
  2     {
  3         private Texture2D textura = null;
  4         private Vector2 posicion = Vector2.Zero;
  5         private Vector2 desplazamiento = Vector2.Zero;
  6         private float velocidad = 10.0f;
  7
  8         private float viewportWidth = 0.0f;
  9
10
11         /// <summary>
12         /// Constructor de la capa de parallax Scrolling
13         /// </summary>
14         /// <param name="graphics">Donde se dibujara la capa</param>
15         /// <param name="texture">Textura de la capa</param>
16         /// <param name="speed">Velocidad con la que se movera la capa</param>
17         public CapaParallax(GraphicsDeviceManager graphics, Texture2D texture, float speed)
18         {
19             textura = texture;
20
21             viewportWidth = graphics.GraphicsDevice.Viewport.Width;
22
23             posicion = new Vector2(0.0f, 0.0f);
24             desplazamiento = new Vector2(viewportWidth, 0.0f);
25
26             velocidad = speed;
27         } 
 
Para el funcionamiento del parallax, necesitamos que cada capa se mueva a una velocidad distinta. Cuanto más rápido sea el movimiento, nos parecerá que esta más próxima la capa.
 
 
 
 
30         /// <summary>
31         /// Actualiza la posicion de la capa
32         /// </summary>
33         /// <param name="gameTime">Tiempo transcurrido de juego</param>
34         public void Update(GameTime gameTime)
35         {
36
37              
38             
39             float delta = (float)gameTime.ElapsedGameTime.TotalSeconds;
40
41             posicion.X -= velocidad * delta;
42             posicion.X = posicion.X % textura.Width;
43             
44         }
45
46
47         /// <summary>
48         /// Da la sensacion de que nos movemos a la derecha
49         /// </summary>
50         /// <param name="gameTime"></param>
51         public void MoverDerecha(GameTime gameTime)
52         {
53             float delta = (float)gameTime.ElapsedGameTime.TotalSeconds;
54
55             posicion.X -= velocidad * delta;
56             posicion.X = posicion.X % textura.Width;
57         }
58
59         /// <summary>
60         /// Da la sensacion de que nos movemos a la izquierda
61         /// </summary>
62         /// <param name="gameTime"></param>
63         public void MoverIzquierda(GameTime gameTime)
64         {
65             float delta = (float)gameTime.ElapsedGameTime.TotalSeconds;
66
67             posicion.X += velocidad * delta;
68             posicion.X = posicion.X % textura.Width;
69         }
70
71
72         /// <summary>
73         /// Dibuja la capa
74         /// </summary>
75         /// <param name="spriteBatch"></param>
76         public void Draw(SpriteBatch spriteBatch)
77         {
78             //Como es una capa "continua", tenemos que dibujarla
79             // otra vez cuando se salga de la pantalla
80             
81             if (posicion.X < viewportWidth)
82             {
83                 spriteBatch.Draw(textura, posicion, Color.White);
84             }
85
86             spriteBatch.Draw(textura, posicion + desplazamiento, Color.White);
87         }
88     }

 

 

GAME1.CS

Con esta clase ya implementada, tenemos que agregar en nuestro juegos las diferentes capas que queramos y almacenarlas todas en una lista.

  1         //Texturas de las capas
  2         private Texture2D planeta;
  3         private Texture2D espacio;
  4         private Texture2D rocas;
  5
  6         private List<CapaParallax> capasParallax;

 

O bien en el constructor o  bien en en metodo “Initialize” tenemos que crear las capas:

  1         protected override void Initialize()
  2         {
  3             // TODO: Add your initialization logic here
  4             planeta = this.Content.Load<Texture2D>("planeta");
  5             rocas = this.Content.Load<Texture2D>("rocas");
  6             espacio = this.Content.Load<Texture2D>("espacio");
  7
  8
  9             //Cuidado con el orden de insercion.
10             //1º lo mas alejado
11             capasParallax = new List<CapaParallax>();
12             capasParallax.Add(new CapaParallax(graphics, planeta, 0.0f)); //la velocidad es 0, no se mueve
13             capasParallax.Add(new CapaParallax(graphics, espacio, 10.0f));
14             //luego lo mas cercano
15             capasParallax.Add(new CapaParallax(graphics, rocas, 50.0f));
16
17             base.Initialize();
18         }

 

 

En el update tan facil como:

  1                 foreach (CapaParallax capa in capasParallax)
  2                 {
  3                     capa.Update(gameTime);
  4                 }

 

y lo mismo en el metodo Draw:

  1             foreach (CapaParallax capa in capasParallax)
  2             {
  3                 capa.Draw(spriteBatch);
  4             }

 

 

 

Descargar Código Fuente del Proyecto

Categorías:XNA Etiquetas: , ,

Por que no me gusta el eclipse

22 febrero 2010 4 comentarios

No me gusta el Eclipse. No me gusta nada. Más bien, se podría decir que lo odio. ¿Por qué? Pues por cosas como estas:

image

 

El error es tan descriptivo que no se ni siquiera por qué peta. “El sistema no puede encontrar la ruta especificada”. ¿¿La ruta de qué?? Me caguen’ti, Eclipse.

Un proyecto que hace 1 día funcionaba sin problemas, y ahora de la noche a la mañana, sin tocar NADA, petas? Como diría “Marcial”: “Veste a la meirdaaaaaaaaaaaa”

Eclipse: Veste a la mierda!!!!!!!

 

Así que me ha tocado borrar el Eclipse y volver a instalar todo, configurarlo y cargar los proyectos que tenia antes. El Netbeans no saba tantos problemas!

Categorías:Informática Etiquetas: , ,

Colección CODEGAME por 10 leuros

20 febrero 2010 39 comentarios

image

Ayer me compre, junto con R2d2rigo, la primera entrega de la nueva promoción de Ubisoft. Por 10€, me compré los siguientes juegos:

Far Cry 2: Fortune’s Edition: 30€

Splinter Cell: Chaos Theory: 10€

World in conflic + expansion: 30€ + 15€

 

En total hubiera salido por unos 85€ (comprando todos los juegos por Steam, que es de donde he mirado los precios), y de esta forma salen los 3 por 10€. Lo veo una muy buena oferta.  Además, todos los juegos vienen con sus claves para jugar online.

Hay gente que dirá: pues vaya juegos más malos. Bueno, puede que no sean lo mejor de lo mejor, pero como iniciativa está muy bien. A ver si las demás compañías toman ejemplo, jejeje

Es que si los juegos fueran más baratos, más gente compraría juegos originales.

 

Toda la colección en http://www.codegamecoleccion.com/

Categorías:General Etiquetas: , ,

Ipad vs TeleSketch

10 febrero 2010 1 comentario

Que no estaba muerto, que solo estaba de parranda, XD

En mi ausencia, fue presentado el iPad. Iba a ser una revolución. Esperaremos a ver como acaba, pero no le veo mucho futuro yo al trasto este. Y viendo cosas como esta, parece que no soy el único:

image

 

FUENTE: http://www.geekool.com

Categorías:Frikismo, Humor, Internet Etiquetas: ,

Destinos Erasmus Informatica Alicante 2010

2 febrero 2010 2 comentarios

Estoy pensando en irme de Erasmus el año que viene. Asi que me he pueto a hacer un mapa con los destinos a donde me puedo ir. Es solo para informatica del año 2010, pero a lo mejor os srive.

La url del mapa es: http://maps.google.es/maps/ms?f=q&source=s_q&hl=es&geocode=&ie=UTF8&msa=0&msid=118131694586991893817.00047e9f9151d16d009ca&ll=52.268157,14.985352&spn=21.376829,64.467773&z=5

image

Un saludo

Categorías:General, Universidad Etiquetas: ,

Tutorial Space Invaders

1 febrero 2010 2 comentarios

Para la gente que sigue el tutorial de XNA, os dejo con la ultima entrega que tengo programada, ya que no se cuando podre continuar con las entregas.

www.nosoyfriky.es/spaceInvaders/spaceInvaders8.rar

Un saludo

Categorías:XNA Etiquetas: , ,