SlideShare una empresa de Scribd logo
1 de 37
http://netponto.org Tecnologia .NET em Mundos VirtuaisBruno Pires
Bruno Pires 2 anos de experiência profissional em TI Cisco Certified Network Associate
Bruno Pires 2 anos de experiência profissional em TI Cisco Certified Network Associate >
Agenda Introdução Potencialidades dos Mundos Virtuais Como programar para o Second Life Exemplo de Implementação Futuro dos Mundos Virtuais
Introdução: Os três conceitos Mundo Virtual Metaverso Avatar
Mundo Virtual Simulação do mundo real ou realidade alternativa.
Metaverso Um Metaverso é um tipo de mundo virtual. “Metaverse” significa para além do Universo. O exemplo mais conhecido de metaverso é o Second Life.
Avatar Um Avatar é a nossa representação num determinado contexto computacional, neste caso é a nossa representação num mundo virtual...
O Second Life Second Life
O Second Life (cont.) Foi desenvolvido pela Linden Lab e lançado em exclusivo para os USA em Junho de 2003. Os utilizadores (residentes) podem interagir entre eles, explorar o mundo virtual, participar em actividades, criar e vender objectos e serviços virtuais entre os residentes e até comprar, alugar e vender terrenos virtuais.
O Second Life (cont.) 15 milhõesde utilizadores registados em Setembro de 2008. Second Life tem moeda própria, o Linden Dollar (L$), utilizada para as transacções dentro do mundo virtual Alguns “residentes” obtiveram de lucro anual acima de 1 milhão de dólares (Maio 2009)
O Second Life: Video http://bit.ly/second-life-o-video
O OpenSimulator É uma plataforma Open-Source que agrega mundos virtuais. Compatível com o protocolo Second Life É desenvolvido em C#!
O OpenSimulator (cont.) Pode correr numa máquina em casa com o nosso simulador, ou ligado a uma gridcomposta por vários servidores  Permite melhor performance e complexidade do simulador É extensível e suporta uma grande variedade de plugins(Suporte para som, chat, entre outros)
Potencialidades Mundos Virtuais Integração de aplicações entre o mundo real e um ou vários mundos virtuais. Instant Messaging (IM) HelpDesk e-Learning / b-Learning CAD Rendering
Potencialidades (cont.) Permite testar situações reais num ambiente virtual. Alguns exemplos: Desenhar uma casa numa ferramenta de CAD e fazer uma visita virtual ao interior e exterior da casa. Treino de primeiros socorros. Simular situações em desporto (andebol, futebol, etc) . Planificação urbanística
Potencialidades (cont.) Motor 3D e funcionalidades básicas já implementadas pelo mundo virtual. Criar, editar objectos Movimentos básicos de um avatar (andar, pegar objectos, etc...) Voar (!) Comunicação entre avatares (IM e áudio) Suporte de áudio e vídeo (Quicktime, YouTube)
Potencialidades (cont.) Podemos utilizar a plataforma .NET e  as suas ferramentas de desenvolvimento* C# VB .NET Visual Studio 2005 / 2008 / 2010 .NET Framework / Mono
Como programar para o SL? LSL (Linden Scripting Language) - Linguagem de programação para o SecondLife Estrutura similar ao Java e C Programação orientada a estados e eventos Scripts são colocados dentro de um objecto no mundo virtual
Exemplo de Script em LSL default { touch_start(integertotal_number) 	{ 		llSay(0, "Olá Mundo Second Life!"); 	} }
Limitações da LSL Não é orientado a objectos Capacidade limitada a 64 Kb Estruturas de dados estão em memória
LibOpenMetaverse (libopenmv) Alternativa à Linden Scripting Language (LSL) Permite manipular objectos, avatares e bots Começou em Maio de 2006 através de reverse-engineering do protocolo do Second Life Permite utilizar a plataforma .NET!
LibOpenMetaverse (cont.) Em 2007, a Linden Lab libertou o código-fonte do Second Life Client, que assim potenciou a rápida evolução de esta biblioteca. Mantém a compatibilidade com o protocolo do Second Life
LibOpenMetaverse (cont.) Utilizada para desenvolver clientes ou processos para o Second Life, OpenSimulator ou qualquer mundo virtual que utilize o protocolo do Second Life. Compatível com o .NET Framework 2.0 e com o Mono 1.9.
Diagrama de Funcionamento
Diagrama de Funcionamento
Exemplo Script com libopenmv
Limitações da libopenmv Não suportada oficialmente pela Linden Lab Ainda em desenvolvimento. Versão mais recente é a 0.7 Pouca documentação disponível
Solução: LSL + libopenmv Por vezes a melhor solução, dependendo do objectivo que se quer atingir, é utilizar scripts em objectos em LSL e complementar com o controlo remoto que oferece a libopenmv.
Exemplo de Implementação http://bit.ly/second-life-andebol
O Futuro dos Mundos Virtuais Os Mundos Virtuais estão numa fase de amadurecimento A unificação entre os vários Mundos Virtuais pode ser um dos caminhos a seguir. Realidade aumentada pode ser o passo seguinte
Second Life 2.0 http://bit.ly/second-life-2-0
Realidade Aumentada http://bit.ly/second-life-realidade-aumentada
Arquitectura no Second Life http://bit.ly/second-life-arquitectura
Referências Second Life http://www.secondlife.com Open Simulator http://opensimulator.org Open Metaverse Foundation (libopenmv) http://www.openmetaverse.org Second Life LSL Portal http://wiki.secondlife.com/wiki/LSL_Portal
Dúvidas?
Patrocinador desta reunião http://ciclo.pt

