underpop

http://underpop.online.fr 2008-07-11  

X3D




Visão Geral




O que é o X3D?

O X3D é um padrão aberto para distribuir conteúdo 3D. Ele não é
uma API de programação, tão pouco um formato de arquivo para troca de
geometrias. Ele combina ambos, geometria e descrições de comportamentos
instantâneos em um simples arquivo que tem inúmeros formatos de
arquivos disponíveis para isso, incluindo o Extensible Markup Language
(XML). É a próxima revisão da especificação ISO VRML97, incorporando os
avanços dos recursos disponíveis nos últimos dispositivos gráficos
comerciais tanto quanto melhoras na sua arquitetura baseado nos anos de
retorno da comunidade de desenvolvimento do VRML97.


Topo


Qual é a diferença entre o VRML97 e o X3D?

Existem grandes e pequenas diferenças entre os dois padrões. O
X3D
aproveita o trabalho do VRML97 e deixa clara todas as áreas sombrias da
especificação anterior, que foram descobertas através dos anos de uso.
Foram usadas as premissas básicas e então elas foram estendidas para
prover uma maior flexibilidade. As grandes mudanças incluem o completo
ajuste da especificação em três  especificações separadas lidando
com conceitos abstratos, formato de codificação para arquivos e acesso
a linguagem de programação. Outras modificações incluem a maior
precisão com a iluminação e modelo de eventos e a troca de certos nomes
de campos para uma maior consistência.

As maiores mudanças podem ser sumarizadas da seguinte forma:


  • Capacidades do grafo de cena expandidas

  • modelo de programação de aplicações revisado e unificado

  • Multiplos formatos de codificação, descrevendo o mesmo modelo
    abstrato, incluindo XML

  • Arquitetura modular permitindo uma faixa de níveis para serem
    adotados e suportados por diversos tipos de mercados

  • Extrutura da especificação expandida



O grafo de cena X3D - o coração de uma aplicação X3D -
é quase idêntico a do grafo de cena VRML97. O projeto original da
estrutura e tipos de nós do grafo de cena VRML97 foi baseado em uma já
estabelecida técnica em computação gráfica interativa. Ele tem servido
bem o
VRML97 durante os anos e resistido durante o tempo. Modificações foram
feitas no grafo de cena X3D, primariamente  em função de
incorporar os avanços nos dispositivos gráficos comerciais, via a
introdução de novos nós e campos dos dados. Adicionalmente mudanças
menores foram feitas de forma a esclarecer, como as de ser mais
preciso no sistema de iluminação e modelo de eventos, e prover acesso
aos valores de transparência nos campos de cores.

O X3D
tem uma única interface de programação de aplicações (API). Esta difere
do VRML97 na qual tem uma API de script interna mais uma API externa. A
API unificada do X3D esclarece e resolve diversos problemas que
existiram
no VRML97 resultando em uma implementação mais robusta e confiável.
Conexões por ECMAScript e Java são definidas e ECMAScript é um
requisito
para a conformidade de uma aplicação.

O X3D suporta múltiplas codificações de arquivos, a própria
VRML97 e adicionalmente Extensible Markup Language (XML) e binário
comprimido. A codificação XML permite uma suave integração com serviços
de web (web services) e arquivos e transferência de dados entre
plataformas inter-aplicações ( cross-platform inter-application). O
formato binário comprimido está atualmente em desenvolvimento. Ele irá
fornecer uma maior banda de transmissão de dados. Cada codificação tem
suas vantagens para diferentes usos. Todas as codificações suportam
todo o conjunto de características do X3D.

O X3D emprega uma arquitetura modular para prover uma maior
estensibilidade e flexibilidade. A maioria dos domínios de aplicações
não necessitam de todos os recursos do X3D, tão pouco todas as
plataforma suportam a gama de funcionalidades definidas na
especificação. Os recursos do X3D são agrupados em componentes
(components) que podem ser suportados pela implementação em uma mistura
de capacidades para atingir as necessidades de um mercado ou plataforma
em particular. O X3D
também introduz o conceito de perfis (profiles) - uma pré-definida
coleção de componentes comumente encontrados em certos domínios de
aplicações , plataformas, ou um cenário de uso, por exemplo trocas de
geometrias entre ferramentas de modelagem. Diferente do VRML97, na qual
requer um completo suporte de suas funcionalidades para estar em
conformidade, o X3D permite vários graus de suporte do padrão para
atingir uma variedade de necessidades. O mecanismo de componentes do
X3D também permite desenvolvedores a implementar suas próprias
extensões de acordo com um rigoroso conjunto de regras, ajudando a
evitar a "torre de babel" das extensões dos desenvolvedores que
surgiram no VRML97 nos últimos anos.

