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
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..
|