Más contenido relacionado

Similar a Programar em Mundos Virtuais com .NET

Mundos Virtuais e Educação
Mundos Virtuais e EducaçãoMundos Virtuais e Educação
Mundos Virtuais e Educaçãoluciano greis
 
Mundos Virtuais
Mundos VirtuaisMundos Virtuais
Mundos VirtuaisAna Paula
 
Construindo Chatbots em Node.js
Construindo Chatbots em Node.jsConstruindo Chatbots em Node.js
Construindo Chatbots em Node.jsFelipe Pedroso
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicRicardo Guerra Freitas
 
Utilização de APIs do Windows Live
Utilização de APIs do Windows LiveUtilização de APIs do Windows Live
Utilização de APIs do Windows LiveCampus Party Brasil
 
Gerenciamento e automatização de configuração de uma infraestrutura com Puppet
Gerenciamento e automatização de configuração de uma infraestrutura com PuppetGerenciamento e automatização de configuração de uma infraestrutura com Puppet
Gerenciamento e automatização de configuração de uma infraestrutura com PuppetAécio Pires
 
Apresentacao minicursofinal
Apresentacao minicursofinalApresentacao minicursofinal
Apresentacao minicursofinalAlmerindo Rehem
 
Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...
Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...
Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...Humberto Marchezi
 
python_para_desenvolvedores.pdf
python_para_desenvolvedores.pdfpython_para_desenvolvedores.pdf
python_para_desenvolvedores.pdfProfIvanSaboia
 
Ferramentas Web 2.0
Ferramentas Web 2.0Ferramentas Web 2.0
Ferramentas Web 2.0Marta Duarte
 
O Software - A liberdade para criar em 2D e 3D - Software Livre e aplicações
O Software - A liberdade para criar em 2D e 3D - Software Livre e aplicaçõesO Software - A liberdade para criar em 2D e 3D - Software Livre e aplicações
O Software - A liberdade para criar em 2D e 3D - Software Livre e aplicaçõesPaulo Nunes
 

Similar a Programar em Mundos Virtuais com .NET (20)

Mundos Virtuais e Educação
Mundos Virtuais e EducaçãoMundos Virtuais e Educação
Mundos Virtuais e Educação
 
Mundos Virtuais
Mundos VirtuaisMundos Virtuais
Mundos Virtuais
 
LSL workshop
LSL workshopLSL workshop
LSL workshop
 
Construindo Chatbots em Node.js
Construindo Chatbots em Node.jsConstruindo Chatbots em Node.js
Construindo Chatbots em Node.js
 
WRVA 2015
WRVA 2015WRVA 2015
WRVA 2015
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual Basic
 
Utilização de APIs do Windows Live
Utilização de APIs do Windows LiveUtilização de APIs do Windows Live
Utilização de APIs do Windows Live
 
Ai fest 2018
Ai fest 2018Ai fest 2018
Ai fest 2018
 