Finalmente, a especificação do X3D por si mesma tem sido
reestruturada, permitindo um ciclo de vida mais flexível para acomodar
as evoluções dos padrões. O padrão X3D é divido em três especificações
separadas lidando com conceitos abstratos e de arquitetura, codificação
de arquivo e acesso de linguagem de programação. Este enfoque permite à
especificação mudar durante o tempo e facilita sua adoção através da
ISO para especificar partes da especificação conforme necessário.


Topo


O que o X3D parece?

A nova especificação está sendo finalizada e uma proposta de
pré-lançamento está href="http://www.web3d.org/x3d/specifications/x3d_specification.html">disponível
para revisões pelo público. Devido as regras dos processos ISO, nós
não podemos lançar uma proposta final atual da especificação para a
revisão pública. Membros do
consórcio
, podem entretanto, ter completo acesso a especificação
em todos os estágios dos processo. Propostas publicas podem ser
encontradas neste site, porém entenda que severas mudanças tem sido
feitas desde que estas foram publicadas.


Topo


Posso utilizar arquivos VRML97 em meu navegador X3D?

Sim e não. Um arquivo VRML97 não é um arquivo X3D. Um navegador
puramente X3D não será capaz de ler um arquivo VRML97 logo que existem
numerosas mudanças na sintaxe que levam os dois a incompatibilidades.
Entretanto, a maioria dos navegadores  que suportam o padrão X3D
também suportam o padrão VRML97. O melhor é checar a documentação do
seu navegador para informações mais detalhadas.


Topo

Como converto meus arquivos VRML97 para X3D?

Existem diversas ferramentas disponíveis que podem fazer isso
para você.
Se você tem um arquivo relativamente simples que não contem scripts ou
externprotos então você pode editar manualmente o texto para trocar o
cabeçalho e inserir a nova declaração  PROFILE que você estará com
o documento pronto. Qualquer coisa mais complexa vai requerer a
ferramenta e
idealmente um razoável trabalho de conhecimento com a nova
especificação (diversas áreas funcionais foram mudadas para serem mais
rigorosas ou apenas são simplesmente diferentes). Veja a href="http://www.web3d.org/applications/tools">Seção de ferramentas
para maiores detalhes em opções disponíveis.


Topo


Por que minha empresa deveria suportar o X3D?

O suporte ao X3D cria diversas vantagens para sua empresa:


  • Principalmente porque, mesmo que seu produto use um formato
    proprietário, suportando o X3D instantaneamente, você tem acesso a mais
    ferramentas, conteúdo e compatibilidade com outras aplicações, tudo
    isso com um esforço mínimo. Você tem o melhor dos dois mundos, o seu
    formato MAIS compatibilidade industrial.

  • Seu produto se beneficiará, tendo uma competitiva vantagem
    comercial, por poder se afirmar "Compatível com o X3D". Isto,
    adicionalmente ,irá prover um caminho mais fácil para alavancar o amplo
    desenvolvimento industrial em X3D.

  • Existem significativos movimentos comerciais e código-aberto
    para avançar o X3D. Isto provê um caminho para a sua aplicação não ter
    que "reinventar a roda", cada vez que novos avanços na indústria são
    feitos.

  • A compatibilidade com o X3D é fácil logo que você não tem que
    cumprir toda a especificação para se obter a conformidade. O perfile
    (profile) Interchange,
    o mais simples de todos os perfis, é simples de implementar e
    equivalente a maioria dos recursos introdutórios de programação para
    computação gráfica 3D (transformadas simples, geometrias, texturizaçao
    e iluminação).

  • Por suportar o X3D, sua empresa ajuda no crescimento da
    adoção do 3D na indústria como um todo! O X3D age como uma plataforma
    unificadora e unindo as bandeiras comercias na qual toda a indústria
    pode crescer.

  • O conteúdo X3D é modular e reutilizável, economizando tempo
    de desenvolvimento e dinheiro.

  • O X3D mantém o conteúdo, exportadores e ferramentas VRML.
    Pacotes que exportam VRML como o 3DSMax, já são próximos da
    compatibilidade com o X3D. Existem diversos esforços em andamento para
    atualizar os exportadores existentes para X3D.

  • O X3D suporta opcionalmente codificações XML para uma forte
    integração com outras tecnologias da Web.

  • Devido a ser extensível e modular, um navegador pode suportar
    somente os perfis que são necessários, assim empresas podem fazer
    navegadores pequenos, eficientes para atingir suas necessidades
    individuais. Eles também podem prover suporte específico para segmentos
    altamente
    específicos de mercado sem corromper o padrão ou outros
    navegadores.




