Ya se puede bajar la preview del programa cliente para Windows de SkyDrive!
25GB + Software Cliente = Chau DropBox!!

Ya se puede bajar la preview del programa cliente para Windows de SkyDrive!
25GB + Software Cliente = Chau DropBox!!

A continuación, la edición número 5 de 5 noticias sobre Windows Phone, cortesía de NN.
El Marketplace desde Zune Software no estará disponible para los usuarios, y en cambio solo se podrá comprar via Web o a través del teléfono. Esto afectará los links del tipo “zune://” en la PC ya que no podrán ser abiertos con el software.
![]()
Fuente: http://bit.ly/IaQpR2
El evento más grande del año, de la década…de la historia! está por comenzar. Pocas veces tenemos oportunidad de participar en algo de esta magnitud a nivel latinoamérica.

Actualmente estamos en plena etapa de Brainstorming a través de Twitter, usando el Hashtag #ProgramathonWP7 para sumar recursos, ideas, comentarios, videos, etc. Aquí mismo iremos comentando las novedades del evento para Argentina y el resto de LatAm.
Una nueva entrega del resumen semanal que da que hablar en toda LatAm.
Luego del Especial sobre Lumia 900 y la galería del Samsung Focus Desarmado volvemos a publicar nuestro Newsletter con las noticias más candentes de la semana.
La aplicación oficial y gratuita para Windows Phone del portal más grande de compras de Latinoamérica, ha hecho eco en grandes Blogs a nivel mundial. Si bien está disponible para Brasil por el momento, nos da una idea de lo que vendrá para el resto del continente dentro de poco.
Fuente: http://bit.ly/IWY94H
La historia comienza así: La aplicación “I’m a WP7” es una aplicación social, que tiene como agregado “guardar” el modelo y SO del teléfono y mostrar de forma estadísticas las cantidades de personas usando cada uno.
Al parecer pudieron comprobar que un handset con Windows Phone 8 utilizó y se registró a la plataforma, dejando al descubierto hasta el numero de Build de la versión.
Si a esto, le sumamos la aparición en las estadísticas de varios sitios relacionados con Windows Phone del Sistema Operativo Windows Phone 8 (ver imagen arriba), podemos concluir que estamos muy prontos a tener novedades oficiales sobre el mismo.
Bajar I’m a WP7: http://bit.ly/HUoWin
Siempre lo dije, si hay un país en donde me gustaría vivir, sería Rusia (algunos saben los motivos y otros tal vez no) y este tipo de campañas hechas 100% con creatividad local no hacen más que hacerme sentir en el camino correcto!
Gente completamente sorprendida, en medio de centros comerciales por Bailarinas, Angry Birds, “Policias”… en fin miren y disfruten!
El spot, llamado Amazing Nokia Lift fue furor en la web, con millones de reproducciones en Youtube.
La nueva versión llegará la semana próxima, el 25 de Abril para ser exactos. Entre las mejoras, podemos contar con el uso de nuestro XBOX Live Gamertag y nuestro Avatar para el Wordament.

