Introducción Informática Gráfica

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Introducción Informática Gráfica"

Transcripción

1 Introducción Informática Gráfica Segundo Esteban San Román Dpto. Arquitectura de Computadores y Automáitca Fac. CC. Físicas, Desp. 236, Fac. Informática, Desp:421 [email protected] Historia Proceso de Visualización Paradigma Modelado-Renderizado, CPU-GPU APIS Gráficas. OpenGL vs DirectX Historia Evolución del hardware y las aplicaciones Años 50: MIT primeros CRT s (I.Shuderland) Años 60: Industrias aeronáutica y automóvil Años 70: CAD/CAM, Plotters, Videojuegos 2D Años 80: Aparece Impr. Laser Años 80: Industria de Animación Años 90: Industria del videojuego (Tarjetas PC: NVIDIA, ATI, ) Siglo XXI: Sistemas Empotrados 1

2 Historia APIS Estandarización de APIs Gráficos 1977: 3D CGS ACM/SIGGRAPH 1985: GKS ( bidimensional ) ISO ANSI 1988: GKS-3D, PHIGS 1989: SGI IrisGL ( Terminator2 ) 1992: SGI -> OpenGL 1993: Mesa 3D (OpenSource) 1995: RenderMan (Pixar) ( ToyStory ) 1995: Microsoft DirectX : Pixel-Vertex Shaders 2007: Vista-DirectX : OpenGL 3.0 Estado Actual (imagen estática) Cuál es la imagen real y la sintética? 2

3 Aplicar técnicas de la industria de la animación 3D Nuevas técnicas de modelado Mayor nº de superficies, Bump-normal mapping Múltiples materiales Nuevas técnicas de iluminación Shaders con efectos ilumin. Sombras Animación Física en ropas Animación facial Futuro Gráficos (videojuegos) Proceso de Visualización Procesamiento de imagen (Visión): La adquisición y tratamiento de una imagen para conseguir un modelo informático de la misma Síntesis de imagen (Proceso de visualización): es el conjunto de operaciones (en 3D y en 2D) sobre un Modelo Informático de Datos para obtener una Representación Gráfica del mismo en un dispositivo físico de representación. Proceso de Visualización 2D Modelo Geométrico Primitivas de Dibujo Recortado Cambio de Coordenadas 2-D Rasterization / Scan Conversion Display 3

4 Proceso de Visualización 3D Recorrido de la escena Transform. del Modelo Transform. de la Vista Recortado Eliminación de Caras Proyección Transformación del Dispositivo 3-D Iluminación Rasterization / Scan Conversion Display Modelado/Renderizado - CPU/GPU Aplicación Geometría (Vertices) Raster (Fragmentos) Image input Scena 3D output MODELADO Recorrido de la Escena Interacción con la Escena Animación 4

5 APIs Gráficas Pricipales APIs: OpenGL D3D (DirectX) Qué proporcionan: Implementa toda la parte de renderizado Más eficiente: extensiones hardware Portable a otros SO (en el caso de OpenGL) Versiones para diferente hardware (ES) Sobre estas APIs se montan otras de más alto nivel: PLIB, SDL, OSG, FaceFX Motores de Videojuegos: Nebula (O-D), Unreal Eng (D) ID Tech Eng (Quake) (O) Evolución de las GPU 1. GPU con pipeline fijo. 2. Dos procesadores programables (Vertices/Pixeles). 3. Stream configurable de GPU (NVIDIA GeForce 8800) Evolución del Hardware-Software gráfico Las APIs han evolucionado, aceptando lenguajes de Shaders: 1. Programación Cg (NVIDIA) 2. HLSL 3. GLSL 4. OpenCL, CUDA 5

