6.5b Changes 7.5b Changes Table of Contents

7.5 Changes

May 1, 2002

This is a list of the changes in the LightWave 7.5 release that affect the SDK. The changes include a new Layout tool class and a new globals, as well as enhancement of many of the info globals defined in lwrender.h

Structures associated with the Item Info, Object Info, Light Info, Scene Info, and Interface Info, globals were changed, but the shader version number and the global name strings weren't incremented. In all cases, the changes involve members added to the ends of structures, so they have no effect on existing plug-ins. New plug-ins can use the Product Info global to verify that they're running in at least LightWave 7.0 before they use the new structure members.

lwcustobj.h

     
  • A bit definitions for the flags function return value has been added.  The LWCOF_VIEWPORT_INDEX flag tells layout to use the viewport number instead of its type in the LWCustomObjAccess view element 
  • The LWCOF_NO_DEPTH_BUFFER flag prevent textured quads from being obscured by OpenGL drawing that is done in front of them.
  • The text function justification argument values are now defined.
lwfilter.h
     
  • A new flag tor the PixelFiltel, LWPFF_EVERYPIXEL, has been added. It tells layout to call this filter for every pixel, despite adaptive sampling settings.
lwhost.h
     
  • A formal define for the content directory string passed to the Directory Info global, LWFTYPE_CONTENT, has been added.
lwenvel.h
 
  • A new event code, LWCEVNT_TRACK, has been added to signal temporary changes to channels done during interactive editing. Caution should be used when handling these events, ad they will be plentiful, and ambitious callbacks could result in significant performance degradation.
  • A new event code, LWCEVNT_CREATE, has been added to signal the addition of a channel to a group.
  • A new event code, LWCEVNT_RENAME, has been added to signal than a channel group has been renamed.
lwlaytool.h
     
  • The new plug-in class, LayoutTool actually works now.
lwmaster.h
     
  • An LWEVNT_RENDER_DONE event code has been added (MasterHandler).
lwmodtool.h
 
  • Per-vertex and per-polygon custom allocation available to MeshEdits is now available to MeshEditTools via the bit definitions in the return values of the Test function. These bits are conveniently defined by the LWT_VMEM() and LWT_PMEM() preprocessor macros, which take the memory size as arguments.
lwtxtr.h
     
  • The LWTEXTUREFUNCS_GLOBAL global (Texture Functions) has incremented to "Texture Functions 3" due to the new tags supported by getParam and setParam.
  • New tag definitions were added: TXTAG_ACTIVE, TXTAG_INVERT and TXTAG_BLEND.
  • The possible blend modes have been enumerated: 

  • typedef enum LWTextureBlendMode {
        TXBLN_NORMAL=0,
        TXBLN_SUBTRACT,
        TXBLN_DIFFERENCE,
        TXBLN_MULTIPLY,
        TXBLN_DIVIDE,
        TXBLN_ALPHA,
        TXBLN_DISPLACE,
        TXBLN_ADD  }
lwserver.h
     
  • New server tag SRVTAG_SELECTCMD has been added to generate a command upon selection of the item to which the plugin is applied.
lwrender.h
 
 
  • A function to retrieve the state of the UI motion locks (axisLocks) has been added to LWItemInfo (Item Info).
  • Three new functions (matteColor, thickness, and edgeZScale) have been added to LWObjectInfo. The thickness function uses one of the following types: 

  • LWTHICK_SILHOUETTE 
    LWTHICK_UNSHARED 
    LWTHICK_CREASE 
    LWTHICK_SURFACE 
    LWTHICK_OTHER 
    LWTHICK_LINE 
    LWTHICK_PARTICLE_HEAD 
    LWTHICK_PARTICLE_TAIL 
  • The LWObjectInfo flags function returns new flags LWOBJF_MATTE, and LWOBJF_UNSEEN_BY_ALPHA.
  • Three new functions (animFilename, RGBPrefix, and alphaPrefix ) have been added to LWSceneInfo.
  • A new function, shadowColor, has been added to LWLightInfo.
  • Four new bit definitions are available in the LWSceneInfo renderOpts: LWROPT_ENHANCEDAA, LWROPT_SAVEANIM, LWROPT_SAVERGB, and LWROPT_SAVEALPHA..
  • The LWInterfaceInfo structure now contains autoKeyCreate, with values defined as LWAKC_OFF, LWAKC_MODIFIED, and LWAKC_ALL.  The generalFlags can now reveal the AutoKey state in the LWGENF_AUTOKEY bit.
  • A new global (Viewport Info) has been added to facilitate custom drawing and tool handle processing. The server name is LWVIEWPORTINFO_GLOBAL.


Miscellaneous
 

  • The Item Info first function now returns LWITEM_NULL when called with LWI_BONE type and LWITEM_NULL as the id of the parent object, instead of returning the id of the first bone in the scene..