Lightwave object

From GICLWiki
(Difference between revisions)
Jump to: navigation, search
m
 
(18 intermediate revisions by one user not shown)
Line 1: Line 1:
 
[[Category:Engineering format]]
 
[[Category:Engineering format]]
'''Title(s):''' [[Title::Lightwave object]]
+
'''Title(s):''' [[Title::LightWave object]]
  
 
'''Version ID:''' [[Version ID::NewTek LightWave 3D Object File Format]]
 
'''Version ID:''' [[Version ID::NewTek LightWave 3D Object File Format]]
  
'''Date released:''' Most recent format specs dated[[Version Date released::October 16, 1996]]
+
'''Date released:''' Most recent format specs dated [[Version Date released::October 16, 1996]]
  
 
'''Date:'''  [[Format Date::1990]]
 
'''Date:'''  [[Format Date::1990]]
Line 16: Line 16:
 
* '''Previous Version(s):''' Inherited from Videoscape 3D and Aegis Modeler 3D on the Commodore Amiga, both circa. 1988.
 
* '''Previous Version(s):''' Inherited from Videoscape 3D and Aegis Modeler 3D on the Commodore Amiga, both circa. 1988.
  
* '''Contains:''' [[Contains::none]]
+
* '''Contains:''' none
  
* '''Syntax Format(s):''' LightWave 3D objects are stored as IFF files with a FORM type of LWOB. A FORM LWOB must contain a PNTS chunk, a SRFS chunk, and a POLS chunk.  There may be zero or more SURF chunks anywhere in the file and up to one CRVS chunk. The POLS and CRVS chunks must be preceded by the PNTS chunk and the SRFS chunk. LightWave 2.0 also has the ability to save and load surface descriptions as FORM LWOB
+
* '''Syntax Format(s):''' LightWave 3D objects are stored as IFF files with a FORM type of LWOB. A FORM LWOB must contain a PNTS chunk, a SRFS chunk, and a POLS chunk.  There may be zero or more SURF chunks anywhere in the file and up to one CRVS chunk. The POLS and CRVS chunks must be preceded by the PNTS chunk and the SRFS chunk. LightWave 2.0 also has the ability to save and load surface descriptions as FORM LWOB files that contain only a SURF chunk. Details and further explanation found here: [http://local.wasp.uwa.edu.au/~pbourke/dataformats/lightwave/ Lightwave 3D Object File Format, 11/28/1994]
files that contain only a SURF chunk.
+
  
* '''Family Format(s):''' [[Family Format::none]]
+
* '''Family Format(s):''' none
  
 
'''Description:''' LightWave 3D objects are stored on disk as 3D meshes consistsing of points, polygons (which can be faces, curves or patches), and surfaces. Files can contain a single connected mesh or several disjoint meshes describing a single logical object. An object file may also contain one or more surface definitions with no mesh.
 
'''Description:''' LightWave 3D objects are stored on disk as 3D meshes consistsing of points, polygons (which can be faces, curves or patches), and surfaces. Files can contain a single connected mesh or several disjoint meshes describing a single logical object. An object file may also contain one or more surface definitions with no mesh.
Line 27: Line 26:
 
'''History:''' A detailed account, from 1988 to 2009: [http://www.lightwiki.com/LightWave_History LightWave History].
 
'''History:''' A detailed account, from 1988 to 2009: [http://www.lightwiki.com/LightWave_History LightWave History].
  
'''Example(s):''' [[Example::Example Template]] Detailed object file example found here: [http://www.sandbox.de/osg/lightwave.htm#S5 LightWave Object File Example]
+
'''Example(s):''' Detailed object file example found here: [http://www.sandbox.de/osg/lightwave.htm#S5 LightWave Object File Example]
  
 +
'''Identifier:''' none.
  
'''Identifier:''' [[Identifier::]] none.
+
'''Documentation:''' Documentation found here: [http://www.sandbox.de/osg/lightwave.htm LightWave Object File Format]
  
'''Documentation:''' [[Documentation::Documentation Template]] Documentation found here: [http://www.sandbox.de/osg/lightwave.htm#S5 LightWave Object File Format]
+
'''File Extensions:''' [[File Extension::.lwo]]
  
'''File Extensions:''' [[File Extension::]] - Extensions of the engineering format, excluding the dot.
+
'''Applications:'''  
  
'''Applications:''' - Applications that the engineering format uses.
+
* '''Native application(s):''' NewTek LightWave 3D
  
* '''Native application(s):''' [[Native Application::Engineering Format Application Template]] - Applications which are primarily designed to specifically run this engineering format.
+
* '''Interoperable applications:''' LightWave 3D has a broad selection of plugins.
  
* '''Interoperable applications:''' [[Interoperable Application::Engineering Format Application Template]] - Applications which can read or write files of this format, but are not native applications for the format.
+
'''Magic numbers:''' n/a
  
'''Magic numbers:''' [[Magic Numbers::]] - Unique identifying characters at the beginning of files for this engineering format.
+
'''Format(s):''' image/x-lw
  
'''Format(s):''' [[Format::]] image/x-lw
+
'''Rights:''' Proprietary license
  
'''Rights:''' [[Rights::]] - The name or type of the license for the engineering format. Examples: BSD-style license, Apache License, Proprietary license
+
'''Sustainability Factors:''' n/a
  
'''Sustainability Factors:''' - Facts about the sustainability of this particular engineering format.
+
* '''Standardization:''' n/a
  
* '''Standardization:''' [[Standardization::]] - Information regarding standardization attempts with this format.
+
* '''Adoption:''' n/a
  
* '''Adoption:''' [[Adoption::]] - Information about how this format has been adopted by other organizations.
+
** '''Licensing and patent claims:''' n/a
  
** '''Licensing and patent claims:''' [[Licensing and patent claims::]] - Any licenses or patent claims that the engineering format makes.
+
* '''Self-documentation:''' n/a
  
* '''Self-documentation:''' [[Self-documentation::]] - Any self-documentation capabilities of the format.
+
* '''External dependencies:''' n/a
  
* '''External dependencies:''' [[External dependencies::]] - Anything that the format depends on outside of its control to function.
+
* '''Technical protection considerations:''' n/a
  
* '''Technical protection considerations:''' [[Technical protection considerations::]] - Any considerations that are necessary when it comes to technical protection.
+
'''Typical use:''' 3D Design
 
+
'''Typical use:''' [[Typical use::]] - Keywords that describe the format's typical use. Examples: CAD and CAM
+
  
 
'''File classification:'''
 
'''File classification:'''
* '''Type {Binary, Text}:''' [[File Classification Type::]] - The type of file, choices are binary and text.
+
* '''Type {Binary, Text}:''' Binary
* '''Raster data:''' - Section describes whether or not the engineering format supports raster data.
+
* '''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.
+
** '''Raster data 2D:'''  
*** '''Is Supported:''' [[File Classification Raster Data 2D - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' true
*** '''Description:''' [[File Classification Raster Data 2D - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:'''  
** '''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.
+
** '''Raster data 3D:'''
*** '''Is Supported:''' [[File Classification Raster Data 3D - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' true
*** '''Description:''' [[File Classification Raster Data 3D - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:'''  
* '''Geometric representation:''' - Section describes whether or not the engineering format supports geometric representations.
+
* '''Geometric representation:'''
** '''Implicit representation:''' - Section describes whether or not the engineering format supports implicit representations.
+
** '''Implicit representation:'''
*** '''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.
+
*** '''Implicit surfaces:'''  
**** '''Is Supported:''' [[File Classification Implicit Surfaces - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' true
**** '''Description:''' [[File Classification Implicit Surfaces - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:''' The SRFS chunk contains a list of the names of all the surfaces in an object (note that in LightWave 3D terminology, the word "surface" is defined as a set of attributes that describe the color and shading characteristics of a group of polygons). Each surface name appears as a null-terminated character string. If the length of the string (including the null) is odd, an extra null byte is added. Surface names should be read from the file until as many bytes as the chunk size specifies have been read.
*** '''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.
+
*** '''Implicit curves:'''
**** '''Is Supported:''' [[File Classification Implict Curves - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' true
**** '''Description:''' [[File Classification Implicit Curves - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:''' The CRVS chunk contains a list of all the spline curves in an object. Each entry consists of a short integer specifying the number of vertices in a curve followed by that many short integers specifying the vertices themselves in sequential order, followed by a short integer specifying which surface is used by the curve, followed by another short integer specifying bit-flags associated with the curve.  If bit zero is set then the first point is a continuity control point, and if bit one is set then the last point is.  The point and surface indices are as they are in the POLS chunk, except that curves cannot have details.  Curves should be read from the file until as many bytes as the chunk size specifies have been read.
*** '''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.
+
*** '''Point set:'''
**** '''Is Supported:''' [[File Classification Point Set - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' true
**** '''Description:''' [[File Classification Point Set - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:''' The PNTS chunk contains a list of the X, Y, and Z coordinates of all the points in an object.  Each coordinate is stored as a four byte floating point number in IEEE format.  Therefore, the number of points in an object can be determined by dividing the size in bytes of the PNTS chunk by 12.
** '''Mesh:''' - Section describes whether or not the engineering format supports mesh.
+
** '''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
+
*** '''Manifold surface meshes:'''
**** '''Is Supported:''' [[File Classification Mainfold Surface Meshes - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' true
**** '''Description:''' [[File Classification Manifold Surface Meshes - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:''' n/a
*** '''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
+
*** '''Manifold volume meshes:'''
**** '''Is Supported:''' [[File Classification Manifold Volume Meshes - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' n/a
**** '''Description:''' [[File Classification Manifold Volume Meshes - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:'''  
*** '''Non-manifold meshes:''' - Can the format support non-manifold meshes? Example: A format that supports meshes that are not manifolds
+
*** '''Non-manifold meshes:'''
**** '''Is Supported:''' [[File Classification Non-manifold Meshes - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' n/a
**** '''Description:''' [[File Classification Non-manifold Meshes - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:'''
** '''Parametric representation:''' - Section describes whether or not the engineering format supports parametric representations.
+
** '''Parametric representation:'''
*** '''Parametric surfaces:''' - Can the format support parametric surfaces? Example: A format that can contain surfaces that are generated with parametric equations supports parametric surfaces.
+
*** '''Parametric surfaces:'''
**** '''Is Supported:''' [[File Classification Parametric Surfaces - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' n/a
**** '''Description:''' [[File Classification Parametric Surfaces - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:'''
*** '''Parametric curves:''' - Can the format support parametric curves? Example: A format that can contain curves that are generated with parametric equations supports parametric curves.
+
*** '''Parametric curves:'''
**** '''Is Supported:''' [[File Classification Parametric Curves - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' n/a
**** '''Description:''' [[File Classification Parametric Curves - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:'''
** '''Contour sets:''' - Can the format support contour sets?
+
** '''Contour sets:'''
*** '''Is Supported:''' [[File Classification Contour Sets - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' n/a
*** '''Description:''' [[File Classification Contour Sets - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:'''
** '''NURBS:''' - Can the format support Non Uniform Rational Basis Splines? Examples: The engineering formats IGES, STEP, ACIS, and PHIGS
+
** '''NURBS:'''
*** '''Is Supported:''' [[File Classification NURBS - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' true
*** '''Description:''' [[File Classification NURBS - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:'''
* '''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.
+
* '''Multi-resolution models:'''
** '''Is Supported:''' [[File Classification Multi-resolution Models - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Is Supported:''' n/a
** '''Description:''' [[File Classification Multi-resolution Models - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Description:'''  
* '''Dynamics:''' - Section describes whether or not the engineering format supports dynamics.
+
* '''Dynamics:'''
** '''Kinematics:''' - Can the format support kinematics? Example: Does the format allow model parts to rotate?
+
** '''Kinematics:'''
*** '''Is Supported:''' [[File Classification Kinematics - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' true
*** '''Description:''' [[File Classification Kinematics - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:''' n/a
** '''Assembly:''' - Can the format support assembly? Example: Does the format allow the assembly instructions to be explicitly specified with a model?
+
** '''Assembly:'''
*** '''Is Supported:''' [[File Classification Assembly - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' n/a
*** '''Description:''' [[File Classification Assembly - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:'''  
** '''Force(s):''' - Can the format support forces? Example: Does the format support acceleration forces?
+
** '''Force(s):'''
*** '''Is Supported:''' [[File Classification Force - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' n/a
*** '''Description:''' [[File Classification Force - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:'''
* '''Boundary representation''' - Can the format support models with boundary representations?
+
* '''Boundary representation'''
** '''Manifold surface boundary representations:''' - Can the format support manifold surface boundary representations? Example: The engineering format STEP
+
** '''Manifold surface boundary representations:'''
*** '''Is Supported:''' [[File Classification Manifold Surface Boundary Representation - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' n/a
*** '''Description:''' [[File Classification Manifold Surface Boundary Representation - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:'''
** '''Manifold volume boundary representations:''' - Can the format support manifold volume boundary representations? Example: The engineering format STEP
+
** '''Manifold volume boundary representations:'''
*** '''Is Supported:''' [[File Classification Manifold Volume Boundary Representation - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' n/a
*** '''Description:''' [[File Classification Manifold Volume Boundary Representation - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:'''
** '''Non-manifold boundary representations:''' - Can the format support non-manifold boundary representations? Example: The engineering format STEP
+
** '''Non-manifold boundary representations:'''
*** '''Is Supported:''' [[File Classification Non-manifold Boundary Representation - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' n/a
*** '''Description:''' [[File Classification Non-manifold Boundary Representation - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:'''
* '''Material transparency:''' - Can the format support transparency? Example: Does the format allow models to have a clear window in a car?
+
* '''Material transparency:'''
** '''Is Supported:''' [[File Classification Material Transparency - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Is Supported:''' true
** '''Description:''' [[File Classification Material Transparency - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Description:'''
  
'''References:''' [[References::]] - A list of references regarding any aspects of this engineering format; any reading material supplemental to this page.
+
'''References:'''  
 +
* [http://local.wasp.uwa.edu.au/~pbourke/dataformats/lightwave/ LightWave 3D Object File Format]
 +
* [http://www.sandbox.de/osg/lightwave.htm LightWave File Format]
 +
* [http://www.lightwiki.com/LightWave_History LightWave History at LightWiki]

Latest revision as of 16:29, 13 May 2009

Title(s): LightWave object

Version ID: NewTek LightWave 3D Object File Format

Date released: Most recent format specs dated October 16, 1996

Date: 1990

Creator(s): NewTek

Contributor(s): Allen Hastings & Stuart Ferguson

Relationships:

  • Previous Version(s): Inherited from Videoscape 3D and Aegis Modeler 3D on the Commodore Amiga, both circa. 1988.
  • Contains: none
  • Syntax Format(s): LightWave 3D objects are stored as IFF files with a FORM type of LWOB. A FORM LWOB must contain a PNTS chunk, a SRFS chunk, and a POLS chunk. There may be zero or more SURF chunks anywhere in the file and up to one CRVS chunk. The POLS and CRVS chunks must be preceded by the PNTS chunk and the SRFS chunk. LightWave 2.0 also has the ability to save and load surface descriptions as FORM LWOB files that contain only a SURF chunk. Details and further explanation found here: Lightwave 3D Object File Format, 11/28/1994
  • Family Format(s): none

Description: LightWave 3D objects are stored on disk as 3D meshes consistsing of points, polygons (which can be faces, curves or patches), and surfaces. Files can contain a single connected mesh or several disjoint meshes describing a single logical object. An object file may also contain one or more surface definitions with no mesh.

History: A detailed account, from 1988 to 2009: LightWave History.

Example(s): Detailed object file example found here: LightWave Object File Example

Identifier: none.

Documentation: Documentation found here: LightWave Object File Format

File Extensions: .lwo

Applications:

  • Native application(s): NewTek LightWave 3D
  • Interoperable applications: LightWave 3D has a broad selection of plugins.

Magic numbers: n/a

Format(s): image/x-lw

Rights: Proprietary license

Sustainability Factors: n/a

  • Standardization: n/a
  • Adoption: n/a
    • Licensing and patent claims: n/a
  • Self-documentation: n/a
  • External dependencies: n/a
  • Technical protection considerations: n/a

Typical use: 3D Design

File classification:

  • Type {Binary, Text}: Binary
  • Raster data:
    • Raster data 2D:
      • Is Supported: true
      • Description:
    • Raster data 3D:
      • Is Supported: true
      • Description:
  • Geometric representation:
    • Implicit representation:
      • Implicit surfaces:
        • Is Supported: true
        • Description: The SRFS chunk contains a list of the names of all the surfaces in an object (note that in LightWave 3D terminology, the word "surface" is defined as a set of attributes that describe the color and shading characteristics of a group of polygons). Each surface name appears as a null-terminated character string. If the length of the string (including the null) is odd, an extra null byte is added. Surface names should be read from the file until as many bytes as the chunk size specifies have been read.
      • Implicit curves:
        • Is Supported: true
        • Description: The CRVS chunk contains a list of all the spline curves in an object. Each entry consists of a short integer specifying the number of vertices in a curve followed by that many short integers specifying the vertices themselves in sequential order, followed by a short integer specifying which surface is used by the curve, followed by another short integer specifying bit-flags associated with the curve. If bit zero is set then the first point is a continuity control point, and if bit one is set then the last point is. The point and surface indices are as they are in the POLS chunk, except that curves cannot have details. Curves should be read from the file until as many bytes as the chunk size specifies have been read.
      • Point set:
        • Is Supported: true
        • Description: The PNTS chunk contains a list of the X, Y, and Z coordinates of all the points in an object. Each coordinate is stored as a four byte floating point number in IEEE format. Therefore, the number of points in an object can be determined by dividing the size in bytes of the PNTS chunk by 12.
    • Mesh:
      • Manifold surface meshes:
        • Is Supported: true
        • Description: n/a
      • Manifold volume meshes:
        • Is Supported: n/a
        • Description:
      • Non-manifold meshes:
        • Is Supported: n/a
        • Description:
    • Parametric representation:
      • Parametric surfaces:
        • Is Supported: n/a
        • Description:
      • Parametric curves:
        • Is Supported: n/a
        • Description:
    • Contour sets:
      • Is Supported: n/a
      • Description:
    • NURBS:
      • Is Supported: true
      • Description:
  • Multi-resolution models:
    • Is Supported: n/a
    • Description:
  • Dynamics:
    • Kinematics:
      • Is Supported: true
      • Description: n/a
    • Assembly:
      • Is Supported: n/a
      • Description:
    • Force(s):
      • Is Supported: n/a
      • Description:
  • Boundary representation
    • Manifold surface boundary representations:
      • Is Supported: n/a
      • Description:
    • Manifold volume boundary representations:
      • Is Supported: n/a
      • Description:
    • Non-manifold boundary representations:
      • Is Supported: n/a
      • Description:
  • Material transparency:
    • Is Supported: true
    • Description:

References:

Personal tools