Topo

Visão Técnica




Como é a especificação do X3D estruturada?

Devido aos novos requisitos de suportar múltiplos formatos de
arquivo e linguagem de programação, X3D é na verdade composto de 3
especificações ISO separadas::

  1. href="http://www.web3d.org/x3d/specifications/ISO-IEC-19775/index.html">19775:200x
    Uma descrição abstrata de todas as partes funcionais do sistema e como
    esta se
    referencia a uma representação concreta.  Isto descreve
    modelos estruturais e de execução em termos abstratos. Funcionalidades
    de linguagens de programação externas também são expressadas em termos
    abstratos como grupos de serviços que podem ser requisitados e providos
    em um mundo ideal.

  2. href="http://www.web3d.org/x3d/faq/x3d/specifications/ISO-IEC-19776/index.html">19776:200x
    Um conjunto de descrições de formatos de arquivos e como uma estrutura
    abstrata de uma especificação é codificada neste arquivos - ambos em
    formato texto ou binário. Dois formatos de texto são descritos: O
    clássico VRML (usando  o sistema de chaves e colchetes do VRML97)
    e
    XML. Existe um trabalho em andamento para um formato binário, porém ele
    ainda não esta completo.

  3. href="http://www.web3d.org/x3d/specifications/ISO-IEC-19777/index.html">19777:200x
    Um conjunto de mapeamentos para várias linguagens de programação para
    as capacidades de serviços abstratas. Logo que nem todas as linguagens
    de programação são iguais, esta especificação mapeia as estruturas
    individuais das linguagens de programação para serviços abstratos
    definidos pela especificação. Especificações para Java e ECMAScript
    estão definidas.




Topo


Qual mudanças funcionais existem entre o VRML97 e o X3D?

Existem mudanças sutis e não tão sutis. Seria impossível listar
todas, porém aqui estão alguns itens que você precisa estar
a par:




  • Os arquivos estão agora estruturados para definir as
    capacidades necessárias como parte do cabeçalho. Isto necessita que ao
    menos seja definido o perfil (profile) e qualquer componente
    (component) extra.

  • Externprotos agora são usados somente para definir conteúdo
    externo ao arquivo X3D. Eles não podem ser usados para prover
    mecanismos de extensão para o navegador. A forma de prover extensões
    específicas para o navegador é através de componentes (components)
    adaptados.

  • Nomes de acesso para campos mudaram de eventIn, eventOut,
    field e exposedField, para inputOnly, outputOnly, initializeOnly e
    inputOutput, respectivamente.

  • Scripts podem ter campos inputOutput (exposedFields)
    definidos.


  • Um nome DEF não pode ser multi definido mais.

  • Todo conteúdo de leitura é desacoplado. Onde no VRML97
    necessitaria que scripts fossem carregados antes da execução começar,
    X3D remove esta necessidade e define que o arquivo começa a executar
    primeiro e depois de certo tempo, recursos (scripts, texturas, sons,
    inlines, externprotos) são carregados.

  • O modelo de execução entre o conteúdo de um script e o grafo
    de cena é rigorosamente definido e precisamente controlado. Onde o
    VRML97 permite um script multi-threaded arbitrariamente trocar o grafo
    de cena em qualquer ponto, o X3D define somente certos ponto onde estas
    alterações podem ser feitas.

  • A execução e modelo de programação para scripts é consistente
    entre linguagens de programação e aonde quer que você esteja, dentro ou
    fora do navegador - uma definição da API é regra geral.

  • Rigorosa definição de conjunto de definições de tipos
    abstratos para nós.





Topo


O que são Profiles e components?

Estes são a nova forma do X3D de definir ambas, extensibilidade e
o conjunto de serviços que o conteúdo dos usuários necessita.