6 Niveles de Abstracción de la programación de GPUs APIS Gráficas APIS Gráficas Programación de GPUs: APIs (Azul, Cg (Verde) 6

7 OpenGL OpenGL es la interfaz software del hardware gráfico para desarrollar aplicaciones 2D y 3D: Programación a medio-nivel Intuitivo (unas 120 funciones con sintaxis sencilla) Preparado para la Red (servidor-cliente) Pipe-Line gobernado por una Maquina de Estados Portable A nivel SO (UNIX, Linux, Windows, MacOs, ) A nivel HW (Computadores, Consolas, Móviles ) A nivel de Lenguajes (C, C++, Fortran, Ada, Java) Librerías OGL Librerías de OpenGL: GL: Librería OpenGL (gl.h, opengl32.dll). Implementa el núcleo de OpenGL, es muy básica, trabaja a muy bajo nivel y no gestiona eventos ni ventanas. GLU: OpenGL Utility Library (glu.h, glu32.dll). Librería que nos proporciona rutinas de más alto nivel. Conexión sistema nativo: GLX WGL Librerías de Utilidades: GLUT: API multiplataforma que facilita una funcionalidad para el manejo de ventanas e interacción por medio de teclado y ratón. GLUI: Interfaz de usuario basada en GLUT; proporciona elementos de control tales como botones, cajas de selección y spinners. 7

8 Ventana OpenGL con GLUT Crear la ventana OpenGL utilizando GLUT. #include <GL/glut.h> void renderscene(void) { glclear(gl_color_buffer_bit); glbegin(gl_triangles); glvertex3f(-0.5,-0.5,0.0); glvertex3f(0.5,0.0,0.0); glvertex3f(0.0,0.5,0.0); glend(); glflush(); } void main(int argc, char **argv) { glutinit(&argc, argv); glutinitdisplaymode(glut_single GLUT_RGBA); glutinitwindowposition(100,100); glutinitwindowsize(320,320); glutcreatewindow("3d Tech- GLUT Tutorial"); glutdisplayfunc(renderscene); glutmainloop(); // Bucle infinito, gestionar los eventos y callbacks } Ejemplo sobre API de Windows Múltiples ejemplos con diferentes S.O. en La gestión de ventanas se realizaría con la API de WINDOWS #include <windows.h> #include <gl\gl.h> #include <gl\glu.h> Necesitamos: // Header File For Windows // Header File For The OpenGL32 Library // Header File For The GLu32 Library HDC hdc=null; // Private GDI Device Context HGLRC hrc=null; // Permanent Rendering Context HWND hwnd=null; // Holds Our Window Handle HINSTANCE hinstance; // Holds The Instance Of The Application 8

9 Ejemplo sobre API de Windows bool CreateGLWindow(char* title, int width, int height, int bits, bool fullscreenflag){ if (!RegisterClass(&wc)) // Attempt to register the window class if (!(hwnd = CreateWindowEx(dwExStyle ), // Create the window static PIXELFORMATDESCRIPTOR pfd = // pfd tells windows how we want things to be if (!(hdc = GetDC(hWnd))) KillGLWindow(); // Did we get a device context? if (!(PixelFormat = ChoosePixelFormat(hDC,&pfd))) KillGLWindow(); // A matching pixel format? if(!setpixelformat(hdc,pixelformat,&pfd)) KillGLWindow(); // Are we able to set the PFD? if (!(hrc = wglcreatecontext(hdc))) KillGLWindow(); // Are we able to get a rendering context? if(!wglmakecurrent(hdc,hrc)) KillGLWindow(); // Try to activate the rendering context ShowWindow(hWnd,SW_SHOW); // Show the window SetForegroundWindow(hWnd); // Slightly higher priority SetFocus(hWnd); // Sets keyboard focus to the window ReSizeGLScene(width, height); // Set up our perspective GL screen if (!InitGL()) KillGLWindow(); // Initialize our newly created GL window } DirectX version DirectX 1.0 Logo Operating system Date released September 30, 1995 DirectX 2.0 DirectX 3.0 Windows 95and NT 4.0 Windows NT 4.0 SP3 June 5, 1996 September 15, 1996 DirectX 6.0 DirectX 7.0 Windows NT 4.0 Windows 2000, ME August 7, 1998 September 22, 1999 DirectX 8.0 September 30, 2000 DirectX 9.0 DirectX 9.0c Windows Server 2003 Windows XP December 24, 2002 Bimonthly from DirectX 10.0 DirectX 11.0 Especificaciones. WindowsVista. Noviembre2006 (Especif. DirectX11, 2008) Agosto

10 Componentes Direct-X Dos APIs gráficas DirectX (unificado en las últimas versiones): DirectDraw (obsoleta): para gráficos 2D (Raster Graphics) Direct3D (D3D): para gráficos 3D DirectInput: Procesa datos de keyboard, mouse, joystick, game controllers DirectPlay: Maneja las comunicaciones por red DirectSound: Reproducción y grabado de sonido Waveform DirectSound3D (DS3D): Reproducción de sonido 3D. DirectMusic: Reproducción de Soundtracks de DirectMusic Producer DirectX Media: DirectAnimation, DirectShow, DirectX Video Acceleration, soporta codificadores y decodificadores,. Direct3D Direct3D: API gráfica de bajo nivel con aceleración 3D del hardware. Entre Direct3D y el dispositivo gráfico se encuentra el HAL (Capa Abstracción Hardware), implementado por el fabricante Librerías básicas: D3D: Es el núclo de Direct3D D3DX: provee funcionales adicionales. Line Drawing Support in D3DX (Direct3D 9) Mesh Support in D3DX (Direct3D 9) Math Function Support in D3DX (Direct3D 9) Texture Support in D3DX (Direct3D 9) 10

11 Crear una Ventana con un dispositivo D3D Creamos una ventana Windows INT WINAPI WinMain( HINSTANCE hinst, HINSTANCE, LPSTR, INT ) { // Register the window class. WNDCLASSEX wc = { sizeof(wndclassex), CS_CLASSDC, MsgProc, 0L, 0L, GetModuleHandle(NULL), NULL, NULL, NULL, NULL,"D3D Tutorial", NULL }; RegisterClassEx( &wc ); // Create the application's window. HWND hwnd = CreateWindow( "Direct3D Tutorial", "Direct3D Tutorial 01: CreateDevice",WS_OVERLAPPEDWINDOW, 100, 100, 300, 300, GetDesktopWindow(), NULL, wc.hinstance, NULL ); Creamos el interfaz if( NULL == ( g_pd3d = Direct3DCreate9( D3D_SDK_VERSION ) ) )return E_FAIL; Creamos el Disp.Renderizado D3DPRESENT_PARAMETERS d3dpp; ZeroMemory( &d3dpp, sizeof(d3dpp) ); d3dpp.windowed = TRUE; d3dpp.swapeffect = D3DSWAPEFFECT_DISCARD; d3dpp.backbufferformat = D3DFMT_UNKNOWN; if( FAILED( g_pd3d->createdevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hwnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, &d3dpp, &g_pd3ddevice ) ) ) Liberar al salir VOID Cleanup() {if( g_pd3ddevice!= NULL) g_pd3ddevice->release(); if( g_pd3d!= NULL) g_pd3d->release(); } OpenGL vs DirectX Portabilidad: Direct3D es para la familia de Microsoft's Windows, incluyendo versiones empotradas para Xbox y Sega's Dreamcast. OpenGL dispone de implementaciones para Microsoft Windows, UNIX, Mac OS X, Linux y PlayStation 3. OpenGL es la librería primaria para iphone, Android (plataforma de móviles) y Symbian OS. Variantes de OpenGL funcionan sobre Nintendo GameCube and Wii, Nintendo DS y PSP. Mercado: DirectX ha ocupado un mayor porcentaje en el mercado de los videojuegos. OpenGL ha suplido históricamente el mercado profesional de gráficos. 11

12 OpenGL vs DirectX Modo de funcionamiento: D3D esta diseñado como un interfaz de hardware gráfico 3D, espera que la aplicación dirija el hardware. OpenGL es un sistema de renderizado 3D, que puede ser acelerado por hardware. OpenGL gestiona la aceleración hardware. Programacíón: Programación básica: más fácil OpenGL Aprovechar el Hardware: más fácil DirectX Programación de Drivers: más fácil DirectX Actualizaciones: Extensiones OpenGL para nuevas capacidades hardware. DirectX nuevas versiones adaptadas a las nuevas capacidades hardware. API Wars : El bajo rendimiento de OpenGL vs D3D sobre plataformas Windows se debe a la implementación realizada por Microsoft (SIGGRAPH). 12

Arquitecturas GPU v. 2013

Arquitecturas GPU v. 2013 v. 2013 Stream Processing Similar al concepto de SIMD. Data stream procesado por kernel functions (pipelined) (no control) (local memory, no cache OJO). Data-centric model: adecuado para DSP o GPU (image,

Más detalles

REALIZACIÓN DE UN MOTOR DE RENDER PARA DISPOSITIVOS MÓVILES BASADO EN IRRLICHT. Autor: Javier Meseguer de Paz Dirigido por: Antonio Berlanga de Jesús

REALIZACIÓN DE UN MOTOR DE RENDER PARA DISPOSITIVOS MÓVILES BASADO EN IRRLICHT. Autor: Javier Meseguer de Paz Dirigido por: Antonio Berlanga de Jesús REALIZACIÓN DE UN MOTOR DE RENDER PARA DISPOSITIVOS MÓVILES BASADO EN IRRLICHT Autor: Javier Meseguer de Paz Dirigido por: Antonio Berlanga de Jesús Plan de la presentación Introducción Estado del arte

Más detalles

Videojuegos. Guillermo Escudero Diego Hiegeo Nestor Tena Igor Moreda

Videojuegos. Guillermo Escudero Diego Hiegeo Nestor Tena Igor Moreda Videojuegos Guillermo Escudero Diego Hiegeo Nestor Tena Igor Moreda Qué es un videojuego? Un videojuego es una interacción n entre el ser humano y un soporte electrónico como un ordenador o una consola.

Más detalles

Programación de Sistemas

Programación de Sistemas Programación s Unidad 2 s Operativos y Programación Software Base Contenido Introducción a los s Operativos (SO) Definición y conceptos SO Visualización un sistema cómputo s distintos puntos vista Capas

Más detalles

Simulador de conducción de una fumigadora con banderillero satelital.

Simulador de conducción de una fumigadora con banderillero satelital. Simulador de conducción de una fumigadora con banderillero satelital. Abstract Piedrasanta, Federico Universidad Tecnológica Nacional, Facultad Regional Córdoba Frente a las demandas del mercado se decidió

Más detalles

Demo FireMonkey La nueva generación de desarrollo de aplicaciones de negocio

Demo FireMonkey La nueva generación de desarrollo de aplicaciones de negocio Demo FireMonkey La nueva generación de desarrollo de aplicaciones de negocio Renacimiento del software de consumo Experiencia de usuario rica con medios y gráficos Intuitivo e interactivo fácil de aprender

Más detalles

Computación de Propósito General en Unidades de Procesamiento Gráfico GPGPU

Computación de Propósito General en Unidades de Procesamiento Gráfico GPGPU Computación de Propósito General en Unidades de Procesamiento Gráfico () R. Bayá, E. Dufrechou, P. Ezzattiy M. Pedemonte Clase 1 Introducción Contenido Un poco de historia El pipeline gráfico Tarjetas

Más detalles

2. Marco teórico 2.1.XNA

2. Marco teórico 2.1.XNA 2. Marcoteórico Enesteprimercapítulosepresentalainformacióndelasherramientasqueutilicéparael desarrollodelosproyectosquemencionéenelcapítuloanterior,enlosqueparticipéenmilabor en el Departamento de Investigación

Más detalles

Tema 1 Introducción. David Vallejo Fernández. Curso 2007/2008. Escuela Superior de Informática

Tema 1 Introducción. David Vallejo Fernández. Curso 2007/2008. Escuela Superior de Informática Tema 1 Introducción David Vallejo Fernández Curso 2007/2008 Escuela Superior de Informática Índice de contenidos 1.Computer Graphics. 2.Principales aplicaciones. 3.APIs gráficas. 4.. 5.Resumen. 2 1 Computer

Más detalles

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introduccion al Lenguaje C Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introducción C es un lenguaje de programación creado en 1972 por

Más detalles

Creación de Videojuegos en OpenGL

Creación de Videojuegos en OpenGL Prof. Esmitt Ramírez J. Creación de Videojuegos en OpenGL XII-V-X Agenda OpenGL Juegos de Video Modelación Rendering Iluminación y Texturas Otros Aspectos Videos Ideas Finales OpenGL API para desarrollar

Más detalles

Desarrollo de videojuegos Fernando Berzal, [email protected] Herramientas de desarrollo Motores de videojuegos[gamegame engines] http://en.wikipedia.org/wiki/game_engine Sistemas diseñados para la creación

Más detalles

DESARROLLADOR ANDROID INTRODUCCIÓN ANDROID. Ing. Marco Antonio Toscano Freire [email protected] tw: martosfre

DESARROLLADOR ANDROID INTRODUCCIÓN ANDROID. Ing. Marco Antonio Toscano Freire mtoscano@matoosfe.com tw: martosfre DESARROLLADOR ANDROID INTRODUCCIÓN ANDROID Ing. Marco Antonio Toscano Freire [email protected] tw: martosfre Introducción Aplicaciones Móbiles Desventajas Tanto las pantallas como teclados son demasiado

Más detalles

Taller de Programación de Dispositivos Móviles. José Miguel Rubio L. Oficina 3-20 http://www.inf.ucv.cl/~jrubio jose.rubio.l@ucv.

Taller de Programación de Dispositivos Móviles. José Miguel Rubio L. Oficina 3-20 http://www.inf.ucv.cl/~jrubio jose.rubio.l@ucv. Taller de Programación de Dispositivos Móviles José Miguel Rubio L. Oficina 3-20 http://www.inf.ucv.cl/~jrubio [email protected] Parte 1 1.Programación de dispositivos 2.Limitaciones de los dispositivos

Más detalles

Universidad de Belgrano

Universidad de Belgrano Universidad de Belgrano Las tesinas de Belgrano Facultad de Tecnología Informática Ingeniería en Informática Pipeline 3D para rendering en tiempo real con capacidad de detección de movimiento N 468 Lucas

Más detalles

Lenguaje de Programación: C++ GLUT (como instalarlo)

Lenguaje de Programación: C++ GLUT (como instalarlo) UG C++ Lenguaje de Programación: C++ GLUT (como instalarlo) Universidad de Guanajuato Noviembre 2010 Inicializar GLUT Lo primero que debemos mandar llamar en un proyecto con la librería GLUT es: void glutinit(int

Más detalles

Índice de Contenidos :.

Índice de Contenidos :. Índice de Contenidos :. APIs para Gráficos 3D :: 1 OpenGL :: 1.1 Direct X / Direct 3D :: 1.2 Nvidia Cg :: 1.3 Algunas Técnicas Habituales :: 2 Algoritmos de Interiores :: 2.1 Algoritmos de Exteriores ::

Más detalles

Análisis de aplicación: TightVNC

Análisis de aplicación: TightVNC Análisis de aplicación: TightVNC Este documento ha sido elaborado por el Centro de Apoyo Tecnológico a Emprendedores bilib, www.bilib.es Copyright 2011, Junta de Comunidades de Castilla La Mancha. Este

Más detalles

Informática Electrónica Interfaces para los programas de aplicación (APIs)

Informática Electrónica Interfaces para los programas de aplicación (APIs) Informática Electrónica Interfaces para los programas de aplicación (APIs) DSI- EIE FCEIA 2015 Que es un API? Application Program Interface (interface para programas aplicativos) es el mecanismo mediante

Más detalles

Programas Análisis (Control de Nuestro PC)

Programas Análisis (Control de Nuestro PC) Programas Análisis (Control de Nuestro PC) Sandra Lite (Información de Componentes del Sistema) Web Autor: http://www.sisoftware.net/sandra/ Sandra Lite es una pequeña utilidad que gracias a su gran potencia,

Más detalles

Motor de Videojuegos.

Motor de Videojuegos. Motor de Videojuegos. En un comienzo se diseñaban los videojuegos para un hardware específico, usando directamente instrucciones de los diversos microprocesadores. Si se deseaba que el videojuego fuera

Más detalles

VIRTUALIZACIÓN Virtualización es la creación de una versión virtual en base a un sistema anfitrión o host de: o Un sistema operativo. o Un servidor. o Un dispositivo de almacenamiento. orecursos de la

Más detalles

GPUs. Comparación entre Nvidia y ATI. Raúl Rodríguez del Rosario

GPUs. Comparación entre Nvidia y ATI. Raúl Rodríguez del Rosario GPUs Comparación entre Nvidia y ATI Raúl Rodríguez del Rosario Índice Introducción... 3 Qué es una GPU?... 4 Nvidia... 5 ATI... 7 Benchmarks..... 9 Programación de la GPU... 11 OpenGL. 12 Direct3D 13 Mesa3D...

Más detalles

Tema II Introducción a X-Lib (R-1.0)

Tema II Introducción a X-Lib (R-1.0) Tema II Introducción a X-Lib (R-1.0) Programación en Entornos Interactivos. 7 de junio de 2011 Dpto. Lenguajes y Sistemas Informáticos Universidad de Alicante 1 / 1 Resumen Presentación de X-Lib. Errores

Más detalles

Tema 5 Lenguajes de programación

Tema 5 Lenguajes de programación Tema 5 Lenguajes de programación David Vallejo Fernández Curso 2007/2008 Escuela Superior de Informática 1 Índice de contenidos 1.. 2.. 3. Programming Language. 4.DirectX High-Level Shader Language. 5.Resumen.

Más detalles

Universidad de Costa Rica Facultad de Ingeniería Escuela de Ingeniería Eléctrica

Universidad de Costa Rica Facultad de Ingeniería Escuela de Ingeniería Eléctrica Universidad de Costa Rica Facultad de Ingeniería Escuela de Ingeniería Eléctrica IE 52 Proyecto Eléctrico Desarrollo de un modelo y simulador tridimensional del brazo robot Stäubli RX 9 L Por: David Cuenca

Más detalles

ORBERE. Memoria Técnica del Aplicativo de Gestión de la producción para ADIMDE

ORBERE. Memoria Técnica del Aplicativo de Gestión de la producción para ADIMDE ORBERE Memoria Técnica del Aplicativo de Gestión de la producción para ADIMDE Bilbao, 12 de diciembre de 2006 INDICE 1. METODOLOGÍA DE TRABAJO 2 1.1 Pautas para el Desarrollo 2 1.2 Entorno Tecnológico,

Más detalles

Unidad I. Introducción a la programación de Dispositivos Móviles (Continuación )

Unidad I. Introducción a la programación de Dispositivos Móviles (Continuación ) Clase:003 1 Unidad I Introducción a la programación de Dispositivos Móviles (Continuación ) 2 Entornos de Desarrollo Virtualizaciones. Agenda IDE s. Y Lenguajes de Programación. 3 Virtualización Que es

Más detalles

UNIVERSIDAD DEL ISTMO Ingeniería en computación Estructura de datos

UNIVERSIDAD DEL ISTMO Ingeniería en computación Estructura de datos UNIVERSIDAD DEL ISTMO Ingeniería en computación Estructura de datos CICLO ESCOLAR 20092010B PROFESOR M. en C. J. Jesús Arellano Pimentel GRUPO 204 NÚMERO DE PRÁCTICA 1 NOMBRE DE LA PRÁCTICA OBJETIVO GENERAL

Más detalles

Microsoft Office 2010 Illustrated. Tipos de Software

Microsoft Office 2010 Illustrated. Tipos de Software Microsoft Office 2010 Illustrated Tipos de Software SOFTWARE Conjunto de instrucciones que le indican a la computadora que hacer. Existen tres tipos de software: Sofware de Aplicacion Sofware de Programacion

Más detalles

270150 - TGA - Tarjetas Gráficas y Aceleradores

270150 - TGA - Tarjetas Gráficas y Aceleradores Unidad responsable: 270 - FIB - Facultad de Informática de Barcelona Unidad que imparte: 701 - AC - Departamento de Arquitectura de Computadores Curso: Titulación: 2014 GRADO EN INGENIERÍA INFORMÁTICA

Más detalles

Es un SW (en forma de librería C) que permite la comunicación entre el programador y el HW de la máquina para el diseño de gráficos.

Es un SW (en forma de librería C) que permite la comunicación entre el programador y el HW de la máquina para el diseño de gráficos. Qué es Open GL? Es un SW (en forma de librería C) que permite la comunicación entre el programador y el HW de la máquina para el diseño de gráficos. Es portable. Consta de unos 150 comandos muy básicos.

Más detalles

Unidad I. Introducción a la programación de Dispositivos Móviles

Unidad I. Introducción a la programación de Dispositivos Móviles Clase:002 1 Unidad I Introducción a la programación de Dispositivos Móviles Tomado de : Programación Multimedia y Dispositivos Móviles 2012 Paredes Velasco, Maximiliano / Santacruz Valencia, Liliana 2

Más detalles

El pipeline gráfico Figura 3.1

El pipeline gráfico Figura 3.1 El pipeline gráfico Para llevar a cabo una representación virtual de un ambiente tridimensional, se realiza un modelado del escenario. Dicho modelo incluye la representación geométrica de los objetos presentes,

Más detalles

AUTORES CIENTÍFICO-TÉCNICOS Y ACADÉMICOS El mundo de las tarjetas gráficas Laura Raya González La capacidad computacional de todo un centro de computación, al alcance de tus manos Las tarjetas gráficas

Más detalles

PROGRAMACIÓN DE APLICACIONES PARA ANDROID. 30 horas 45 días

PROGRAMACIÓN DE APLICACIONES PARA ANDROID. 30 horas 45 días PROGRAMACIÓN DE APLICACIONES PARA ANDROID DURACIÓN DÍAS DE CONEXIÓN 30 horas 45 días CONTACTO: [email protected] El Campus Virtual ha sido concebido con una metodología dinámica e interactiva, basada

Más detalles

Manual de instalación del BD Maker. Contenido

Manual de instalación del BD Maker. Contenido Manual de instalación del BD Maker Contenido V2.0 Capítulo 1: Instalación del hardware del BD Maker...2 1.1 Contenido del embalaje...2 1.2 Requisitos del sistema...2 1.3 Instalación del hardware...2 Capítulo

Más detalles

Ingresa Aquí http://expertoenmikrotikwireless.com y sé un experto en equipos Mikrotik

Ingresa Aquí http://expertoenmikrotikwireless.com y sé un experto en equipos Mikrotik INSTALACION DE WINDOWS 7 ULTIMATE Esta instalación que vamos a realizar de Windows 7 en su Versión Ultimate la vamos a realizar en dos particiones de un disco duro de 80GB, aprenderemos a crear las particiones

Más detalles

Arquitectura del sistema operativo GNU/Linux. Luis Eduardo Sepúlveda R.

Arquitectura del sistema operativo GNU/Linux. Luis Eduardo Sepúlveda R. Arquitectura del sistema operativo GNU/Linux Luis Eduardo Sepúlveda R. Núcleo de un sistema operativo. Funciones más importantes: Administración de la memoria. Administración de los procesos Control de

Más detalles

Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation.

Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation. WINDOWS Windows, Es un Sistema Operativo. Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation. Dentro de los tipos de Software es un tipo de software de Sistemas. Windows

Más detalles

Servicio de interfaces gráficas para entornos distribuidos. Autor: Sergio de Mingo Gil Tutor: Francisco J. Ballesteros

Servicio de interfaces gráficas para entornos distribuidos. Autor: Sergio de Mingo Gil Tutor: Francisco J. Ballesteros Servicio de interfaces gráficas para entornos distribuidos Autor: Sergio de Mingo Gil Tutor: Francisco J. Ballesteros Índice Introducción Objetivos Metodología y requisitos Servidor de widgets Servidor

Más detalles

Visión general y entorno de desarrollo

Visión general y entorno de desarrollo CAPÍTULO 1. Visión general y entorno de desarrollo La telefonía móvil está cambiando la sociedad actual de una forma tan significativa como lo ha hecho Internet. Esta revolución no ha hecho más que empezar,

Más detalles

COLEGIO COMPUESTUDIO

COLEGIO COMPUESTUDIO COLEGIO COMPUESTUDIO ÁREA: TECNOLOGIA E INFORMATICA DOCENTE: WILLY VIVAS LLOREDA ESTUDIANTE: CLEI: III GUIA N 5 N SESIONES: NUCLEO TEMÁTICO: UNIDAD: 2 Sistema operativo (Windows) OBJETIVO: Comprender el

Más detalles

DIRECCIÓN REGIONAL DE EDUCACIÓN PUNO INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO PÚBLICO MACUSANI

DIRECCIÓN REGIONAL DE EDUCACIÓN PUNO INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO PÚBLICO MACUSANI DIRECCIÓN REGIONAL DE EDUCACIÓN PUNO INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO PÚBLICO MACUSANI RM. N 102-90-ED de Creación y Funcionamiento, RD Nº 0086-2006-ED de Revalidación Web Site: www.tecnomacusani.edu.pe

Más detalles

1. INTRODUCCIÓN A OPENGL: DIBUJANDO UNA TORTUGA CON OPENGL

1. INTRODUCCIÓN A OPENGL: DIBUJANDO UNA TORTUGA CON OPENGL 1. INTRODUCCIÓN A OPENGL: DIBUJANDO UNA TORTUGA CON OPENGL 1.1 QUÉ ES OPENGL? Qué es OpenGL? OpenGL es una interfaz software de harware gráfico, es decir define las funciones que se pueden utilizar en

Más detalles

GRAPHICS PIPELINE. Computación Gráfica

GRAPHICS PIPELINE. Computación Gráfica GRAPHICS PIPELINE Computación Gráfica Rendering Proceso de generar una imagen 2D a partir de un modelo 3D Offline vs. Real-time Rendering Exactitud sobre rapidez. Películas, diseño de productos, aplicaciones

Más detalles

Distribuido en exclusiva para España por EES SL www.ees.es

Distribuido en exclusiva para España por EES SL www.ees.es MediaMaster Express MediaMaster Pro Distribuido en exclusiva para España por EES SL www.ees.es MediaMaster Express: El nuevo software Media Server de ArKaos. MediaMaster Express es una versión sencilla

Más detalles

Sumario Instalación MDT V5.3... 1

Sumario Instalación MDT V5.3... 1 Sumario Instalación MDT V5.3... 1 Requerimientos del Sistema... 1 Menú de Inicio... 2 Proceso de Instalación... 3 Después de la instalación... 4 Colocación de la Llave de Protección (USB)... 4 Colocación

Más detalles

Interfaces y Manejadores de Dispositivos

Interfaces y Manejadores de Dispositivos Informática Electrónica Unidad 6 Interfaces y Manejadores de Dispositivos Modalidad y Materiales Dos clases expositivas a cargo del docente responsable ([email protected]) Una práctica cargo de

Más detalles

Ejercicio 1 (3 puntos).-

Ejercicio 1 (3 puntos).- URJC Ingeniería Técnica de Gestión Abril 2011 Asignatura: SOFTWARE AVANZADO Normas: La prueba consta de 2 ejercicios. La máxima nota del examen es un 8. Siendo la práctica la que añade los 2 puntos que

Más detalles

Desarrollo de Videojuegos con Unity

Desarrollo de Videojuegos con Unity Desarrollo de Videojuegos con Unity Programa México First Estrategia de Certificación con Instituciones Educativas Diseño de Videojuegos Vigencia: 31/07/2014 Propuesta: Curso de capacitación para el desarrollo

Más detalles

APLICACIONES MÓVILES NATIVAS. Sesión 8: Arquitectura de las aplicaciones Android

APLICACIONES MÓVILES NATIVAS. Sesión 8: Arquitectura de las aplicaciones Android APLICACIONES MÓVILES NATIVAS Sesión 8: Arquitectura de las aplicaciones Android Contextualización Los lenguajes de programación que utilizan android y Java como base de desarrollo, han complementado la

Más detalles

Módulo 1 El lenguaje Java

Módulo 1 El lenguaje Java Módulo 1 El lenguaje 1.1 Presentación de es un lenguaje de programación desarrollado por la empresa Sun Microsystems en 1991 como parte de un proyecto secreto de investigación llamado Green Proyect, con

Más detalles

Dpto. Lenguajes y Ciencias de la Computación E.T.S.I. Telecomunicación. Laboratorio de Programación Introducción a Allegro con Dev-C++

Dpto. Lenguajes y Ciencias de la Computación E.T.S.I. Telecomunicación. Laboratorio de Programación Introducción a Allegro con Dev-C++ Dpto. Lenguajes y Ciencias de la Computación E.T.S.I. Telecomunicación Laboratorio de Programación Introducción a Allegro con Dev-C++ Abril 2004 David Bueno Vallejo Plan Introducción Instalación Hola Mundo

Más detalles

Maquinas virtuales Conceptos Básicos

Maquinas virtuales Conceptos Básicos Jimenez Zamudio Eduardo Aplicaciones de redes de computadoras 13 de septiembre de 2014 Maquinas virtuales Conceptos Básicos Concepto Básicamente, es un equipo dentro de un equipo, implementado en el software.

Más detalles

Beneficios estratégicos para su organización. Beneficios. Características V.2.0907

Beneficios estratégicos para su organización. Beneficios. Características V.2.0907 Herramienta de inventario que automatiza el registro de activos informáticos en detalle y reporta cualquier cambio de hardware o software mediante la generación de alarmas. Beneficios Información actualizada

Más detalles

Guías para el uso de las funciones del producto (Windows, Mac)

Guías para el uso de las funciones del producto (Windows, Mac) Guías para el uso de las funciones del producto (Windows, Mac) Antes de utilizar el equipo, lea este manual con atención y consérvelo para consultarlo cuando lo necesite. www.lg.com 3440 by 1440 pixels

Más detalles

Capitulo 1: Plataforma Android

Capitulo 1: Plataforma Android Capitulo 1: Plataforma Android Elaborado por: Gary Briceño http://gary.pe http://gary.pe 1 Temario 1. Android 2. Evolución 3. Arquitectura Android 4. Paquetes de Trabajo 5. Android y Java http://gary.pe

Más detalles

J2ME ENTORNO DE EJECUCIÓN. Un entorno de ejecución determinado de J2ME se compone entonces de una selección de:

J2ME ENTORNO DE EJECUCIÓN. Un entorno de ejecución determinado de J2ME se compone entonces de una selección de: J2ME Esta versión de Java está enfocada a la aplicación de la tecnología Java en dispositivos electrónicos con capacidades computacionales y gráficas muy reducidas, tales como teléfonos móviles, PDAs o

Más detalles

Procesadores Gráficos: OpenCL para programadores de CUDA

Procesadores Gráficos: OpenCL para programadores de CUDA Procesadores Gráficos: para programadores de CUDA Curso 2011/12 David Miraut [email protected] Universidad Rey Juan Carlos April 24, 2013 Indice Estándar Modelo de de El lenguaje programa de Inicialización

Más detalles

CURSO BÁSICO DE COMPUTACIÓN

CURSO BÁSICO DE COMPUTACIÓN CURSO BÁSICO DE COMPUTACIÓN U N I V E R S I DA D AU TÓ N O M A D E B A JA C A L I F O R N I A D E PA R TA M E N T O D E I N F O R M A C I Ó N A C A D É M I C A Delia Esquer Meléndez [email protected] [email protected]

Más detalles

Se trata de una herramienta de desarrollo visual muy fácil de usar, con la que incluso los no programadores podrán desarrollar sus aplicaciones.

Se trata de una herramienta de desarrollo visual muy fácil de usar, con la que incluso los no programadores podrán desarrollar sus aplicaciones. APP INVENTOR es un entorno de desarrollo de aplicaciones para dispositivos Android. Para desarrollar aplicaciones con App Inventor sólo necesitas un navegador web y un teléfono o tablet Android (si no

Más detalles

Versión 1.1 Fecha: 13-10-2002 Autores: Francisco González García Ismael García Fernández

Versión 1.1 Fecha: 13-10-2002 Autores: Francisco González García Ismael García Fernández INFORME DE LAS HERRAMIENTAS DE DESARROLLO PARA LA PLAYSTATION 2 Versión 1.1 Fecha: 13-10-2002 Autores: Francisco González García Ismael García Fernández LIBRERIAS Y UTILIDADES: LIBRERIA PS2DEV La librería

Más detalles

Mi primera aplicación OpenGL con MFC. Con esta guía rápida, escribiremos nuestra primera aplicación OpenGL con MFC (Microsoft Foundations Class).

Mi primera aplicación OpenGL con MFC. Con esta guía rápida, escribiremos nuestra primera aplicación OpenGL con MFC (Microsoft Foundations Class). Mi primera aplicación OpenGL con MFC Con esta guía rápida, escribiremos nuestra primera aplicación OpenGL con MFC (Microsoft Foundations Class). Ejecutar Visual C++ 6.0 Elegir la opción File del menú para

Más detalles

Software de sistema: Programas genéricos que permiten gestionar los recursos del ordenador.

Software de sistema: Programas genéricos que permiten gestionar los recursos del ordenador. PRINCIPALES TIPOS DE SOFTWARE Software de sistema: Programas genéricos que permiten gestionar los recursos del ordenador. Software de aplicación: Son programas escritos para realizar funciones específicas

Más detalles

Guía de Conexión WIFI a PRONET

Guía de Conexión WIFI a PRONET Guía para la conexión a WiFi en Pronet El servicio de WiFi de Pronet se puede utilizar en una gran variedad de dispositivos inalámbricos los cuales van basados en la tecnología Wi-Fi siempre y cuando cumplan

Más detalles

OPERACIONES AUXILIARES CON TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN. Entornos multimedia. Unidad 3

OPERACIONES AUXILIARES CON TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN. Entornos multimedia. Unidad 3 Entornos multimedia Unidad 3 Introducción Entorno multimedia. Sonido. Texto. Vídeo. Animación. Sistema multimedia. Sistema multimedia interactivo. Dispositivos multimedia Concepto. Tarjetas de sonido.

Más detalles

CAPÍTULO 1 Instrumentación Virtual

CAPÍTULO 1 Instrumentación Virtual CAPÍTULO 1 Instrumentación Virtual 1.1 Qué es Instrumentación Virtual? En las últimas décadas se han incrementado de manera considerable las aplicaciones que corren a través de redes debido al surgimiento

Más detalles

Transición de su infraestructura de Windows Server 2003 a una solución moderna de Cisco y Microsoft

Transición de su infraestructura de Windows Server 2003 a una solución moderna de Cisco y Microsoft Descripción general de la solución Transición de su infraestructura de Windows Server 2003 a una solución moderna de Cisco y Microsoft El soporte de Microsoft para todas las versiones de Windows Server

Más detalles

TRABAJO DE INVESTIGACIÓN

TRABAJO DE INVESTIGACIÓN Facultad de Arquitectura Urbanismo y Geografía TRABAJO DE INVESTIGACIÓN PROGR AM AS MODELADO Y/O ANIMACIÓN 3D A u t o C A D ASIGNATURA: TICs DOCENTES: Arqtos. Juan Pablo Klempau y Eduardo Moraga ALUMNOS:

Más detalles

WEB APP VS APP NATIVA

WEB APP VS APP NATIVA WEB APP VS APP NATIVA Agosto 2013 Por Jesús Demetrio Velázquez 1 Ya decidió hacer su aplicación en Web App o App Nativa? Debido a que surgieron varias preguntas relacionadas con nuestro artículo Yo Mobile,

Más detalles

UT04 01 Máquinas virtuales (introducción)

UT04 01 Máquinas virtuales (introducción) UT04 01 Máquinas virtuales (introducción) n) Módulo: Sistemas Informáticos Virtualización Qué es una máquina m virtual? Terminología Características, ventajas e inconvenientes de las MVs Productos: VMWare,

Más detalles

GRAFICACIÓN OpenGL. Profr. Hilario Salazar Martínez

GRAFICACIÓN OpenGL. Profr. Hilario Salazar Martínez GRAFICACIÓN OpenGL Profr. Hilario Salazar Martínez librería GLUT Visual C++ 6.0 Introducción La librería GLUT nos permite crear una interfície de ventanas tipo X-Windows. Los programas se pueden compilar

Más detalles

toda la potencia de un Dedicado con la flexibilidad del Cloud

toda la potencia de un Dedicado con la flexibilidad del Cloud Cloud Dedicado: toda la potencia de un Dedicado con la flexibilidad del Cloud Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199 www.hostalia.com Qué es un Cloud Privado Virtual? El término

Más detalles

Guías para el uso de las funciones del producto (Windows, Mac)

Guías para el uso de las funciones del producto (Windows, Mac) Guías para el uso de las funciones del producto (Windows, Mac) Antes de utilizar el equipo, lea este manual con atención y consérvelo para consultarlo cuando lo necesite. 34UC97 www.lg.com 3440 by 440

Más detalles

Desarrollo de Aplicaciones Web Por César Bustamante Gutiérrez. Módulo I: Conceptos Básicos Tema 1: Concepto iniciales. www.librosdigitales.

Desarrollo de Aplicaciones Web Por César Bustamante Gutiérrez. Módulo I: Conceptos Básicos Tema 1: Concepto iniciales. www.librosdigitales. 1 Arquitectura de una Aplicación Android Para empezar con el desarrollo de aplicaciones en Android es importante conocer cómo está estructurado este sistema operativo. A esto le llamamos arquitectura y

Más detalles

Desarrollo de Videojuegos con Unity

Desarrollo de Videojuegos con Unity Desarrollo de Videojuegos con Unity Programa México First Estrategia de Certificación con Instituciones Educativas Diseño de Videojuegos Vigencia: 31/07/2015 Propuesta: Curso de capacitación para el desarrollo

Más detalles

Desarrollo de Aplicaciones Multimedia

Desarrollo de Aplicaciones Multimedia Desarrollo de Aplicaciones Multimedia Francisco José Suárez Alonso UNIVERSIDAD DE OVIEDO Área de Arquitectura y Tecnología de Computadores Curso 2010/2011 Desarrollo de Aplicaciones Multimedia Arquitecturas

Más detalles

Capitulo 4. JavaFX. Se da a conocer la plataforma de desarrollo JavaFX, los niveles en el cual se encuentra

Capitulo 4. JavaFX. Se da a conocer la plataforma de desarrollo JavaFX, los niveles en el cual se encuentra Capitulo 4. JavaFX Se da a conocer la plataforma de desarrollo JavaFX, los niveles en el cual se encuentra estructurado el lenguaje de programación, se realiza el análisis del código Helloworld.fx para

Más detalles

FUNDAMENTOS DE PROGRAMACION CON C#

FUNDAMENTOS DE PROGRAMACION CON C# Capítulo 1 FUNDAMENTOS DE PROGRAMACION CON C# El lenguaje C# C# (léase, en inglés C sharp, y en español C almohadilla) es un lenguaje de programación que permite el desarrollo de aplicaciones para Internet,

Más detalles

Tutorial 1. Instalación del entorno de desarrollo de Android. Curso de perfeccionamiento: Programación de Android TUTORIAL 1: INSTALACIÓN DEL SOFTWARE

Tutorial 1. Instalación del entorno de desarrollo de Android. Curso de perfeccionamiento: Programación de Android TUTORIAL 1: INSTALACIÓN DEL SOFTWARE Tutorial 1 Instalación del entorno de desarrollo de Android Curso de perfeccionamiento: Programación de Android 2013 1 Para desarrollar aplicaciones Android debemos instalar el siguiente software en nuestro

Más detalles

CONTENIDO. Capítulo 1. Capítulo 3. Capítulo 2. Contenido

CONTENIDO. Capítulo 1. Capítulo 3. Capítulo 2. Contenido CONTENIDO Sobre el autor 4 Prólogo 5 El libro de un vistazo 8 Introducción 14 Capítulo 1 INTRODUCCIÓN Estructura básica de la computadora 16 El microprocesador 16 La memoria 17 Los buses 18 Controladoras

Más detalles

ELEMENTOS HARDWARE DEL ORDENADOR. Tarjeta gráfica

ELEMENTOS HARDWARE DEL ORDENADOR. Tarjeta gráfica ELEMENTOS HARDWARE DEL ORDENADOR Tarjeta gráfica Qué es? Tarjeta Gráfica 1. Interpreta los datos que le llegan del procesador, ordenándolos y calculando el valor de cada píxel, lo almacena en la memoria

Más detalles

Sistemas de referencia Introducción a OpenGL

Sistemas de referencia Introducción a OpenGL Sistemas de referencia Introducción a OpenGL Introducción a la Computación Gráfica Andrea Rueda Pontificia Universidad Javeriana Departamento de Ingeniería de Sistemas The implementation principle: If

Más detalles

Adaptación de Algoritmos Geométricos al Uso de Hardware Gráfico Programable

Adaptación de Algoritmos Geométricos al Uso de Hardware Gráfico Programable Adaptación de Algoritmos Geométricos al Uso de Hardware Gráfico Programable Aplicaciones MEMORIA DE TESIS Presentada por José María NOGUERA ROZÚA Para optar al grado de doctor Universidad de Jaén, Departamento

Más detalles

Seminario II: Introducción a la Computación GPU

Seminario II: Introducción a la Computación GPU Seminario II: Introducción a la Computación GPU CONTENIDO Introducción Evolución CPUs-Evolución GPUs Evolución sistemas HPC Tecnologías GPGPU Problemática: Programación paralela en clústers heterogéneos

Más detalles

Qué es UltraVNC? Cómo se Instala?

Qué es UltraVNC? Cómo se Instala? Qué es UltraVNC? VNC son las siglas en inglés de Virtual Network Computing (Computación Virtual en Red), y UltraVNC (escrito a veces como uvnc) es un software libre de escritorio remoto para entornos de

Más detalles

Paradigmas de Programación

Paradigmas de Programación Paradigmas de Programación 3.2. Orientación a Eventos Departamento de Informática Universidad de Valladolid Curso 2010-11 Grado en Ingeniería Informática Grado en Ingeniería Informática de Sistemas 11

Más detalles

Computación Gráfica. (Algunos Fundamentos) Universidad de los Andes Demián Gutierrez Octubre 2011 1

Computación Gráfica. (Algunos Fundamentos) Universidad de los Andes Demián Gutierrez Octubre 2011 1 Comutación Gráfica (Algunos Fundamentos) Universidad de los Andes Demián Gutierrez Octubre 2011 1 Qué es? Es una rama de la ciencia de comutación que estudia al conjunto de técnicas que ermiten la reresentación

Más detalles

Configuración de PDAs en ITACTIL.

Configuración de PDAs en ITACTIL. Configuración de PDAs en ITACTIL. La aplicación ITACTIL puede trabajar con terminales de mano (PDAs, tablets o teléfonos Android, Iphone, Ipad, etc.) en sus versiones Profesional y Líder. El funcionamiento

Más detalles

Temario 23/09/2008. UNIVERSIDAD ABIERTA INTERAMERICANA Facultad de Tecnología Informática. Luis Perdomo Rocio Gimenez

Temario 23/09/2008. UNIVERSIDAD ABIERTA INTERAMERICANA Facultad de Tecnología Informática. Luis Perdomo Rocio Gimenez UNIVERSIDAD ABIERTA INTERAMERICANA Facultad de Tecnología Informática Luis Perdomo Rocio Gimenez Temario 1. Qué es WPF? 2. Objetivo de WPF 3. Funcionalidades Básicas 4. Presentación de un problema 5. Principales

Más detalles

Capitulo 2 Android SDK

Capitulo 2 Android SDK Capitulo 2 Android SDK Elaborado por: Gary Briceño http://gary.pe http://gary.pe 1 ESTRUCTURA DE ANDROID SDK http://gary.pe 2 http://gary.pe 3 Android SDK Proporciona los API y herramientas de desarrollo

Más detalles