SlideShare una empresa de Scribd logo
1 de 59
Visual Studio Technologies & Windows
Platform Development MVP
Xamarin MVP
Software Developer at Plain Concepts
• Blog: http://geeks.ms/blogs/jsuarez
• Email: javiersuarezruiz@hotmail.com
• Twitter: @jsuarezruiz
Si, váis a
poder
probar!
VR vs AR
dotNetMálaga 2017
Virtual Reality
dotNetMálaga 2017
Agumented Reality
Las HoloLens en detalle
Un holograma es un objeto como cualquier otro del mundo
real, con una gran diferencia, no es físico, esta
enteramente realizado por luz.
Los objetos holográficos se pueden ver desde diferentes
ángulos, distancias, como un objeto físico real.
Los hologramas no ofrecen ningun tipo de Resistencia al ser
presionados o tocados porque en realidad, no tienen
cuerpo físico ni masa.
¿Qué son?
Microsoft HoloLens es el primer ordenador
holográfico con Windows 10.
Es totalmente independiente, no necesita ninguna
conexión a PC, teléfono, etc.
Microsoft HoloLens permite anclar hologramas en el
espacio real físico ofreciendo una nueva forma de
interacción
Microsoft Hololens soporta realidad aumentada.
Principales características
1. Cámara
2. PC
3. Lentes
4. Audio
5. Sensores
6. Botones
Características
Intel Atom x5-Z8100
2 GB RAM
64 GB HDD (54GB espacio libre)
4 cámaras de entorno (“Kinect”)
4 Micrófonos (2 laterales cancelación ruido)
GPU/HPU
2-3h duración batería (uso intenso entorno a 2h)
Windows 10 32 bits
Apps oscilan entre 20MB 200MB.
dotNetMálaga 2017
DEMODEMODEMO
Un vistazo a las HoloLens
Desarrollo
El SDK:
• Plantillas Visual Studio
• Emulador
• Unity 5.4 o superior para HoloLens
Requisitos:
• Hyper-V
• 64Bits
• Soporte para DirectX 10
Podemos interactuar usando el ratón para emular el movimiento de la cabeza,
el gaze y la acción.
También podemos usar el teclado para ejecutar acciones.
Holographic DirectX 11 App
App UWP que usa SharpDX y C#.
dotNetMálaga 2017
DEMODEMODEMO
Vemos plantillas y emulador
dotNetMálaga 2017
• Unity es un motor de
videojuego
multiplataforma.
• Añade soporte a
HoloLens.
• Toolkit con
herramientas para
tener acceso a
características.
dotNetMálaga 2017
1. Mirada (Gaze)
2. Gestos
3. Voz
4. Sonido especial
5. Spatial mapping
dotNetMálaga 2017
Gaze input
dotNetMálaga 2017
HD color camera
dotNetMálaga 2017
Spatial Mapping
dotNetMálaga 2017
Spatial Mapping
dotNetMálaga 2017
Gesture input
Air Tap Bloom
dotNetMálaga 2017
Voice input
dotNetMálaga 2017
Spatial Sound
dotNetMálaga 2017
Bluetooth connectivity
dotNetMálaga 2017
Compartir Holograma por Wifi
dotNetMálaga 2017
dotNetMálaga 2017
¿Qué vamos a ver?
• Crear App 3D con el sistema solar.
• Uso de modelos 3D.
• Crear proyectos para HoloLens.
• Gestión de cámara y posicionamiento.
• Spatial Sound.
• Air Tap.
• Comandos de voz.
dotNetMálaga 2017
https://goo.gl/xXB73a
Conjunto de Assets (texturas, modelos, etc.) a utilizar.
File > New Project
1. Introduce el nombre del proyecto
2. Selecciona la localización del proyecto.
3. OK.
Los proyectos Wave Engine cuentan con la siguiente
estructura:
• El archivo .weproj, archivo de solución Wave Engine.
• Carpeta Content, contiene todos los assets de la app,
puedes importar directamente desde herramientas como
Photoshop, 3dsMax, Blender, etc.
• Una solución Visual Studio por profile(Cada profile o
perfil se asocia con una plataforma como UWP, Windows,
Android, etc..)
WaveEngine cuenta con una serie de componentes que permiten utilizar una
cámara estéreo de acuerdo a diferentes tecnologías de AR / VR (Oculus, Google
Cardboard, HoloLens…).
Tras crear una entidad básica,
contaremos con lo básiso.
Añadimos el componente
VRCameraRig a la entidad anterior.
El componente anterior ya se encarga de crear una jerarquía como la siguiente:
Esta jerarquía se utiliza para mantener un sistema 3D de cámara estéreo, que permite “dibujar”
en cada ojo por separado y ayuda a los desarrolladores a saber dónde se encuentra cada
característica especial (ojos, posicionador de posición, etc ...).
• TrackingSpace: Permite ajustar el espacio de seguimiento a los
requisitos de la aplicación. Por ejemplo, por defecto, todas las unidades de
posición de seguimiento proporcionadas por Microsoft HoloLens se miden
en metros, por lo que si desea utilizar centímetros en lugar de metros, sólo
necesita escalar la entidad TrackingSpace 100 veces.
• LeftEyeAnchor: Esta es la entidad de la cámara del ojo izquierdo.
Siempre coincide con la posición del ojo izquierdo.
• RightEyeAnchor: Esta es la entidad de la cámara del ojo
derecho. Siempre coincide con la posición del ojo derecho.
• CenterEyeAnchor: Esta entidad se coloca en la posición media
entre la posición de los ojos izquierdo y derecho. Esta entidad se utiliza
comúnmente para conocer la posición "cabeza".
• TrackerAnchor: Cámara de seguimiento de posición.
También se añade el componente HololensProvider a la entidad cámara (la entidad que tiene
el componente VRCameraRig). Este componente es responsable de actualizar las entidades de
jerarquía VRCameraRig con la información de las HoloLens y configura las cámaras adaptarlas
a las gafas HoloLens.
Una aplicación HoloLens es básicamente una aplicación
Universal Windows Platform (UWP) con alguna
inicialización especial.
Edit > Project Properties
A nivel visual el usuario DEBE tener feedback.
Normalmente esto se consigue con
indicadores visuales. En Wave Engine
contamos con el behavior GazeBehavior para
este objetivo junto a GazeCollider.
Estados:
• Undetected
• Ready
• AirTap
Todos los gestos de HoloLens están disponibles a través del
servicio SpatialInputService. Por lo tanto, para empezar a
interactuar con los gestos, es necesario registrar ese
servicio. Esto se suele hacer en Game.cs
WaveServices.RegisterService(new SpatialInputService());
var spatialInput = WaveServices.GetService<SpatialInputService>();
if (spatialInput.IsConnected)
{
var state = spatialInputService.SpatialState;
if (state.IsSelected)
{
// Do an action while the Select gesture is active
}
}
La voz es una forma importante de entrada en HoloLens.
Le permite dirigir directamente un holograma sin depender
de los gestos. Sólo necesitas…hablar.
Estas funciones se exponen en
KeywordRecognizerService. Para comenzar a interactuar
con comandos de voz, se debe registrar el servicio. Esto se
suele hacer en Game.cs:
WaveServices.RegisterService(new KeywordRecognizerService());
var keywordService = WaveServices.GetService<KeywordRecognizerService>();
if (keywordService.IsConnected)
{
// 1. Sets the keywords
this.keywordService.Keywords = new string[] { "Begin Action", "End Action" };
// 2. Start voice recognition
this.keywordService.Start();
// 3. That event is fired when a specified keyword is recognized
this.keywordService.OnKeywordRecognized += this.OnKeywordRecognized;
}
// This method is fired when a keyword is recognized
private void OnKeywordRecognized (KeywordRecognizerResult result)
{
switch (result.Text)
{
case “Test":
// Begin the action
break;
}
}
DEMODEMODEMO
App desde cero paso a paso
Preguntas y respuestas.
¿Dudas?
&
Gracias!
dotNetMálaga 2017 - Taller Hololens con Wave Engine