Um componente (component) define uma específica coleção
de nós. Tipicamente esta coleção tem em comum um conjunto de
funcionalidades -
por exemplo a estruturas NURBS e as habilidades de texturização. Um
componente (component) consiste da definição dos nós e um conjunto de
níveis que prove um cada vez maior conjunto de
implementações. Um nível simples requer apenas poucos nós e talvez uma
seleção de campos a serem suportados, enquanto que níveis maiores
requerem todos os níveis mais simples, mais nós mais complexos. Por
exemplo, o nível 1 de NURBS requer apenas linhas e curvas 2D básicas,
enquanto que o nível 4 requer, costura, junção e superfícies de
revolução.

Um perfil (profile) é uma coleção de componentes para um
específico nível de suporte. Um perfil (profile) pode não conter outro
perfil, porém ele necessita todos os mesmos componentes (components) e
níveis como outro perfil (profile), e ainda mais. Todos os arquivos X3D
requerem a definição do perfil (profile) que está em uso, na qual pode
ser suprida com a requisição de componentes adicionais pelo usuário -
ou por níveis maiores que aqueles providos pelo perfil (profile) ou
que ainda não foram definidos no perfile (profile).


Topo


Os pré requisitos dos componentes são automaticamente carregados
ou eu ainda tenho que declarar eles?

Boa pergunta. Nós não temos uma resposta ainda. De alguma forma
este importante detalhe nos escapou quando estávamos escrevendo a
especificação e logo não irá aparecer na versão final do documento ISO.
Nós teremos uma resposta a esta pergunta no site Web3d.org logo que
tivermos uma resposta final.


Topo


VRML é extensível. Por que o X3D é mais extensível que o
mecanismo EXTERNPROTO do VRML?

O VRML tem somente o mecanismo Externproto para extensibilidade,
porém não um mecanismo real para criação de grupos de extensões de
funcionalidade. Os mecanismos de componente, nível e perfil do X3D
permite isso. O time da especificação sentiu que  uma natureza de
duas caras para os externprotos seria um grande problema para definir o
correto comportamento. p.e., quando   a implementação pode
agir fora dos limites de um evento normal do VRML como uma
implementação de um nó nativo ou ser restringido por isso quando
escrever como um arquivo VRML. Desde que componentes já foram
definidos como uma forma de estender o navegador com definição de nós
nativos, foi decidido minimizar a confusão e somente definir uma forma
de prover extensibilidade.

Um componente pode conter vários nós (i.e. o perfil Nurbs contém
todos os nós relacionados com nurbs). Também, um componente pode
adicionar outras áreas de funcionalidade, como suporte as novas
linguagens de scripting, ou requisitos de interfaces de usuário, etc.
Um componente pode também simplesmente ser uma coleção de externprotos.

Componentes (components) podem ser definidos mais que apenas nós.
Eles podem ser usados para uma área funcional inteira. Por exemplo, nós
podemos precisar de um in-line
ECMAScript com o arquivo X3D em certo ponto. O mecanismo de componentes
(component) permite este tipo de extensão.


Topo


Como novos components e profiles são criados?

Empresas podem criar novos Componentes com suporte para seus
produtos e submetê-los para a diretoria do X3D para sua aprovação.
Quando um componente é submetido, este contém um prefixo para a empresa
que submete o componente similar como as extensões OpenGL  que têm
o prefixo da empresa que criou a extensão. Componentes vão sofrer os
testes e revisões pela diretoria do X3D, o Consórcio Web3D e a
comunidade como um todo.

Uma vez que um componente seja aceito e implementado por mais de
uma empresa, o prefixo muda para EXT_. Se o componente é classificado
pela diretoria, ele então recebe o prefixo X3D_.

A diretoria pode julgar que certos componentes são tão largamente
adotados e importantes que deveriam ser incluídos em um conjunto de
modificações para a especificação ISO oficial..

Uma vez que um grupo de componentes (components) e/ou perfils
(profiles) são julgados importantes para a inclusão através das várias
aplicações, uma nova versão do X3D pode ser criada incluindo, por
padrão, um conjunto de perfis (profiles). Uma nova versão implica mais
funcionalidade que as versões anteriores.

Empresas podem criar navegadores, ferramentas, importadores e
exportadores X3D na qual suportam diferentes versões, perfils
(profiles) e componentes (components). Por exemplo, um exportador para
o 3DSMax que é usado nos ambientes de produção de video-games pode
suportar somente o perfil Interchange, enquanto que um plug-in para
navegador da Internet pode suportar o perfil  Immersive ou Full.


