MUNDOS VIRTUAIS/OPENSIM
Prof. Dr. Carlos Campani
(Fogo Sagrado)
ESTA APRESENTAÇÃO
http://www.slideshare.net/campani/mundos-virtuaisopensim
REFERÊNCIAS
● Collins, C. Looking to the Future: Higher Education in the Metaverse.
EDUCAUSE Review, september/october 200...
REFERÊNCIAS
● D. Kaimaris & E. Stylianidis & N. Karanikolas. VIRTUAL REALITY:
DEVELOPING A VR SPACE FOR ACADEMIC ACTIVITIE...
REFERÊNCIAS
● Allison, C. & Anne Campbell, A. & Davies, C. J. & Dow, L. & Kennedy, S. & McCaffery, J.
& Miller, A. & Olive...
METAVERSE
● Termo cunhado por Neal Stephenson (Snow
Crash, 1992)
● Espaço virtual compartilhado que busca simular
ou aumen...
REALIDADE VIRTUAL
● Conjunto de tecnologias de hardware e
software para gerar imagens, sons e outras
sensações que repliqu...
OCULUS RIFT
GOOGLE CARDBOARD
ACTIVE WORLDS
● Plataforma online para distribuição de conteúdo
3D (1995)
● Aplicações empresariais e educacionais
https:/...
SECOND LIFE
● Second Life e Linden Lab (2002)
● 1.000.000 de avatares (2006)
● Software disponibilizado em fonte aberto –
...
OPENSIMULATOR
● Projeto OpenSimulator foi fundado por Darren Guard
(2007)
http://opensimulator.org/wiki/Main_Page
● Servid...
OPENSIMULATOR
● OpenSim permite estabelecer um servidor com
regiões virtuais em um computador doméstico
sem custos
● As re...
ALGUMAS APLICAÇÕES
● Arquitetos e designers: prototipação rápida
● Engenheiros: testes de estruturas
● Artistas: performan...
EMPRESAS E INSTITUIÇÕES
INTERESSADAS
● Exército dos EUA (Project MOSES: Military Open Simulator
Enterprise Strategy) https...
COMPARAÇÃO DE CUSTOS
● Custo do aluguel de uma região no Second
Life: US$ 290,00/mês
● Custo de uma região, usando o servi...
COMPARAÇÃO DO SOFTWARE
SECOND LIFE OPENSIM
Sofware monolítico Software modular e expansível
Usa o motor de física (physics...
MODELO CLIENTE-SERVIDOR
CONCEITOS BÁSICOS
● Modelo Cliente-Servidor: Servidor cria o mundo virtual e
o cliente serve para navegar no mundo e inter...
NAVEGADOR FIRESTORM
NAVEGADOR FIRESTORM
NAVEGADOR FIRESTORM
NAVEGADOR FIRESTORM
NAVEGADOR FIRESTORM
NAVEGADOR FIRESTORM
NAVEGADOR FIRESTORM
CONCEITOS BÁSICOS
● Grid: plataforma e tecnologia usada no Second
Life para criar o mundo virtual
● Rede de máquinas usada...
CONCEITOS BÁSICOS
● SIM: região de 256m x 256m (65.536 m2) - Contém a
terra, avatares e objetos
● Mega-região: região maio...
CONCEITOS BÁSICOS
● Asset: Um recurso de dados tal como uma imagem, som
ou script que pode ser armazenado no servidor
● UU...
CONCEITOS BÁSICOS
● Prim ou Primitivo: objeto geométrico tridimensional básico: caixa;
prisma; pirâmide; tetraedro; cilind...
CONCEITOS BÁSICOS
● Impacto no terreno: medida de prims que foram
renderizados na região corrente
● Usualmente o limite em...
PRIM
OBJETO DE 1 PRIM COM
TEXTURA E TRANSPARÊNCIA
FERRAMENTA DE EDIÇÃO
● Ferramenta de Foco
● Ferramenta para
Mover
● Ferramenta de
Edição
● Ferramenta para criar
● Ferrame...
FERRAMENTA DE EDIÇÃO
● Caixa
● Prisma
● Pirâmide
● Tetraedro
● Cilindro
● Semicilindro
● Cone
● Semicone
● Esfera
● Semi-e...
FERRAMENTA DE EDIÇÃO
●
Mover
●
Rotacionar
● Esticar
● Selecionar face
●
Alinhar
●
Editar link set
● Esticar ambos os lados...
FERRAMENTA DE EDIÇÃO
● Trancado
● Físico
● Temporário
● Fantasma
FERRAMENTA DE EDIÇÃO
● Posição (em metros)
● Tamanho (em metros)
● Rotação (em graus)
FERRAMENTA DE EDIÇÃO
● Path Cut: fatia do objeto ao
longo do eixo Z
● Hollow: centro oco
● Twist: torce o objeto ao
longo ...
FERRAMENTA DE EDIÇÃO
● Flexible Path: maciez;
gravidade; vento; etc.
● Física: material;
gravidade; fricção;
densidade; et...
FERRAMENTA DE EDIÇÃO
● Cor
● Brilho
● Textura
● Transparência
● Mapeamento
● Escala
● Rotação
FERRAMENTA DE EDIÇÃO
● Inventário do prim:
scripts; texturas;
áudio; etc.
EDIÇÃO DE PRIMS INWORLD
EDIÇÃO DE PRIMS INWORLD
EDIÇÃO DE PRIMS INWORLD
EDIÇÃO DE PRIMS INWORLD
EDIÇÃO DE PRIMS INWORLD
EDIÇÃO DE PRIMS INWORLD
EDIÇÃO DE PRIMS INWORLD
USANDO TRANSPARÊNCIA
USANDO TRANSPARÊNCIA
USANDO TRANSPARÊNCIA
DEFININDO UM LINKSET
DEFININDO UM LINKSET
COLUNA: FUSTE CILÍNDRICO
COLUNA: ESTICANDO
COLUNA: APLICANDO TEXTURA
COLUNA: BASE E CAPITEL
COLUNA: USANDO TAPER
COLUNA: COPIANDO
COLUNA: COPIANDO
COLUNA: GIRANDO O CAPITEL
COLUNA: ALINHANDO
COLUNA: ALINHANDO
COLUNA: POSICIONANDO
USANDO FLEXIBLE PATH
MESH
● Faces, arestas e vértices
● Faces: Triângulos; QUADS (quadriláteros);
outros polígonos
● Arestas e vértices das fac...
MESH
MESH
BLENDER
BLENDER: CÁLICE SIMPLES
BLENDER: CÁLICE SIMPLES
BLENDER: CÁLICE SIMPLES
BLENDER: CÁLICE SIMPLES
BLENDER: CÁLICE SIMPLES
BLENDER: CÁLICE SIMPLES
IMPORTANDO O MESH
IMPORTANDO O MESH
SCULPT
● Forma do prim é determinada por uma textura (sculpt map)
● Mais eficiente e economiza prims
● O sculpt map é uma ...
SCULPTED PRIM - EXEMPLOS
SCULPT MAP
SCULPT - CILINDRO
SCULPT - TORO
SCULPT MAP - GEOMETRIA
EXEMPLO
SCULPT MAPS
● Podem ser criados em programas especiais
● Archipelis
http://www.archipelis.com/home.php?
● Blender usando o...
ARCHIPELIS
ARCHIPELIS - EXEMPLO
ARCHIPELIS - EXEMPLO
ARCHIPELIS - EXEMPLO
IMPORTANDO O SCULPT
IMPORTANDO O SCULPT
IMPORTANDO O SCULPT
IMPORTANDO O SCULPT
IMPORTANDO O SCULPT
IMPORTANDO O SCULPT
IMPORTANDO O SCULPT
IMPORTANDO O SCULPT
SCRIPTS LSL
● Linden Lab Script Language (LSL)
● LSL Portal: http://wiki.secondlife.com/wiki/LSL_Portal
● Linguagem de pro...
FUNÇÕES LSL
● Função pode ser entendida como uma
máquina ou dispositivo que recebe
determinado número de entradas e produz...
ALGUMAS FUNÇÕES DE SCRIPT
LSL PRÉ-DEFINIDAS
● llEmail – envia um e-mail
● llFrand – gera um número pseudo-aleatório
● llPl...
COMANDO DE ATRIBUIÇÃO
● Define o valor de uma variável em um script
● Exemplos:
float vol = 1.0;
float time = min + llFran...
CONTROLE DE FLUXO
● if (CONDIÇÃO) COMANDOS
● if (CONDIÇÃO) COMANDOS else
COMANDOS
● while (CONDIÇÃO) COMANDOS
ROTACIONANDO UM PRIM
default
{
state_entry()
{
llTargetOmega(<0.0,0.0,1.0>,0.1,1);
}
}
Função llTargetOmega:
● vetor de ro...
EDITANDO O SCRIPT
EDITANDO O SCRIPT
EDITANDO O SCRIPT
EDITANDO O SCRIPT
EDITANDO O SCRIPT
EDITANDO O SCRIPT
APLICANDO UMA TEXTURA NAS
FACES AO CLICAR O PRIM
default
{
state_entry()
{
string TEXT = "Click here";
vector COLOR_GREEN ...
APLICANDO UMA TEXTURA NAS
FACES AO CLICAR O PRIM
APLICANDO UMA TEXTURA NAS
FACES AO CLICAR O PRIM
JOGO DE DADOS
JOGO DE DADOS
JOGO DE DADOS
default
{
touch_start(integer num)
{
integer roll1 = (integer)(llFrand(6)+1);
integer roll2 = (integer)(llFr...
GRILOS CANTANDO À NOITE
// Night crickers (grig) sound
// Script by Carlos Campani (Fogo Sagrado)
// Minimum amount of tim...
GRILOS - CONTINUAÇÃO
default // daytime state
{
state_entry()
{
llSetTimerEvent(min);
}
timer()
{
vector sun = llGetSunDir...
GRILOS - CONTINUAÇÃO
state night
{
state_entry()
{
llSetTimerEvent(min);
}
timer()
{
vector sun = llGetSunDirection();
if ...
USANDO CAIXAS DE DIÁLOGO –
ESCOLHENDO A COR DO PRIM
// Dialog box to choose the prim's color
integer gListener; // Identit...
USANDO CAIXAS DE DIÁLOGO
touch_start(integer total_number)
{
// Kill off any outstanding listener
llListenRemove(gListener...
USANDO CAIXAS DE DIÁLOGO
listen(integer chan, string name, key id, string msg)
{
// change color
if (msg == "Red")
llSetCo...
USANDO CAIXAS DE DIÁLOGO
timer()
{
// Stop listening to reduce lag
llListenRemove(gListener);
// Stop the timer now that i...
USANDO CAIXAS DE DIÁLOGO
ESTRUTURA DO OPENSIM
OpenSim + MySQL + Apache + Wifi
Servidor MySQL
(Banco de dados)
Servidor OpenSim
ServidorApache
(HTTP...
WIFI
Wifi (Web Interface For... I) – Interface web
simples para gerenciamento de contas, grupos
e regiões
WIFI
WIFI
SERVIDOR OPENSIM: MODOS
● Modo standalone: Um sistema OpenSim
rodando o simulador de regiões e todos os
serviços de dados ...
MODO STANDALONE
MODO GRID
COMANDOS DE SERVIDOR
Administração do servidor: adicionar e remover
regiões; adicionar e remover contas; backup
inventário...
DISTRIBUIÇÕES OPENSIM
● Diva Distro: servidor OpenSim pré-configurado, em modo
standalone e habilitado para Hypergrid
http...
SLOODLE
● Projeto Fonte Aberto que integra Second Life
e/ou OpenSim com o Moodle
● Fornece ferramentas para apoiar ensino ...
SLOODLE
REALIDADE VIRTUAL
● OpenSim possui suporte a Oculus Rift
● OpenSim + versão gratuíta do Unity 3D
development kit com Googl...
METODOLOGIA DE
ENSINO/APRENDIZADO
● Presence Pedagogy (P2)
● Proposta por Stephen Bronack, Robert Sanders,
Amelia Cheney, ...
PRINCÍPIOS DA P2
●
Fazer perguntas e corrigir equívocos;
●
Estimular o conhecimento e a experiência prévia;
●
Capitalizar ...
IMPORTÂNCIA DO AVATAR
● Representa o usuário
● Capaz de produzir gestos e exibir respostas
emocionais
IMPORTÂNCIA DO AVATAR
IMPORTÂNCIA DO AVATAR
● Aparência: realístico x fantasioso
● Psicologia “Big Five”: Neuroticismo;
extroversão; amabilidade...
IMPORTÂNCIA DO AVATAR
● Referencial nas interações sociais/econômicas
● Referencial nas interações aluno/professor e
aluno...
APRENDIZADO E DESIGN
COLABORATIVO EM MUNDOS
VIRTUAIS● Explorar o trabalho colaborativo em sala de aula –
interações colabo...
APRENDIZADO E DESIGN
COLABORATIVO EM MUNDOS
VIRTUAIS● Desenvolvimento de trabalhos em design/arquitetura/arte
usando as fa...
“Seja criativo!”
Próximos SlideShares
Carregando em…5
×

Mundos Virtuais/Opensim

262 visualizações

Publicada em

Apresentação sobre o Opensimulator como ferramenta didático-pedagógica para design e arquitetura

Publicada em: Design
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
262
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
10
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Mundos Virtuais/Opensim

  1. 1. MUNDOS VIRTUAIS/OPENSIM Prof. Dr. Carlos Campani (Fogo Sagrado)
  2. 2. ESTA APRESENTAÇÃO http://www.slideshare.net/campani/mundos-virtuaisopensim
  3. 3. REFERÊNCIAS ● Collins, C. Looking to the Future: Higher Education in the Metaverse. EDUCAUSE Review, september/october 2008. disponível em: https://net.educause.edu/ir/library/pdf/ERM0853.pdf acesso em: 19/10/2016. ● Sanders, R.L. (2007). The genesis of a virtual world - revisited. International Journal of Web Based Communities, 3(3), pp. 271-282. Published by Interscience. (ISSN: 1477-8394) DOI: 10.1504/IJWBC.2007.014238 disponível em: http://libres.uncg.edu/ir/asu/f/Sanders_Robert_2007_The_Genesis.pdf acesso em: 26/10/2016. ● Bronack, S. & Sanders, R. & Cheney, A. & Riedl, R. & Tashner, J. & Matzen, N. Presence Pedagogy: Teaching and Learning in a 3D Virtual Immersive World. International Journal of Teaching and Learning in Higher Education, 2008, Vol. 20, N. 1, pp. 59-69. ISSN 1812-9129. disponível em: http://files.eric.ed.gov/fulltext/EJ895226.pdf acesso em: 19/10/2016.
  4. 4. REFERÊNCIAS ● D. Kaimaris & E. Stylianidis & N. Karanikolas. VIRTUAL REALITY: DEVELOPING A VR SPACE FOR ACADEMIC ACTIVITIES. ISPRS Annals of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol. II-5, 2014, ISPRS Technical Commission V Symposium, 23–25 June 2014, Riva del Garda, Italy. Disponível em: http://www.isprs-ann-photogramm-remote-sens-spatial-inf-sci.net/II-5/197/2014/i sprsannals-II-5-197-2014.pdf acesso em: 19/10/2016. ● Peterson, M. LEARNING INTERACTION IN AN AVATAR-BASED VIRTUAL ENVIRONMENT: A PRELIMINARY STUDY. PacCALL Journal Volume 1 No. 1 Summer 2005, pp. 29-40. disponível em: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.104.5544&rep=rep1&t ype=pdf acesso em: 26/10/2016. ● Christine Youngblut. Educational Uses of Virtual Reality Technology. Disponível em: http://papers.cumincad.org/data/works/att/94ea.content.pdf acesso em: 19/10/2016.
  5. 5. REFERÊNCIAS ● Allison, C. & Anne Campbell, A. & Davies, C. J. & Dow, L. & Kennedy, S. & McCaffery, J. & Miller, A. & Oliver, I. & Perera, I. Growing the use of Virtual Worlds in education : an OpenSim perspective. Proceedings of the 2nd European Immersive Education Summit, 2012. ISSN 2325-5048. disponível em: https://research-repository.st-andrews.ac.uk/bitstream/handle/10023/3272/Growing_th e_Use_of_Virtual_Worlds_in_Education_revised.pdf?sequence=1&isAllowed=y acesso em: 19/10/2016. ● Ronald A. Styron, Jr. Critical Thinking and Collaboration: A Strategy to Enhance Student Learning. SYSTEMICS, CYBERNETICS AND INFORMATICS, vol. 12, n. 7, 2014. ISSN: 1690-4524. disponível em: http://www.iiisci.org/journal/CV$/sci/pdfs/EI597JP12.pdf acesso em: 19/10/2016. ● Konstantinidis, A. & Tsiatsos, T. & Demetriadis, S. & Pomportsis, A. Collaborative Learning in OpenSim by Utilizing SLoodle. Sixth Advanced International Conference on Telecommunications (AICT), 2010. ● Bessiere, K., Seay, A.F.,Kiesler, S.: The Ideal Elf: Identity Exploration in World of Warcraft. Cyberpsychology & Behavior, 10 (4). (2007) pp. 530-535. disponível em: http://spartan.ac.brocku.ca/~tkennedy/COMM/Bessiere.pdf acesso em: 28/10/2016.
  6. 6. METAVERSE ● Termo cunhado por Neal Stephenson (Snow Crash, 1992) ● Espaço virtual compartilhado que busca simular ou aumentar a realidade física ● Designa mundos virtuais, conectados entre si e compartilhados por agentes (ou atores), representados por avatares, que interagem em termos sociais e econômicos, replicando o mundo real
  7. 7. REALIDADE VIRTUAL ● Conjunto de tecnologias de hardware e software para gerar imagens, sons e outras sensações que repliquem o ambiente real e permitam ao usuário interagir com o ambiente ● Transformar a Web de 2D em 3D ● VR desktop x VR imersiva
  8. 8. OCULUS RIFT
  9. 9. GOOGLE CARDBOARD
  10. 10. ACTIVE WORLDS ● Plataforma online para distribuição de conteúdo 3D (1995) ● Aplicações empresariais e educacionais https://www.activeworlds.com/web/index.php
  11. 11. SECOND LIFE ● Second Life e Linden Lab (2002) ● 1.000.000 de avatares (2006) ● Software disponibilizado em fonte aberto – modalidade de software livre (2007)
  12. 12. OPENSIMULATOR ● Projeto OpenSimulator foi fundado por Darren Guard (2007) http://opensimulator.org/wiki/Main_Page ● Servidor fonte aberto similar ao servidor do Second Life ● Servidor disponível para sistemas Windows (usando .NET) e Linux (usando Mono) ● Permitiu o surgimento de outros Grids alternativos ao Grid do Second Life: aplicações educacionais; grids acadêmicos; Exército dos EUA
  13. 13. OPENSIMULATOR ● OpenSim permite estabelecer um servidor com regiões virtuais em um computador doméstico sem custos ● As regiões residindo no servidor doméstico podem ser anexadas (ou conectadas), sem custo, a algum Grid OpenSim
  14. 14. ALGUMAS APLICAÇÕES ● Arquitetos e designers: prototipação rápida ● Engenheiros: testes de estruturas ● Artistas: performances e exposições online (dança, escultura, pintura, etc.) ● Educadores: ambiente educacional 3D ● Médicos e terapeutas: estudo de anatomia ● Socorristas: simulação de acidentes ● Exército: jogos de guerra virtuais
  15. 15. EMPRESAS E INSTITUIÇÕES INTERESSADAS ● Exército dos EUA (Project MOSES: Military Open Simulator Enterprise Strategy) https://militarymetaverse.org/ ● IBM ● Oxford University ● Sony Computer Entertainment ● University of California http://universalcampus.igb.uci.edu/ ● University of Cincinnati http://ucsim.uc.edu/blog/services/virtual-environments-de velopment/opensim/ ● University of Edinburgh http://vue.ed.ac.uk/openvue/
  16. 16. COMPARAÇÃO DE CUSTOS ● Custo do aluguel de uma região no Second Life: US$ 290,00/mês ● Custo de uma região, usando o servidor OpenSim, residindo no próprio computador doméstico conectado a algum Grid: ZERO ● Custo de uma região em um serviço de hospedagem de regiões OpenSim comercial: iniciando em US$ 10,00/mês
  17. 17. COMPARAÇÃO DO SOFTWARE SECOND LIFE OPENSIM Sofware monolítico Software modular e expansível Usa o motor de física (physics engine) Havok – software proprietário pertencente a Microsoft Por sua natureza modular pode usar diversos motores diferentes disponíveis em licença software livre Usa o sistema de voz comercial da Vivox Administradores de Grids podem instalar diversos sistemas de voz disponíveis em licença software livre Teleporta apenas entre regiões do Grid do Second Life Teleporta entre regiões de qualquer Grid que tenha habilitado o Hypergrid Limitado a regiões de 256 m x 256 m Mega-Regions (sem bordas de transição) e Variable Regions (até 32 x 32) Software menos estável e confiável Software mais estável e confiável (menor número de períodos de manutenção)
  18. 18. MODELO CLIENTE-SERVIDOR
  19. 19. CONCEITOS BÁSICOS ● Modelo Cliente-Servidor: Servidor cria o mundo virtual e o cliente serve para navegar no mundo e interagir com os objetos virtuais ● Navegadores (visualizadores ou clientes): Second Life viewer; Firestorm viewer; Singularity viewer; Kokua viewer; etc. ● Navegadores para Windows, Linux, Mac, Android e iPhone ● Recomendado o download do Firestorm viewer (Windows, Mac e Linux): http://www.firestormviewer.org/
  20. 20. NAVEGADOR FIRESTORM
  21. 21. NAVEGADOR FIRESTORM
  22. 22. NAVEGADOR FIRESTORM
  23. 23. NAVEGADOR FIRESTORM
  24. 24. NAVEGADOR FIRESTORM
  25. 25. NAVEGADOR FIRESTORM
  26. 26. NAVEGADOR FIRESTORM
  27. 27. CONCEITOS BÁSICOS ● Grid: plataforma e tecnologia usada no Second Life para criar o mundo virtual ● Rede de máquinas usadas para criar um terreno plano virtual e gerenciar objetos e avatares ● Conjunto de regiões (SIMs) que residem nas máquinas servidoras
  28. 28. CONCEITOS BÁSICOS ● SIM: região de 256m x 256m (65.536 m2) - Contém a terra, avatares e objetos ● Mega-região: região maior que 256m x 256m no Opensim (exemplo: 2 x 2 ou 512m x 512m) ● Avatar: persona digital usada pelo jogador para interagir com os outros jogadores e os objetos do jogo ● Teleporter: dispositivo que serve para transportar (teleportar) os avatares de uma região para outra ou entre pontos de uma mesma região ● Hypergrid: tecnologia para conectar diferentes Grids
  29. 29. CONCEITOS BÁSICOS ● Asset: Um recurso de dados tal como uma imagem, som ou script que pode ser armazenado no servidor ● UUID: Universally Unique IDentifier é um identificador padrão, de 128 bits, usado na construção de software; No OpenSim é usado para identificar regiões e assets ● Script: pedaço de código de computador usado para tornar os objetos dinâmicos de forma a reagir aos eventos inworld ● Inventário: local para armazenar os objetos, scripts, roupas e skins/shapes de um avatar ou objeto ● Objetos podem ser renderizados ou tomados
  30. 30. CONCEITOS BÁSICOS ● Prim ou Primitivo: objeto geométrico tridimensional básico: caixa; prisma; pirâmide; tetraedro; cilindro; semicilindro; cone; semicone; esfera; semi-esfera; toro; tubo; anel; árvore; e grama ● Prim: um objeto virtual sem partes que serve para criar objetos virtuais: veículos; mobília; casas; roupas; cabelos; etc. ● Link set: objeto composto por vários prims mantidos juntos e que podem ser movidos e guardados no inventário como um objeto único ● Root Prim: prim raiz em um objeto composto por mais de um prim ● Mesh: modelo 3D criado com um software específico como o Blender que pode ser importado para o Opensim (formato Collada) ● Sculpt ou Sculpted Prim: um prim cuja forma é determinada por uma textura
  31. 31. CONCEITOS BÁSICOS ● Impacto no terreno: medida de prims que foram renderizados na região corrente ● Usualmente o limite em uma região 256m X 256m é de 15.000 prims ● OpenSim permite configurar até 45.000 prims ● Permissões: Modificar/Copiar/Transferir – refletem direitos autorais sobre os trabalhos
  32. 32. PRIM
  33. 33. OBJETO DE 1 PRIM COM TEXTURA E TRANSPARÊNCIA
  34. 34. FERRAMENTA DE EDIÇÃO ● Ferramenta de Foco ● Ferramenta para Mover ● Ferramenta de Edição ● Ferramenta para criar ● Ferramenta de terraplanagem
  35. 35. FERRAMENTA DE EDIÇÃO ● Caixa ● Prisma ● Pirâmide ● Tetraedro ● Cilindro ● Semicilindro ● Cone ● Semicone ● Esfera ● Semi-esfera ● Toro ● Tubo ● Anel
  36. 36. FERRAMENTA DE EDIÇÃO ● Mover ● Rotacionar ● Esticar ● Selecionar face ● Alinhar ● Editar link set ● Esticar ambos os lados ● Esticar texturas ● Ajuste a grelha ● Editar eixo do prim raiz ● Mostrar destaque
  37. 37. FERRAMENTA DE EDIÇÃO ● Trancado ● Físico ● Temporário ● Fantasma
  38. 38. FERRAMENTA DE EDIÇÃO ● Posição (em metros) ● Tamanho (em metros) ● Rotação (em graus)
  39. 39. FERRAMENTA DE EDIÇÃO ● Path Cut: fatia do objeto ao longo do eixo Z ● Hollow: centro oco ● Twist: torce o objeto ao longo do eixo Z ● Taper: reduz o tamanho do topo e/ou base do objeto ● Top Shear: desloca a superfície do topo ● Slice: fatia uma esfera
  40. 40. FERRAMENTA DE EDIÇÃO ● Flexible Path: maciez; gravidade; vento; etc. ● Física: material; gravidade; fricção; densidade; etc.
  41. 41. FERRAMENTA DE EDIÇÃO ● Cor ● Brilho ● Textura ● Transparência ● Mapeamento ● Escala ● Rotação
  42. 42. FERRAMENTA DE EDIÇÃO ● Inventário do prim: scripts; texturas; áudio; etc.
  43. 43. EDIÇÃO DE PRIMS INWORLD
  44. 44. EDIÇÃO DE PRIMS INWORLD
  45. 45. EDIÇÃO DE PRIMS INWORLD
  46. 46. EDIÇÃO DE PRIMS INWORLD
  47. 47. EDIÇÃO DE PRIMS INWORLD
  48. 48. EDIÇÃO DE PRIMS INWORLD
  49. 49. EDIÇÃO DE PRIMS INWORLD
  50. 50. USANDO TRANSPARÊNCIA
  51. 51. USANDO TRANSPARÊNCIA
  52. 52. USANDO TRANSPARÊNCIA
  53. 53. DEFININDO UM LINKSET
  54. 54. DEFININDO UM LINKSET
  55. 55. COLUNA: FUSTE CILÍNDRICO
  56. 56. COLUNA: ESTICANDO
  57. 57. COLUNA: APLICANDO TEXTURA
  58. 58. COLUNA: BASE E CAPITEL
  59. 59. COLUNA: USANDO TAPER
  60. 60. COLUNA: COPIANDO
  61. 61. COLUNA: COPIANDO
  62. 62. COLUNA: GIRANDO O CAPITEL
  63. 63. COLUNA: ALINHANDO
  64. 64. COLUNA: ALINHANDO
  65. 65. COLUNA: POSICIONANDO
  66. 66. USANDO FLEXIBLE PATH
  67. 67. MESH ● Faces, arestas e vértices ● Faces: Triângulos; QUADS (quadriláteros); outros polígonos ● Arestas e vértices das faces adjacentes são compartilhados
  68. 68. MESH
  69. 69. MESH
  70. 70. BLENDER
  71. 71. BLENDER: CÁLICE SIMPLES
  72. 72. BLENDER: CÁLICE SIMPLES
  73. 73. BLENDER: CÁLICE SIMPLES
  74. 74. BLENDER: CÁLICE SIMPLES
  75. 75. BLENDER: CÁLICE SIMPLES
  76. 76. BLENDER: CÁLICE SIMPLES
  77. 77. IMPORTANDO O MESH
  78. 78. IMPORTANDO O MESH
  79. 79. SCULPT ● Forma do prim é determinada por uma textura (sculpt map) ● Mais eficiente e economiza prims ● O sculpt map é uma imagem plana (por exemplo 256 x 256 pixels) ● Cada pixel do sculpt map com cor em 24 bits permite armazenar uma posição <x,y,z> no espaço, com os valores de x, y e z em 8 bits (representando um número de 0-255) ● Cada vértice do MESH é armazenado em um pixel colorido
  80. 80. SCULPTED PRIM - EXEMPLOS
  81. 81. SCULPT MAP
  82. 82. SCULPT - CILINDRO
  83. 83. SCULPT - TORO
  84. 84. SCULPT MAP - GEOMETRIA EXEMPLO
  85. 85. SCULPT MAPS ● Podem ser criados em programas especiais ● Archipelis http://www.archipelis.com/home.php? ● Blender usando o plugin primstar http://dominodesigns.info/project/primstar
  86. 86. ARCHIPELIS
  87. 87. ARCHIPELIS - EXEMPLO
  88. 88. ARCHIPELIS - EXEMPLO
  89. 89. ARCHIPELIS - EXEMPLO
  90. 90. IMPORTANDO O SCULPT
  91. 91. IMPORTANDO O SCULPT
  92. 92. IMPORTANDO O SCULPT
  93. 93. IMPORTANDO O SCULPT
  94. 94. IMPORTANDO O SCULPT
  95. 95. IMPORTANDO O SCULPT
  96. 96. IMPORTANDO O SCULPT
  97. 97. IMPORTANDO O SCULPT
  98. 98. SCRIPTS LSL ● Linden Lab Script Language (LSL) ● LSL Portal: http://wiki.secondlife.com/wiki/LSL_Portal ● Linguagem de programação orientada a eventos ● Scripts LSL são divididos em partes de código que respondem a eventos ocorridos inworld: state_entry (desencadeado ao iniciar o script); touch_start (ao iniciar a clicar no objeto); collision_start (ao iniciar a colidir no objeto); timer (evento repetido em intervalos de tempo, resultante da chamada da função llSetTimerEvent); etc. ● Scripts reajem a eventos por meio de event handlers, dependendo do estado em que se encontram ● Estado principal é chamado de default
  99. 99. FUNÇÕES LSL ● Função pode ser entendida como uma máquina ou dispositivo que recebe determinado número de entradas e produz uma saída e/ou efeito ● Linguagem LSL possui cerca de 310 funções pré-definidas para serem usadas em scripts LSL
  100. 100. ALGUMAS FUNÇÕES DE SCRIPT LSL PRÉ-DEFINIDAS ● llEmail – envia um e-mail ● llFrand – gera um número pseudo-aleatório ● llPlaySound – executa um arquivo de audio armazenado no inventário do prim ● llSetParcelMusicURL – define a stream de áudio executando no lote ● llSetPrimMediaParams – define os parâmetros de media em uma face do prim ● llSetTexture – atribui uma textura às faces de um prim ● llSetTimerEvent – ativa um evento de timer ● llTargetOmega – rotaciona um prim em torno de um eixo definido por meio de um vetor
  101. 101. COMANDO DE ATRIBUIÇÃO ● Define o valor de uma variável em um script ● Exemplos: float vol = 1.0; float time = min + llFrand(max - min);
  102. 102. CONTROLE DE FLUXO ● if (CONDIÇÃO) COMANDOS ● if (CONDIÇÃO) COMANDOS else COMANDOS ● while (CONDIÇÃO) COMANDOS
  103. 103. ROTACIONANDO UM PRIM default { state_entry() { llTargetOmega(<0.0,0.0,1.0>,0.1,1); } } Função llTargetOmega: ● vetor de rotação: <0.0,0.0,1.0> (rotação no eixo Z); ● velocidade de giro; ● ganho;
  104. 104. EDITANDO O SCRIPT
  105. 105. EDITANDO O SCRIPT
  106. 106. EDITANDO O SCRIPT
  107. 107. EDITANDO O SCRIPT
  108. 108. EDITANDO O SCRIPT
  109. 109. EDITANDO O SCRIPT
  110. 110. APLICANDO UMA TEXTURA NAS FACES AO CLICAR O PRIM default { state_entry() { string TEXT = "Click here"; vector COLOR_GREEN = <0.0, 1.0, 0.0>; float OPAQUE = 1.0; // display text over prim llSetText(TEXT, COLOR_GREEN, OPAQUE); } touch_start(integer num_detected) { // the first texture alphabetically inside the same prim's inventory string texture = llGetInventoryName(INVENTORY_TEXTURE, 0); // set it on all sides of the prim containing the script llSetTexture(texture, ALL_SIDES); } }
  111. 111. APLICANDO UMA TEXTURA NAS FACES AO CLICAR O PRIM
  112. 112. APLICANDO UMA TEXTURA NAS FACES AO CLICAR O PRIM
  113. 113. JOGO DE DADOS
  114. 114. JOGO DE DADOS
  115. 115. JOGO DE DADOS default { touch_start(integer num) { integer roll1 = (integer)(llFrand(6)+1); integer roll2 = (integer)(llFrand(6)+1); string sufix = (string) roll1 + (string) roll2; llSetTexture("dice" + sufix,1); } }
  116. 116. GRILOS CANTANDO À NOITE // Night crickers (grig) sound // Script by Carlos Campani (Fogo Sagrado) // Minimum amount of time (in seconds) between sounds. float min = 10; // Maximum amount of time (in seconds) between sounds. float max = 30; // This is the volume at which the sound will play. 0 = Inaudible // Valid values are between 0.0 - 1.0 float vol = 1; // Sound to play. key sound = "grilos";
  117. 117. GRILOS - CONTINUAÇÃO default // daytime state { state_entry() { llSetTimerEvent(min); } timer() { vector sun = llGetSunDirection(); if (sun.z < 0) state night; llSetTimerEvent(min); } }
  118. 118. GRILOS - CONTINUAÇÃO state night { state_entry() { llSetTimerEvent(min); } timer() { vector sun = llGetSunDirection(); if (sun.z > 0) state default; // Change back to daytime state // Play the sound once llPlaySound(sound, vol); // Randomly select the next time (in seconds) to play the sound. float time = min + llFrand(max - min); llSetTimerEvent(time); } }
  119. 119. USANDO CAIXAS DE DIÁLOGO – ESCOLHENDO A COR DO PRIM // Dialog box to choose the prim's color integer gListener; // Identity of the listener default { ... }
  120. 120. USANDO CAIXAS DE DIÁLOGO touch_start(integer total_number) { // Kill off any outstanding listener llListenRemove(gListener); // get the UUID of the person touching this prim key user = llDetectedKey(0); // Listen to any reply from that user only gListener = llListen(-99, "", user, ""); // Send a dialog to that person using channel -99 llDialog(user, "nChoose color", ["Red", "Green", "Blue"] , -99); // Start a 1 minute timer, after which we will stop listening for responses llSetTimerEvent(60.0); }
  121. 121. USANDO CAIXAS DE DIÁLOGO listen(integer chan, string name, key id, string msg) { // change color if (msg == "Red") llSetColor(<1.0,0.0,0.0>,ALL_SIDES); if (msg == "Green") llSetColor(<0.0,1.0,0.0>,ALL_SIDES); if (msg == "Blue") llSetColor(<0.0,0.0,1.0>,ALL_SIDES); // Make the timer fire immediately, to do clean-up actions llSetTimerEvent(0.1); }
  122. 122. USANDO CAIXAS DE DIÁLOGO timer() { // Stop listening to reduce lag llListenRemove(gListener); // Stop the timer now that its job is done llSetTimerEvent(0.0); }
  123. 123. USANDO CAIXAS DE DIÁLOGO
  124. 124. ESTRUTURA DO OPENSIM OpenSim + MySQL + Apache + Wifi Servidor MySQL (Banco de dados) Servidor OpenSim ServidorApache (HTTP) Wifi Navegador WWW Cliente Navegador OpenSim Servidor
  125. 125. WIFI Wifi (Web Interface For... I) – Interface web simples para gerenciamento de contas, grupos e regiões
  126. 126. WIFI
  127. 127. WIFI
  128. 128. SERVIDOR OPENSIM: MODOS ● Modo standalone: Um sistema OpenSim rodando o simulador de regiões e todos os serviços de dados em um processo único ● Modo Grid: Serviços de dados rodam em processos separados do processo de simulação de regiões (mais eficiente no uso da máquina)
  129. 129. MODO STANDALONE
  130. 130. MODO GRID
  131. 131. COMANDOS DE SERVIDOR Administração do servidor: adicionar e remover regiões; adicionar e remover contas; backup inventários (IAR) e backup regiões (OAR); carregar e salvar terrenos; etc.
  132. 132. DISTRIBUIÇÕES OPENSIM ● Diva Distro: servidor OpenSim pré-configurado, em modo standalone e habilitado para Hypergrid http://metaverseink.com/Downloads.html ● Sim-on-a-Stick: servidor OpenSim + servidor MySQL + servidor Apache (pré-configurados, sem Hypergrid, cabendo em um pendrive) – servidor e cliente (navegador) executam na mesma máquina http://simonastick.com/ ● OSGrid Distro – otimizada para usar o maior grid OpenSim: OSGrid
  133. 133. SLOODLE ● Projeto Fonte Aberto que integra Second Life e/ou OpenSim com o Moodle ● Fornece ferramentas para apoiar ensino e aprendizado em um mundo virtual
  134. 134. SLOODLE
  135. 135. REALIDADE VIRTUAL ● OpenSim possui suporte a Oculus Rift ● OpenSim + versão gratuíta do Unity 3D development kit com Google Cardboard plugin + celular Android + Google Cardboard = Realidade Virtual para as massas
  136. 136. METODOLOGIA DE ENSINO/APRENDIZADO ● Presence Pedagogy (P2) ● Proposta por Stephen Bronack, Robert Sanders, Amelia Cheney, Richard Riedl, John Tashner e Nita Matzen ● Construtivismo e holística
  137. 137. PRINCÍPIOS DA P2 ● Fazer perguntas e corrigir equívocos; ● Estimular o conhecimento e a experiência prévia; ● Capitalizar a presença de outras pessoas; ● Facilitar as interações e incentivar a comunidade; ● Apoio a cognição distribuída; ● Compartilhar ferramentas e recursos; ● Incentivar a exploração e descoberta; ● Delinear contexto e objetivos para agir; ● Fomentar a prática reflexiva; e ● Utilizar a tecnologia para atingir e divulgar os resultados.
  138. 138. IMPORTÂNCIA DO AVATAR ● Representa o usuário ● Capaz de produzir gestos e exibir respostas emocionais
  139. 139. IMPORTÂNCIA DO AVATAR
  140. 140. IMPORTÂNCIA DO AVATAR ● Aparência: realístico x fantasioso ● Psicologia “Big Five”: Neuroticismo; extroversão; amabilidade; escrupolosidade; abertura para experiência
  141. 141. IMPORTÂNCIA DO AVATAR ● Referencial nas interações sociais/econômicas ● Referencial nas interações aluno/professor e aluno/aluno
  142. 142. APRENDIZADO E DESIGN COLABORATIVO EM MUNDOS VIRTUAIS● Explorar o trabalho colaborativo em sala de aula – interações colaborativas são de grande valor para a melhora no aprendizado dos estudantes ● Estudo e aplicação de metodologias de ensino usando mundos virtuais e Realidade Virtual ● Explorar as potencialidades do ambiente virtual como ferramenta didático-pedagógica para arquitetura, arte e design ● Usar a ferramenta para desenvolver a percepção espacial e o uso de métricas no projeto arquitetônico
  143. 143. APRENDIZADO E DESIGN COLABORATIVO EM MUNDOS VIRTUAIS● Desenvolvimento de trabalhos em design/arquitetura/arte usando as facilidades da distribuição Sim-on-a-Stick ● Programação em scripts LSL (linguagem orientada a eventos) ● Criação de um Grid acadêmico para fins didático- pedagógicos ● Exposição de trabalhos dos alunos no ambiente virtual ● Uso de VR no processo de ensino-aprendizado de alunos com necessidades especiais ● Suporte às escolas de Pelotas no uso do OpenSim
  144. 144. “Seja criativo!”

×