Más contenido relacionado

La actualidad más candente

Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...Javier Suárez Ruiz
 
Introducción al desarrollo de aplicaciones Xamarin
Introducción al desarrollo de aplicaciones XamarinIntroducción al desarrollo de aplicaciones Xamarin
Introducción al desarrollo de aplicaciones XamarinJavier Suárez Ruiz
 
Tus aplicaciones en pantalla grande con Xbox One
Tus aplicaciones en pantalla grande con Xbox One Tus aplicaciones en pantalla grande con Xbox One
Tus aplicaciones en pantalla grande con Xbox One Javier Suárez Ruiz
 
PUE DAY 2017: Introducción a Xamarin
PUE DAY 2017: Introducción a XamarinPUE DAY 2017: Introducción a Xamarin
PUE DAY 2017: Introducción a XamarinJavier Suárez Ruiz
 
Conociendo el resto de ecosistema Xamarin
Conociendo el resto de ecosistema XamarinConociendo el resto de ecosistema Xamarin
Conociendo el resto de ecosistema XamarinJavier Suárez Ruiz
 
Xamarin Dev Days Málaga 2017 - Apps conectadas con Azure
Xamarin Dev Days Málaga 2017 - Apps conectadas con AzureXamarin Dev Days Málaga 2017 - Apps conectadas con Azure
Xamarin Dev Days Málaga 2017 - Apps conectadas con AzureJavier Suárez Ruiz
 
