I

Intel_Developers

Usuario

Primer post: 6 ago 2014Último post: 28 oct 2015
14
Posts
1500
Puntos totales
0
Comentarios
D
Descarga Herramientas de Intel para Desarrolladores Android
InfoporAnónimo7/15/2015

Hay cinco ejemplos para Android* que recientemente se pusieron a disposición de los desarrolladores de aplicaciones para Android en el sitio Multi-Media Sample Framework (MMSF) de Intel: https://software.intel.com/sites/landingpage/mmsf/documentation/index.html Multi-Media Sample Framework para Android* permite decodificar múltiples secuencias de video simultáneas y luego mostrarlas por medio de la API de gráficos 3D OpenGL* ES 2.0. Con esta API, los desarrolladores pueden acceder a sombreadores de fragmentos y vértices para trabajar de varias maneras con la trama de video final por la que se haya optado, entre ellas algoritmos de sombreadores de fragmentos tales como: detección de bordes, ajuste de color / matiz / saturación, filtrado de imagen general, detección de movimiento, etc. MMSF trabaja en el nivel más alto para la decodificación y presentación de video. Todo el MMSF para la implementación de Android* se basa en interfaces de nivel Java* disponibles en la mayoría de las plataformas a partir de Android 4.4.x. Ejemplo 1: Decodificación de un solo video a geometría 3D. Descarga:https://software.intel.com/sites/default/files/managed/0f/69/mmsfexample1.zipEjemplo 2: Decodificación de múltiples videos a geometría 3D. Descarga:https://software.intel.com/sites/default/files/managed/02/94/mmsfexample2.zipEjemplo 3: Decodificación de múltiples videos + posprocesamiento por sombreador de píxeles.Descarga: https://software.intel.com/sites/default/files/managed/27/06/mmsfexample3.zipEjemplo 4: Mostrar datos de cámara a geometría 3D. Descarga:https://software.intel.com/sites/default/files/managed/04/cd/mmsfexample4.zipEjemplo 5: Decodificación de un solo video + presentación de fuente de cámara a geometría 3D.Descarga: https://software.intel.com/sites/default/files/managed/90/1d/mmsfexample5.zipMarco de trabajo MMSF para Android* completo (todos los ejemplos y el código del marco en un solo proyecto). Descarga: https://software.intel.com/sites/default/files/managed/30/9e/MMSF.zip Para obtener más información sobre las optimizaciones del compilador, consulte el aviso sobre la optimización.

0
0
Cómo crear una mascota virtual usando HTML5 y Cordova
Cómo crear una mascota virtual usando HTML5 y Cordova
InfoporAnónimo1/30/2015