Para celebrar, el equipo completo de Wordament va a estar en un Microsoft Store al día siguiente, en una competencia presencial, con comida y bebida gratis en Washington, Estados Unidos.
Fuente: http://bit.ly/IDvob2
Bueno, no es algo relacionado directamente con Windows Phone por el momento, pero justamente AYER publicaron los detalles de cada versión, que explicamos a continuación.
En resumen, serán 3 las principales:
Tabla Comparativa Completa
| Característica | Windows 8 | Windows 8 Pro | Windows RT |
| Actualización desde W7 Starter, Home Basic y Home Premium | x | x | |
| Actualización desde W7 Professional y Ultimate | x | ||
| Pantalla de Inicio, Semantic Zoom y Live Tiles | x | x | x |
| Windows Store | x | x | x |
| Aplicaciones Metro | x | x | x |
| Office Incluído | x | ||
| Internet Explorer 10 | x | x | x |
| Encriptación de Dispositivo | x | ||
| Cuenta Microsoft | x | x | x |
| Vista Escritorio | x | x | x |
| Instalación de aplicaciones x86/x64 | x | x | |
| Nuevo Windows Explorer | x | x | |
| Windows Defender | x | x | x |
| Packs de Idiomas | x | x | x |
| Storage Spaces | x | x | |
| Nuevo Soporte para Multi Monitor | x | x | x |
| Nuevo Task Manager | x | x | x |
| Windows Update | x | x | x |
| SmartScreen | x | x | x |
| Windows Media Player | x | x | |
| Exchange Active Sync | x | x | x |
| Historial de Archivos | x | x | x |
| Montar ISO/VHD | x | x | x |
| Banda Ancha Móvil | x | x | x |
| Contraseña e Imagen | x | x | x |
| Reproducir En… | x | x | x |
| Cliente de Escritorio Remoto | x | x | x |
| Refresh de PC | x | x | x |
| Snap View | x | x | x |
| Teclado Tactil | x | x | x |
| Booteo Seguro | x | x | x |
| Cliente VPN | x | ||
| BitLocker | x | ||
| Boot dede VHD | x | ||
| Cliente Hyper-V | x | ||
| Politicas de Grupo | x | ||
| Anfitrión de Remote Desktop | x |
Fuente: http://bit.ly/HPPZMp
![]() | ![]() |







Bueno, por fin hemos decidido hacer honor al mejor teléfono de la familia Lumia y tenemos un mix de todo lo que sucedió la semana última con Lumia 900.

Características de hardware y software de Lumia 900.
| Procesador | 1.4 GHz – Single Core |
| RAM | 512MB |
| Memoria | 16Gb interna |
| Cámara Posterior | 8MP, 720p |
| Cámara Frontal | 1MP |
| Pantalla | 4,3” ClearBlack |
| Resolución | 480 x 800 |
| Colores de Carcaza | Cyan, Negro, Blanco |
| Peso | 160g |
| Batería | Hasta 7h en uso - 1830mAh |
| SO | Windows Phone 7.5 “Mango” |
| Software Nokia | Maps, Drive, Music, Photo y en un futuro… Nokia TV y Reading |
A continuación, los sitios más prestigiosos de reviews a nivel mundial con el rating en la misma tabla (así no tienen que ir a verla si no quieren) y el link para los interesados.
El común denominador en todos los sitios es: “El mejor Windows Phone hecho hasta el momento”.
| GDGT – Score 90/100 | http://gdg.to/uGAjfq |
| Gizmodo – Score 4/5 | http://gizmo.do/HeOE5d |
| CNet – Score 8/9 | http://cnet.co/H1u1ao |
| The Verge 7/10 | http://www.theverge.com/products/lumia-900/4624 |
Un video de Review aquí mismo.
Es el primer salto evolutivo en la familia Lumia, la lente Carl Zeiss otorga una claridad increíble en relación a la anterior de 5MP (Lumia 800 y otros). Al hacer clic en la foto podrán ver la imágen en tamaño completo.
![]() | ![]() |
Una de las características más relevantes del teléfono, la tecnología ClearBlack, diferencia de todos los otros dispositivos en el mercado al Lumia, con un brillo prácticamente nulo a la luz del sol.
La fiesta fue MASIVA, la gente copó Time Square (la esquina más famosa de NY) y bailando al ritmo de Nicki Minaj recibió el lanzamiento del nuevo hijo pródigo.

A continuación el video oficial del lanzamiento, el último 7 de Abril. en una palabra: AMAZING.
Son dos comerciales con un grado de creatividad que asombra… Una manera única de promocionar Lumia, Windows Phones y hasta Live Tiles.
En este caso, múltiples escenarios de uso para el teléfono, una vez mas promocionando a Nokia, AT&T y Windows Phone. www.att.com/lumia.
Según todos los pronósticos, Lumia 900 llegará a Europa a principios del mes de Mayo, y se espera una repercusión en mercados ya afianzados como Inglaterra y Finlandia, en donde el iPhone está teniendo durísima competencia con Windows Phone. http://bit.ly/HYIPnW

Lumia 900 Ganador del último SmartPhone Madness – Revista LAPTOP Review