Codemotion 2017 - Taller Xamarin
Codemotion 2017 - Taller XamarinCodemotion 2017 - Taller Xamarin
Codemotion 2017 - Taller XamarinJavier Suárez Ruiz
 
Aumento de productividad, herramientas Xamarin
Aumento de productividad, herramientas XamarinAumento de productividad, herramientas Xamarin
Aumento de productividad, herramientas XamarinJavier Suárez Ruiz
 
Introducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLIntroducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLSorey García
 
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.Forms
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.FormsIntroducción al desarrollo de apps móviles multiplataforma con Xamarin.Forms
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.FormsJavier Suárez Ruiz
 
Codemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps XamarinCodemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps XamarinJavier Suárez Ruiz
 
Xamarin University Sprint Fling 2016
Xamarin University Sprint Fling 2016Xamarin University Sprint Fling 2016
Xamarin University Sprint Fling 2016Javier Suárez Ruiz
 
Novedades en Visual Studio Online
Novedades en Visual Studio OnlineNovedades en Visual Studio Online
Novedades en Visual Studio OnlineJavier Suárez Ruiz
 

La actualidad más candente (20)

Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
 
Desktop App Converter
Desktop App ConverterDesktop App Converter
Desktop App Converter
 
Introducción al desarrollo de aplicaciones Xamarin
Introducción al desarrollo de aplicaciones XamarinIntroducción al desarrollo de aplicaciones Xamarin
Introducción al desarrollo de aplicaciones Xamarin
 
Tus aplicaciones en pantalla grande con Xbox One
Tus aplicaciones en pantalla grande con Xbox One Tus aplicaciones en pantalla grande con Xbox One
Tus aplicaciones en pantalla grande con Xbox One
 
PUE DAY 2017: Introducción a Xamarin
PUE DAY 2017: Introducción a XamarinPUE DAY 2017: Introducción a Xamarin
PUE DAY 2017: Introducción a Xamarin
 
Introduccion a Xamarin
Introduccion a XamarinIntroduccion a Xamarin
Introduccion a Xamarin
 
Conociendo el resto de ecosistema Xamarin
Conociendo el resto de ecosistema XamarinConociendo el resto de ecosistema Xamarin
Conociendo el resto de ecosistema Xamarin
 
Xamarin Dev Days Málaga 2017 - Apps conectadas con Azure
Xamarin Dev Days Málaga 2017 - Apps conectadas con AzureXamarin Dev Days Málaga 2017 - Apps conectadas con Azure
Xamarin Dev Days Málaga 2017 - Apps conectadas con Azure
 
Servicios Xamarin
Servicios XamarinServicios Xamarin
Servicios Xamarin
 
Codemotion 2017 - Taller Xamarin
Codemotion 2017 - Taller XamarinCodemotion 2017 - Taller Xamarin
Codemotion 2017 - Taller Xamarin
 
