Créditos
6
Tipos
Obligatoria de especialidad (Gráficos y Realidad Virtual)
Requisitos
Esta asignatura no tiene requisitos
, pero tiene capacidades previas
Departamento
CS
Profesorado
Responsable
- Nuria Pelechano Gomez ( npelechano@cs.upc.edu )
Otros
- Carlos Andujar Gran ( andujar@cs.upc.edu )
- Marta Fairen Gonzalez ( mfairen@cs.upc.edu )
Horas semanales
Teoría
3
Problemas
0
Laboratorio
1
Aprendizaje dirigido
0.15
Aprendizaje autónomo
7.4
Competencias
Computer graphics and virtual reality
Genéricas
Razonamiento
Objetivos
-
Understand the elements, architecture, input and output devices of virtual and augmented reality systems.
Competencias relacionadas: CEE1.2, -
Be able to develop and evaluate 3D interactive applications involving stereoscopic output, virtual reality hardware and 3D user interfaces.
Competencias relacionadas: CEE1.2, CTR6, CG1,
Contenidos
-
Sistemas de RV
RV como disciplina. Elementos básicos de un sistema de realidad virtual. Arquitectura de los sistemas de realidad virtual -
VR hardware
Dispositivos de entrada en RV: tracking systems, captura de movimientos, guantes de datos. Dispositivos de salida: pantallas. -
Visión Estereoscópica
Fundamentos del sistema visual humano. Depth cues. Stereopsis. Retinal disparity and parallax. Synthesis of stereo pairs. Pipeline for stereo images. -
Haptic rendering
Haptic sense. Haptic devices. Algorithms for haptic rendering -
VR software development
Challenges in VR software development. Windowing, viewing, input/output and networking issues. Master/slave and Client/server architectures. Cluster rendering. VR Juggler and XVR. Game Engines and available sdk to develop VR applications for different hardware (HTC VIVE, Oculus, Google VR).. -
AR software development
AR software. Camera parameters and camera calibration. Marker-based augmented reality. Pattern recognition. AR Toolkit -
3D user interfaces
Why 3D user interfaces. Major user tasks in VE. Interaction techniques for selection, manipulation and navigation. 3DUI evaluation. -
Presence
Presence: concept, definition, measurement and applications.
Actividades
Actividad Acto evaluativo
VR project
Development of a programing project using a game engine and google VR software to run it on a smarphone inside a head set.Objetivos: 2
Contenidos:
Teoría
2h
Problemas
0h
Laboratorio
4h
Aprendizaje dirigido
4h
Aprendizaje autónomo
8h
AR Project
Development of a project for Augmented Reality applications using ARToolkit or UnityObjetivos: 1
Contenidos:
Teoría
2h
Problemas
0h
Laboratorio
4h
Aprendizaje dirigido
4h
Aprendizaje autónomo
8h
Teoría
2h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
19h
Presentación estudiantes
Student presentation
Teoría
4h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
10h
Metodología docente
The course is based on weekly theory classes explaining the course concepts, techniques and algorithms.The students will have to complete weekly assignments. The assigments require the student to read and analyse a few papers about the course topics and to answer questions or solve problems on the subject.
The students will have to complete a programming project involving the development of a moderate-complexity VR or AR application.
The course assumes advanced knowledge of the C++ language and OpenGL and GLSL APIs.
Método de evaluación
The course assessment is based on three types of activities:- 3 Programming project ( P1, P2, P3)
- Final exam ( F )
- Presentation ( Pr )
Grade = 0.15*P1+ 0.15*P2 + 0.15*P3 + 0.10*Pr + 0.45*F
Bibliografía
Básico
-
3D user interfaces : theory and practice
- LaViola, Joseph J,
Addison-Wesley,
2017.
ISBN: 9780134034324
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004123579706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Web links
- Software library for building Augmented Reality applications http://www.hitl.washington.edu/artoolkit/
- Scripting language and IDE for developing Virtual Reality applications. http://www.vrmedia.it/en/xvr.html
Capacidades previas
The course assumes advanced C++ and or C# programming skills, as well as computer graphics knowledge (OpenGL and GLSL knowledge required).Also convenient to be familiar with Unity.