Según los usuarios, desafío y venció al Huawei Ascend D, al Galaxy S II y al propio Lumia 710 (el hermanito menor de la familia) para llevarse el triunfo entre 8 SmartPhones de alta gama.
Luego de un intercambio con Matías Iacono (http://miacono.wordpress.com/) en Facebook, me puse a listar libros en inglés que tengo y pueden ser de utilidad para explicar este tema en varios ámbitos.

El primero es bastante común para conseguirlo, del segundo al cuarto puede haber copias en algunas universidades, pero el quinto es bastante “poco usual” verlo aquí en Argentina.
De igual forma, si contamos con un lector Kindle o similar, podemos comprar estos libros por Amazon y disfrutar de la versión digital sin movernos de casa.
El resumen semanal más popular de Latinoamérica! de la mano de NN.
Así, parece…. si bien el lector puede encontrar este punto un poco dificil de creer… Nokia estaría trabajando en un prototipo completamente fabricado sobre H2O congelado…

Como no podia ser de otra manera, la gente de Nokia también festeja el día de los inocentes en Abril, para lo cual se tomó la libertad de “divulgar” esta pequeña broma.
Tras los fuertes rumores de que Microsoft y Nokia estarían pensando en hacer una oferta conjunta por la companía canadiense RIM , luego de que sus acciones bajaran de 140U$D en 2010 a 14U$D el viernes pasado.

Esto se suma al a posibilidad de que el próximo SO de Blackberry sea completamente reemplazado por Windows Phone y Windows 8, y el servidor empresarial de BlackBerry por Microsoft Exchange.
Fuentes: http://onforb.es/HeTGeV, http://bit.ly/HE8ZvR
At&T en Estados Unidos, informó que la preventa del Lumia 900 está completamente colapsada de pedidos, y se quedaron sin Stock asegurado por el momento.
Esto puede tener varios motivos, pero sin dudar uno de ellos es la serie de videos en Youtube donde se compara al teléfono con otros SmartPhones.
Fuente: http://bit.ly/HOvGzc
4 – Windows Phone con PureView 99.99% confirmado!
Una solicitud de empleado en la casa matriz de Nokia abre las puertas al desarrollo de la nueva generación de telefonos, probablemente con Windows Phone 8 y capacidades asombrantes como PureView.
La solicitud es muy clara, diciendo cosas como:
“Has oído hablar de PureView? Participa en la nueva generación de teléfonos Nokia con Windows Phone. Puedes ser parte del cambio trabajando en tareas relacionadas con captura de imágenes y cámaras digitales para móviles.”

Fuente: http://bit.ly/HfLKpM
A continuación los 5 motivos por los cuales los developers de plataformas Android deberían estar al menos preocupados, según un informe (nada mas ni nada menos) que de la revista Forbes.
Fuentes: http://onforb.es/HfMI5s
Hasta aquí el resumen semanal de Noticias de Windows Phone!
Carrera de XNA – Capítulo 4 – Artículo 6
Hasta ahora tenemos una nave volando a través de unas hermosas nubes, con la sensación de avance infinito. Hemos logrado utilizar animaciones para el jugador y el fondo, modificando sus posiciones, pero nos falta un desafío, algo que vuelva interesante a nuestro juego.
Y de esto se tratan los Enemigos. La idea es crear una clase que los represente para luego hacerlos aparecer de forma aleatoria en la pantalla.
Crearemos una nueva clase, llamada Enemy.cs en nuestro proyecto del juego.
Modificamos nuestra sección de usings, por lo siguiente:
| using System; |
Ahora definiremos dentro de la clase los siguientes campos y métodos que iremos completando en este artículo, como es de costumbre sigue con la lógica de Initialize, Update y Draw.
| // Animation representing the enemy // The position of the enemy ship relative to the top left corner of thescreen // The state of the Enemy Ship // The hit points of the enemy, if this goes to zero the enemy dies // The amount of damage the enemy inflicts on the player ship // The amount of score the enemy will give to the player // Get the width of the enemy ship // Get the height of the enemy ship // The speed at which the enemy moves public void Initialize() public void Update() public void Draw() |
Reemplazamos el método Initialize por lo siguiente.
| public void Initialize(Animation animation,Vector2 position) // Set the position of the enemy // We initialize the enemy to be active so it will be update in the game
// Set the amount of damage the enemy can do // Set how fast the enemy moves
} |
Como verán, solo establecemos algunas variables (salud total, velocidad, animación y posición) que luego son necesarias para dibujar y serán modificadas en cada Update.
A continuación, reemplazamos el método Update() por el siguiente código.
| public void Update(GameTime gameTime) // Update the position of the Animation // Update Animation // If the enemy is past the screen or its health reaches 0 then deactivateit |
Simplemente, movemos el enemigo dependiendo la velocidad y actualizamos la posición. A su vez, si detectamos que está fuera de la pantalla, se pone en inactivo para que no sea dibujado.
El método Draw() lo reemplazaremos con el siguiente fragmento.
| public void Draw(SpriteBatch spriteBatch) |
Con esto, reutilizando lo que teníamos hasta ahora, fue sencillo crear nuestra clase Enemigo. Ahora procederemos a utilizarla desde nuestro Game1.
Será necesario instanciar nuestros Enemigos, para esto definiremos una List donde pondremos cada uno de ellos. Utilizaremos dos instancias de tipo TimeSpan (tiempo) para definir el tiempo de Respawn (es decir, cada cuanto reaparecen los enemigos). Por último, usaremos una instancia de la clase Random para generar números aleatorios.
Las variables son las siguientes.
| // Enemies Texture2D enemyTexture; // The rate at which the enemies appear TimeSpan enemySpawnTime; // A random number generator Random random; |
Ahora dentro del Initialize() de nuestro Game1, colocaremos el siguiente código para instanciar la lista de enemigos, los TimeSpan y el generador de aleatorios.
| // Initialize the enemies list // Set the time keepers to zero // Used to determine how fast enemy respawns // Initialize our random number generator |
Dentro del LoadContent(), cargaremos nuestra animación del enemigo, de la siguiente forma:
| enemyTexture = Content.Load<Texture2D>("Imagenes/animacionMina"); |
Para crear cada enemigo, será necesario instanciar una animación, inicializarla, definir la posición del enemigo de forma aleatoria, instanciar la clase Enemy y por último setear los valores en la misma. Todo esto lo encapsulamos en un nuevo método llamado AddEnemy.
| private void AddEnemy() // Initialize the animation with the correct animation information // Randomly generate the position of the enemy // Create an enemy // Initialize the enemy // Add the enemy to the active enemies list |
Lo más relevante del código anterior es la posición que elegimos para mostrar al enemigo, que debe ser lo suficientemente lejos de nuestro Jugador para darle tiempo a reaccionar.
De la misma manera, debemos definir nuestra lógica de actualización de enemigos, para lo cual escribimos un método UpdateEnemies.
| private void UpdateEnemies(GameTime gameTime) // Add an Enemy // Update the Enemies if (enemies[i].Active == false) |
Esto verifica una serie de cosas significativas (como si es necesario agregar o quitar enemigos del juego) dependiendo la cantidad.
Dentro del método Update() llamamos a UpdateEnemies que acabamos de escribir. Justo después de actualizar nuestro background.
| // Update the enemies |
Por último, nos queda dibujar los enemigos en pantalla. Esto es sencillo recorriendo la lista de enemigos que creamos y llenamos, llamando al método Draw de cada instancia de enemigo.
Entonces, en nuestro método Draw() justo después de dibujar el fondo, agregamos el siguiente código:
| // Draw the Enemies |
Así debería verse nuestro juego al correrlo, con enemigos aleatorios apareciendo uno detrás de otro.
Descarguen el juego en este estado, desde el siguiente link: http://sdrv.ms/JfxLqZ
Carrera de XNA – Capítulo 4 – Artículo 7
Las colisiones nos permiten detectar el “choque” entre dos elementos del juego.
El cálculo de colisiones es una de las tareas más comunes en todo tipo de juegos, desde plataformas, juegos de carreras, peleas, y hasta el más simple Pong utiliza este tipo de cálculo.
La colisión a detectar es entre la clase del jugador creada al principio y la clase Enemy que creamos recientemente.
Para esto dentro de nuestro Game1, crearemos el siguiente método UpdateCollision().
| private void UpdateCollision() // Only create the rectangle once for the player // Do the collision between the player and the enemies // Determine if the two objects collided with each // Since the enemy collided with the player // If the player health is less than zero we died } |
Analicemos un poco este método. Teniendo en cuenta que tanto nuestro jugador como nuestro enemigo son elementos gráficos, que se enmarcan dentro de rectángulos (mas allá de las partes curvas que no se dibujan) podemos detectar la colisión entre estos, sabiendo su posición, ancho y alto.
La clase Rectangle con su método Intersect nos resuelve esta lógica, pero debemos tener en cuenta que cuanto más “Redondeado” es nuestro objeto a dibujar, menos precisión tendremos en el cálculo.
Para finalizar con esta detección de colisiones, procederemos a llamar al método UpdateCollision() desde nuestro Update(), justo después de UpdateEnemies() que agregamos en el artículo pasado.
| // Update the collision |
Al correr el juego, veremos como cada enemigo desaparece al colisionar con nuestro jugador. Pueden descargar el juego en este estado desde el siguiente link: http://sdrv.ms/JfxIeK
En este artículo veremos un punto clave para la creación de cualquier juego: Dibujar texto (cadenas de caracteres) en la pantalla, utilizando las fuentes disponibles. Veremos la clase principal involucrada en la creación de textos, así como la forma de configurarla mediante un archivo de contenido.
Esta clase representa una Fuente o Tipografía a nivel de código. Será necesario crear una instancia de la misma a través de un archivo de tipo XML con la configuración del tipo de letra, tamaño y características (negrita, cursiva, etc.).
Creando un SpriteFont
La estructura del archivo es bastante sencilla, como podremos ver a continuación tiene campos que son clave para la definición de la fuente:
Los campos restantes del archivo serán vistos en profundidad en el nivel Intermedio de la carrera.
Para añadir un archivo de tipo SpriteFont, debemos ir a nuestro Proyecto de contenido hacer click derecho en el mismo, para luego seleccionar la opción Agregar, Nuevo Elemento.
Luego debemos elegir de la lista de elementos disponibles el tipo Sprite Font y configurar un nombre para el mismo.
Se creará el archivo dentro del proyecto de contenido. Para finalizar podemos cambiar algunas propiedades como el Size y Style, a modo de ejemplo:
Es importante contar con fuentes licenciadas o bien gratuitas. XNA Game Studio nos provee un pack de 15 fuentes para descarga inmediata (http://create.msdn.com/en-US/education/catalog/utility/font_pack). XNA se encarga de empaquetar la representación de cada carácter en un archivo de tipo XNB al momento de compilar, por lo cual no es necesario que la persona que instale nuestro juego tenga la fuente instalada en su sistema.
También podemos encontrar mas fuentes de Microsoft licenciadas de manera gratuita en: http://msdn.microsoft.com/en-us/library/ms746705.aspx.
Una vez definida nuestra fuente a través del archivo SpriteFont e inicializada en nuestro método LoadContent podemos hacer uso de la misma en el método Draw de la siguiente manera:
Analizando los parámetros del método DrawString podemos ver:
Los Fondos Desplazables permiten crear el efecto de “movimiento” en cualquier juego, sin necesidad de renderizar grandes cantidades de elementos en pantalla. La idea general consiste en utilizar una imagen de mayor tamaño que la pantalla para luego moverla de acuerdo a lo que suceda en el juego generando el efecto de traslación.
Una imagen de fondo para crear el efecto de movimiento. Debe ser lo suficientemente grande para no dejar bordes en nuestra pantalla definida de juego.
Podemos resumir el proceso en:
A continuación, el video tutorial de como realizar un Fondo Desplazable en 2D con XNA, en este caso para Windows.
En este artículo analizaremos las herramientas principales para desarrollo de videojuegos sobre XNA.
A su vez analizaremos los pasos básicos de instalación de cada una de ellas sobre el sistema operativo Windows 7.
Podemos separar en tres grandes grupos todo lo disponible para desarrollo en esta tecnología.
Por un lado contamos con XNA Framework como plataforma de desarrollo, es decir un conjunto de librerías que nos facilitan el trabajo a la hora de programar un videojuego en cualquiera de las 3 plataformas de Microsoft.
En segundo lugar tenemos el XNA Game Studio, un set de herramientas de desarrollo que se acoplan a nuestro IDE preferido (Visual Studio 2010) para poder desarrollar fácilmente sobre el XNA Framework.
Cabe destacar que debemos tener previamente instalado el Visual Studio 2010 para poder desarrollar con Game Studio, o bien utilizar la versión Express.
En ultima instancia, el Windows Phone SDK en su versión más reciente, es un conjunto de cosas que contiene el Game Studio, el Visual Studio 2010 Express (para Windows Phone) y el XNA Framework en un paquete unificado. Esto es una gran ventaja si no tenemos nada instalado en nuestra computadora y deseamos bajar un único archivo con todo lo necesario.
Figura 1 - Ecosistema de Videojuegos XNA
Para el Windows Phone SDK tenemos requerimientos de instalación muy específicos que se pueden resumir en la siguiente tabla:
| Sistemas Operativos Soportados | Windows Vista SP 2 x86 y x64 Windows 7 x86 y x64 Nota: Starter Edition no es soportado |
| Sistemas Operativos no Soportados | Windows Server Windows XP Máquinas Virtuales |
| Hardware | 4GB de Espacio Libre en el Disco 3GB de Memoria RAM recomendada Placa de Video con soporte para DirectX 10 en adelante. Sporte para Windows Display Driver Mode (WDDM 1.1) Microsoft Direct3D
Nota: El Emulador de Windows Phone tiene requerimientos particulares para correr correctamente. |
| Software | Para hacer pruebas sobre dispositivos necesitaremos el Zune Software No es obligatorio contar con Visual Studio 2010 professional, ya que la versión Express se incluye en la descarga. |
¿Que contiene exactamente este SDK? Más allá del desarrollo de videojuegos con XNA, el paquete completo incluye los siguientes:
En el caso de querer crear un entorno virtualizado (con Virtual PC o similar) para la instalación de las herramientas, tenemos que recordar que el Windows Phone Emulator no va a funcionar sobre máquinas virtuales al tratarse de una plataforma virtual en si mismo. Por lo tanto recomendamos instalar el SDK sobre una máquina física con Windows Vista o Windows 7 directamente.
Nota: Windows Phone SDK viene localizado al idioma Español junto con Visual Studio Express para Windows Phone. A su vez existen otros 9 lenguajes oficiales que podemos encontrar (Portugués, Francés, Alemán, etc.) para descargar.
Existen varios complementos que funcionan con XNA, para agilizar el desarrollo de tipos específicos de juegos (engines), manejo de contenidos e imágenes (sprites), probar nuestros juegos (test tolos), modificar juegos existentes (editors) y mucho más.
La mayoría son de tipo Open Source o Gratuitos y si bien existen Pagos (sobre todo Motores para tipos específicos de Juegos) hay muchas comunidades abiertas dispuestas a colaborar con cualquier desarrollador independiente.
El presente artículo muestra las plataformas soportadas por XNA y los requerimientos básicos de desarrollo y ejecución. A su vez, detalla las opciones para la creación de juegos multi-plataforma y algunos consejos útiles a la hora de trabajar con los mismos.
Las 3 plataformas principales de Microsoft están soportadas por XNA para el desarrollo de videojuegos.
Existen dos métodos principales para la creación de juegos en múltiples plataformas.
Conceptualmente es sencillo: Podemos mantener dentro de una misma Solución toda la lógica principal del juego y las diferentes versiones para cada plataforma, con el objetivo de reutilizar la mayor cantidad de código y contenidos posible.
Una de las características más interesantes en XNA Game Studio es la capacidad de crear copias para plataformas específicas a partir de un juego base.
A modo de ejemplo, podemos crear nuestro juego para Windows y luego crear una “Copia para Xbox 360” y otra “Copia para Windows Phone” (siempre que tengamos el SDK de Windows Phone instalado. Ver Carrera de Windows Phone en MVA)
Nota: Cualquier proyecto de cualquier plataforma puede ser convertido a cualquier otra. Al hacerlo, todas las referencias de una plataforma específica se traducen al equivalente dentro del proyecto nuevo. A su vez, los proyectos creados con el Asistente de Conversión quedan asociados al original, y cada archivo agregado, renombrado o eliminado es también afectado en todas las otras plataformas.
El Contenido de nuestro juego, es decir la colección de imágenes, sonidos, fuentes, texturas, etc. debe estar personalizado para cada plataforma. Si bien podemos crear un proyecto genérico de contenido con elementos “comunes”, las buenas prácticas indican que debemos crear un proyecto particular de contenido para cada plataforma.
Figura 1 - Contenido por Plataforma
Como podemos ver en la Figura 1 podemos crear una Solución con proyectos para cada plataforma, en este caso MyFirstGame (para Windows), Windows Phone Copy of MyFirstGame (para Windows Phone) y por último Xbox 360 copy of MyFirstGame (para Xbox).
Los 3 proyectos referencian al contenido común, ubicado en MyFirstGameContent pero solamente la versión para Windows Phone referencia al proyecto de contenido para dicha plataforma PhoneContent.
XNA Game Studio está disponible para los siguientes sistemas operativos:
En cuanto al Hardware hay requerimientos específicos por plataforma que incluyen:
Si necesitamos escribir alguna parte de código que se ejecute, dependiendo de la plataforma en la que estamos, podemos utilizar los símbolos de compilación, es decir palabras clave que pueden ser “consultadas” a través de código.
El siguiente fragmento de código en C# muestra como detectarlos con sentencias de pre-compilación (las líneas de código que comienzan con un carácter “#”).
Como crear un proyecto básico de XNA para Windows, y utilizar la herramienta automática para tener la versión Windows Phone / XBOX 360 sin esfuerzo.
Windows Phone nos ofrece una serie de controles únicos para utilizar dentro de nuestros juegos en XNA. Entre las herramientas que podemos contar se encuentran:
En esta ocasión veremos un video que nos enseña a manejar el input de nuestro juego a través del Acelerómetro, modificando la posición de un elemento en pantalla. Utilizaremos solo uno de los ejes disponibles para simplificar el control.
En el siguiente video podremos aprender cosas como:
Los Mecanismos de Interacción (comúnmente llamados Controles) permiten al usuario interactuar con nuestro Juego. En este primer artículo, veremos los Controles básicos disponibles para plataforma Windows como el Teclado y el Mouse. En próximas entregas veremos uso de controles avanzados como Kinect for Windows.
El método tradicional para cualquier juego es utilizando al menos una o dos teclas en el Teclado. Cabe destacar que XNA tiene soporte para múltiples jugadores en una misma computadora, ya que podemos detectar múltiples teclas presionadas en un mismo instante.
El lugar correcto para poner nuestra lógica de input es en el método Update. Al detectar una o más teclas presionadas podremos modificar valores en nuestro juego para ver reflejado en acciones el input del usuario.
Para esto:
Posición Original
Luego de tocar la flecha hacia arriba
El segundo método de entrada tradicional es el Mouse (o Ratón). Para detectarlo es necesario hacer uso de la clase Mouse y, al igual que hicimos con el teclado, obtener el estado actual. Cabe destacar que para que el mouse sea visible en un juego XNA debemos correr sobre plataforma PC e indicar al momento de inicializar el juego que queremos tener el cursor visible. En esta ocasión utilizaremos la posición del cursor y el click. En futuros niveles de la carrera aprenderemos a utilizar comandos avanzados como la Rueda de Scroll, el botón Derecho, etc.
El ejemplo a continuación dibuja un cuadrado en pantalla y lo mueve a la posición exacta en donde hacemos clic con el Mouse.
Para esto:
Al hacer Clic en algún lado