Introducción a Xamarin
Introducción a XamarinIntroducción a Xamarin
Introducción a Xamarin
 
Aumento de productividad, herramientas Xamarin
Aumento de productividad, herramientas XamarinAumento de productividad, herramientas Xamarin
Aumento de productividad, herramientas Xamarin
 
Introducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLIntroducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAML
 
Novedades de Xamarin 4
Novedades de Xamarin 4Novedades de Xamarin 4
Novedades de Xamarin 4
 
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.Forms
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.FormsIntroducción al desarrollo de apps móviles multiplataforma con Xamarin.Forms
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.Forms
 
Introducción a xamarin
Introducción a xamarinIntroducción a xamarin
Introducción a xamarin
 
Codemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps XamarinCodemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
 
Xamarin University Sprint Fling 2016
Xamarin University Sprint Fling 2016Xamarin University Sprint Fling 2016
Xamarin University Sprint Fling 2016
 
Novedades en Visual Studio Online
Novedades en Visual Studio OnlineNovedades en Visual Studio Online
Novedades en Visual Studio Online
 
Xamarin Live Player
Xamarin Live PlayerXamarin Live Player
Xamarin Live Player
 

Similar a dotNetMálaga 2017 - Taller Hololens con Wave Engine

SVQDC - Desarrollo de Apps apra Hololens
SVQDC - Desarrollo de Apps apra HololensSVQDC - Desarrollo de Apps apra Hololens
SVQDC - Desarrollo de Apps apra HololensJavier Suárez Ruiz
 
Programando Juegos Holográficos con Unity
Programando Juegos Holográficos con UnityProgramando Juegos Holográficos con Unity
Programando Juegos Holográficos con Unity_Lagash
 
Realidad Virtual
Realidad VirtualRealidad Virtual
Realidad Virtualmjosebarxas
 
Project holo lens (1)
Project holo lens (1)Project holo lens (1)
Project holo lens (1)omjimenez201
 
Hololens
HololensHololens
HololensTensor
 
Lizbeth Anahi zambrano Santos 402
Lizbeth Anahi zambrano Santos 402Lizbeth Anahi zambrano Santos 402
Lizbeth Anahi zambrano Santos 402lizbethanahi15
 
HoloLensyRealidadExtendida
HoloLensyRealidadExtendidaHoloLensyRealidadExtendida
HoloLensyRealidadExtendidaOscar Albert
 
Sistemas de Realidad Virtual
Sistemas de Realidad VirtualSistemas de Realidad Virtual
Sistemas de Realidad Virtualjormaje
 
Microsoft Hololens
Microsoft HololensMicrosoft Hololens
Microsoft Hololensmariapaz1d
 
Colegio nacional pomasqui
Colegio nacional pomasquiColegio nacional pomasqui
Colegio nacional pomasquiAlexander Poma
 
Programando la ciencia ficción
Programando la ciencia ficciónProgramando la ciencia ficción
Programando la ciencia ficciónCarlos Toxtli
 
Realidad aumentada
Realidad aumentadaRealidad aumentada
Realidad aumentadaTensor
 
Kinect,Sensores 3D, NUI (Natural User Interfaces) y Open Source con OpenNI
Kinect,Sensores 3D, NUI (Natural User Interfaces) y Open Source con OpenNIKinect,Sensores 3D, NUI (Natural User Interfaces) y Open Source con OpenNI
Kinect,Sensores 3D, NUI (Natural User Interfaces) y Open Source con OpenNICarlos Toxtli
 

Similar a dotNetMálaga 2017 - Taller Hololens con Wave Engine (20)

SVQDC - Desarrollo de Apps apra Hololens
SVQDC - Desarrollo de Apps apra HololensSVQDC - Desarrollo de Apps apra Hololens
SVQDC - Desarrollo de Apps apra Hololens
 
Programando Juegos Holográficos con Unity
Programando Juegos Holográficos con UnityProgramando Juegos Holográficos con Unity
Programando Juegos Holográficos con Unity
 