Topo


As empresas precisam suportar todos os Profiles, Components e
Levels?

Não. Perfis e componentes existem para que as empresas precisem
somente suportar perfis e componentes para suas necessidades. Por ter
perfis, seus produtos podem ter certeza que o conteúdo que eles lerem
irá funcionar nas suas aplicações, e que aquele conteúdo que eles
criaram irá funcionar em outras aplicações que suportem seus
componentes ou perfis.

Muitas empresas não vão querer suportar uma especificação grande
e complexa como o VRML97. Porém a estrutura modular do X3D significa
que eles podem começar suportando perfis (profiles) e componentes
(components) simples, e gradualmente adicionar perfis adicionais
conforme eles se sentirem preparados.


Topo

Não será um problema tendo empresas fazendo dúzias de components?

Não. O processo de ter componentes adotados na especificação X3D
provê um mecanismo que mantém aplicações compatíveis com X3D
trabalhando juntas. Muitas novas características vão cair em
componentes existentes, deste modo introduzindo novos níveis para estes
componentes.

Por haver empresas capazes de desenvolver componentes e
submetê-los, o X3D força os avanços da indústria a serem rápidos e
eficientes. Isto também garante que o X3D crescerá e florescerá, e não
se tornará tecnicamente obsoleto, como o padrão anterior se tornou.


Topo

Para o que a utilização de components é boa?

A seguinte lista enumera alguns dos benefícios que forma parte do
trajeto atrás do esforço da componentização:




  • Núcleo pequeno e leve – O VRML 97 é um padrão grande e
    complexo para implementar. Desmontando o VRML em pequenos núcleos de
    funcionalidade, nós facilitamos para o desenvolvedor implementar o X3D,
    reduzindo a complexidade da implementação e, portanto, melhorando a
    possibilidade de manutenção dessas implementações.

  • Possibilidade de extensão – Através da idéia de extensão e
    pefis, é possível construir funcionalidades adicionais sobre o núcleo.
    Isto permite que novas características sejam facilmente adicionadas ou
    características existentes sejam trocadas com extensões alternativas.

  • Foco vertical no mercado - Uma arquitetura extensível permite
    novas especificações ou perfis serem implementados sobre o núcleo do
    navegador. Por exemplo, nós temos grupos de trabalho especificamente
    para extender o X3D para se adequar a mercados como CAD-DCC, Medical VR
    e Visual Simulation.

  • Reduzida necessidade de recursos - Isto é útil, por exemplo,
    no espaço de um set-top boxes, onde cada característica tem um custo.
    Aqui, a habilidade do uso de perfis possibilita ao navegador, com um
    pequeno consumo de espaço “footprint” ( e um correspondente pequeno
    conjunto de funcionalidades), é um requisito.




Topo


É verdade que nós como Box, ElevationGrid, etc. serão eliminados?

Não, isto não é verdade. O X3D não está reduzindo
funcionalidades: ele está particionando funcionalidades. É verdade que
estes nós, provavelmente, não estarão no núcleo principal, porém eles
serão implementados como uma extensão, como extensões do VRML 97. A
razão disso é que o nós Box, Sphere, Cone, ElevationGrid, etc. não
devem ser incluídos no Core, por que eles podem ser facilmente
derivados de primitivas de baixo nível como o IndexedFaceSet. Isto
simplifica o core, fazendo-o menor, mais fácil de implementar e mais
fácil de manter.


Topo


O X3D é realmente apenas o VRML-Lite?

Não. A noção de uma versão desmontada do VRML, afetuosamente
chamada de VRMLLite, foi discutida por um tempo na lista de e-mail do
VRML. A idéia foi reduzir este inchamento nos navegadores atuais,
arrancando funcionalidades não essenciais. O X3D não arranca nenhuma
funcionalidade – a noção de um Núcleo é talvez similar ao conceito do
VRMLLite, porém a idéia toda do Núcleo X3D é que pode ser estendido
para prover funcionalidades a mais.

O X3D prove diversos níveis de funcionalidade através das várias
definições de perfis (profile). Um desses perfis é chamado de 
Interchange e é dirigido especificam ente para ferramentas de criação
de conteúdo digital (DCC) como AutoCAD, 3DSMax e Maya
por trocar geometrias básicas sem nenhum modelo de execução.
Este é um perfil de vários que incluem tudo.


