X

From GICL Wiki
Revision as of 01:17, 20 May 2009 by MinhNguyen (Talk | contribs)

Jump to: navigation, search

Title(s): -Direct3D model with .x files

Version ID: - Version 11

Date released: - July 2008

Date: - September 1995

Creator(s): Servan Keondjian

Contributor(s): - Microsoft, RenderMorphics Relationships: - In February 1995, Microsoft bought RenderMorphics and brought its CEO Keondjian on board to implement a 3D graphics engine for Windows 95. This resulted in the first version of Direct3D.

  • Previous Version(s): - Reality Lab
  • Contains: - .X files
  • Syntax Format(s): -Binary Encoding, Text Encoding, Templates
  • Family Format(s): - None

Description: - X files provide a template-driven format that enables the storage of meshes, textures, animations, and user-definable objects. Support for animation sets enables you to store predefined paths for playback in real time. Instancing and hierarchies are also supported. Instancing enables multiple references to an object, such as a mesh, while storing its data only once per file. Hierarchies are used to express relationships between data records.

History: - In 1992, Servan Keondjian started a company named RenderMorphics, which developed a 3D graphics API named Reality Lab, which was used in medical imaging and CAD software. Two versions of this API were released. Microsoft bought RenderMorphics in February 1995, bringing Keondjian on board to implement a 3D graphics engine for Windows 95. This resulted in the first version of Direct3D that shipped in DirectX 2.0 and DirectX 3.0.

Example(s): Example Template Example

Drawing a triangle in Direct3D:

// A 3-vertex polygon definition
D3DLVERTEX v[3];
// Vertex established
v[0]=D3DLVERTEX( D3DVECTOR(0.f, 5.f, 10.f), 0x00FF0000, 0, 0, 0 );
// Vertex established
v[1]=D3DLVERTEX( D3DVECTOR(0.f, 5.f, 10.f), 0x0000FF00, 0, 0, 0 );
// Vertex established
v[2]=D3DLVERTEX( D3DVECTOR(0.f, 5.f, 10.f), 0x000000FF, 0, 0, 0 );
// Function call to draw the triangle
pDevice->DrawPrimitive( D3DPT_TRIANGLELIST, D3DFVF_LVERTEX, v, 3, 0 );

Identifier: - A URL or other identifier that refers to the engineering format.

Documentation: Documentation Template - Information in general about the engineering format.

File Extensions: - x

Applications: - Windows versions such as vista, 98,...

Magic numbers: - Unique identifying characters at the beginning of files for this engineering format.

Format(s): - The MIME file types.

Rights: - The name or type of the license for the engineering format. Examples: BSD-style license, Apache License, Proprietary license

Sustainability Factors: - Facts about the sustainability of this particular engineering format.

  • Standardization: - Information regarding standardization attempts with this format.
  • Adoption: - Information about how this format has been adopted by other organizations.
    • Licensing and patent claims: - Any licenses or patent claims that the engineering format makes.
  • Self-documentation: - Any self-documentation capabilities of the format.
  • External dependencies: - Anything that the format depends on outside of its control to function.
  • Technical protection considerations: - Any considerations that are necessary when it comes to technical protection.

Typical use: - Keywords that describe the format's typical use. Examples: CAD and CAM