Gerenciamento e automatização de configuração de uma infraestrutura com Puppet
Gerenciamento e automatização de configuração de uma infraestrutura com PuppetGerenciamento e automatização de configuração de uma infraestrutura com Puppet
Gerenciamento e automatização de configuração de uma infraestrutura com Puppet
 
Apresentacao minicursofinal
Apresentacao minicursofinalApresentacao minicursofinal
Apresentacao minicursofinal
 
Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...
Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...
Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...
 
OpenKinect, o Kinect para todos
OpenKinect, o Kinect para todosOpenKinect, o Kinect para todos
OpenKinect, o Kinect para todos
 
Open Source Bootcamp Mogi das Cruzes
Open Source Bootcamp Mogi das CruzesOpen Source Bootcamp Mogi das Cruzes
Open Source Bootcamp Mogi das Cruzes
 
Metaverso_Previa.pptx
Metaverso_Previa.pptxMetaverso_Previa.pptx
Metaverso_Previa.pptx
 
python_para_desenvolvedores.pdf
python_para_desenvolvedores.pdfpython_para_desenvolvedores.pdf
python_para_desenvolvedores.pdf
 
Ferramentas Web 2.0
Ferramentas Web 2.0Ferramentas Web 2.0
Ferramentas Web 2.0
 
.NET e C# - Introdução Geral
.NET e C# - Introdução Geral.NET e C# - Introdução Geral
.NET e C# - Introdução Geral
 
Introdução ao .NET
Introdução ao .NETIntrodução ao .NET
Introdução ao .NET
 
Microsoft Bot Framework
Microsoft Bot FrameworkMicrosoft Bot Framework
Microsoft Bot Framework
 
O Software - A liberdade para criar em 2D e 3D - Software Livre e aplicações
O Software - A liberdade para criar em 2D e 3D - Software Livre e aplicaçõesO Software - A liberdade para criar em 2D e 3D - Software Livre e aplicações
O Software - A liberdade para criar em 2D e 3D - Software Livre e aplicações
 

Más de Comunidade NetPonto

Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...Comunidade NetPonto
 
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...Comunidade NetPonto
 
MVVM Light e Cimbalino Toolkits - Sara Silva
MVVM Light e Cimbalino Toolkits - Sara SilvaMVVM Light e Cimbalino Toolkits - Sara Silva
MVVM Light e Cimbalino Toolkits - Sara SilvaComunidade NetPonto
 
Deep dive into Windows Azure Mobile Services - Ricardo Costa
Deep dive into Windows Azure Mobile Services - Ricardo CostaDeep dive into Windows Azure Mobile Services - Ricardo Costa
Deep dive into Windows Azure Mobile Services - Ricardo CostaComunidade NetPonto
 
The power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno CanceloThe power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno CanceloComunidade NetPonto
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoComunidade NetPonto
 
NoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor TomazNoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor TomazComunidade NetPonto
 
De Zero a Produção - João Jesus
De Zero a Produção - João JesusDe Zero a Produção - João Jesus
De Zero a Produção - João JesusComunidade NetPonto
 
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComo deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComunidade NetPonto
 
Case studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store AppsCase studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store AppsComunidade NetPonto
 
Aspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharpAspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharpComunidade NetPonto
 
Utilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosUtilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosComunidade NetPonto
 
Dinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de ProjectoDinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de ProjectoComunidade NetPonto
 
KnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida realKnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida realComunidade NetPonto
 
Como ser programador durante o dia e mesmo assim dormir bem à noite
Como ser programador durante o dia e mesmo assim dormir bem à noiteComo ser programador durante o dia e mesmo assim dormir bem à noite
Como ser programador durante o dia e mesmo assim dormir bem à noiteComunidade NetPonto
 
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto ProieteWindows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto ProieteComunidade NetPonto
 
Uma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIUma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIComunidade NetPonto
 

Más de Comunidade NetPonto (20)

Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
Continuous Delivery for Desktop Applications: a case study - Miguel Alho & Jo...
 
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
Criando aplicações para windows phone 8.1 e windows 8.1 com o app studio da...
 
MVVM Light e Cimbalino Toolkits - Sara Silva
MVVM Light e Cimbalino Toolkits - Sara SilvaMVVM Light e Cimbalino Toolkits - Sara Silva
MVVM Light e Cimbalino Toolkits - Sara Silva
 