Topo

Ferramentas e Aplicações




Que ferramentas existem para suportar o X3D?

Existe um grande número de ferramentas úteis relacionadas com o
X3D, incluindo conversões stylesheet entre VRML97 e pacotes de edição
baseados em XML para arquivos X3D.

Este href="http://www.web3d.org/x3d/content/XmlToolRelationshipsForX3d.pdf">diagrama
em PDF mostra várias das ferramentas XML disponíveis e suas
relações
com o X3D.

Nossa base de
dados de aplicações
lista ferramentas de modelagem, visualização e
desenvolvimento.


Topo


Eu realmente necessito usar o Maya/3DSMax/AutoCAD/etc para criar
conteúdos X3D?

Não, apenas estas ferramentas são excelentes para criar
conteúdos de boa qualidade. Existem dois formatos de texto que você
pode usar para criar o seu conteúdo, você ter seu ambiente favorito de
edição um simples editor de texto. Se você está trabalhando neste
nível, um bom entendimento de conceitos de computação gráfica é
necessário, e para efeitos visuais avançados, como o uso de
multitexturing, environment
mapping, programmable shaders e mais, um conhecimento prático de
programação gráfica 3D (p.e. OpenGL Direct3D etc) será uma vantagem.

É esperado que ferramentas e conteúdo gerado automaticamente
prevalecerá sobre conteúdos editados a mão. O time da especificação e
as empresas trabalhando em torno do X3D já estão vendo que quase todo o
conteúdo está sendo criado através de algum processo automático - como
os sistemas da web e transformações stylesheet de outras linguagens
baseadas em XML.


Topo


Existe um navegador X3D código aberto (Open Source)?

Sim. O Source Working Group esta produzindo uma implementação
código aberto (Open Source) escrita em Java chamada de href="http://www.xj3d.org/">Xj3D.
Uma aplicação funcional está disponível hoje e tem sido testada sobre
Linux, Solaris e Win32. Atualmente o navegador suporta a maior parte da
especificação X3D, porém ainda não é uma versão 1.0.

Existem outros esforços de implementações de código aberto (open
source) para VRML97
que podem ser usados por desenvolvedores como bases para um navegador
X3D, como o projeto OpenVRML.


Topo


Como posso fazer minha aplicação ler/gravar em X3D?

Se você estiver usando uma das diversas ferramentas de modelagem,
como
3DMax, Maya ou uma ferramenta CAD, é provável que sua aplicação tenha
um exportador
VRML97 ou X3D disponível. Muitos destes ainda são baseados em prévias
versões do X3D ou gravam arquivos VRML97 inválidos. Para retificar este
problema, o Source Working Group está num processo de escrever ou
reescrever exportadores para estes pacotes de modelagem mais populares.


Topo


Como sei que uma aplicação realmente suporta a especificação X3D?

O consórcio está atualmente juntando um extenso conjunto de href="http://www.web3d.org/x3d/workgroups/conformance.html">testes de
conformidade.
Produtos que passarem nos testes de conformidade serão capazes de se
julgarem compatíveis com a especificação X3D. Os detalhes finais dos
testes, custos e processo serão publicados em breve.


Topo

Onde posso encontrar ferramentas para converter meu conteúdo
VRML97 em X3D?

Nossa base de
dados de aplicações
lista ferramentas de modelagem (authoring),
utilitários para conversão de arquivos e ferramentas de desenvolvimento.


Topo

Questões específicas de XML




Por que se preocupar com Extensible Markup Language (XML)?

O XML foi adotado como sintaxe para o X3D para resolver um
grande número de problemas reais:




  • Rehostability – A sintaxe do VRML 97 é estranha para todos
    com exceção da comunidade do VRML. Ela é similar a sintaxe do grafo de
    cena do Open Inventor, na qual foi baseada e algumas notações de
    objetos. Todavia, a sintaxe dominante na Web é o XML. Linguagens de
    marcações tem provado ser a melhor solução para o problema de um longo
    ciclo de vida de arquivamento de dados e reanfitrializar (rehosting).

  • Integração de páginas – Integração baseada em páginas XML vai
    direto ao problema de manter o sistema mais simples, assim mais pessoas
    podem desenvolver páginas web, tanto em conteúdo como implementações.

  • Integração com a web da próxima geração – Os membros do href="http://www/w3c.org">World Wide Web Consortium lang="PT-BR" xml:lang="PT-BR">(W3C) estão se
    esforçando muito no
    desenvolvimento do XML. Extensível suporte ao XML é esperado na última
    versão do Mozilla
    e do Internet Explorer..

  • Suporte a completo conjunto de ferramentas - O X3D, como um
    formato que define informações visuais, é tipicamente o último estágio
    em uma linha de produção. Usando um conjunto de ferramentas
    disponíveis, como
    stylesheets, você pode trabalhar em qualquer formato nativo XML que
    você queira, e ver que uma representação 3D é tão trivial quanto um
    processo de transformação. Por exemplo, existe transformações já em uso
    para a visualização de Chemical Markup Language (CML), MathML e
    diversas outras linguagens XML preparadas.