File classification: - Specific properties that pertain to this engineering format.

  • Type {Binary, Text}: - The type of file, choices are binary and text.
  • Raster data: - Section describes whether or not the engineering format supports raster data.
    • Raster data 2D: - Can the format support 2D raster data? Example: A format that can contain 2D pixelated data supports 2D raster data.
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
    • Raster data 3D: - Can the format support 3D raster data? Example: A format that can contain 2D pixelated data of a 3D model supports 3D raster data.
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
  • Geometric representation: - Section describes whether or not the engineering format supports geometric representations.
    • Implicit representation: - Section describes whether or not the engineering format supports implicit representations.
      • Implicit surfaces: - Can the format support implicit surfaces? Example: A format that can contain surfaces that are generated with mathematical equations that contain the independent variables x, y, and z, like x^2 + y^2 + z^2 * R^2 = 0, supports implicit surfaces.
        • Is Supported: - Is the feature supported in the engineering format?
        • Description: - This field is used to describe the support or lack of support of the feature.
      • Implicit curves: - Can the format support implicit curves? Example: A format that can contain curves that are generated with mathematical equations that contain the independent variables x, y, and z, supports implicit curves.
        • Is Supported: - Is the feature supported in the engineering format?
        • Description: - This field is used to describe the support or lack of support of the feature.
      • Point set: - Can the format support point sets? Example: A format that supports surfaces and lines that are generated by points that form triangles supports point sets.
        • Is Supported: - Is the feature supported in the engineering format?
        • Description: - This field is used to describe the support or lack of support of the feature.
    • Mesh: - Section describes whether or not the engineering format supports mesh.
      • Manifold surface meshes: - Can the format support manifold surface meshes? Example: A format that supports surfaces that are mathematical spaces in which every point has a neighborhood which resembles Euclidean space
        • Is Supported: - Is the feature supported in the engineering format?
        • Description: - This field is used to describe the support or lack of support of the feature.
      • Manifold volume meshes: - Can the format support manifold volume meshes? Example: A format that supports volumes that are mathematical spaces in which every point has a neighborhood which resembles Euclidean space
        • Is Supported: - Is the feature supported in the engineering format?
        • Description: - This field is used to describe the support or lack of support of the feature.
      • Non-manifold meshes: - Can the format support non-manifold meshes? Example: A format that supports meshes that are not manifolds
        • Is Supported: - Is the feature supported in the engineering format?
        • Description: - This field is used to describe the support or lack of support of the feature.
    • Parametric representation: - Section describes whether or not the engineering format supports parametric representations.
      • Parametric surfaces: - Can the format support parametric surfaces? Example: A format that can contain surfaces that are generated with parametric equations supports parametric surfaces.
        • Is Supported: - Is the feature supported in the engineering format?
        • Description: - This field is used to describe the support or lack of support of the feature.
      • Parametric curves: - Can the format support parametric curves? Example: A format that can contain curves that are generated with parametric equations supports parametric curves.
        • Is Supported: - Is the feature supported in the engineering format?
        • Description: - This field is used to describe the support or lack of support of the feature.
    • Contour sets: - Can the format support contour sets?
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
    • NURBS: - Can the format support Non Uniform Rational Basis Splines? Examples: The engineering formats IGES, STEP, ACIS, and PHIGS
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
  • Multi-resolution models: - Can the format support models with multiple resolutions? Examples: A format that supports a highly detailed and lowly detailed model simultaneously supports multi-resolution models.
    • Is Supported: - Is the feature supported in the engineering format?
    • Description: - This field is used to describe the support or lack of support of the feature.
  • Dynamics: - Section describes whether or not the engineering format supports dynamics.
    • Kinematics: - Can the format support kinematics? Example: Does the format allow model parts to rotate?
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
    • Assembly: - Can the format support assembly? Example: Does the format allow the assembly instructions to be explicitly specified with a model?
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
    • Force(s): - Can the format support forces? Example: Does the format support acceleration forces?
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
  • Boundary representation - Can the format support models with boundary representations?
    • Manifold surface boundary representations: - Can the format support manifold surface boundary representations? Example: The engineering format STEP
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
    • Manifold volume boundary representations: - Can the format support manifold volume boundary representations? Example: The engineering format STEP
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
    • Non-manifold boundary representations: - Can the format support non-manifold boundary representations? Example: The engineering format STEP
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
  • Material transparency: - Can the format support transparency? Example: Does the format allow models to have a clear window in a car?
    • Is Supported: - Is the feature supported in the engineering format?
    • Description: - This field is used to describe the support or lack of support of the feature.

References: - A list of references regarding any aspects of this engineering format; any reading material supplemental to this page.