Comp graft3
-
Upload
alexander-cabrera-guevara -
Category
Documents
-
view
212 -
download
2
Transcript of Comp graft3
Laureate Internacional Universities ®
AASSIIGGNNAATTUURRAA ::
PPRROOYYEECCTTOO ::
“SIMULADOR DE VUELO VIRTUAL
EN C++ CON GLUT ”
DDOOCCEENNTTEE ::
I n g . J O S É L U I S P E R A L T A L U J Á N
IINNTTEEGGRRAANNTTEESS ::
CABRERA GUEVARA, Alexander
VILLACORTA RAMÍREZ, Jhonatan
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
ÍNDICE DE CONTENIDOS
ÍNDICE DE CUADROS .................................................... PÁG. 03
ÍNDICE DE GRÁFICOS ................................................... PÁG. 03
I. INTRODUCCIÓN ........................................................ PÁG. 04
II. RESUMEN ............................................................. PÁG. 05
III. PROBLEMA DE INVESTIGACIÓN ............................................ PÁG. 06
1. REALIDAD PROBLEMÁTICA ................................................ PÁG. 06
2. PLANTEAMIENTO DEL PROBLEMA ............................................ PÁG. 06
3. JUSTIFICACIÓN DEL PROBLEMA ............................................ PÁG. 07
4. ALCANCES ........................................................... PÁG. 08
5. LIMITACIONES ........................................................ PÁG. 08
IV. OBJETIVOS ........................................................... PÁG. 09
1. OBJETIVO GENERAL .................................................... PÁG. 09
2. OBJETIVOS ESPECÍFICOS ................................................ PÁG. 09
V. MARCO TEÓRICO ....................................................... PÁG. 10
VI. DESARROLLO .......................................................... PÁG. 16
VII. RESULTADOS .......................................................... PÁG. 16
VIII. CONCLUSIONES ........................................................ PÁG. 21
IX. RECOMENDACIONES ..................................................... PÁG. 22
X. FUENTES DE REFERENCIA ................................................ PÁG. 23
1. BIBLIOGRAFÍA ........................................................ PÁG. 23
2. WEBGRAFÍA .......................................................... PÁG. 23
XI. ANEXOS .............................................................. PÁG. 24
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
ÍNDICE DE CUADROS
1. CUADRO ESTADÍSTICO DE MORTALIDAD AERONÁUTICA .............................. PÁG. 16
2. LIBRERÍAS USADAS .................................................... PÁG. 17
3. CONTROLES DE TECLADO ................................................. PÁG. 17
4. CONTROLES DEL MOUSE .................................................. PÁG. 18
5. ARCHIVO PRINCIPAL DE ENCABEZADO ........................................ PÁG. 18
6. ARCHIVO PRINCIPAL DE CÓDIGO FUENTE ...................................... PÁG. 19
7. CUADRO DEL PROYECTO EN VISUAL ADJUNTADO .................................. PÁG. 24
ÍNDICE DE GRÁFICOS
1. SUPERVIVENCIA EN UN AVIÓN SEGÚN LA SITUACIÓN (FIG. 01) ..................... PÁG. 06
2. SIMULADOR DE RADAR DE BARCO (FIG. 02) .................................. PÁG. 10
3. SIMULADOR DE JUEGOS DE CARRERA (FIG. 03) ................................ PÁG. 13
4. OPENGL (FIG. 04) ................................................... PÁG. 14
5. EJEMPLO EN OPENGL (FIG. 05) .......................................... PÁG. 14
6. MICROSOFT VISUAL STUDIO (FIG. 06) ..................................... PÁG. 15
7. C++ (FIG. 07) ..................................................... PÁG. 15
8. VICTIMAS DE ACCIDENTES AÉREOS POR AÑO ................................... PÁG. 16
9. PANTALLA DE APLICACIÓN ................................................ PÁG. 20
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
I. INTRODUCCIÓN
La computación gráfica es el campo de la Informática Visual, donde se utilizan
computadoras tanto para generar imágenes visuales sintéticamente, como integrar o cambiar
la información visual y espacial probada del mundo real.
Los significativos avances tecnológicos han crecidos a lo largo de los últimos veinte
años han posibilitado la incursión de nuevas herramientas con las que afrontar el proceso de
enseñanza-aprendizaje. Las tecnologías multimedia han ido suplantando al clásico instructor
de vuelo, propiciando la aparición de nuevos esquemas metodológicos que ayuden a potenciar
la eficacia de estos recursos innovadores como la de simuladores virtuales por computadora
disminuyendo el riego de muerte a un 0% en el proceso de aprendizaje.
Hoy en día, la revolución producida en el ámbito de las Tecnologías de la Información
permite incluso romper la barrera espacio temporal que limita el aprendizaje presencial, y
saltar hacia una formación virtual y/o on-line, donde ya no es necesaria la presencia física de
un instructor. La enseñanza no presencial es ya una realidad que irrumpe con fuerza en el
entorno académico, y empiezan a ser abundantes las experiencias en este campo.
Nuestro proyecto “Simulador de Vuelo Virtual en C++ con Glut ”, esta encaminado a la
creación de un Simulador Virtual que canalice las iniciativas de los futuros pilotos en el ámbito
de la simulación virtual. Este proyecto, esta puesto en marcha en el curso de Computación
Grafica y Visual, ciclo 2012-2 y se encuentra actualmente integrado e implementado en
Microsoft Visual Studio 2010.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
II. RESUMEN
En este trabajo se analiza el diseño e implementación de un “Simulador de Vuelo
Virtual en C++ con Glut ”, enmarcada en la oferta Virtual de simuladores de vuelo con bajo
costo de programación. Se trata de sugerir al piloto experiencia de formación virtual.
Asimismo, se pone especial énfasis en la descripción de las dinámicas y metodologías
puestas en práctica con la mira fijada en el horizonte del Espacio Literal. La importancia que
adquiere el futuro piloto en el proceso educativo.
La idea surgió del gran costo computacional que exige crear un software de simulación
de vuelo en la actualidad y por ende el precio de compra empresa de aviación y pilotos
amateurs o de aquellas personas que quieren pilotar por hobbie o tiempo libre. Se desarrollo
un simulador virtual por computadora para el aprendizaje de los pilotos de vuelo, en una
interfaz amigable al usuario.
Por supuesto toda la aplicación fue hecha con los conocimientos adquiridos en el curso
de Computación grafica y visual de la universidad Privada del Norte, contando como Software
de trabajo: Microsoft Visual Studio con el Lenguaje de Programación C++ con librerías como
glut, glm, glui, etc.
Con la realización de este trabajo pretendemos la consecución de nuevos y diversos
conocimientos que de seguro serán bastante útiles en el resto de nuestra vida profesional.
Esperamos sea un proyecto aprendizaje y enseñanza para futuras generaciones que deseen
implementar un proyecto similar mejorando y/optimizando el código. Además en este trabajo
final se demuestra nuestro entendimiento del tema y que debido a la dedicación que esto nos
ha significado esperamos que este trabajo sea de su agrado.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
III. PROBLEMA DE LA INVESTIGACIÓN
1. REALIDAD PROBLEMÁTICA
En el sector empresarial, el uso de simuladores gráficos virtuales se ha convertido
en un aspecto importante ya que nos encontramos en un mundo globalizado y la
globalización en las redes informáticas dirigido al aspecto grafico computarizado es vital.
Estas tecnologías han sido implementadas, sin embargo sufren algunas penurias
debido a la falta de presupuesto, resistencia al cambio, entre otros.
En la actualidad aprender a manejar vehículos aéreos es una tarea a parte de
tediosa sumamente peligrosa, en aspectos técnicos es necesaria procesos de aprendizaje
con niveles de error a un nivel 0, utilizando software de bajo costo y fácil uso para el futuro
piloto.
2. PLANTEAMIENTO DEL PROBLEMA
¿En qué medida un Simulador de Vuelo Virtual por computadora ayudaría en
el aprendizaje de futuros pilotos, como soporte en el aprendizaje práctico, y
disminución en el nivel de mortalidad?
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
3. JUSTIFICACIÓN DEL PROBLEMA
La empresas aeronáuticas requieren tener acceso a instructores de vuelo y
avionetas las 24 horas del día ya que los cursos de aprendizaje para piloto tienen diversos,
para lo cual se necesita un modelo de enseñanza que disminuya costos en el
mantenimiento de las aeronaves, pago de los pilotos y por ende errores humanos en el
vuelo de practica, de tal manera que se necesita implementar un simulador virtual para
mejorar el aprendizaje teórico – semi práctico.
Debido a lo antes descrito, un simulador de vuelo va estar comprendido como
beta, y será orientara a su arquitectura gráfica con infraestructura física y visual de tal
manera que permitirá la interconexión del usuario con el computador como si fuera un
vehículo aéreo en la realidad.
Este proyecto se centra en la búsqueda de una tecnología de computación grafica
que permita dar una simulación virtual, esto se lograra a través de un programa, un
algoritmo con interfaz grafica con el fin de obtener una mejor comunicación de datos entre
los pilotos y aeronaves. Por consecuencia tener una normalización en estándares y un
adecuado control en el proceso de aprendizaje y como consecuencia se permitirá aumentar
la seguridad y otorgar servicios más rápidos de clases de vuelo.
En conclusión de manera económica, con un simulador en computadora se logrará
aumentar la efectividad y eficiencia de aprendizaje, disminuyendo sus costos como
mantenimiento, pagos de instructores por hora en un 90%. En aspectos tecnológicos, el
diseño de estadísticas de piloto ayudara a tener un mejor control y seguridad al sacar
pilotos nuevos al mercado. Por ultimo el estudio de esta investigación nos permitirá
conocer un poco más sobre la tecnología implementada sobre interfaces graficas por
computadora.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
4. ALCANCES
Se realizara una aplicación de un simulador virtual de vuelo totalmente
integrada a la medida posible, con los conocimientos gráficos de los
integrantes.
Realizar una revisión, inspección y análisis de la arquitectura grafica de un
simulador virtual.
Identificaremos las mejores propuestas para el desarrollo algorítmico de un
simulador virtual.
Compartir el conocimiento entre integrantes del grupo del desarrollo del
proyecto.
Determinar el funcionamiento de algoritmos gráficos y aprender mas
sobres librerías de OpenGL como glut, glm, gmi, etc.
5. LIMITACIONES
Ya que no se podrá conseguir host y dominio propio por ser un proyecto
estudiantil y no contar con el presupuesto adecuado, para una
implementación web de manera online.
Unos meses es quizá un período muy breve para la implementación total de
la aplicación de un simulador gráfico totalmente completo, ya que fue un
proceso de aprendizaje consecutivo, aun nos falta adquirir el conocimiento
para una culminación a gran escala.
El segundo problema es no poder establecer un IA; un modo de inteligencia
artificial para una interacción del futuro piloto con el simulador en
momentos críticos.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
IV. OBJETIVOS
1. OBJETIVO GENERAL
Desarrollar un simulador de vuelo virtual en C++ con Glut, aplicado los
conceptos físicos y matemáticos necesarios; adquiriendo la capacidad de
llevarlos a la implementación ya sea por la construcción directa de los
algoritmos o por la utilización de librerías para dicho fin utilizando los
conocimiento usados en el curso de Computación Grafica y Visual.
2. OBJETIVOS ESPECÍFICOS.
Entender los conceptos fundamentales de la Computación gráfica y cómo se
expresan y representan en términos computacionales.
Adquirir conocimiento práctico en la programación gráfica y en las técnicas
interactivas a través de aplicaciones de alto nivel de gráficas.
Adquirir destrezas en la computación gráfica visual.
Adquirir habilidades en la resolución visual de problemas.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
V. MARCO TEÓRICO
1. SOFTWARE DE SIMULACIÓN EN LA ENSEÑANZA
Se ha escuchado hablar acerca de las grandes posibilidades que ofrecen las TIC para
diversos sectores sociales, sea por el ahorro de tiempo, para agilizar tareas o porque son
fáciles de transportar. Se vuelven cada vez más indispensables; en el campo educativo es
común enterarse de proyectos que tratan de aprovechar los recursos, en primer lugar, para
facilitar la labor del instructor, y en segundo, para que se logre involucrar a los estudiantes
en sus propios procesos de aprendizaje.
Como ejemplo se pueden mencionar los simuladores, los cuales se convierten en
poderosos aliados para promover y crear entornos de aprendizaje, potencian las
competencias de los estudiantes y mantienen un espacio para la colaboración y la
cooperación. En los últimos años ha crecido la cantidad de este tipo de software y las áreas
del conocimiento en que puede ser utilizado –Matemáticas, Física, Geografía, entre otros.
Pero ¿cuánto se sabe acerca de ellos? ¿Se estaría interesado en echar un vistazo y
conocer los beneficios que ofrecen? A lo largo de estas páginas se expondrá información
valiosa sobre estas herramientas, así como sus características, ventajas, desventajas,
recomendaciones para su empleo y finalmente, algunos ejemplos, todo esto con el único
objetivo de dar a conocer algunos de aquellos materiales que puedan servir como apoyo en
el aula.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
1.1. ¿Qué es un Simulador?
Desarrollados a principios de los años 60 en el contexto de la Segunda Guerra
Mundial con la finalidad de agilizar practicas experimentales de la Física y
posteriormente con fines militares, los simuladores se convirtieron en una valiosa
herramienta para evitar el derroche monetario.
Un simulador se puede definir como una herramienta basada en cálculos
numéricos y representaciones gráficas. Representa un conjunto de instrucciones
ejecutadas mediante un ordenador que permite virtualmente reproducir, explorar y
manipular situaciones basadas en la realidad. Así, el usuario adquiere habilidades,
hábitos y competencias que difícilmente conseguiría sólo con el manejo de la teoría
logrando la experiencia directa sin la necesidad de alterar los fenómenos de la
naturaleza o esperar hasta que estos sucedan.
1.2. Características y Atributos de los Simuladores
Todo simulador debe tener tres atributos:
Imitar la Realidad.
No ser Real en Sí Mismo.
Poder ser Modificado por sus Usuarios.
Y los simuladores tienen tres características principales:
Su Papel Motivacional, ya que permiten la representación de fenómenos de
estudio que potencialmente captan la atención e interés del estudiante.
Su Papel Facilitador del aprendizaje, ya que el estudiante interactúa,
favoreciendo la aprehensión de saberes a través del descubrimiento y la
comprensión del fenómeno, sistema o proceso simulado.
Su Papel Reforzador, ayuda al aprendiz a aplicar los conocimientos
adquiridos y, por ende, a la generalización del conocimiento.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
1.3. Ventajas
La simulación facilita la construcción de escenarios ideales, la manipulación de
variables para observar su impacto en fenómenos determinados o para dotar al
aprendiz de un recurso para la réplica de las teorías aprendidas. Una ventaja
importante:
“ En lugar de que expertos construyan amplios modelos matemáticos, el
software de simulación ha permitido modelar y analizar el funcionamiento de un
sistema real para los no expertos, que son los administradores, pero no los
programadores.”
Otras ventajas son:
La reproducción de fenómenos naturales difícilmente observables de
manera directa en la realidad por motivos de peligrosidad, de escala de
tiempo, de escala espacial o de carestía del montaje (Fernández, 2005)
Y la manipulación y control a voluntad de variables para la identificación de
condiciones necesarias que lleven a cumplir con objetivos determinados.
Las ventajas mencionadas ofrecen al usuario la posibilidad de:
Experimentar nuevas situaciones de las que no se tiene información
suficiente, lo que impulsa el desarrollo de estrategias de aprendizaje
exploratorio y el descubrimiento del modelo que simula el sistema motivo
de análisis.
Poner a prueba sus ideas previas acerca del fenómeno que se simula
mediante la emisión de hipótesis propias lo cual redunda en mayor
autonomía del proceso de aprendizaje.
Adiestrarse en la toma de decisiones y formulación de conclusiones al tener
la oportunidad de valorar diversos escenarios próximos a la realidad en un
ambiente controlado y seguro pudiendo repetir la experiencia las veces que
se considere necesario, a un costo mucho menor del que implicaría la
reproducción real.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
1.4. Desventajas
Implementar un software de simulación eficiente implica una inversión alta
en tiempo, equipo y recursos humanos. El diseño de un buen software de
este tipo requiere personal capacitado, tiempo para su desarrollo, el equipo
necesario y planeación.
Muchas veces los resultados se muestran excesivamente simplistas por lo
que no resultan adecuados para una distribución masiva.
Dado que es una versión simplificada de la realidad, puede provocar una
visión reduccionista del fenómeno en el usuario.
Hay situaciones que difícilmente pueden reproducirse de manera artificial.
Los procesos implicados en el aprendizaje exploratorio pueden resultar
difíciles para los estudiantes y, por otra parte, estos no son tan activos
como asumimos, por tanto, aun teniendo las destrezas necesarias, los
alumnos no suelen aplicarlas.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
2. OpenGL
OpenGL (Open Graphics Library) es una
especificación estándar que define una API
multilenguaje y multiplataforma para escribir
aplicaciones que produzcan gráficos 2D y 3D. La
interfaz consiste en más de 250 funciones
diferentes que pueden usarse para dibujar
escenas tridimensionales complejas a partir de primitivas geométricas simples, tales como
puntos, líneas y triángulos. Fue desarrollada originalmente por Silicon Graphics Inc. (SGI) en
1992 y se usa ampliamente, realidad virtual, representación científica, visualización de
información y simulación de vuelo. También se usa en desarrollo de videojuegos, donde
compite con Direct 3D en plataformas Microsoft Windows. El funcionamiento básico de
OpenGL consiste en aceptar primitivas tales como puntos, líneas y polígonos, y convertirlas
en píxeles.
OpenGL tiene dos propósitos esenciales:
Ocultar la complejidad de la interfaz con las diferentes tarjetas gráficas,
presentando al programador una API única y uniforme.
Ocultar las diferentes capacidades de las diversas plataformas hardware,
requiriendo que todas las implementaciones soporten la funcionalidad
completa de OpenGL (utilizando emulación software si fuese necesario).
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
3. Microsoft Visual Studio
Microsoft Visual Studio es un entorno de desarrollo
integrado (IDE, por sus siglas en inglés) para sistemas operativos
Windows. Soporta varios lenguajes de programación tales como
Visual C++, Visual C#, Visual J#, y Visual Basic .NET, al igual que
entornos de desarrollo web como ASP.NET. Aunque actualmente se han desarrollado las
extensiones necesarias para muchos otros.
4. Lenguaje de Programación C++
C++ es un lenguaje de programación diseñado a mediados
de los años 1980 por Bjarne Stroustrup. La intención de su
creación fue el extender al exitoso lenguaje de programación C con
mecanismos que permitan la manipulación de objetos. En ese
sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje
híbrido.
Posteriormente se añadieron facilidades de programación genérica, que se sumó a
los otros dos paradigmas que ya estaban admitidos (programación estructurada y la
programación orientada a objetos). Por esto se suele decir que el C++ es un lenguaje de
programación multiparadigma.
Actualmente existe un estándar, denominado ISO C++, al que se han adherido la
mayoría de los fabricantes de compiladores más modernos. Una particularidad del C++ es la
posibilidad de redefinir los operadores, y de poder crear nuevos tipos que se comporten
como tipos fundamentales.
El nombre C++ fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje
fue utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el
nombre "C con clases". En C++, la expresión "C++" significa "incremento de C" y se refiere a
que C++ es una extensión de C.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
VI. DESARROLLO Y RESULTADOS
1. ¿VUELA SEGURO? : Estadísticas de Accidentes Aéreos
Que el avión es el medio de transporte más seguro que actualmente existe es
conocido por todos. Las cifras oficiales de la Asociación Internacional del Transporte Aéreo,
la IATA (siglas en inglés), sostiene que de 2004 a 2012 la mortalidad en los accidentes
aéreos bajó un 56% y la tasa de mortalidad descendió hasta el 0,13 por cada millón de
pasajeros, diez puntos de diferencia respecto el año anterior.
La probabilidad de sufrir un accidente aéreo es menor que, por ejemplo, un
accidente nuclear o de que nos caiga un rayo, una entre once millones. Aun así, mucha
gente tiene miedo a volar. Además de las bajas cifras de accidentes, que representan un
0,42% en Europa y un 0,58% en Norteamérica del total de vuelos anuales, hay otros
argumentos para disipar los temores y recelos de subirse a un avión.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
2. LIBRERÍAS USADAS
//Librerías Nativas de Microsoft Visual Studio 2010 #include <windows.h> #include <io.h> #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <math.h> //Librerías de OpenGL #include <GL\glut.h> #include "glm.h" //Archivos de Encabezado #include "vertices.h" #include "materials.h" #include "polygons.h" #include "draw.h" #include "render.h" #include "flightdynamics.h" #include "globals.h" #include "input.h" #include "splash.h"
3. LOS CONTROLES
//Los Controles del Teclado son:
RIGHT KEY o c Rodar derecho.
LEFT KEY o z Rodar a la izquierda.
UP KEY o s Echar abajo.
DOWN KEY o x Hacia arriba.
1 Vista exterior desde atrás, seguir la aeronave.
2 Vista exterior desde el lado izquierdo.
3 Vista exterior desde el lado derecho.
4 Vista interior de la cabina.
+ Aumentar la velocidad.
- Reducir la velocidad.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
// Los controles del Mouse son:
4. ARCHIVOS DE CÓDIGO FUENTE
main.cpp
MOUSE MOVER RIGHT Rodar derecho.
MOUSE MOVER LEFT Rodar a la izquierda.
MOUSE MOVER UP Echar abajo.
MOUSE MOVER DOWN Hacia arriba.
// ********************************************************************* // * ========= * // * == === * // * == == * // * ========= * // * * // * UNIVERSIDAD PRIVADA DEL NORTE * // * Laureate Internacional Universities® * // * * // * COMPUTACIÓN GRÁFICA Y VISUAL * // * * // * SIMULADOR DE VUELO VIRTUAL EN C++ CON GLUT * // * * // * DOCENTE: Ing. JOSÉ LUIS PERALTA LUJÁN * // * * // * ALUMNOS: CABRERA GUEVARA, Alexander * // * VILLACORTA RAMÍREZ, Jhonatan * // * * // * Cajamarca, Diciembre del 2012 * // * * // * * //********************************************************************** #include "ensemble.h" using namespace nsEnsemble; int main(int argc, char **argv) { initPrograma(); runPrograma(); return 0; }
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
5. ARCHIVOS DE ENCABEZADO (Solo el Principal lo demás será Adjuntado)
ensemble.h
#ifndef CESSNASKYHAWK_H #define CESSNASKYHAWK_H //Librerias Nativas de Microsoft Visual Studio 2010 #include <windows.h> #include <io.h> #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <math.h> //Librerias de OpenGL #include <GL\glut.h> #include "glm.h" //Archivos de Encabezado #include "vertices.h" #include "materials.h" #include "polygons.h" #include "draw.h" #include "render.h" #include "flightdynamics.h" #include "globals.h" #include "input.h" #include "splash.h" namespace nsEnsemble { void initPrograma(void) { glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH); // Tamaño de la Pantalla Simulador 500x500 glutInitWindowSize(576, 384); // Crear la Ventana del Simulador y darle un Titulo mainwindow = glutCreateWindow("Simulador de Vuelo Virtual en C++ con Glut"); //Coordenadas de Vista eyex = 0.0; eyey = 110.0; eyez = -550.0; atx = 0.0; aty = 0.0; atz = 0.0; upx = 0.0; upy = 1.0; upz = 0.0; glutDisplayFunc(splashdisplay); glEnable(GL_DEPTH_TEST); glutReshapeFunc(myReshape); glutSetWindow(mainwindow); //Posicion de la Ventana del Simulador glutPositionWindow(984,176); glutReshapeFunc(myReshape); glutKeyboardFunc(key); glutSpecialFunc (keyboard_s); glutPassiveMotionFunc(motion); glutDisplayFunc(display); glutIdleFunc(yaw); glEnable(GL_DEPTH_TEST); glEnable(GL_NORMALIZE); } void runPrograma(void) { glutMainLoop(); } } #endif CESSNASKYHAWK_H
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
6. VENTANAS DE LA APLICACIÓN
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
VII. CONCLUSIONES
La educación debe renovarse para aprovechar las nuevas oportunidades y recursos
que actualmente ofrecen los sistemas de información en materia de aprendizaje. Los
simuladores a lo largo del tiempo han logrado trascender fronteras muy especializadas para
establecerse como una estrategia didáctica mediante la cual los estudiantes no sólo adquieren
conocimientos, se les brinda la oportunidad de interactuar, experimentar y reflexionar
alrededor de los conceptos implicados. Se facilita así su participación activa y la construcción
del conocimiento mediante la toma de decisiones muy cercanas a ambiente reales. Aprenden
de la experiencia, reduciendo el costo y los riesgos del proceso.
Se puede apreciar que las ventajas de un simulador, son muchas. Es importante
considerar que, como recurso para el instructor, debe cubrir ciertos requisitos para lograr sus
fines: facilidad de uso, versatilidad, calidad de contenidos y apariencia, adecuación a los
usuarios, fomento de un esfuerzo cognitivo, entre otros. Hay que cuidar aspectos como el
costo, el resultado fue simplista, pero realmente nos involucro para lograr un aprendizaje
significativo trasladable a otros campos del conocimiento.
La variedad de simuladores disponibles hoy en día abarca múltiples aplicaciones y
áreas del conocimiento que pueden utilizarse en diversos niveles educativos y ámbitos
extraescolares. Es menester conocer la complejidad de cada modelo y su relación con las
capacidades cognitivas y analíticas de los alumnos. En suma el instructor debe integrar su uso
al desarrollo de un tema, es preciso tener claro el rumbo para seleccionarlo correctamente, y
así, como un medio de apoyo, aprovechar y potenciar este tipo de recurso tecnológico para
que sea, verdaderamente, un recurso didáctico.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
VIII. RECOMENDACIONES
En este apartado se detallan algunos aspectos que no se han realizado, ya sea por falta
de tiempo o bien por falta de recursos.
Algunas funcionalidades interesantes para futuras versiones, serían las siguientes:
Desarrollar versión instalable del software de tal manera que la instalación del simulador
virtual, la gestión de la configuración no fuesen tan rudimentarios para una futura
publicación.
Gestión de seguridad e identificación de usuarios. Sería deseable que los datos del piloto
como niveles de dificultad, estadísticas y horas de vuelo simulado, puedan establecerse
un puntaje.
Establecer una vanguardia para el manejo de interfaces graficas en realidad virtuales para
simuladores por computadora.
~ ~
INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE 2012 - II
UNIVERSIDAD PRIVADA DEL NORTE
Laureate International Universities®
IX. FUENTES DE REFERENCIA
1. BIBLIOGRAFÍA
MASON WOO, JACKIE NELDER, TOM DAVIS, DAVE SHREINER. “OpenGL Programming Guide”.
3ra Edición. (2011). [Formato PDF]
2. WEBGRAFÍA
ITZELSAINZ. “Software de Simulación en la Enseñanza”. (2011).
http://macyte.wordpress.com/2011/05/15/software-de-simulacion-en-la-ensenanza/
OPENBOXER. “Computación Gráfica”. (S.F.).
http://www.openboxer.260mb.com/asignaturas/compGrafica.php
ANÓNIMO. “Microsoft Visual Studio”. (2010).
http://es.wikipedia.org/wiki/Microsoft_Visual_Studio
NATE ROBINS. “glm.h”. (1997-200).
http://www.cs.manchester.ac.uk/ugt/COMP37111/glm/glm.h
ALBA D. “Vuela Seguro: Estadísticas de Accidentes Aéreos”. (2009).
http://blog.ulises.com/2009/10/vuela-seguro-estadisticas-de-accidentes-aereos/
PIERRE R. “Alcance del Proyecto”. (2012).
http://www.slideshare.net/oprbguitar/alcance-del-proyecto
ANDREAS VIKLUND. “Problemática de la Investigación”. (2009).
http://topicosusscez.wordpress.com/category/ii-problematica-de-la-investigacion/