Topo

Existe uma Document Type Definition (DTD) para X3D aceita?

Sim. Ele é definido como parte do padrão. A URL do DTD
é: http://www.web3d.org/specifications/x3d-3.0.dtd.


Topo

Existe um Schema para X3D aceito?

Sim. Ele é definido como parte do padrão. A URL do Schema é: href="http://www.web3d.org/specifications/x3d-3.0.xsd">http://www.web3d.org/specifications/x3d-3.0.xsd.


Topo

O que mais existe sobre outras tecnologias relacionadas ao XML?

O consórcio está estudando vários outros padrões href="http://www.w3c.org/">W3C relacionados com o XML.
Tecnologias que são de particular interesse para o esforço do X3D
incluem:




  • SMIL
    (Synchronized Multimedia)

  • SVG (Scalable
    Vector Graphics)

  • XHTML (the W3C's
    XML-ization of HTML)



O consórcio Web3D é um mebro do W3C e por esta virtude o grupo de
trabalho do X3D é capaz de acompanhar de perto o processo em cada uma
dessas áreas, juntando a melhor forma de proceder em cada caso.


Topo

Como marcas XML podem ser integradas ao navegador web?

Uma vez criado um conjunto de XML tags, dependendo de como o
navegador utiliza o XML, você pode incorporá-lo através de um dos
seguintes esquemas:




  • Stylesheet: Um arquivo XML é usado diretamente. Internamente,
    isso será uma referência para um arquivo em linguagem stylesheet como o
    XSL. O arquivo XSL terá instruções para mostrar as XML tags.

  • Ilhas de dados: Os valores do XML estão presos a outro
    arquivo (e.g., HTML) para nomear tags como as tabelas, divs, etc do
    HTML. Isto significa que o XML será incluído por valor ou referência no
    documento, e os valores dentro das tags serão usados por HTML tags.
    Esta é uma solução específica Microsoft.

  • Suporte por plugin: Esta é uma forma onde uma tag de um
    objeto está sendo usada inline para indicar onde o código de suporte
    pode ser encontrado, parâmetro a passar, etc.

  • Suporte ao objeto direto: O navegador Web provê suporte
    nativo para as tags por aumentar seu modelo de objetos a lidar com
    esses especificamente. Obviamente, a menos que o navegador seja
    extensível pelos autores, as tags e suas implementações serão presas ao
    código dentro do navegador.




Topo


Quantos acrônimos de três letras vou ter de conhecer para poder
usar o X3D?

Ou talvez: Os autores de X3D necessitarão conhecer como escrever
suas DTDs
(Document Type Definitions), CSS
(Cascading Stylesheets), XSL
(Extensible Stylesheets), etc.? A resposta curta é não.

Todo este trabalho é uma responsabilidade do X3D Task Group. A
especificação X3D define uma DTD para o X3D que terá correspondência um
para um com os nós e campos do VRML 97. Autores usam estas tags
definidas e, portanto, não precisam desenvolver suas próprias DTDs.
Tradutores estão sendo construídos para converter arquivo VRML em
arquivo X3D, de forma que qualquer ferramenta de modelagem VRML possa
continuar sendo usada. Programas de código aberto exemplar para
leitura/importação/exportação do X3D será provido para encorajar
criadores de ferramentas 3D para facilmente adicionar
importadores/exportadores X3D próximos aos seus
importadores/exportadores VRML.


Topo


Onde posso conseguir mais informações sobre o XML?

Aqui estão algumas fontes úteis que você deve usar para começar:






Topo

Processo e status de desenvolvimento




Quem está desenvolvendo o X3D?

