pesquisar neste blog
posts recentes

O motor da aplicação

Mód. TP6 – Testes

Mód. TP6 – Versão Beta

"Não descansaremos enquanto não pusermos o virtUA a crescer"

#1 BASTIDORES: Criação do Pavilhão I

Testes ao projecto Virtua

Jardinagem virtual: Luta contra os bugs!

Informações sobre versão Beta de Virtua

Mód. TP5 – Prototipagem de alta fidelidade (2/2)

Mód. TP5 – Prototipagem de alta fidelidade (1/2)

arquivos

Junho 2011

Maio 2011

Abril 2011

Março 2011

Fevereiro 2011

Quarta-feira, 15 de Junho de 2011
O motor da aplicação

 

A Linguagem de programação que serve como suporte e cria a estrutura lógica de navegação e interação na aplicação e que está a ser desenvolvida é o Javascript. É uma das três linguagens usadas pela ferramenta UNITY3D - já amplamente discutida neste blog -, a par do C# e  BOO.

Na realidade, apesar do Javascript do Unity ser bastante parecido com o standard ECMAScript, utilizado nas páginas web, tem algumas diferenças substanciais. Devido a essas diferenças, há quem nomeie de outra forma esta linguagem: UnityScript. De facto, ela é bastante parecida com o JScript da Microsoft, especialmente porque são ambas linguagens .NET.

 

Ao invés do irmão mais velho e mais conhecido (JS), o UnityScript é compilado e não interpretado. Além disso não tem a trabalhar consigo o DOM (ufa!). Contudo, perde um pouco no dinamismo que a versão para browser tem.

 

Os objetos existentes na scene de uma aplicação criada nesta ferramenta, podem ser muito diversos, desde câmaras, luzes, objetos modelados em 3D, entre outros - denominados GameObjects. A esses GameObjects podem ser acrescentados Components que podem introduzir imensas possibilidades de comportamento aos mesmos. Um Component pode ser um detetor de colisões, uma textura, e, entre outros, pode ser um script.

 

 

Fig.1 e 2 - Acesso ao GameObject e às componentes no Unity

Desta forma, cada GameObject pode ter vários scripts (ficheiros JS), pelo que é importante implementar os scripts de forma modular, tendo a ganhar com isso a flexibilidade de uso.

No caso da aplicação virtUA, damos o exemplo do script criado chamado Raycast_Collider, que trata, entre muitas coisas, da alteração do estado da mira que aparece no centro da interface.

 
 
 
-
 
 Fig. 3, 4 e 5 - Script e Propriedades do RayCast Collider
 

Na imagem que se segue, consegue-se ter uma ideia da quantidade de ficheiros JS que se criaram para se obter os resultados da conseguidos na implementação. Nem todos estes ficheiros foram criados na integra pelo grupo, dado que algumas das interações base já vem criadas de raiz em ficheiros JS disponibilizados (como o caso da ligação dos movimentos do rato e teclado ao GameObject que serve como câmara) mas mesmo esses precisam de ajustamentos, conforme o tipo de aplicação criada. Neste tópico é também necessário dar um realce à imensa comunidade de utilizadores desta plataforma, que é extremamente colaborativa, apresentando respostas a quase todo o tipo de problemas que se apresentaram ao grupo.

 
  Fig. 6 - Área do Projecto
 

Uma das últimas implementações no projeto foi a criação de uma galeria de fotos no próprio Campus. Esta galeria de fotos encontra-se "invisível", ou não renderizada, por defeito. Para fazer aparecer a galeria faz-se uso de outro objeto escondido (que é uma simples caixa), presente ao redor do "i" gigante que se vê a rodar (rotação constante originada por programação) no campus. Podemos verificar que essa caixa (GameObject) tem o "is_trigger" ativo, tem acoplada um script "i_abre_galerias (script)", e tem o "Mesh_renderer" desativo.

O "is_trigger" vai despoletar um efeito (neste caso passa uma variável boleana de falso para verdadeiro) em caso de colisão. O script apresentado é o que vai conter essa variável e todo o código para fazer aparecer (render) o outro objeto (as imagens em si) representado na variável "Obj_galerias".

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

  Fig. 7 - Script e activação da opção isTigger

Esta linguagem de programação conta já com uma função para ajudar nestes casos de colisão. OnTriggerEnter é usado para quando se dá a colisão em si, e OnTriggerExit quando a mesma colisão deixou de acontecer. Neste caso concreto, quando o player entra em colisão com o objeto que tem anexado este script, faz aparecer o objeto que está ligado à variável "Obj_galerias": "i_placard_galerias_pav1". Este último contém as fotos do respectivo edifício. Para já as fotos estão integradas diretamente na aplicaçao (fazem parte da compilação). Para a implementação final vai-se proceder ao uso de scripts que permitam obter as fotos diretamente do website. Fotos essas que serão colocadas pelos administradores assim como por qualquer utilizador registado e que queira partilhar com a comunidade.

  Fig. 8 - Objectos da cena
 