Realidad Virtual
Realidad VirtualRealidad Virtual
Realidad Virtual
 
Project holo lens (1)
Project holo lens (1)Project holo lens (1)
Project holo lens (1)
 
Hololens
HololensHololens
Hololens
 
Lizbeth Anahi zambrano Santos 402
Lizbeth Anahi zambrano Santos 402Lizbeth Anahi zambrano Santos 402
Lizbeth Anahi zambrano Santos 402
 
HoloLensyRealidadExtendida
HoloLensyRealidadExtendidaHoloLensyRealidadExtendida
HoloLensyRealidadExtendida
 
Sistemas de Realidad Virtual
Sistemas de Realidad VirtualSistemas de Realidad Virtual
Sistemas de Realidad Virtual
 
Microsoft Hololens
Microsoft HololensMicrosoft Hololens
Microsoft Hololens
 
Microsoft hololens
Microsoft  hololensMicrosoft  hololens
Microsoft hololens
 
Hologramas
HologramasHologramas
Hologramas
 
Microsoft HoloLens
Microsoft HoloLensMicrosoft HoloLens
Microsoft HoloLens
 
Colegio nacional pomasqui
Colegio nacional pomasquiColegio nacional pomasqui
Colegio nacional pomasqui
 
Programando la ciencia ficción
Programando la ciencia ficciónProgramando la ciencia ficción
Programando la ciencia ficción
 
Realidad aumentada
Realidad aumentadaRealidad aumentada
Realidad aumentada
 
Introducción a Hololens
Introducción a HololensIntroducción a Hololens
Introducción a Hololens
 
Introducción a los "Pelochos"
Introducción a los "Pelochos"Introducción a los "Pelochos"
Introducción a los "Pelochos"
 
Trabajo Práctico
Trabajo PrácticoTrabajo Práctico
Trabajo Práctico
 
Realidad aumentada
Realidad aumentadaRealidad aumentada
Realidad aumentada
 
Kinect,Sensores 3D, NUI (Natural User Interfaces) y Open Source con OpenNI
Kinect,Sensores 3D, NUI (Natural User Interfaces) y Open Source con OpenNIKinect,Sensores 3D, NUI (Natural User Interfaces) y Open Source con OpenNI
Kinect,Sensores 3D, NUI (Natural User Interfaces) y Open Source con OpenNI
 

Más de Javier Suárez Ruiz

Cape Town MS Developer User Group: Xamarin Community Toolkit
Cape Town MS Developer User Group: Xamarin Community ToolkitCape Town MS Developer User Group: Xamarin Community Toolkit
Cape Town MS Developer User Group: Xamarin Community ToolkitJavier Suárez Ruiz
 
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.FormsTech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.FormsJavier Suárez Ruiz
 
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....Javier Suárez Ruiz
 
Monkey Conf 2020: .NET MAUI Handlers
Monkey Conf 2020: .NET MAUI HandlersMonkey Conf 2020: .NET MAUI Handlers
Monkey Conf 2020: .NET MAUI HandlersJavier Suárez Ruiz
 
Creando controles para Xamarin.Forms
Creando controles para Xamarin.FormsCreando controles para Xamarin.Forms
Creando controles para Xamarin.FormsJavier Suárez Ruiz
 
Monkey Conf 2019: Presente y futuro de Xamarin.Forms
Monkey Conf 2019: Presente y futuro de Xamarin.FormsMonkey Conf 2019: Presente y futuro de Xamarin.Forms
Monkey Conf 2019: Presente y futuro de Xamarin.FormsJavier Suárez Ruiz
 
Crear interfaces de usuario atractivas con Xamarin.Forms
Crear interfaces de usuario atractivas con Xamarin.FormsCrear interfaces de usuario atractivas con Xamarin.Forms
Crear interfaces de usuario atractivas con Xamarin.FormsJavier Suárez Ruiz
 
DotNet 2019: Optimizando Apps con Xamarin.Forms
DotNet 2019: Optimizando Apps con Xamarin.FormsDotNet 2019: Optimizando Apps con Xamarin.Forms
DotNet 2019: Optimizando Apps con Xamarin.FormsJavier Suárez Ruiz
 