O núcleo da especificação do X3D está sendo ativamente
desenvolvida pelo X3D Specification Working Group. Adicionalmente
extensões para vários formatos de mercado estão sendo desenvolvidos por
grupos de trabalhos específicos. Por exemplo, os grupos de trabalho do href="http://www.web3d.org/applications/cad">CAD e href="http://www.web3d.org/applications/medical">Medical estão
escrevendo extensões para suas respectivas indústrias,
enquanto que o href="http://www.web3d.org/x3d/workgroups/x3d-shaders.html">grupo de
trabalho de Shader estão adicionando as capacidades gerais do
shaders programáveis.


Topo


Existe uma especificação do X3D?

Sim. As várias especificações estão em diferentes níveis no
processo de aprovação da ISO. Você pode encontrar a versão pública
atual aqui.


Topo

Qual é a situação da especificação do X3D?

A especificação da abstração (19775:200x) está atualmente em
andamento para as votações finais dentro da ISO. O texto da proposta da
especificação internacional final está aguardando o sim ou não da
votação final. Uma vez que isto esteja completo e nós tenhamos a
aprovação, então o ISO irá publicar formalmente a especificação. Nós
esperamos que isto ocorra nos meados de 2004.

As outras duas especificação (19776 e 19777) estão sobre um
processo de edição. Elas estão ambas em um estágio DIS (Draft
International Specification), o que põe ela cerca de 6 meses atrás da
especificação da abstração. Enquanto nós estamos finalizando a edição
do documento e comentando, nós estamos esperando pelo texto final para
ser reunido com o ISO antes de coloca-lo no último processo da ISO. Nós
esperamos que o texto esteja disponível para os membros do consórcio,
cerca de Abril-Maio e o carimbo final da ISO no fim de 2004 ou início
de 2005.


Topo


Existe uma implementação exemplo ou referencia?

O navegador Open Source Xj3D
(código aberto) e exemplos são boas fontes para implementação.


Topo


Qual é o custo da licença para usar o X3D?

O X3D é um padrão aberto que não tem royalties associados com ele
- você pode usar livremente aonde você quiser. O Consórcio Web3D tem a
política de não requisitar nenhum limite de Propriedade Intelectual
para a tecnologia e um acordo com a ISO para publicar a especificação
para o público sem nenhum custo..

Uma certificação e href="http://www.web3d.org/x3d/workgroups/conformance.html">Programa
de Teste de Conformidade
está atualmente sendo definido. Testes de conformidade terão um custo
associado. O programa de conformidade para a especificação do X3D tem o
objetivo de prover consistência e confiabilidade para as implementações
que suportem X3D pelos diversos vendedores das múltiplas plataformas, e
para criar uma definição objetiva de conformidade com o padrão X3D.
Somente produtos que passe pela conformidade poderão usar a marca
registrada X3D.


Topo


Posso ajudar com o desenvolvimento do X3D?

Existem várias formas de ajudar - desde o simples ato de adotar o
uso do X3D em seu ambiente diário de trabalho até trabalhar ativamente
em uma ou mais especificações. Para poder trabalhar na especificação e
ter acesso as propostas atuais, você precisa ser um href="http://www.web3d.org/membership/">membro do consórcio Web3D.

Uma das melhores formas de ajudar é se envolver com as
ferramentas de apoio - escrevendo importadores e exportadores para X3D.
O Source
Working
Group
tem diversos projetos nesta frente e adoraria sua ajuda
técnica. Para participar, por favor preencha onclick="OpenComments('/x3d/workgroups/participate/index.html'); return false">esta
ficha
.



 

Marcadores: , ,



2008-07-10  

SourceForge Best Project: XOOPS is a Finalist!!!

SourceForge Best Project: XOOPS is a Finalist!!!

SourceForge Best Project: XOOPS is a Finalist!!!



Yes!!! Thanks to all the loyal XOOPS users, XOOPS is now a Finalist in the SourceForge 2008 Community Choice Award in the Best Project category. Thank you!!! Now we need your vote to gain good Karma (and maybe a price). 

Please
vote for XOOPS in the "Best Project" category!!!



You’ll need your SourceForge.net User ID and Password to vote. If you don’t have one, you may create a new one.
Deadline for voting will be probably around July 20, so please VOTE NOW!!!!

If you didn't have a chance to read our latest Newsletter, please check it out:

WOX (World of XOOPS) Newsletter # 10 (July 2008)





Marcadores: