lordserpent 0 #1 Posted January 27, 2007 i need help with translation of a word .doc wish site should i use? Quote Share this post Link to post Share on other sites
lordserpent 0 #2 Posted January 27, 2007 V3D - Especificación del FormatoEl fichero V3D almacena una variedad de datos en forma de “chunksâ€, incluyendo una cabecera que describe los contenidos del fichero. Descripción de los Chunks Los chunks comienzan por un identificador de 32 bits seguido por un entero sin signo que declara el tamaño de los datos que siguen a continuación. Las cadenas de texto dentro de los chunks van precedidas por un entero sin signo de 16 bits que indica el tamaño de dicha cadena. A fecha de creación del documento los chunks definidos son los siguientes: Nombre del Chunk ID Descripción ID_HEADER 0xCABE Cabecera ID_MTLLIST 0x1000 Lista de materiales ID_MULTIMATERIAL 0x1100 Lista de submateriales ID_SUBMAT 0x1110 Material ID_GEOMOBJECT 0x2000 Objeto geométrico (estático o dinámico) ID_VERTEXLIST 0x2100 Lista de vértices en cualquier FVF ID_INDEXLIST 0x2300 Lista de indices de 16 o 32 bits ID_SUBSETLIST 0x2400 Lista de subsets ID_ANIMMESH 0x6000 Malla animada del modelo geométrico ID_POSEINITIAL 0x7000 Pose inicial para los modelos dinámicos (para q puedan ser pintados sin animación) ID_CAMERAOBJECT 0x3000 Objeto Cámara ID_LIGHTOBJECT 0x4000 Objeto Luz ID_HELPEROBJECT 0x5000 Objeto Helper ID_TERRAINOBJECT 0x8000 Objeto Terreno ID_OCTTREE 0x8100 Octree ID_ANIM_CAMERA 0x9000 Animación de cámara ID_END 0x00FF Fin del fichero V3D Chunk de Cabecera ( ID_HEADER ) El chunk de cabecera comienza con dos cadenas de texto, la primera es la descripción del fichero y suele contener “V3D_File†y la segunda es el nombre del desarrollador o creador del fichero, suele tener el valor “Ruboâ€. Tras esto, se encuentran los datos de la estructura de cabecera V3D, que contiene los siguientes campos: Tipo de Dato Nombre del campo Descripción DWORD Version Versión del fichero * 100 CRealColor Ambient Color ambiente con las componentes RGBA en rango 0.0-1.0 CRealColor BackGround Color de fondo con las componentes RGBA en rango 0.0-1.0 UINT nOriginalVertices Número total de vértices originales (sin duplicar) UINT nVertices Número total de vértices (incluyendo duplicados) UINT nFaces Número total de caras UINT nObjects Número total de objetos con geometrÃa UINT nLights Número total de luces UINT nCameras Número total de camaras UINT nHelpers Número total de helpers UINT nNodes Número total de nodos UINT nTextures Número total de texturas UINT nMultiMtl Número total de multimateriales UINT nSubMaterials Número total de submateriales UINT nRootChild Número de hijos del nodo raiz UINT bHasAnimation Indica si el fichero contiene datos de animación o no UINT AnimRangeStart Primer tick del rango de animación (en ticks de 3DS Max ) UINT AnimRangeEnd Último tick del rango de animación (en ticks de 3DS Max) UINT TicksPerFrame Número de ticks por frame de 3DS Max UINT StartFrame Frame inicial de la animación UINT EndFrame Frame final de la animación UINT Frames Número de frames de animación UINT fps Frames por Segundo de la animación eExportMode ExportMode Modo de Exportación (ver abajo) CVector3 GlobalMinPoint Punto mÃnimo de la Bounding Box Global CVector3 GlobalMaxPoint Punto máximo de la Bounding Box Global eModeTM TransformMode Modo de Transformación (ver abajo) UINT ConstTicksPerSec Constante de Ticks por degundo float TimeAniSecs Duración de la animación en segundos Notas: - La estructura de cabecera contiene 52 bytes adicionales para su uso futuro. - eExportMode define los siguientes modos de exportación: o EM_STATIC, exporta objetos no animados. o EM_DYNAMIC, exporta objetos animados. o EM_ONLYANIMATION, exporta únicamente la animación. o EM_CAM_ANIMATION, exporta únicamente la animación de cámara. o EM_CUSTOM, exporta datos personalizados. - eModeTM define los siguientes modos de transformación: o MODETM_NOOFFSET, las matrices no contienen la OffsetTM (matriz de desplazamiento). o MODETM_OFFSET, las matrices contienen la OffsetTM (matriz de desplazamiento). Chunk de Lista de Materiales ( ID_MTLLIST ) Este chunk contiene un entero sin signo de 32 bits que indica el número de chunks de multimateriales que contiene y, detrás de él, dichos chunks. Chunk de Lista de Submateriales ( ID_MULTIMATERIAL ) Este chunk esta compuesto de dos enteros sin signo, el número de submaterial y el número de materiales que contiene, seguidos por los chunks de los submateriales en si. En caso de que alguno de los submateriales sea erroneo, se grabara un material NULO. Chunk de Submaterial ( ID_SUBMAT ) El primer valor que encontramos es un byte que corresponde a un booleano que indica si el submaterial es valido o no. Si es valido, encontraremos un entero con el indice de submaterial seguido por una cadena con el nombre del mismo. A continuación esta grabada una estructura V3DFMT::SMtlInfo ( definida en typesV3D.h ). Detrás, los siguientes datos: bool bTwoSided // Doble Cara bool bAlpha // Alpha Presente DWORD SrcBlend // Source Blending DWORD DstBlend // Dest Blending bool bMask // Mascaras mas 4 DWORDS reservados para uso futuro. Completa el chunk la información sobre las texturas. Esto incluye un DWORD con el numero de texturas ( pueden ser 3, Refracción, reflexión y difuso) y las descripciones correspondientes. Las descripciones de las texturas vienen en el siguiente formato: UINT numero de textura dentro de 3DS Max UINT enumerado de tipo de textura V3DFMT::eMapID float con el valor de cantidad de textura entre 0.0 y 1.0 UINT enumerado eMtlMode con el modo de textura (suele valer MM_PLAINTEXTURE ) UINT con el número de bitmaps Seguido de la información de los bitmaps: UINT stage de la textura UINT canal de mapping asociado a la textura Cadena con el nombre de la textura y el path completo Cadena con el nombre sin path de la textura. Si se intentó exportar algo que no era un bitmap, las cadenas estarán vacias. Chunk de Objeto Geométrico ( ID_GEOMOBJECT ) Este chunk se compone de los siguientes datos: DWORD Type , 0 si es un objeto estatico o 1 si es dinamico o animación. DWORD Properties, propiedades del objeto. DWORD[3], 3 DWORD reservados para uso futuro Cabecera del Objeto: DWORD Tipo de Nodo, en este caso V3DFMT::ID_GEOMOBJECT UINT Children, numero de hijos exportables de este nodo UINT Idx, Ãndice del objeto geométrico Cadena con el nombre del Nodo Cadena con el nombre del padre del nodo, vacia si no tiene o es Root V3DFMT::STransform Transforms, 3 matrices (Vertex, Parent2World y World) , si las tres matrices estan a identidad, el nodo era NULL al exportar. CRealColor WireColor, RGBA entre 0.0 y 1.0, detallando el color del wireframe Si el modo de exportacion no es ONLY_ANIMATION se exportan a continuación los siguientes datos: CAlignBox bbox, Bounding box del objeto CSphere bsphere, Bounding sphere del objeto Int iMultiMtlID, identificador de multi-material de la malla Y los chunks de Vértices, Caras y Subsets. ( ver documentación de dichos chunks ) Chunk de Vertices ( ID_VERTEXLIST ) Este chunk se compone de: UINT fvf, formato de los vértices UINT VertexSize, tamaño del vértice UINT nVertices, numero de vértices. Seguido de un volcado de los vértices( VertexSize * nVertices bytes ). Chunk de Caras ( ID_INDEXLIST ) Este chunk se compone de: UINT uIndexSize, tamaño en bytes de los indices ( 2 o 4 ) UINT nIndices, numero de indices Seguido de un volcado de los indices ( uIndexSize * nIndices bytes ). Chunk de subsets ( ID_SUBSETLIST ) Este chunk se compone de: UINT uSubsets, numero de subsets Por cada subset: UINT firstVertex, Indice de primer vertice del subset UINT numVertices, Numero de vertices del subset UINT startIdx, Primer Indice del subset UINT numPrimitives, Numero de primitivas del subset UINT subMtlID, Indice del submaterial Chunk de Malla Animada ( ID_ANIMMESH ) Este chunk se compone de los siguientes datos: UINT StartFrame, frame inicial de la animación UINT EndFrame, frame final de la animación UINT Frames, número de frames de la animación bool FrameDeReferencia, indica si solo hay un frame porque la animación no cambia. A continuación, por cada frame aparecen los siguientes datos: CMatrix4x4 vertexTM, matriz de transformación CAlignBox bbox, Bounding box CSphere bsphere, Bounding sphere DWORD fvf, formato de los vertices UINT VertexSize, tamaño del vértice UINT nVertices, número de vértices seguido por el volcado de los vértices ( VertexSize * nVertices bytes ). Chunk de Pose Inicial ( ID_POSEINITIAL ) Este chunk es prácticamente idéntico al anterior pero con menos datos. CMatrix4x4 vertexTM, matriz de transformación CAlignBox bbox, Bounding box CSphere bsphere, Bounding sphere DWORD fvf, formato de los vertices UINT VertexSize, tamaño del vértice UINT nVertices, número de vértices A continuación va el volcado de los vértices ( VertexSize * nVertices bytes ). Chunk de Objeto Cámara ( ID_CAMERAOBJECT ) Este chunk está organizado de la siguiente manera: DWORD Tipo de Nodo, en este caso V3DFMT::ID_CAMERAOBJECT UINT Children, numero de hijos exportables de este nodo UINT Idx, Ãndice del objeto cámara Cadena con el nombre del Nodo Cadena con el nombre del padre del nodo, vacia si no tiene o es Root. V3DFMT::STransform CamTransform, estructura con 3 CMatrix4x4, las matrices pueden ser identidad en caso de que al exportar el nodo fuera NULL. V3DFMT::STransform TgtTransform, igual que la anterior pero con las matrices del target. Si la cámara no tiene target, esta información no se graba. V3DFMT::SCameraSettings CamSettings, estructura datos de la cámara: float NearRange; // Rango cercano float FarRange; // Rango lejano float FOV; // Angulo (Field Of Vision) del ejeX float Roll; // Angulo Roll de la cámara float TargetDistance; // Distancia del target Chunk de Objeto Luz ( ID_LIGHTOBJECT ) DWORD Tipo de Nodo, en este caso V3DFMT::ID_LIGHTOBJECT UINT Children, numero de hijos exportables de este nodo UINT Idx, Ãndice del objeto luz Cadena con el nombre del Nodo Cadena con el nombre del padre del nodo, vacia si no tiene o es Root. V3DFMT::STransform LightTransform, estructura con 3 CMatrix4x4, las matrices pueden ser identidad en caso de que al exportar el nodo fuera NULL. V3DFMT::STransform TgtTransform, igual que la anterior pero con las matrices del target. Si la luz no tiene target, esta información no se graba. V3DFMT::SLightSettings LightSettings, estructura datos de la luz: DWORD Type; // Tipo de luz CRealColor DiffuseColor; // Especifica el color difusse del material (0 - 1.0) float Intensity; // El multiplicador aplicado al color float HotSize; // El hotspot size en radianes float FallSize; // El HotSpot fallof en radianes int UseNearAtten; // se utiliza la atenuacion near? float NearAttenStart; // Near attenuation start float NearAttenEnd; // Near attenuation end int UseFarAtten; // se utiliza la atenuacion far float FarAttenStart; // far attenuation start float FarAttenEnd; // far attenuation end float Aspect; // Aspect ratio de la luz BOOL Overshoot; // TRUE si la luz soprta overshoot BOOL Shadow; // TRUE si las sombras estan activadas BOOL Enabled; // TRUE si las luz esta ON BOOL AffectDiffuse; // TRUE si affect diffuse is on BOOL AffectSpecular; // TRUE si affect Specular is on Chunk de Objeto Helper ( ID_HELPEROBJECT ) DWORD Tipo de Nodo, en este caso V3DFMT::ID_HELPEROBJECT UINT Children, numero de hijos exportables de este nodo UINT Idx, Ãndice del objeto helper Cadena con el nombre del Nodo Cadena con el nombre del padre del nodo, vacia si no tiene o es Root. V3DFMT::STransform HelperTransform, estructura con 3 CMatrix4x4, las matrices pueden ser identidad en caso de que al exportar el nodo fuera NULL. Cadena ClassName, cadena que contiene el nombre de la clase de objeto helper. CVector3 LocalBBMin, Punto mÃnimo de la Bounding box local. CVector3 LocalBBMax, Punto máximo de la Bounding box local. CVector3 WorldBBMin, Punto mÃnimo de la Bounding box en coordenadas de mundo. CVector3 WorldBBMax, Punto máximo de la Bounding box en coordenadas de mundo. Chunk de Objeto Terreno ( ID_TERRAINOBJECT ) V3DFMT::STerrainObject descTerrain, Estructura descriptora de terreno CVector3 Origin; // Origen del terreno CVector2 Size; // Tamaño del terreno UINT CellsX; // Celdas horizontales UINT CellsY; // Celdas verticales (z) CVector2 CellSize; // Tamaño de una celda UINT uMtlID, ID del material del terreno A continuación deben venir los chunks de VERTEXLIST, INDEXLIST y/o SUBSETLIST. Chunk de Octtree ( ID_OCTTREE ) Este chunk contiene los datos que pertenecen a la clase CTreeNode. La clase implementa los metodos de grabación y lectura de sus datos, que son los siguientes: UINT nChildren, numero de hijos CAlignBox BBox, Bounding Box CSPhere BSphere, Bounding Sphere UINT nSubsets, numero de subsets Por cada SubSet, se graba un UINT con su indice. Por cada Hijo, se repite este proceso. Chunk de Animación de Cámara ( ID_ANIM_CAMERA ) Este chunk se compone de los siguientes datos: UINT StartFrame, frame inicial de la animación UINT EndFrame, frame final de la animación UINT Frames, número de frames de la animación V3DFMT::SCameraSettings CamSettings, estructura datos de la cámara: float NearRange; // Rango cercano float FarRange; // Rango lejano float FOV; // Angulo (Field Of Vision) del ejeX float Roll; // Angulo Roll de la cámara float TargetDistance; // Distancia del target Para cada frame se exportan los siguientes datos: V3DFMT::STransform CamTransform, Matrices de transformación de la cámara. V3DFMT::SQuatTransform AbsQuat, Quaternion absoluto V3DFMT::SQuatTransform RelQuat, Quaternion relative al primer frame V3DFMT::STransform TgtTransform, Matrices de transformación del target. this the text a bit long he it is spanish Quote Share this post Link to post Share on other sites
Aphte 1 #3 Posted January 28, 2007 bable fish or something like that is a good translator Quote Share this post Link to post Share on other sites
Sinophile 41 #4 Posted January 28, 2007 Next time give us a URL dumbfuck. http://babelfish.altavista.com/ Quote Share this post Link to post Share on other sites
lordserpent 0 #5 Posted January 28, 2007 okej Quote Share this post Link to post Share on other sites