Monkey Conf 2018: Conociendo Xamarin.Forms Shell
Monkey Conf 2018: Conociendo Xamarin.Forms ShellMonkey Conf 2018: Conociendo Xamarin.Forms Shell
Monkey Conf 2018: Conociendo Xamarin.Forms ShellJavier Suárez Ruiz
 
Analizando interfaces de usuario avanzadas con Xamarin.Forms
Analizando interfaces de usuario avanzadas con Xamarin.FormsAnalizando interfaces de usuario avanzadas con Xamarin.Forms
Analizando interfaces de usuario avanzadas con Xamarin.FormsJavier Suárez Ruiz
 
OpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller XamarinOpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller XamarinJavier Suárez Ruiz
 
DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!Javier Suárez Ruiz
 
Desarrollo Xamarin, más allá del desarrollo
Desarrollo Xamarin, más allá del desarrolloDesarrollo Xamarin, más allá del desarrollo
Desarrollo Xamarin, más allá del desarrolloJavier Suárez Ruiz
 

Más de Javier Suárez Ruiz (20)

Cape Town MS Developer User Group: Xamarin Community Toolkit
Cape Town MS Developer User Group: Xamarin Community ToolkitCape Town MS Developer User Group: Xamarin Community Toolkit
Cape Town MS Developer User Group: Xamarin Community Toolkit
 
DotNetDom: El futuro de Xamarin
DotNetDom: El futuro de XamarinDotNetDom: El futuro de Xamarin
DotNetDom: El futuro de Xamarin
 
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.FormsTech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
 
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....
 
Monkey Conf 2020: .NET MAUI Handlers
Monkey Conf 2020: .NET MAUI HandlersMonkey Conf 2020: .NET MAUI Handlers
Monkey Conf 2020: .NET MAUI Handlers
 
Creando controles para Xamarin.Forms
Creando controles para Xamarin.FormsCreando controles para Xamarin.Forms
Creando controles para Xamarin.Forms
 
Monkey Conf 2019: Presente y futuro de Xamarin.Forms
Monkey Conf 2019: Presente y futuro de Xamarin.FormsMonkey Conf 2019: Presente y futuro de Xamarin.Forms
Monkey Conf 2019: Presente y futuro de Xamarin.Forms
 
Crear interfaces de usuario atractivas con Xamarin.Forms
Crear interfaces de usuario atractivas con Xamarin.FormsCrear interfaces de usuario atractivas con Xamarin.Forms
Crear interfaces de usuario atractivas con Xamarin.Forms
 
#XamarinUIJuly Summary
#XamarinUIJuly Summary#XamarinUIJuly Summary
#XamarinUIJuly Summary
 
DotNet 2019: Optimizando Apps con Xamarin.Forms
DotNet 2019: Optimizando Apps con Xamarin.FormsDotNet 2019: Optimizando Apps con Xamarin.Forms
DotNet 2019: Optimizando Apps con Xamarin.Forms
 
Taller Xamarin Monkey Conf 2018
Taller Xamarin Monkey Conf 2018Taller Xamarin Monkey Conf 2018
Taller Xamarin Monkey Conf 2018
 
Monkey Conf 2018: Conociendo Xamarin.Forms Shell
Monkey Conf 2018: Conociendo Xamarin.Forms ShellMonkey Conf 2018: Conociendo Xamarin.Forms Shell
Monkey Conf 2018: Conociendo Xamarin.Forms Shell
 
.Net Conf Sevilla 2018
.Net Conf Sevilla 2018.Net Conf Sevilla 2018
.Net Conf Sevilla 2018
 
Analizando interfaces de usuario avanzadas con Xamarin.Forms
Analizando interfaces de usuario avanzadas con Xamarin.FormsAnalizando interfaces de usuario avanzadas con Xamarin.Forms
Analizando interfaces de usuario avanzadas con Xamarin.Forms
 
OpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller XamarinOpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller Xamarin
 
DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!
 
Novedades Xamarin 3.0 Preview
Novedades Xamarin 3.0 PreviewNovedades Xamarin 3.0 Preview
Novedades Xamarin 3.0 Preview
 
