Title: Presentacin de PowerPoint
1INTERACCIÓN 3D
2006/2007
MODELADO
2INTERACCIÓN 3D - MODELADO
2006/2007
CONTENIDO
Elementos de modelado Modelado
poligonal Reutilización de modelos Jerarquía de
transformaciones Optimización
3INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
4INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
La geometría en el scene graph
Nodo Shape Campos appearance SFNode NULL geometr
y SFNode NULL
5INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Elementos constructivos en VRML97
Modelos paramétricos Puntos y líneas Mallas de
triángulos Mapas de elevación Extrusiones Texto
6INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Modelos paramétricos
Esfera (Sphere) Cilindro (Cylinder) Cono
(Cone) Caja (Box)
7INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Modelos paramétricos
Esfera (Sphere) Campos radius SFFloat 1.0
8INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Modelos paramétricos
Cilindro (Cylinder) Campos radius SFFloat 1.0
height SFFloat 2.0 side SFBool TRUE top SFBool TRU
E bottom SFBool TRUE
9INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Modelos paramétricos
Cono (Cone) Campos bottomRadius SFFloat
1.0 height SFFloat 2.0 side SFBool TRUE bottom SFB
ool TRUE
10INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Modelos paramétricos
Caja (Box) Campos size SFVec3f 2.0 2.0 2.0
11INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Puntos y líneas
PointSet Campos coord SFNode(1) NULL color SFN
ode(2) NULL
(1) Nodo tipo Coordinate (2) Nodo tipo Color
12INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Puntos y líneas
IndexedLineSet Campos coord SFNode(1) NULL coo
rdIndex MFInt32 color SFNode(2) NULL colorIndex
MFInt32 colorPerVertex SFBool TRUE
(1) Nodo tipo Coordinate (2) Nodo tipo Color
13INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
(1) Nodo tipo Coordinate (2) Nodo tipo Color (3)
Nodo tipo TextureCoordinate (4) Nodo tipo Normal
Mallas de triángulos (IndexedFaceSet)
coord SFNode(1) NULL coordIndex MFInt32
texCoord SFNode(3) NULL texCoordIndex MFInt32
color SFNode(2) NULL colorIndex MFInt32
colorPerVertex SFBool TRUE normal SFNode(4) NUL
L normalIndex MFInt32 normalPerVertex SFBool
TRUE ccw SFBool TRUE solid SFBool TRUE convex SFBo
ol TRUE creaseAngle SFFloat 0
14INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Mallas de triángulos (IndexedFaceSet)
Nodo Coordinate point MFVec3f XYZ Nodo
Color color MFColor RGB 0,1 Nodo
TextureCoordinate point MFVec2f ST Nodo
Normal vector MFVec3f XYZ
15INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Mapas de elevación
(1) Nodo tipo Color (2) Nodo tipo Normal (3) Nodo
tipo TextureCoordinate
ElevationGrid xDimension SFInt32
0 xSpacing SFFloat 1.0 zDimension SFInt32
0 zSpacing SFFloat 1.0 height MFFloat color SFN
ode(1) NULL colorPerVertex SFBool
TRUE normal SFNode(2) NULL normalPerVertex SFBool
TRUE texCoord SFNode(3) NULL ccw SFBool TRUE solid
SFBool TRUE creaseAngle SFFloat 0
16INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Extrusiones
Extrusion spine MFVec3f 0 0 0, 0 1 0
crossSection MFVec2f 1 1, 1 1, -1
1, 1 1 scale MFVec2f 1 1 orientation
MFRotation 0 0 1 0 beginCap SFBool TRUE endCa
p SFBool TRUE ccw SFBool TRUE solid SFBool TRUE cr
easeAngle SFFloat 0
17INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Texto
Text Campos string MFString fontStyle
SFNode(1) NULL maxExtent SFFloat
0.0 length MFFloat
(1) Nodo tipo FontStyle
18INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Texto
FontStyle size SFFloat 1.0 family MFString
SERIF style SFString PLAIN horizontal
SFBool TRUE leftToRight SFBool TRUE topToBottom
SFBool TRUE language SFString justify MFString
BEGIN spacing SFFloat 1.0
family SERIF, SANS, TYPEWRITER style PLAIN
, BOLD, ITALIC, BOLDITALIC justify BEGIN
, MIDDLE, END, FIRST
19INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Texto
Campo justify 2 elementos (major y minor
axis) El efecto es dependiente de los campos
horizontal, leftToRight y topToBottom
horizontal TRUE
horizontal FALSE
20INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Elementos añadidos en X3D
IndexedTriangleSet TriangleSet IndexedTriangleStri
pSet TriangleStripSet IndexedTriangleFanSet Triang
leFanSet GeoElevationGrid
21INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Elementos añadidos en X3D
Arc2D ArcClose2D Circle2D Disk2D Polyline2D PolyPo
int2D Rectangle2D TriangleSet2D
22INTERACCIÓN 3D - MODELADO
2006/2007
ELEMENTOS DE MODELADO
Elementos añadidos en X3D
NurbsCurve NurbsPatchSurface NurbsSweptSurface Nur
bsSwungSurface NurbsTrimmedSurface
23INTERACCIÓN 3D - MODELADO
2006/2007
MODELADO POLIGONAL
24INTERACCIÓN 3D - MODELADO
2006/2007
MODELADO POLIGONAL
Mallas de polígonos
Listas de Coordenadas (vértices) Coordenadas de
texturizado Normales (1) Colores (1) Índices (de
vértices, normales, colores y coordenadas de
texturizado) (1) Asociadas a vértices o
caras Atributos comunes ccw, solid, convex,
creaseAngle.
IndexedFaceSet (VRML97/X3D) IndexedTriangleSet
(X3D) TriangleSet (X3D) IndexedTriangleStripSet
(X3D) TriangleStripSet (X3D) IndexedTriangleFanSet
(X3D) TriangleFanSet (X3D)
25INTERACCIÓN 3D - MODELADO
2006/2007
MODELADO POLIGONAL
Normales
Vector normal Vector perpendicular a una
superficie en un punto No necesariamente
normalizado (vector unitario) Se suelen asociar
por vértice o por cara Se utilizan para los
cálculos de iluminación Se pueden definir
explícitamente o calcular automáticamente
26INTERACCIÓN 3D - MODELADO
2006/2007
MODELADO POLIGONAL
Atributos de las mallas poligonales
ccw Orientación de los polígonos SFBool
(TRUE) Counterclockwise (sentido contrario a las
agujas del reloj) Orientación de las normales de
los polígonos (si no se explicitan, es decir, se
calculan automáticamente) solid Eliminar caras
interiores SFBool (TRUE) Activa o desactiva el
backface culling y los cálculos de iluminación
en ambas caras de los polígonos
27INTERACCIÓN 3D - MODELADO
2006/2007
MODELADO POLIGONAL
Atributos de las mallas poligonales
convex Polígonos convexos SFBool (TRUE) Indica
si todos los polígonos son convexos Utilizado
para optimizar el render de la malla Polígono
convexo polígono plano, que no se interseca a sí
mismo y todos sus ángulos interiores son menores
de 180º
28INTERACCIÓN 3D - MODELADO
2006/2007
MODELADO POLIGONAL
Atributos de las mallas poligonales
creaseAngle Ángulo de plegado SFFloat
(0) Afecta a cómo se realiza la generación
automática de las normales Es el ángulo (en
radianes) a partir del cual se muestra una arista
dura. Las aristas con ángulos inferiores a este
valor, se consideran superficies suaves
29INTERACCIÓN 3D - MODELADO
2006/2007
REUTILIZACIÓN DE MODELOS
30INTERACCIÓN 3D - MODELADO
2006/2007
REUTILIZACIÓN DE MODELOS
Reutilización
Beneficios Mayor productividad en el
modelado Mejor aprovechamiento de recursos
(memoria, CPU, GPU, red, ...) Mayor rendimiento
en el render Técnicas de reutilización Copias Pro
totipado (PROTO/EXTERNPROTO) Referencias
(DEF/USE) Referencias externas (Inline) IMPORT/EXP
ORT
31INTERACCIÓN 3D - MODELADO
2006/2007
REUTILIZACIÓN DE MODELOS
Prototipos
Empaquetan conjuntos de nodos (y rutas entre
ellos), constituyendo un nuevo tipo de nodo con
ciertos parámetros configurables Caja
negra Encapsula los nodos internos al
prototipo Establece una interfaz estricta de
acceso al nodo Definición de un
prototipo Nombre Interfaz (campos y
eventos) Definición
32INTERACCIÓN 3D - MODELADO
2006/2007
REUTILIZACIÓN DE MODELOS
VRML V2.0 utf8 PROTO Lapiz field SFColor
colorlapiz 0.8 0.8 0.0 Group
children Shape appearance
Appearance material Material
diffuseColor IS colorlapiz
geometry Cylinder
Transform translation 0.0 2.0 0.0
children Shape
appearance Appearance material
Material diffuseColor IS
colorlapiz
geometry Cone
Lapiz colorlapiz 0 1 0
Prototipos. Ejemplo
PROTO
33INTERACCIÓN 3D - MODELADO
2006/2007
REUTILIZACIÓN DE MODELOS
VRML V2.0 utf8 Declaración del prototipo
externo Lapiz EXTERNPROTO Lapiz field
SFColor colorlapiz "prototipo_lapiz.wrl"
Inclusión del nodo tipo Lapiz Lapiz
colorlapiz 0.0 1.0 0.0
Prototipos. Ejemplo
EXTERNPROTO La interfaz debe ser un subconjunto
de la original No se incluyen valores por omisión
34INTERACCIÓN 3D - MODELADO
2006/2007
REUTILIZACIÓN DE MODELOS
Instancias o referencias
Al definir un nodo se le asigna un nombre
(DEF) Al volver a incluir el nodo se referencia
por su nombre (USE) Se evita duplicar elementos
(potencialmente grandes y complejos) Se puede
modificar su aspecto a través de transformaciones
35INTERACCIÓN 3D - MODELADO
2006/2007
REUTILIZACIÓN DE MODELOS
Referencias. Ejemplo
VRML V2.0 utf8 Group children
Transform translation 5 1.25 1.875
children DEF CAJA Shape
appearance Appearance material Material
geometry Box size 3.75 2.5 3.75
Transform
translation 5 1.25 1.875 children
USE CAJA
Group
Transf
Transf
Shape (CAJA)
36INTERACCIÓN 3D - MODELADO
2006/2007
REUTILIZACIÓN DE MODELOS
Referencias externas
VRML V2.0 utf8 Cosmo Worlds V2.0 Inline
url "coordenadas.wrl" Transform rotation 0
1 0 2.8 children Transform
translation 3 0 0 children Inline
url "cow.wrl"
Viewpoint position 4.36 2.62 7.89
orientation -0.37 0.92 0.09 0.55 fieldOfView
0.785398 description "Entrada"
Nodo Inline url MFString bboxCenter SFVec3f 0
0 0 bboxSize SFVec3f -1 1 1 load(1) SFBool TRU
E
(1) Campo de X3D, no existente en VRML97
37INTERACCIÓN 3D - MODELADO
2006/2007
REUTILIZACIÓN DE MODELOS
Referencias externas
Si la URL no se especifica completa (http//...),
se asume relativa al directorio del documento
actual Definir la envolvente (bounding box) de
la escena a incluir facilita el trabajo del
browser El momento de cargar el fichero puede
ser al inicio o cuando esté visible su bounding
box (dependiendo del browser). Si está soportado
el campo load (depende del perfil, componentes
y nivel de X3D utilizados), se puede indicar ese
momento En X3D, los ficheros incluidos en un
Inline deben declarar un subconjunto del perfil y
componentes declarados en el fichero global y a
un nivel no superior al de este La escena
incluida no está accesible para rutado o
instancias (DEF/USE)
38INTERACCIÓN 3D - MODELADO
2006/2007
REUTILIZACIÓN DE MODELOS
IMPORT/EXPORT
Forma definida en X3D (no existente en VRML97) de
acceder a los nodos de las escenas incluidas por
un nodo Inline Da acceso COMPLETO a los nodos
exportados, a diferencia de los prototipos que
declaran una interfaz limitada a determinados
campos IMPORT indica qué nodos del fichero
incluido estarán accesibles desde el namespace
del fichero contenedor EXPORT indica (en el
fichero incluido) qué nodos estarán disponibles
para ser importados desde los posibles ficheros
contenedores Los nodos importados no se pueden
instanciar mediante la palabra clave USE
39INTERACCIÓN 3D - MODELADO
2006/2007
REUTILIZACIÓN DE MODELOS
IMPORT/EXPORT. Ejemplo
Se ruta la salida de un interpolador de posición
a la traslación de un nodo Transform contenido en
el fichero referenciado a través del nodo Inline
DEF I1 Inline url escena.x3dv IMPORT
I1.rootTransform AS I1Root DEF PI
PositionInterpolator ... ROUTE
PI.value_changed TO I1Root.set_translation
40INTERACCIÓN 3D - MODELADO
2006/2007
JERARQUÍA DE TRANSFORMACIONES
41INTERACCIÓN 3D - MODELADO
2006/2007
JERARQUÍA DE TRANSFORMACIONES
Nodo Transform
Campos bboxCenter SFVec3f 0 0 0 bboxSize
SFVec3f -1 -1 -1 translation SFVec3f 0 0
0 rotation SFRotation 0 0 1 0 scale SFVec3f 1
1 1 scaleOrientation SFRotation 0 0 1
0 center SFVec3f 0 0 0 children MFNode
42INTERACCIÓN 3D - MODELADO
2006/2007
JERARQUÍA DE TRANSFORMACIONES
Nodo Transform
Orden de transformaciones 1. Escalado (no
uniforme, respecto a un punto arbitrario) 2.
Rotación (respecto a un punto y eje
arbitrarios) 3. Traslación El orden de
aplicación dentro de la jerarquía de nodos
Transform es de abajo hacia arriba
43INTERACCIÓN 3D - MODELADO
2006/2007
JERARQUÍA DE TRANSFORMACIONES
Transformaciones
Ejemplo Posición original
44INTERACCIÓN 3D - MODELADO
2006/2007
JERARQUÍA DE TRANSFORMACIONES
Transformaciones
Ejemplo Rotación traslación VRML V2.0
utf8 Transform translation 3 0 0 rotation 0
1 0 2.8 scale 1 1 1 children Transform
children Inline url "cow.wrl"
45INTERACCIÓN 3D - MODELADO
2006/2007
JERARQUÍA DE TRANSFORMACIONES
Transformaciones
Ejemplo Traslación rotación VRML V2.0
utf8 Transform rotation 0 1 0 2.8
children Transform translation 3 0 0
rotation 0 0 1 0 scale 1 1 1 children
Transform children Inline url
"cow.wrl"
46INTERACCIÓN 3D - MODELADO
2006/2007
JERARQUÍA DE TRANSFORMACIONES
Nodo Transform
Orden de transformaciones P' T C R SR
S -SR -C P
Transform translation T children
Transform translation C children
Transform rotation R children
Transform rotation SR
children Transform scale S
children Transform rotation -SR
children Transform
translation -C children ...
Transform center C rotation R scale S
scaleOrientation SR translation T
children ...
47INTERACCIÓN 3D - MODELADO
2006/2007
OPTIMIZACIÓN
48INTERACCIÓN 3D - MODELADO
2006/2007
OPTIMIZACIÓN
Billboards
Billboard (nodo grupo) Campos children
MFNode axisOfRotation SFVec3f 0 1
0 bboxCenter SFVec3f 0 0 0 bboxSize SFVec3f -1
1 1 NOTA Si el campo axisOfRotation es (0 0
0), se rota libremente hacia la cámara
49INTERACCIÓN 3D - MODELADO
2006/2007
OPTIMIZACIÓN
Niveles de detalle
LOD (level of detail) Campos level MFNode
center SFVec3f 0 0 0 range MFFloat
50INTERACCIÓN 3D - MODELADO
2006/2007
RESUMEN
Elementos de modelado Modelado
poligonal Reutilización de modelos Jerarquía de
transformaciones Optimización