En un mundo donde el tiempo se ha vuelto escaso ya nadie tiene tiempo para cuidar ni darle de comer a una mascota. Por alguna extraña razón (los humanos somos un poco raros) se inventaron las virtual pets, es decir, aplicaciones que simulan una mascota de verdad y permiten cuidarla y darle de comer. Todo desde la comodidad de tu móvil. Dada la popularidad de este género, que comenzó como llaveritos "Tamagochi" y evolucionó a mega-éxitos de Android como Pou, pensé que sería interesante crear un tutorial de mascota virtual para enseñar desarrollo de videojuegos con HTML5 y Cordova, utilizando la librería de juegos de HTML desarrollo de videojuegos con HTML5 y Cordova, la cual es gratis y de código abierto. HTML5 es una de mis áreas de especialización, y este tutorial está pensado como punto de partida para desarrolladores que nunca han creado juegos pero que quieren empezar a crear sus propios juegos móviles multi-plataforma. Pueden obtener más información sobre mis recursos educativos en mi sitio web Zenva y también pueden visitar mi curso online gratuito de Desarrollo de Juegos en HTML5.(en inglés) en mi plataforma de cursos Zenva Academy. Mis otros tutoriales de Phaser: •How to Make a Sidescroller Game with HTML5 en HTML5 Hub. •HTML5 Phaser Tutorial – SpaceHipster en GameDev Academy •HTML5 Phaser Tutorial – Top-down Games en GameDev Academy •HTML5 Mobile Game Development with HTML5 Mobile Game Development with Phaser – Curso online en Zenva Academy. Código Fuente del Tutorial Descarga el código de este tutorial en un archivo ZIP acá. Puedes también clonarlo de Github. Si quieres ver el producto terminado puedes verlo acá. ¿De dónde salieron las imágenes de este juego? Todo el arte de este juego fue creado por mi Zenva y lo puedes utilizar en proyectos comerciales y no comerciales, no es necesaria la atribución. (aunque si creas el próximo Candy Crush no me quejo si me compras un Ferrari Metas de Aprendizaje En este tutorial vas a aprender a crear un juego sencillo de mascota virtual para Android (aunque exportable a otras plataformas también) utilizando la librería de juegos en HTML5 Phaser y Cordova Luego de completar este tutorial estarás familiarizado (espero!) con lo siguiente: •Trabajo con sprites, animaciones, tweens y "estados" en Phaser. •Recepción de input del usuario en Phaser. •Creación de un juego sencillo de mascota virtual. •Cómo agregar Cordova en tu proyecto y utilizar el plugin de vibración del teléfono. •Testeo de tu juego en un móvil utilizando el Intel XDK. •Cómo construir tu aplicación para Android con y sin Crosswalk. Aplicaciones Híbridas Antes de mencionar los requerimientos de este tutorial y el entorno de desarrollo me gustaría hablar sobre las APP híbridas. Una aplicaciones web común y corriente está hecha con HTML, CSS y JavaScript, más un backend o lado del servidor. Para abrirla, basta un navegador. Una aplicación híbrida es una aplicaciones web empaquetada como aplicación nativa en un "webview". Un webview es un componente nativo (de Android, iOS y otras plataformas) que permite mostrar HTML en el teléfono. Cordova es una libraría de código abierto que nos permite empaquetar nuestros juegos y apps de HTML5 en plataformas nativas utilizando este enfoque. Cordova nos entrega además la posibilidad de acceder a muchas API nativas del teléfono, como la cámara, acelerómetro, sistema de archivos y mucho más, de manera que podamos utilizar estas funcionalidades en nuestros juegos y apps de HTML5. Image: (CC) Laig- http://commons.wikimedia.org/wiki/File:Roti_Wrap_Trafasie.jpg Durante el transcurso del tiempo, algunas de estas APIs se han vuelto estándares reconocidos por el W3C y son soportados por los principales navegadores (sin tener que incluir Cordova). Mediante la creación de plugins de Cordova, se puede extender e incluir prácticamente cualquier característica nativa en nuestras apps de HTML5. ¿Cordova o Phonegap? Esta es una pregunta que escucho muy seguido y quiero aclararlo antes de continuar. El proyecto original se llamaba Phonegap, luego la empresa Adobe compró a la empresa que estaba creando este producto, y se quedó con los derechos de la marca registrada Phonegap. El proyecto de código fuente pasó a la fundación Apache y se cambió de nombre a Cordova. Phonegap hoy en día no es nada más que Cordova + algunas configuraciones predeterminadas + servicios adicionales en la nube que ofrece Adobe. En este tutorial hablaré sólo de Cordova, pero todo aplica también para Phonegap (porque es lo mismo!). (No, no pasó a llamarse Cordova porque los desarrolladores eran de Argentina. Se llamó de esta manera porque es el nombre de la calle donde tenían su oficina). Requisitos de este Tutorial Este tutorial asume conocimientos básico-intermedios de JavaScript. Si no sabes JavaScript o sientes que necesitas un reforzamiento puede ver nuestro curso online en Zenva Academy Cómo Programar para Emprendedores - JavaScript que cubre No se necesita de experience previa con Phaser, desarrollo de juegos, Cordova ni Android.p> Los juegos creados con Phaser no se puede ejecutar simplemente haciendo doble click en el archivo index.html. Para ejecutarlos necesitas de un servidor local. Si dejas de lado el uso de Cordova, te basta cualquier alternativa de servidor web: WAMP para Windows , MAMP para Mac , Python simple HTTP server o el paquete http-server de Node.js. El juego que construiremos utiliza el plugin de Vibración de Cordova de manera que el teléfono vibre cuando hacemos girar a la mascota virtual. Cuando corras este ejemplo en tu computador éste no vibrará, pero el juego no se caerá y funcionará bien, por lo que puedes correrlo desde cualquier navegador. Para correr juegos que utilicen Cordova, éstas son algunas alternativas: •El Intel XDK viene con Cordova, el emulador Ripple Emulator y herramientas para testear en el teléfono. •El Ripple Emulator se puede descargar por separado como extensión de Chrome. •Si instalas el Android SDK y la línea de comandos de Cordova puede utilizar el emulador y el resto de las herramientas de Android. En este tutorial vamos a utilizar el Intel XDK ya que nos permite emular, construir y testear en el teléfono sin tener que instalar SDKs o líneas de comando. El XDK también se puede utilizar como editor de código ya que incluye el editor Brackets. En mi caso yo prefiero desarrollar con Sublime Text. Continúa leyendo más sobre Desarrollo de Juegos con HTML5 acá

1
0
Optimización de Assassin’s Creed Rogue para Intel HD Graphic
Optimización de Assassin’s Creed Rogue para Intel HD Graphic
InfoporAnónimo7/15/2015

Assassin’s Creed * Rogue es el juego que Ubisoft acaba de lanzar al mercado. Lo crearon originalmente para consolas y fue portado a PC en marzo de 2015. La historia del juego gira en torno a de una “pieza faltante” entre varias Órdenes de Asesinos y tiene lugar a mediados del siglo XVIII. Al igual que Black Flag, contiene mucha exploración naval y terrestre. El protagonista es Shay Patrick Cormac, que da la espalda a la Orden de los Asesinos para seguir su propio camino. Desde el comienzo, el equipo de desarrolladores decidió que el juego fuera compatible con una amplia variedad de plataformas de hardware, para que los fans del juego pudieran disfrutar de otra increíble aventura en el universo que tanto aprecian. Lograr que este nuevo juego tan visual pudiera utilizarse en todas las plataformas presentó nuevas dificultades al equipo encargado de la representación gráfica. Uno de los objetivos principales fue lograr 30 fps firmes a 720p en PC equipadas con Intel ® HD Graphics 4000. Los procesadores gráficos de tercera generación de Intel ® se encuentran entre los más usados de la actualidad. Poder ejecutar los juegos más nuevos y exigentes en estas máquinas finas y livianas es magnífico, pero para ello es necesario hacer concesiones y optimizaciones considerables, de manera que los jugadores puedan tener 30 fps firmes. “Los jugadores de Assassin’s Creed usan una gran variedad de hardware adaptado a sus necesidades: algunos tienen equipos enormes de escritorio, mientras que otros tienen máquinas portátiles ligeras. No vamos a decidir nosotros el tipo de manejo de energía de los usuarios en sus equipos portátiles o Ultrabooks, por eso no ofreceremos compatibilidad oficial con estos equipos. Fue una decisión que debimos tomar para garantizar que los usuarios no tuvieran sorpresas desagradables. Lo que sí queríamos era darles la posibilidad de disfrutar del juego ”, explicó Corneliu Vasiliu, el productor de Assassin’s Creed Rogue para PC. Un comienzo complejo En primer lugar, las pruebas mostraron que la velocidad de fotogramas era de entre 8 y 12, y el equipo empezó a buscar dónde hacer optimizaciones. Después de los experimentos iniciales y de trabajar en colaboración con ingenieros de Intel , resultó claro que no alcanzaría con optimizar: habría que eliminar por completo algunos pipelines de representación gráfica y algunos efectos posteriores. Para decidir qué eliminar, consideramos el costo y la influencia visual respecto de las expectativas de los propietarios de hardware. Utilizamos Intel ® Graphics Frame Analyzer, que forma parte del kit de herramientas Intel® GPA , y detectamos los efectos y las características que más afectaban el rendimiento. Las características que habilitamos son el tamaño de las texturas (incluso la reducción de las texturas por un factor de 4 casi no mejoró el rendimiento) y el filtrado anisotrópico. Características y efectos que más afectan el rendimiento: - Cantidad de llamadas a dibujo (hasta 3000 llamadas por fotograma) - Mallas de subpíxeles (20.000 polígonos produjeron 10 píxeles) - Complejidad de los sombreadores de píxeles (la operación de relleno de pantalla completa simple puede tardar hasta 500 microsegundos) Figura 1. Assassin's Creed * Rogue configurado con la máxima calidad Figura 2. El color y los detalles se reducen con la configuración media Figura 3. En la calidad baja, se nota que hay menos color, profundidad y detalles Simplificación de sombras La primera etapa de pipelines de representación gráfica fue la generación de sombras en cascada. Debido a las restricciones que impone el motor del juego , no pudimos reducir la cantidad de cascadas, por eso nos quedó solo una opción: dar a los usuarios la posibilidad de desactivar las sombras por completo. Aunque en las pruebas descubrimos que esta solución traía algunos problemas: el nivel de diseño cambiaba sustancialmente con esta opción de optimización. Figura 4. Falta de detalle con las sombras desactivadas Figura 5. Diseño original con las sombras activadas Al tener en cuenta los cambios en el nivel de detalle, tuvimos que forzar la aparición de sombras en niveles que traían problemas incluso con la calidad más baja. Utilizamos la técnica de mapas de sombra única en cascada con un filtro de tolerancia de rendimiento para habilitarlos. Figura 6. Al usar mapas de sombra simple, comienzan a aparecer los detalles con la calidad de gráficos más baja Detalles de la malla del océano La segunda optimización más importante fue ajustar el nivel de detalle de la malla del océano. La única cuestión delicada en esta parte fue mantener la proporción de los triángulos para evitar que se observaran temblores en la lejanía. Figura 7. El océano visto como malla de alta calidad Figura 8. El océano visto como malla de calidad media Figura 9. Vista del océano como malla de baja calidad Optimización de mallas complejas La tercera optimización fue simplificar los cálculos de vértices para las grandes mallas “falsas” (objetos distantes agrupados en una malla). En el juego no se usaron mapas normales, sino cálculos complejos de inversión de matriz espacial tangencial. Por ello, creamos nuevas permutaciones de sombreadores que dejaban de lado los mapas normales y simplificaban los cálculos de objetos distantes. Partículas Para las configuraciones más bajas, redujimos la cantidad de partículas sin que se perdiera la uniformidad de aspecto del juego ni la sensación general de las escenas. Si reducíamos demasiado, íbamos a arruinar el diseño del nivel o del efecto, y si nos quedábamos cortos con la reducción, no íbamos a lograr mejoras de rendimiento. Optimizaciones comunes Algunas técnicas y efectos de representación se simplificaron en las configuraciones de menor exigencia gráfica: - Los cálculos para la iluminación del ambiente no toman en cuenta la irradiación, la oclusión ambiental del mundo ni las sombras de las nubes. - No hay calcos. - No hay refracciones. - Los reflejos del espacio de pantalla están desactivados. - Algunos efectos posteriores utilizaban acceso por píxel de alta calidad en la reducción de escala, y filtrado gaussiano. La versión de baja calidad utiliza menos accesos. - Algunos materiales utilizaban prueba alfa incluso cuando no tenían canal alfa. La nueva permutación resolvió esto. - Se eliminaron dos rellenos de pantalla completa. Problemas con los que nos enfrentamos Todas estas optimizaciones causaron algunos inconvenientes: - Agregar opciones de nivel de calidad aumentó la cantidad de permutaciones de sombreadores (de 24 a 192), así que compilarlas sobre la marcha produjo temblores y errores durante la transmisión por secuencias en segundo plano. Tuvimos que usar todas estas versiones de sombreadores optimizadas solo para la pasada por GBuffer (redujo la cantidad de sombreadores de 192 a 52). - No pudimos lograr 30 fps firmes en Intel HD Graphics 4000 porque parte del contenido del juego era demasiado complejo y no se lo podía simplificar (afectaba la historia). Pero, de todas maneras, el juego funciona en esta clase de hardware. - Descubrimos lo estricto del comportamiento de la función sincos de HLSL en Intel HD 4000; el argumento de la función se debe normalizar alrededor del intervalo [-pi; pi] para que no produzca resultados incorrectos. Con la vista en el futuro La tercera generación de procesadores Intel Core se lanzó en 2012. En los últimos dos años, Intel sacó al mercado dos nuevas generaciones de procesadores Core con procesadores de gráficos mejorados, incluidos los nuevos Iris™ y Iris™ Pro, que pueden incrementar en un factor de más de 2,4 el rendimiento en Intel HD Graphics 4000 y aumentar la eficiencia energética, ideal para que los usuarios puedan jugar más tiempo en equipos portátiles con batería. La mejora del rendimiento ayuda a los desarrolladores de juegos a habilitar niveles de calidad gráfica más elevados y resoluciones superiores. El equipo de Assassin’s Creed Rogue trabajó con una resolución de 1366 x 786 en mente para la calidad media en Intel ® HD 4600 e Iris Graphics; para Iris Pro, la resolución se puede aumentar a 1600 x 900. Configuración del sistema de prueba Procesador Intel ® Core™ i5, CPU 3570 K, 4 GB RAM, 1600 MHz, Intel ® HD Graphics 4000, Windows* 8.1 de 64 bits. Conclusión Todas estas reducciones fueron justificadas porque no afectaron a los usuarios con hardware muy potente y nos dieron la posibilidad de que el juego funcionara en casi todos los aparatos compatibles con DirectX* 11. La base instalada dicta las reglas Vínculos de consulta Otros vínculos

2
0
Desarrollo de apps y juegos para tabletas Intel® Android
Desarrollo de apps y juegos para tabletas Intel® Android
InfoporAnónimo6/8/2015

Sinopsis En este artículo se tratan cuestiones relacionadas con el diseño de aplicaciones para tabletas: el diseño de la interfaz de usuario, la duración de las sesiones, las adaptaciones a las diferencias entre usuarios y la localización. Se analizan procedimientos de depuración y optimización. También nos ocupamos del impacto que tienen diferentes métodos de despliegue en las funcionalidades disponibles de las aplicaciones. Con los consejos de este artículo, estará preparado para crear una aplicación que se distinga, dirigida a sus clientes que usen tabletas Intel ® Android*. Introducción Los ingenieros de Intel han trabajado con pequeños y grandes desarrolladores con la idea de mejorar sus aplicaciones para tabletas Intel Android. Hemos visto muchos ejemplos de decisiones de diseño que condujeron al éxito. Compartimos en este artículo un resumen de lo que hemos visto y aprendido, con la esperanza de que ayude también a los lectores a lograr el éxito. Desde el concepto hasta el diseño y la implementación, los desarrolladores para tabletas Intel Android tienen la oportunidad de que sus aplicaciones sobresalgan. La integridad conceptual, la eficiencia de diseño, la elección del entorno y la selección de herramientas son algunos de los muchos aspectos fundamentales con los que los desarrolladores deben hacer malabares. En este artículo se ofrecen sugerencias que conviene tener presentes para aprovechar el potencial de los dispositivos. ¿Cuál es su gran idea? Los mejores juegos y aplicaciones tienen una idea básica que respetan a la perfección. Si ha reducido su idea a su esencia de utilidad o entretenimiento, analizar esto a fondo le facilitará tomar la mayoría de las demás decisiones relacionadas con el desarrollo. Si la finalidad no es clara, tendrá un producto con características que no vienen al caso, que se sentirá burdo y arbitrario, y los clientes lo dejarán a un lado para inclinarse por aplicaciones que hagan una sola cosa realmente bien. Con la integridad conceptual apropiada, detectará oportunidades de mejorar el diseño y evitar esforzarse en desarrollar funcionalidades que los usuarios ya reciben de otras aplicaciones. Diseñe para la mayor cantidad posible de dispositivos Las tabletas electrónicas y los smartphones abundan, y los hay de diferentes tamaños y resoluciones de pantalla. Si bien conviene tener en mente un dispositivo de destino, esto es solo el primer paso. Su aplicación debe funcionar perfectamente en el dispositivo ideal, pero adaptarse bien a una amplia variedad de plataformas. Para que las pantallas pequeñas muestren fielmente los aspectos visuales, diseñe para la pantalla más grande en la que se vaya a ejecutar su aplicación y luego reduzca el tamaño para que se ajuste al área visible. Hay varios métodos para lograr compatibilidad con diferentes tamaños de pantallas ; en el caso de juegos web, podría ser tan simple con dibujar todo en un lienzo y Figura 1: Los elementos de tamaño fijo de la interfaz de usuario pueden verse demasiado pequeños en pantallas de tabletas grandes. Otra cuestión que se debe considerar es que todos los controles y el texto deben ser útiles en las pantallas más pequeñas. Hay muchos recursos en línea que brindan orientación sobre diseño para diversas plataformas. Como el moderno diseño de Windows 8 se creó para pantallas táctiles, sugerimos a los desarrolladores que aprendan y respeten los principios de diseño moderno y las pautas para aplicaciones de WinRT, porque también se aplican a los dispositivos Android. Esas convenciones son de mucha utilidad; por ejemplo, lograr un espaciado y una distribución óptimos en circunstancias normales. Hay una razón válida para cada convención. Si uno comprende las normas, las aplicaciones y los fundamentos, puede aprovecharlos al máximo, incluso romper intencionalmente las reglas para lograr un efecto deseado. Diseñe para movilidad El usuario promedio consulta el teléfono entre 100 y 900 veces al día , las sesiones de juego informales duran unos 3 minutos y los lugares de uso son muy disímiles (de la propia casa al trabajo, y todo lo que haya en el medio, como transporte público, restaurantes, etc.); por ello, la variación de entornos de las aplicaciones y los juegos móviles repercuten de manera considerable en su facilidad de uso. Si está creando un juego, la duración general de las sesiones se reduce a pocos minutos. Esto no quiere decir que estén prohibidas las aventuras épicas inacabables, pero sí significa que debe haber un mecanismo para que los usuarios hagan una pausa casi en cualquier momento y no tengan problemas para regresar al juego. Más allá de si el mecanismo es incorporar batallas cortas o separar rompecabezas con pantallas de selección de nivel, o un sencillo menú permanente para hacer una pausa o continuar jugando que incluya en resumen de lo que está ocurriendo en el juego, la mayoría de los usuarios necesitan tener la posibilidad de abandonar sus dispositivos. De manera similar, si la aplicación exige silencio absoluto y una iluminación perfecta, muy pocos podrán usarla fuera de casa, y quizá ni siquiera allí. Todo, desde el color que se elija hasta la modulación del sonido , es importante para asegurarse de que la experiencia del usuario sea buena. Diseñe para la gente Si está creando aplicaciones para un conjunto muy reducido de la población, puede ajustar el diseño a sus necesidades, pero esta es una situación poco común. La mayoría de las aplicaciones no puede darse ese lujo. Deben poder usarlas la mayor cantidad de gente posible. Además de lo que ya mencionamos sobre los entornos de uso, como el transporte público, hay más de 360 millones de personas con problemas de audición , 285 millones con discapacidad visual y 280 millones con daltonismo en todo el mundo. La mayoría de los usuarios que necesitan algún tipo de asistencia ya tendrán alguna solución preparada, pero de todos modos este es un aspecto del diseño y el desarrollo que requiere de atención. Si existe alguna manera de agregar indicaciones sonoras a las aplicaciones con muchas imágenes, subtítulos a las partes habladas de los juegos y símbolos identificables para diferenciar entre objetos de colores, o una paleta distinguible para daltónicos en la cual todos los colores importantes tengan distinta luminosidad, estará mucho más cerca de lograr que todo aquel que descargue su producto pueda usarlo. La localización es otro terreno al que muchos juegos y aplicaciones terminan por dedicar tiempo de desarrollo y dinero con el único fin de llegar a otros países. Como el costo puede llegar a ser de 10.000 a 15.000 dólares estadounidenses por idioma , conviene reducir al mínimo el texto que se necesite localizar. ¿Puede su aplicación hacerse entender por el usuario mediante símbolos comprensibles en todo el mundo? ¿Pueden los personajes del juego usar emojis universales para comunicarse, en lugar de palabras? Cada paso que se acerque a interactuar directamente con la mente del usuario en lugar de con su vocabulario aumentará el público potencial, sin costo adicional. Abundancia de entornos Si su aplicación no va a utilizar un motor de juego ya existente , una de las primeras decisiones que se deben tomar en cuanto a la implementación es qué tipo de ejecutable tendrá: nativo, web o híbrido. Nativo Las aplicaciones nativas son de bajo nivel, lo cual permite acceder a recursos de hardware más potentes, pero impone más restricciones al desarrollo y la portación a otras plataformas. El lenguaje más común para el desarrollo Android nativo es Java, generalmente por medio del SDK (Kit de Desarrollo de Software) para Android* básico o el NDK (Kit de Desarrollo Nativo). Herramientas tales como Intel® INDE (Experiencia Integrada de Desarrollo Nativo de Intel®) se centran tanto en Java como en C++. Intel INDE no solo contiene compiladores, sino también herramientas de análisis que ayudan a identificar y corregir problemas de rendimiento de las aplicaciones. Web Las aplicaciones web, desde los juegos para navegadores hasta las herramientas online, son versátiles y de fácil distribución, pero a menudo les falta potencia y, como lo implica su nombre, por lo general necesitan conectividad a internet para funcionar. HTML5 y JavaScript* son la norma para estas aplicaciones. Si la aplicación funciona simplemente como una interfaz a alguna herramienta del lado del servidor, la opción web es excelente; la parte negativa es que cada uno de los usuarios accede a los servidores, lo que eleva los costos de alojamiento para satisfacer la demanda. Híbrido Para aprovechar la flexibilidad natural de las aplicaciones web y la potencia del hardware de los dispositivos móviles, se puede optar por aplicaciones híbridas: tecnología web integrada en una envoltura nativa. Intel XDK (Cross-platform Development Kit) y otras herramientas de este tipo son ideales para elaborar aplicaciones híbridas. Las mismas aplicaciones web en JavaScript que mencionamos antes se pueden importar, potenciadas con llamadas a API que saquen provecho del hardware, y darles un toque final con código “listo para el dispositivo”, para crear paquetes nativos en plataformas móviles. Figura 2: La elección de un ejecutable es algo que lo afectará a usted y a sus clientes. La decisión de optar por una aplicación nativa, web o híbrida depende en gran medida del uso que se le pretenda dar, los recursos y la funcionalidad requeridos, y la familiaridad del desarrollador con los distintos lenguajes. A la vez, esta decisión determina la manera en que se puede distribuir, usar y monetizar la aplicación. Ventajas de la ligereza Una interfaz fácil de usar brinda muchos beneficios, pero para aprovechar al máximo la aplicación desarrollada, es necesario que no exija demasiado al dispositivo. Las descargas de tamaños inmanejables, el uso exagerado de recursos y el pedido de permisos innecesarios son barreras que dificultan la adopción o la continuidad de uso (y obstaculizan las ventas por el boca en boca). Una manera de reducir el tamaño de la descarga inicial es con descargas posteriores de “archivos adicionales”. Lamentablemente, esto quizá moleste a los usuarios y trae consigo un problema más importante que también puede afectar el rendimiento: el manejo subóptimo de recursos redundantes. Las bibliotecas de texturas, los modelos y los sonidos que constituyen la mayor parte del tamaño del archivo tendrán que cargarse en la memoria (y si no es así, hay otros problemas), lo que hará más lenta la aplicación. Si se resuelve la causa de origen, no solo la aplicación funcionará mejor, sino que la descarga inicial y las siguientes se reducirán sustancialmente. La solución para muchas aplicaciones es un procedimiento que apunta a la reutilización y que se ideó en las viejas épocas del desarrollo con limitaciones de memoria. Usar las mismas imágenes y sonidos con diferentes paletas y máscaras puede proporcionar la variedad necesaria y a la vez reducir al mínimo el espacio y los recursos requeridos. Incluso si no hay posibilidad de recurrir a la reutilización en el sentido estricto, reducir al mínimo los archivos a los que sea necesario acceder aumentará el rendimiento de manera demostrable. Por ejemplo, World of Goo crea atlas de texturas para fines específicos durante la carga de niveles, de esta manera incluso los recursos de imagen que se usan en otros lugares se combinan en un solo recurso. Este incremento del rendimiento dará réditos en el paso siguiente: análisis y optimización. A eliminar errores y simplificar la ejecución Lo ideal sería que la aplicación se ejecutara sin ningún inconveniente la primera vez y que no fuera necesario hacer mejoras. Pero el mundo real no es así. En toda aplicación más compleja que un ejemplo para recién iniciados, invariablemente habrá errores. Los peores errores no impiden que funcione la aplicación, sino que la hacen más lenta, en cuanto al rendimiento o la latencia, y la experiencia del usuario se ve perjudicada. Asimismo, el sobredibujo y los búferes dobles sin utilizar son dos ejemplos de problemas que, aunque no son errores, reducen el rendimiento y la duración de la batería. Todas estas son oportunidades de mejorar aún más su aplicación. La mejor manera de encontrar oportunidades como estas es con herramientas de análisis de perfiles y analizadores de rendimiento. Intel ® XDK ofrece depuración en el emulador, depuración remota en dispositivos Android conectados en la pestaña Debug e información de análisis de rendimiento en la pestaña Profile. Figura 3: Intel ® XDK facilita el desarrollo de aplicaciones híbridas ¿No usa Intel XDK? Los Analizadores de Rendimiento de Gráficos Intel ® ( Intel ® GPA) son un conjunto de herramientas de análisis de rendimiento ideadas con el fin de ayudar a identificar áreas subóptimas para mejorarlas. Aunque estas herramientas son perfectamente aptas para aplicaciones que usan todo el poder ofrecido por las PC, también funcionan con aplicaciones Android, y ganan su lugar por derecho propio entre las otras herramientas nativas de Intel ® INDE. Resumen Hay muchísimos factores que se deben tener en cuenta cuando se desarrollan aplicaciones o juegos móviles. La integridad conceptual es clave para decidir entre la enormidad de opciones y acotar el infinito espacio creativo. Cada aspecto del desarrollo puede repercutir en los anteriores y los que le siguen, por ello son fundamentales la planificación y la reiteración. Las convenciones sobre interfaces táctiles, globalización y diseño de imagen y sonido para dispositivos móviles constituyen puntos de partida valiosos y materia para reflexionar en este ejercicio. Intel ® INDE ofrece un enorme conjunto de herramientas para desarrolladores de aplicaciones nativas. Intel ® XDK ayuda a los desarrolladores web en todo lo que puedan necesitar: desarrollo, emulación, pruebas, depuración y empaquetado. Ambos tienen abundante documentación y asistencia en foros que continuarán creciendo. Los métodos y herramientas que se incluyen en este artículo se tomaron de lecciones que los ingenieros de Intel han aprendido de ayudar a muchos desarrolladores de aplicaciones. Son de suma utilidad para maximizar la probabilidad de que su aplicación logre popularidad y pase a formar parte de la vida de sus clientes. Buscar un concepto, un diseño y una implementación óptimos es una empresa exigente en extremo, pero que termina siendo provechosa. Acerca del autor Brad Hill trabaja como ingeniero de software en la División de Relaciones con los Desarrolladores de Intel . Investiga nuevas tecnologías en hardware Intel y comparte los mejores métodos con desarrolladores de software por medio de la Zona Intel ® de Desarrolladores y las conferencias para desarrolladores. También es director de ingeniería de hackatones estudiantiles y dirige los hackatones Code for Good en universidades de todo el país.

1
0
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.