Para se poder navegar por entre as diversas fotos de cada edifício, faz-se novamente uso do script "raycast_collider". Está criada uma função própria para alterar a mira da interface e responder aos inputs do teclado (teclas Q e E), alterando a posição do Array criado para a listagem das fotografias.

 

  Fig. 9 - Script relativo à activação das teclas para mudar de fotografias

Bibliografia:

http://www.unifycommunity.com/wiki/index.php?title=Head_First_into_Unity_with_JavaScript 

http://forum.unity3d.com/threads/34015-Newbie-guide-to-Unity-Javascript-(long) 

http://answers.unity3d.com/questions/8329/how-to-get-started-learning-javascript-or-unityscr.html



tags: , ,

publicado por palexandre às 12:49

editado por lilianavale às 12:57

Quinta-feira, 9 de Junho de 2011
Mód. TP6 – Testes

Após o desenvolvimento da versão beta, é necessário perceber se a mecânica do produto final é perceptível para o público-alvo. A ubiquidade das tecnologias da informação e comunicação (TIC) e o papel do utilizador enquanto agente prosumer (criador e consumidor de conteúdos Web) na era do conhecimento (TOFFLER, Alvin), fazem com que a preocupação em termos de testes de usabilidade, acessibilidade, funcionalidade, conteúdos e design sejam fundamentais.

 

Face a esta realidade, segue-se o documento de suporte à fase de testes do projecto:

 

Open publication - Free publishing - More 3d

 

Dado que o teste de usabilidade subdividiu-se em três fases: pré-teste, teste e pós-teste. Seguem-se os diferentes instrumentos de recolha de dados:

 

Open publication - Free publishing - More uarhere

 

 

Open publication - Free publishing - More uarhrere

 

 

Open publication - Free publishing - More uarhere

 


Reflexão - os próximos passos:

Com base na análise do documento, o grupo virtUA chegou, rapidamente, à conclusão que ainda falta reunir esforços de modo a tornar o projecto, em todas as suas componentes, user-friendly. 

Todo o grupo tinha a expectativa de estar, nesta altura, um passo mais à frente, e poder, até à dia da entrega, estar mais concentrado no desenvolvimento de conteúdos da aplicação: reconstrução de ambientes tri-dimensionais, podendo dessa forma atingir o maior número de períodos possível. Infelizmente, esse objectivo não será possível, dada a quantidade de alterações / atualizações necessárias a fazer para melhorar o programa, de forma a ser uma experiência intuitiva e satisfatória para o utilizador final.

Frisamos então, o compromisso tido desde a primeira hora do projecto - e que está estampado nos valores da organização - manter a qualidade acima tudo. Reiteramos esse compromisso junto de todos os stakeholders que mantêm este projecto. O nosso focus para a entrega final será, acima de tudo, em criar sistemas de ajuda ao utilizador tanto para o módulo website como para o módulo da aplicação virtual. Dentro de poucos dias divulgaremos todos esses sistemas a criar e como irão interagir no projecto. Fica desde já revelado que, dado o que já foi referido anteriormente, serão poucas as implementações novas a realizar (infelizmente), mas muitas implementações de background, talvez mais morosas e complicadas, que garantem uma máquina rápida e eficaz, sempre centrada no utilizador.

Aproveitamos para deixar uma palavra de agradecimentos a todos aqueles que nos ajudaram a realizar os testes, em especial aos beta-testers: pela sua paciência, críticas e sugestões apresentadas que, certamente, irão enriquecer o nosso produto não só ao nível da métrica de usabilidade mas também no rigor dos conteúdos.


tags: , , ,

publicado por pedro-charneca às 23:16

Terça-feira, 7 de Junho de 2011
Mód. TP6 – Versão Beta

A versão beta corresponde ao momento em que a equipa efectua uma revisão completa do design da aplicação multimédia. É neste momento que também se procede à versão final do design da aplicação e ao seu "congelamento " (Strauss, 1997). Deste modo, a versão beta pode ser consultada em: virtua.campusitv.com, servindo o presente documento de seu suporte.

 

 

Open publication - Free publishing - More 3d

tags: , ,

publicado por lilianavale às 18:41

Segunda-feira, 6 de Junho de 2011
"Não descansaremos enquanto não pusermos o virtUA a crescer"

Na sequência do post “Testes ao projecto virtUA”, criou-se um esquema de recolha e análise de dados, tendo em conta a divisão por equipa e a intervenção de um responsável.

 