Deep dive into Windows Azure Mobile Services - Ricardo Costa
Deep dive into Windows Azure Mobile Services - Ricardo CostaDeep dive into Windows Azure Mobile Services - Ricardo Costa
Deep dive into Windows Azure Mobile Services - Ricardo Costa
 
The power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno CanceloThe power of templating.... with NVelocity - Nuno Cancelo
The power of templating.... with NVelocity - Nuno Cancelo
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis Paulino
 
ASP.NET Signal R - Glauco Godoi
ASP.NET Signal R - Glauco GodoiASP.NET Signal R - Glauco Godoi
ASP.NET Signal R - Glauco Godoi
 
NoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor TomazNoSQL em Windows Azure Table Storage - Vitor Tomaz
NoSQL em Windows Azure Table Storage - Vitor Tomaz
 
HTML5 - Pedro Rosa
HTML5 - Pedro RosaHTML5 - Pedro Rosa
HTML5 - Pedro Rosa
 
De Zero a Produção - João Jesus
De Zero a Produção - João JesusDe Zero a Produção - João Jesus
De Zero a Produção - João Jesus
 
OData – Super Cola W3
OData – Super Cola W3OData – Super Cola W3
OData – Super Cola W3
 
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone AppsComo deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
Como deixar de fazer "copy and paste" entre Windows Store e Windows Phone Apps
 
Case studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store AppsCase studies about Layout & View States & Scale in Windows 8 Store Apps
Case studies about Layout & View States & Scale in Windows 8 Store Apps
 
Aspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharpAspect-oriented Programming (AOP) com PostSharp
Aspect-oriented Programming (AOP) com PostSharp
 
Utilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosUtilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes Unitários
 
Dinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de ProjectoDinâmica e Motivacao de Equipas de Projecto
Dinâmica e Motivacao de Equipas de Projecto
 
KnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida realKnockoutJS com ASP.NET MVC3: Utilização na vida real
KnockoutJS com ASP.NET MVC3: Utilização na vida real
 
Como ser programador durante o dia e mesmo assim dormir bem à noite
Como ser programador durante o dia e mesmo assim dormir bem à noiteComo ser programador durante o dia e mesmo assim dormir bem à noite
Como ser programador durante o dia e mesmo assim dormir bem à noite
 
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto ProieteWindows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
Windows 8: Desenvolvimento de Metro Style Apps - C. Augusto Proiete
 
Uma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIUma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web API
 