Desarrollo Xamarin, más allá del desarrollo
Desarrollo Xamarin, más allá del desarrolloDesarrollo Xamarin, más allá del desarrollo
Desarrollo Xamarin, más allá del desarrollo
 
Introducción a Xamarin.Forms
Introducción a Xamarin.FormsIntroducción a Xamarin.Forms
Introducción a Xamarin.Forms
 
Introducción a Xamarin
Introducción a XamarinIntroducción a Xamarin
Introducción a Xamarin
 

Último

ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 

Último (20)

ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 

dotNetMálaga 2017 - Taller Hololens con Wave Engine

  • 1.
  • 2.
  • 3. Visual Studio Technologies & Windows Platform Development MVP Xamarin MVP Software Developer at Plain Concepts • Blog: http://geeks.ms/blogs/jsuarez • Email: javiersuarezruiz@hotmail.com • Twitter: @jsuarezruiz
  • 4.
  • 7.
  • 9.
  • 11. Las HoloLens en detalle
  • 12. Un holograma es un objeto como cualquier otro del mundo real, con una gran diferencia, no es físico, esta enteramente realizado por luz. Los objetos holográficos se pueden ver desde diferentes ángulos, distancias, como un objeto físico real. Los hologramas no ofrecen ningun tipo de Resistencia al ser presionados o tocados porque en realidad, no tienen cuerpo físico ni masa.
  • 13. ¿Qué son? Microsoft HoloLens es el primer ordenador holográfico con Windows 10. Es totalmente independiente, no necesita ninguna conexión a PC, teléfono, etc. Microsoft HoloLens permite anclar hologramas en el espacio real físico ofreciendo una nueva forma de interacción Microsoft Hololens soporta realidad aumentada.
  • 14. Principales características 1. Cámara 2. PC 3. Lentes 4. Audio 5. Sensores 6. Botones
  • 15. Características Intel Atom x5-Z8100 2 GB RAM 64 GB HDD (54GB espacio libre) 4 cámaras de entorno (“Kinect”) 4 Micrófonos (2 laterales cancelación ruido) GPU/HPU 2-3h duración batería (uso intenso entorno a 2h) Windows 10 32 bits Apps oscilan entre 20MB 200MB.
  • 19. El SDK: • Plantillas Visual Studio • Emulador • Unity 5.4 o superior para HoloLens
  • 20.
  • 21. Requisitos: • Hyper-V • 64Bits • Soporte para DirectX 10 Podemos interactuar usando el ratón para emular el movimiento de la cabeza, el gaze y la acción. También podemos usar el teclado para ejecutar acciones.
  • 22. Holographic DirectX 11 App App UWP que usa SharpDX y C#.
  • 25. dotNetMálaga 2017 • Unity es un motor de videojuego multiplataforma. • Añade soporte a HoloLens. • Toolkit con herramientas para tener acceso a características.
  • 26.
  • 28. 1. Mirada (Gaze) 2. Gestos 3. Voz 4. Sonido especial 5. Spatial mapping
  • 39. dotNetMálaga 2017 ¿Qué vamos a ver? • Crear App 3D con el sistema solar. • Uso de modelos 3D. • Crear proyectos para HoloLens. • Gestión de cámara y posicionamiento. • Spatial Sound. • Air Tap. • Comandos de voz.
  • 40. dotNetMálaga 2017 https://goo.gl/xXB73a Conjunto de Assets (texturas, modelos, etc.) a utilizar.
  • 41.
  • 42. File > New Project 1. Introduce el nombre del proyecto 2. Selecciona la localización del proyecto. 3. OK.
  • 43. Los proyectos Wave Engine cuentan con la siguiente estructura: • El archivo .weproj, archivo de solución Wave Engine. • Carpeta Content, contiene todos los assets de la app, puedes importar directamente desde herramientas como Photoshop, 3dsMax, Blender, etc. • Una solución Visual Studio por profile(Cada profile o perfil se asocia con una plataforma como UWP, Windows, Android, etc..)
  • 44. WaveEngine cuenta con una serie de componentes que permiten utilizar una cámara estéreo de acuerdo a diferentes tecnologías de AR / VR (Oculus, Google Cardboard, HoloLens…).
  • 45. Tras crear una entidad básica, contaremos con lo básiso. Añadimos el componente VRCameraRig a la entidad anterior.
  • 46. El componente anterior ya se encarga de crear una jerarquía como la siguiente: Esta jerarquía se utiliza para mantener un sistema 3D de cámara estéreo, que permite “dibujar” en cada ojo por separado y ayuda a los desarrolladores a saber dónde se encuentra cada característica especial (ojos, posicionador de posición, etc ...).
  • 47. • TrackingSpace: Permite ajustar el espacio de seguimiento a los requisitos de la aplicación. Por ejemplo, por defecto, todas las unidades de posición de seguimiento proporcionadas por Microsoft HoloLens se miden en metros, por lo que si desea utilizar centímetros en lugar de metros, sólo necesita escalar la entidad TrackingSpace 100 veces. • LeftEyeAnchor: Esta es la entidad de la cámara del ojo izquierdo. Siempre coincide con la posición del ojo izquierdo. • RightEyeAnchor: Esta es la entidad de la cámara del ojo derecho. Siempre coincide con la posición del ojo derecho. • CenterEyeAnchor: Esta entidad se coloca en la posición media entre la posición de los ojos izquierdo y derecho. Esta entidad se utiliza comúnmente para conocer la posición "cabeza". • TrackerAnchor: Cámara de seguimiento de posición.
  • 48. También se añade el componente HololensProvider a la entidad cámara (la entidad que tiene el componente VRCameraRig). Este componente es responsable de actualizar las entidades de jerarquía VRCameraRig con la información de las HoloLens y configura las cámaras adaptarlas a las gafas HoloLens.
  • 49. Una aplicación HoloLens es básicamente una aplicación Universal Windows Platform (UWP) con alguna inicialización especial. Edit > Project Properties
  • 50. A nivel visual el usuario DEBE tener feedback. Normalmente esto se consigue con indicadores visuales. En Wave Engine contamos con el behavior GazeBehavior para este objetivo junto a GazeCollider. Estados: • Undetected • Ready • AirTap
  • 51. Todos los gestos de HoloLens están disponibles a través del servicio SpatialInputService. Por lo tanto, para empezar a interactuar con los gestos, es necesario registrar ese servicio. Esto se suele hacer en Game.cs WaveServices.RegisterService(new SpatialInputService());
  • 52. var spatialInput = WaveServices.GetService<SpatialInputService>(); if (spatialInput.IsConnected) { var state = spatialInputService.SpatialState; if (state.IsSelected) { // Do an action while the Select gesture is active } }
  • 53. La voz es una forma importante de entrada en HoloLens. Le permite dirigir directamente un holograma sin depender de los gestos. Sólo necesitas…hablar. Estas funciones se exponen en KeywordRecognizerService. Para comenzar a interactuar con comandos de voz, se debe registrar el servicio. Esto se suele hacer en Game.cs: WaveServices.RegisterService(new KeywordRecognizerService());
  • 54. var keywordService = WaveServices.GetService<KeywordRecognizerService>(); if (keywordService.IsConnected) { // 1. Sets the keywords this.keywordService.Keywords = new string[] { "Begin Action", "End Action" }; // 2. Start voice recognition this.keywordService.Start(); // 3. That event is fired when a specified keyword is recognized this.keywordService.OnKeywordRecognized += this.OnKeywordRecognized; }
  • 55. // This method is fired when a keyword is recognized private void OnKeywordRecognized (KeywordRecognizerResult result) { switch (result.Text) { case “Test": // Begin the action break; } }

Notas del editor

  1. Project Alloy, 16 Agosto Intel Developer Forum
  2. No tienes cables
  3. UWP Ciclo de vida diferente 515 en C#
  4. 16 y 17 de Abril
  5. Aún no tenemos acceso a las cámaras Pero si a la maya Finding Planes Object scanning
  6. Aún no tenemos acceso a las cámaras Pero si a la maya Finding Planes Object scanning
  7. Aún no tenemos acceso a la depth camera