Fig.1 - Esquema de testes - Equipa virtUA

 

Assim, para cada teste, há um elemento responsável pela coordenação do teste  e a intervenção e divisão dos elementos do grupo. É de referir que os testes de usabilidade foram adiados para esta 2ª feira (4 utilizadores) e 4ª feira (2 utilizadores), de acordo com a disponibilidade dos recursos humanos do Arquivo, CEMED e DeCA.

 

Os teste de conteúdo irão concretizar-se em paralelo com o teste de usabilidade de forma a verificar dados históricos e proceder à validação da informação.

 

No que concerne, os testes de acessibilidade, já se constatou segundo o Web Accessibility Inspector, os erros do website, faltando efectuar uma reflexão e prodecimentos a tomar visando a melhoria do mesmo , junto dos professores-orientadores e da reunião – última OT com a Prof. Margarida Almeida.

 

É de referir que a monitorização das tarefas, passou a ser feita no CODE.UA, a equipa encontra-se a resolver os bugs detectados no protótipo de alta-fidelidade e a progredir em termos de desenvolvimento do mapa de navegação. O GANTT encontra-se em constante actualização, faltando, ainda, marcar uma reunião milestone, perto da entrega, a fim de analisar e tomar decisões face aos testes efectuados.


"Vai ser difícil, mas vai valer a pena. Eu sei que vai valer a pena"

tags: , , , ,

publicado por lilianavale às 00:55

Sábado, 4 de Junho de 2011
#1 BASTIDORES: Criação do Pavilhão I

O Pavilhão I foi o primeiro edificio a localizar-se no Campus de Santiago. Concebido por uma Comissão Instaladora em 1974, em 29 de Novembro de 1976 é construido o pré-fabricado que albergaria os cursos  de Biologia, Geociências. Cerâmica e Vidro, Ciências da Educação, Matemática e Biblioteca Geral.


Este período marca o inicio da era em que a Universidade começa a ter instalações próprias. O que se pensava ser uma solução provisoria, passou nos dias de hoje, uma construção definitiva, onde funciona actualmente o grupo UNAVE, CEMED e a Incubadora de Empresas da UA.


A criação do Pavilhão I atravessou diferentes fases:

 

Visita ao edifício, recolha e registo fotográfico

 

 

Fig.1 - Recolha de imagens do Pav.I

 

Recolha da planta e organização das layers

 

A modelação do edificio partiu da digitalização da planta cedida pelo gabinete dos técnicos e de arquitectura da Universidade de Aveiro

 

 

Modelação de objectos e Composição

 

 

Fig.2 - Vista aérea do Pav.I - modelação

 

Fig.3 - Vista lateral do Pav.I - modelação

 

Fig.4 - Vista lateral do Pav.I - modelação

 

Texturização 

A texturização do Pavilhão I foi feito com recurso a fotografias e ao controlo do mapeamento através de Photoshop e 3ds Max. A textura da parede do pavilhão, ainda sofreu o efeito bump para dar saliência e cada janela foi alvo da extracção booleana (Boolean).

 

 

Importação para o Unity e criação da envolvente

 

A importação para o Unity passou pela localização do ficheiro de 3ds max e respectivos materiais para a pasta assets. Por uma questão de formalidade e maior facilidade na importação de materiais, as próximas importações serão feitas através do formato .fbx.

 

A criação da envolvente foi feita no Unity através da utilização de librarias (árvores, arbustos, etc) e a aplicação do relvado sobre o terreno.

 

 

Fig.5 - Envolvente 


Fig.6 - Envolvente

Fig.7- Envolvente

Fig.8 - Envolvente 


tags: , , , ,

publicado por lilianavale às 22:40

pesquisar neste blog
mais sobre mim

goncalvessilva

lilianavale

palexandre

pedro-charneca

Junho 2011
Dom
Seg
Ter
Qua
Qui
Sex
Sab

1
2
3
4

5
6
7
8
9
10
11

12
13
14
16
17
18

19
20
21
22
23
24
25

26
27
28
29
30


arquivos

Junho 2011

Maio 2011

Abril 2011

Março 2011

Fevereiro 2011

tags

todas as tags

subscrever feeds

RSSPosts

RSSComentários

posts recentes

O motor da aplicação

Mód. TP6 – Testes

Mód. TP6 – Versão Beta

"Não descansaremos enquanto não pusermos o virtUA a crescer"

#1 BASTIDORES: Criação do Pavilhão I

Testes ao projecto Virtua

Jardinagem virtual: Luta contra os bugs!

Informações sobre versão Beta de Virtua

Mód. TP5 – Prototipagem de alta fidelidade (2/2)

Mód. TP5 – Prototipagem de alta fidelidade (1/2)