Programar em Mundos Virtuais com .NET

  • 1. http://netponto.org Tecnologia .NET em Mundos VirtuaisBruno Pires
  • 2. Bruno Pires 2 anos de experiência profissional em TI Cisco Certified Network Associate
  • 3. Bruno Pires 2 anos de experiência profissional em TI Cisco Certified Network Associate >
  • 4. Agenda Introdução Potencialidades dos Mundos Virtuais Como programar para o Second Life Exemplo de Implementação Futuro dos Mundos Virtuais
  • 5. Introdução: Os três conceitos Mundo Virtual Metaverso Avatar
  • 6. Mundo Virtual Simulação do mundo real ou realidade alternativa.
  • 7. Metaverso Um Metaverso é um tipo de mundo virtual. “Metaverse” significa para além do Universo. O exemplo mais conhecido de metaverso é o Second Life.
  • 8. Avatar Um Avatar é a nossa representação num determinado contexto computacional, neste caso é a nossa representação num mundo virtual...
  • 9. O Second Life Second Life
  • 10. O Second Life (cont.) Foi desenvolvido pela Linden Lab e lançado em exclusivo para os USA em Junho de 2003. Os utilizadores (residentes) podem interagir entre eles, explorar o mundo virtual, participar em actividades, criar e vender objectos e serviços virtuais entre os residentes e até comprar, alugar e vender terrenos virtuais.
  • 11. O Second Life (cont.) 15 milhõesde utilizadores registados em Setembro de 2008. Second Life tem moeda própria, o Linden Dollar (L$), utilizada para as transacções dentro do mundo virtual Alguns “residentes” obtiveram de lucro anual acima de 1 milhão de dólares (Maio 2009)
  • 12. O Second Life: Video http://bit.ly/second-life-o-video
  • 13. O OpenSimulator É uma plataforma Open-Source que agrega mundos virtuais. Compatível com o protocolo Second Life É desenvolvido em C#!
  • 14. O OpenSimulator (cont.) Pode correr numa máquina em casa com o nosso simulador, ou ligado a uma gridcomposta por vários servidores Permite melhor performance e complexidade do simulador É extensível e suporta uma grande variedade de plugins(Suporte para som, chat, entre outros)
  • 15. Potencialidades Mundos Virtuais Integração de aplicações entre o mundo real e um ou vários mundos virtuais. Instant Messaging (IM) HelpDesk e-Learning / b-Learning CAD Rendering
  • 16. Potencialidades (cont.) Permite testar situações reais num ambiente virtual. Alguns exemplos: Desenhar uma casa numa ferramenta de CAD e fazer uma visita virtual ao interior e exterior da casa. Treino de primeiros socorros. Simular situações em desporto (andebol, futebol, etc) . Planificação urbanística
  • 17. Potencialidades (cont.) Motor 3D e funcionalidades básicas já implementadas pelo mundo virtual. Criar, editar objectos Movimentos básicos de um avatar (andar, pegar objectos, etc...) Voar (!) Comunicação entre avatares (IM e áudio) Suporte de áudio e vídeo (Quicktime, YouTube)
  • 18. Potencialidades (cont.) Podemos utilizar a plataforma .NET e as suas ferramentas de desenvolvimento* C# VB .NET Visual Studio 2005 / 2008 / 2010 .NET Framework / Mono
  • 19. Como programar para o SL? LSL (Linden Scripting Language) - Linguagem de programação para o SecondLife Estrutura similar ao Java e C Programação orientada a estados e eventos Scripts são colocados dentro de um objecto no mundo virtual
  • 20. Exemplo de Script em LSL default { touch_start(integertotal_number) { llSay(0, "Olá Mundo Second Life!"); } }
  • 21. Limitações da LSL Não é orientado a objectos Capacidade limitada a 64 Kb Estruturas de dados estão em memória
  • 22. LibOpenMetaverse (libopenmv) Alternativa à Linden Scripting Language (LSL) Permite manipular objectos, avatares e bots Começou em Maio de 2006 através de reverse-engineering do protocolo do Second Life Permite utilizar a plataforma .NET!
  • 23. LibOpenMetaverse (cont.) Em 2007, a Linden Lab libertou o código-fonte do Second Life Client, que assim potenciou a rápida evolução de esta biblioteca. Mantém a compatibilidade com o protocolo do Second Life
  • 24. LibOpenMetaverse (cont.) Utilizada para desenvolver clientes ou processos para o Second Life, OpenSimulator ou qualquer mundo virtual que utilize o protocolo do Second Life. Compatível com o .NET Framework 2.0 e com o Mono 1.9.
  • 27. Exemplo Script com libopenmv
  • 28. Limitações da libopenmv Não suportada oficialmente pela Linden Lab Ainda em desenvolvimento. Versão mais recente é a 0.7 Pouca documentação disponível
  • 29. Solução: LSL + libopenmv Por vezes a melhor solução, dependendo do objectivo que se quer atingir, é utilizar scripts em objectos em LSL e complementar com o controlo remoto que oferece a libopenmv.
  • 30. Exemplo de Implementação http://bit.ly/second-life-andebol
  • 31. O Futuro dos Mundos Virtuais Os Mundos Virtuais estão numa fase de amadurecimento A unificação entre os vários Mundos Virtuais pode ser um dos caminhos a seguir. Realidade aumentada pode ser o passo seguinte
  • 32. Second Life 2.0 http://bit.ly/second-life-2-0
  • 34. Arquitectura no Second Life http://bit.ly/second-life-arquitectura
  • 35. Referências Second Life http://www.secondlife.com Open Simulator http://opensimulator.org Open Metaverse Foundation (libopenmv) http://www.openmetaverse.org Second Life LSL Portal http://wiki.secondlife.com/wiki/LSL_Portal
  • 37. Patrocinador desta reunião http://ciclo.pt
  • 38. Obrigado! Bruno Pires bruno@blastersystems.com http://blastersystems.com/blog http://twitter.com/brunoacpires