78. Heterogeneidade
Mobilidade
Integração Espontânea
Sensibilidade ao
Contexto
Conhecer as Capacidades oferecidas pelo ambiente.
Definição das Interfaces de acesso a estas capacidades.
Permitir Múltiplas Plataformas de hardware e software.
Permitir múltiplas formas Comunicação.
Permitir integração de Novos Tipos de Capacidades.
Permitir a integração de Novos Dispositivos.
79. Suomela, 2006
MUPE - Multi-User Aplication Platform
Definição das Capacidades Interfaces de Acesso
80. Suomela, 2006
MUPE - Multi-User Aplication Platform
Não permite novos Dispositivos
Não permite novos Tipos
81. PSD - Player Space Director
Hwang, 2012
Integração de Novos Dispositivos
82. PSD - Player Space Director
Hwang, 2012
Sem definições de interface
84. Sensibilidade ao Contexto
Capacidades Interfaces
MUPE Sim Sim
STF/ARMS Não Não
FRAP Não ¹ Não ¹
Far-Play Não ¹ Não ¹
PSD Não ¹ Não ¹
fAARS Não ¹ Não ¹
¹ : Limitados a apenas 1 tipo de dado
85. Sensibilidade ao Contexto Heterogeneidade
Capacidades Interfaces
Multi-
Plataforma
Comunicação
MUPE Sim Sim Não Não
STF/ARMS Não Não Sim Sim
FRAP Não ¹ Não ¹ Não Sim ²
Far-Play Não ¹ Não ¹ Não Sim ²
PSD Não ¹ Não ¹ Sim Sim ²
fAARS Não ¹ Não ¹ Não Sim ²
¹ : Limitados a apenas 1 tipo de dado
² : Comunicação ocorre em Nuvem via HTTP
86. Sensibilidade ao Contexto Heterogeneidade
Integração
Espontânea
Capacidades Interfaces
Multi-
Plataforma
Comunicação Novos Tipos
MUPE Sim Sim Não Não Não
STF/ARMS Não Não Sim Sim Não
FRAP Não ¹ Não ¹ Não Sim ² Não
Far-Play Não ¹ Não ¹ Não Sim ² Não
PSD Não ¹ Não ¹ Sim Sim ² Não
fAARS Não ¹ Não ¹ Não Sim ² Não
¹ : Limitados a apenas 1 tipo de dado
² : Comunicação ocorre em Nuvem via HTTP
87. Sensibilidade ao Contexto Heterogeneidade
Integração
Espontânea
Mobilidade
Capacidades Interfaces
Multi-
Plataforma
Comunicação Novos Tipos
Novos
Dispositivos
MUPE Sim Sim Não Não Não Não
STF/ARMS Não Não Sim Sim Não Sim
FRAP Não ¹ Não ¹ Não Sim ² Não Sim
Far-Play Não ¹ Não ¹ Não Sim ² Não Sim
PSD Não ¹ Não ¹ Sim Sim ² Não Sim
fAARS Não ¹ Não ¹ Não Sim ² Não Sim
¹ : Limitados a apenas 1 tipo de dado
² : Comunicação ocorre em Nuvem via HTTP
88. Raychoudhury, 2013
Resource opportunism requires
dynamic discovery of useful
resources matching application
requirements
[Pervasive Computing]
algorithms and
protocols must be
device agnostic
Most of the existing PvC middleware
follow a centralized co-ordination. But,
this top-down approach of design
requires re-thinking
Integração
Espontânea
Mobilidade
Heterogeneidade
92. Sensibilidade ao Contexto Heterogeneidade Integração
Espontânea
Mobilidade Componentes
de Jogo
Capacidades Interfaces Multi-
Plataforma
Comunicação Novos Tipos Novos
Dispositivos
MUPE Sim Sim Não Não Não Não Não
STF/ARMS Não Não Sim Sim Não Sim Não
FRAP Não ¹ Não ¹ Não Sim ² Não Sim Não
Far-Play Não ¹ Não ¹ Não Sim ² Não Sim Não
PSD Não ¹ Não ¹ Sim Sim ² Não Sim Não
fAARS Não ¹ Não ¹ Não Sim ² Não Sim Não
¹ : Limitados a apenas 1 tipo de dado
² : Comunicação ocorre em Nuvem via HTTP
95. Sensibilidade ao Contexto Heterogeneidade Integração
Espontânea
Mobilidade Componentes
de Jogo
Capacidades Interfaces Multi-
Plataforma
Comunicação Novos Tipos Novos
Dispositivos
MUPE Sim Sim Não Não Não Não Não
STF/ARMS Não Não Sim Sim Não Sim Não
FRAP Não ¹ Não ¹ Não Sim ² Não Sim Não
Far-Play Não ¹ Não ¹ Não Sim ² Não Sim Não
PSD Não ¹ Não ¹ Sim Sim ² Não Sim Não
fAARS Não ¹ Não ¹ Não Sim ² Não Sim Não
GameWork Não ¹ Não ¹ Sim ² Sim ² Não Sim Sim ³
¹ : Limitados a apenas 1 tipo de dado
² : Comunicação ocorre em Nuvem via HTTP
³ : Apenas coleta de itens de jogo
96. Heterogeneidade
Mobilidade
Integração Espontânea
Sensibilidade ao
Contexto
Componentes de Jogos
Conhecer as Capacidades oferecidas pelo ambiente.
Definição das Interfaces de acesso a estas capacidades.
Permitir Múltiplas Plataformas de hardware e software.
Permitir múltiplas formas Comunicação.
Permitir integração de Novos Tipos de Capacidades.
Permitir a integração de Novos Dispositivos.
Estrutura de Execução de Jogos
Componentes Reusáveis
99. Heterogeneidade
Mobilidade
Integração Espontânea
Sensibilidade ao
Contexto
Componentes de Jogos
Conhecer as Capacidades oferecidas pelo ambiente.
Definição das Interfaces de acesso a estas capacidades.
Permitir Múltiplas Plataformas de hardware e software.
Permitir múltiplas formas Comunicação.
Permitir integração de Novos Tipos de Capacidades.
Permitir a integração de Novos Dispositivos.
Estrutura de Execução de Jogos
Componentes Reusáveis
100. Heterogeneidade
Mobilidade
Integração Espontânea
Componentes de Jogos
Permitir Múltiplas Plataformas de hardware e software.
Permitir múltiplas formas Comunicação.
Permitir integração de Novos Tipos de Capacidades.
Permitir a integração de Novos Dispositivos.
Estrutura de Execução de Jogos
Componentes Reusáveis
Definição das Interfaces de acesso a estas capacidades.
Sensibilidade ao
Contexto
Conhecer as Capacidades oferecidas pelo ambiente.
101.
102.
103.
104. Conhecer as Capacidades oferecidas pelo ambiente.
Definição das Interfaces de acesso a estas capacidades.
Heterogeneidade
Mobilidade
Integração Espontânea
Sensibilidade ao
Contexto
Componentes de Jogos
Permitir Múltiplas Plataformas de hardware e software.
Permitir múltiplas formas Comunicação.
Permitir integração de Novos Tipos de Capacidades.
Permitir a integração de Novos Dispositivos.
Estrutura de Execução de Jogos
Componentes Reusáveis
105.
106.
107.
108.
109.
110. Binary : Valor
binário (byte) 0 ou 1
Float : Valor real
em representação
IEEE-754 (4 bytes)
Vector : Valores
reais em
representação IEEE-
754 (4 bytes)
Integer : Valor
Inteiro entre −(263
) e
263
− 1 (4 bytes)
Recursos Básicos
User: User data
Recursos Específicos
Object: Object
data
Object
Interaction:
Interaction with the
object
Audio Output:
Speakers
Video Output:
Screens
Image Input:
Camera
Audio Input:
Microphone
Distance:
Distance with error
margin
Relative
Position:
Position with error
margin
Absolute
Position: Global
Position with error
margin
Pointer: move
cursor on a screen
Controller:
Multi-dimension cursor
Cursor:
Interactive Pointer
Text Input:
Textual commands
Text Output:
Textual Information
Recursos para Ubigames
Storage: Data
Storage
111. Recursos Básicos Recursos Específicos
User : User data
s isPresent: Lista (nomes) de
quem está presente
a entered: Nome de quem foi
detectado
a left: Nome de quem deixou
detectado
- Perguntar: Voz, Teclado
- Autenticar: Senha, Token, Digital,
Iris
- Reconhecer: Face, 3D, Voz, Escrita
Dispositivos : Teclado, Microfone,
Câmera, Kinect, QR Code, RFID,
NFC, Tablet
Object : Object data
s isPresent: Lista de
identificadores presentes
a entered: Identificador
detectado
a left: Identificador que
deixou detectado
- Identificar: Token, Endereço de
Rede
- Reconhecer: 2D, 3D
Dispositivos : Câmera, Kinect, QR
Code, RFID, NFC
Relative Position :
Position with error margin
s current: Posição [x,y,z] em
mm de um objeto
a changed: Posição [x,y,z]
em mm de um objeto se
alterou
- Identificar : Câmera, Mapeamento
3D
- Triangulação: Som, Rede
- Zoneamento: Tags,
Posicionamento
Dispositivos : Câmera, Kinect, RFID,
Zigbee, Bluetooth, WiFi
s
Binary : Valor binário (byte) 0
ou 1
Float : Valor real em
representação IEEE-754 (4 bytes)
Vector : Valores reais em
representação IEEE-754 (4 bytes)
a
current: Valor no instante
currents: Fluxo constante
changed: Valor a cada
mudança
Integer : Valor Inteiro entre −
(263
) e 263
− 1 (4 bytes)
s
Recursos para Ubigames
112. Definição das Interfaces de acesso a estas capacidades.
Heterogeneidade
Mobilidade
Integração Espontânea
Sensibilidade ao
Contexto
Componentes de Jogos
Conhecer as Capacidades oferecidas pelo ambiente.
Permitir Múltiplas Plataformas de hardware e software.
Permitir múltiplas formas Comunicação.
Permitir integração de Novos Tipos de Capacidades.
Permitir a integração de Novos Dispositivos.
Estrutura de Execução de Jogos
Componentes Reusáveis
113. Definição das Interfaces de acesso a estas capacidades.
Heterogeneidade
Mobilidade
Integração Espontânea
Sensibilidade ao
Contexto
Componentes de Jogos
Conhecer as Capacidades oferecidas pelo ambiente.
Permitir Múltiplas Plataformas de hardware e software.
Permitir múltiplas formas Comunicação.
Permitir integração de Novos Tipos de Capacidades.
Permitir a integração de Novos Dispositivos.
Estrutura de Execução de Jogos
Componentes Reusáveis
114.
115.
116.
117.
118. Pointer : move cursor on a
screen
a moved: Vetor [x,y] de pixels
movimentados
Controller : Multi-dimension
cursor
a moved: Lista de Vetor [x,y]
de pixels movimentados
Cursor : Interactive Pointer
a clicked: Lista de botões
pressionados
Relação
de
Especialização
119. Binary : Valor
binário (byte) 0 ou 1
Float : Valor real
em representação
IEEE-754 (4 bytes)
Vector : Valores
reais em
representação IEEE-
754 (4 bytes)
Integer : Valor
Inteiro entre −(263
) e
263
− 1 (4 bytes)
Recursos Básicos
User: User data
Recursos Específicos
Object: Object
data
Object
Interaction:
Interaction with the
object
Audio
Output:
Speakers
Video
Output: Screens
Image Input:
Camera
Audio Input:
Microphone
Distance:
Distance with error
margin
Relative
Position:
Position with error
margin
Absolute
Position: Global
Position with error
margin
Pointer: move
cursor on a screen
Controller:
Multi-dimension cursor
Cursor:
Interactive Pointer
Text Input:
Textual commands
Text Output:
Textual Information
Recursos para Ubigames
Storage: Data
Storage
120.
121. Definição das Interfaces de acesso a estas capacidades.
Heterogeneidade
Mobilidade
Integração Espontânea
Sensibilidade ao
Contexto
Componentes de Jogos
Conhecer as Capacidades oferecidas pelo ambiente.
Permitir Múltiplas Plataformas de hardware e software.
Permitir múltiplas formas Comunicação.
Permitir integração de Novos Tipos de Capacidades.
Permitir a integração de Novos Dispositivos.
Estrutura de Execução de Jogos
Componentes Reusáveis
122. Definição das Interfaces de acesso a estas capacidades.
Heterogeneidade
Mobilidade
Integração Espontânea
Sensibilidade ao
Contexto
Componentes de Jogos
Conhecer as Capacidades oferecidas pelo ambiente.
Permitir Múltiplas Plataformas de hardware e software.
Permitir múltiplas formas Comunicação.
Permitir integração de Novos Tipos de Capacidades.
Permitir a integração de Novos Dispositivos.
Estrutura de Execução de Jogos
Componentes Reusáveis
134. Definição das Interfaces de acesso a estas capacidades.
Heterogeneidade
Mobilidade
Integração Espontânea
Sensibilidade ao
Contexto
Componentes de Jogos
Conhecer as Capacidades oferecidas pelo ambiente.
Permitir Múltiplas Plataformas de hardware e software.
Permitir múltiplas formas Comunicação.
Permitir integração de Novos Tipos de Capacidades.
Permitir a integração de Novos Dispositivos.
Estrutura de Execução de Jogos
Componentes Reusáveis
uImpala
uImpala
135. Sensibilidade ao Contexto Heterogeneidade Integração
Espontânea
Mobilidade Componentes
de Jogo
Capacidades Interfaces Multi-
Plataforma
Comunicação Novos Tipos Novos
Dispositivos
MUPE Sim Sim Não Não Não Não Não
STF/ARMS Não Não Sim Sim Não Sim Não
FRAP Não ¹ Não ¹ Não Sim ² Não Sim Não
Far-Play Não ¹ Não ¹ Não Sim ² Não Sim Não
PSD Não ¹ Não ¹ Sim Sim ² Não Sim Não
fAARS Não ¹ Não ¹ Não Sim ² Não Sim Não
GameWork Não ¹ Não ¹ Sim ² Sim ² Não Sim Sim ³
uOS Sim Sim Sim Sim Sim Sim Sim
¹ : Limitados a apenas 1 tipo de dado
² : Comunicação ocorre em Nuvem via HTTP
³ : Apenas coleta de itens de jogo
136. Definição das Interfaces de acesso a estas capacidades.
Heterogeneidade
Mobilidade
Integração Espontânea
Sensibilidade ao
Contexto
Componentes de Jogos
Conhecer as Capacidades oferecidas pelo ambiente.
Permitir Múltiplas Plataformas de hardware e software.
Permitir múltiplas formas Comunicação.
Permitir integração de Novos Tipos de Capacidades.
Permitir a integração de Novos Dispositivos.
Estrutura de Execução de Jogos
Componentes Reusáveis
uImpala
uImpala
162. e Execution Driver
Game Engine
Games
uImpala
Unity Plugin
Games
Plataforma de Desenvolvimento uOS
Http Plugin
163. e Execution Driver
Game Engine
Games
uImpala
Unity Plugin
Games
Plataforma de Desenvolvimento uOS
Http PluginPlugins de Rede Drivers
Application
Manager
Driver
Manager
Device
Manager
Message
Engine
Adaptability
Engine
Event
ManagerLoopback
Network
Manager
Aplicações
202. Atraso HTC Nexus One
LG Nexus 4
Dell Vostro 1500
Apple iMac
Apple iMac
Dell XPS 15
Apple iMac
1 GHz
512 MB RAM
Android 1.6.6
1.5 GHz Quad
2 GB RAM
Android 5.0
2.2 GHz Duo
4 GB RAM
Ubuntu 14.04
3.06 GHz Duo
4 GB RAM
Windows 7
2.4 GHz Duo
4 GB RAM
Mac OSx 10.6.8
2.2 GHz Quad
16 GB RAM
Ubntu 14.04
3.06 GHz Duo
4 GB RAM
Mac OSx 10.6.8
1,562 ms
0,217 ms
0,079 ms
0,015 ms
0,013 ms
0,010 ms
0,010 ms
1,935 ms
Atraso
213. Realização de Testes
Integração de
Ambientes
Integração com outras
plataformas
Aplicação de
Ontologias
Jogos Ubiquos
Base de Recursos
Aprimoramento do
plugin HTTP
Renderização Remota