5.01 | 5.0 | 4.5 | 4.4 | 4.3 | 4.2 | 4.1 | 4.0 | version 3.9 changes | 3.8 | 3.7 | 3.6 and older

version 3.9 changes (17.12.2001)

  • General Notes version 3.9
  • Pause
  • Searching
  • New feature Buttons
  • Hyperlinks
  • Copy names to clipboard
  • changes at #mesh and #meshDeform
  • Motion-Tab changes
  • Modelresource-Tab changes
  • Model-Tab changes
  • Light-Tab changes
  • Camera-Tab changes
  • Havok-Tab changes
  • Tracing improvements
  • other little changes
  • version 3.9.1 changes (22.01.2002)

    version 3.9.2 changes (13.11.2002)

    version 3.9.3 changes (19.11.2002)

    version 3.9.4 changes (23.11.2002, inofficial)

    version 3.9.5 changes (13.12.2002)

    General Notes version 3.9 top

    A big part of all 3DPI scripts is completely restructured. Even if the new version of the 3DPI does not show alot of visual changes, the technic behind is nearly new. This offers speed improvements and allows more flexibility for new features, e.g. the possibility to pause the 3DPI.

    Due to the big number of technical changes, not every little detail is docummented this time, but all important changes should be listed...

    Pause top
    • Within the Preferences of the 3DPI one can choose the new option "Pause when deactive".
      If this option is selected, the 3DPI will be paused whenever the 3DPI window is inactive. So the 3DPI will check and display all informations only as long as the 3DPI window is the active one.
      If the option is not selected (default), the informations will be updated constantly, just like it has been with all previous versions.

    • The 3DPI will always be paused while Director is deactivated.

    • On PC the 3DPI will also be paused while the window is minimized by the "Collapse" Button. (Sadly on Mac the 3DPI will not be paused while the window is minimized by the windows Collapse Box.)

    Searching top

    One can now select a specific object by typing the beginning letter(s) of the objects name.
    Therefore a field is added, which appears after clicking on the little arrow at the left bottom corner of the list of objects.

    New feature Buttons top

    The area, that is below the Buttons to create new objects or to delete them, will now be used for special 3DPI feature-Buttons.

    These feature Buttons currently are:

    "Information" - When clicking on this Button a dialog will open, which gives an overview about all objects that are using the selected object.
    This Button is available in the Texture-Tab, Shader-Tab and Modelresource-Tab.

    • At Textures: all Shaders, Particle ModelResources, Camera Backdrops and Overlays will be listed, that use the selected texture.
    • At Shaders: all Mesh Modelresources and Models will be listed, that use the selected shader.
    • At ModelResources: all Models will be listed, that use the selected ModelResource.

    Within this dialog one can also directly navigate to one of these objects.

    "Model Hilite" - While pressing this Button, the 3DPI will hilite the model.
    This Button is available in the Model-Tab and the RigidBody-part in the Havok-Tab.

    • At Models: the selected Model will be hilited. (In the Model-Tab this feature is also available when clicking on any model in the list, while pressing the option (= alt) key, or when clicking with the right mouse button.)
    • At RigidBodies: the model, that is corresponding to the selected RigidBody, will be hilited. Please Note, that if more shockwave3d member exists, the 3DPI will search the model within all members, and will select the first one, that includes a model with the same name like the RigidBody.

    Hyperlinks top

    All 'Hyperlinks' will now be displayed by a Button. Click on the Button to navigate to the specific object.

    The following Hyperlinks are also added:

    • for the property #parent at all Nodes
    • for the property #rootNode at cameras
    • for getRigidBodyA() and getRigidBodyB() at springs and Dashpots within the Havok-Tab.

    Copy names to Clipboard top

    Hidden feature added: in all lists on top of the 3DPI window, a control-click on a listed object will copy its name resp. reference into clipboard.

    changes at #mesh and #meshDeform top

    At the Modelresource #mesh and the model modifier #meshDeform the missing entries are added to change the #normalList, #textureCoordinateList and #colorList. (Exception: no textureCoordinateList-entires at mesh modelresource, because of possible errors, when no textureCoordinateList was defined.)
    Click on the arrows on the left beside each property name to access the values.

    Motion-Tab changes top
    • The list of motions now also displays the motion-type.
    • The "Map"-Button for the map-function is build in.

    ModelResource-Tab changes

    • suggested new names: When creating a new ModelResource, the 3DPI will not anymore suggest the name "ModelResource_n" than a name depending on the type: "sphere_n", "box_n" and so on. (Of course instead of 'n' a number will be used.)

    • new mesh: Within the dialog to create a new Modelresource, one can now also choose the type #mesh. If #mesh is choosen and clicking on the "OK" Button, another dialog will open asking for the parameters for the new mesh.

    • functions added: The functions for generateNormals() and build() are added at mesh ModelResources.
      When clicking on the generateNormals-Button while pressing the option key (= alt key), the dialog will be skipped and the style (#flat or #smooth) will be taken that was choosen last time.

      Please Note: after creating a new mesh, one has to set all values of the mesh 'correctly' that the generateNormals function will succeed. If generateNormals does not accept the values, nothing will happen after clicking on the "OK" Button within the generateNormals-dialog.

    Model-Tab changes top
    • Navigation: Switching between the model properties and the modifiers is now provided by 2 Buttons instead of 1 popUp. Changing the selected modifer can be done with the popUp beside the modifier-button.

      The 3DPI will remember the last selected screen within the Model-Tab. Instead of always displaying the "Model Properties" after clicking on the Model-Tab, the 3DPI will navigate back to the last activated part (Model properties / selected model Modifier).

    • Reordered Properties: The model properties are alittle reordered, to have all model-specific properties together, and those available without scrolling the page, that probably are needed more often.

    • Creating new model: The recource, that was choosen last time when a new model was created (choosen within the dialog at the "New"-Button), will be suggested next time again when creating a new model.
      (Only the name of the modelresource will be stored. If a modelResource with the name exists, this will be suggested, otherwise none.)

    • ShaderList:
      A "PUT" Button beside the property shaderlist.count offers the possibility to put the complete shaderList into the message window.

      The index at the property #shaderList is changed to an editable field with a Wheel beside instead of a PopUp. "All" will be the default value. (Type 0 instead of "ALL" to access the complete shaderList.)

    • Adding modifiers: If it fails to add a modifier to model, an error will be displayed. If possible, the error will also explain the reason.

    • Correction: The property #playrate of the modifiers #bonesPlayer and #keyFramePlayer can be set to negative values.

    Light-Tab changes top
    • added properties/functions: isInWorld(), removeFromWorld(), addToWorld() and property #attenuation at point light.

    • bugfix with property #attenuation, when trying to set it to vector(0,0,0)

    • imporvement: at the interactive help tools to change the rotation at directional lights and the position at point lights, the preferred vertical axis can be choosen now.

    Camera-Tab changes top
    • Redesigned TAB: All properties are devided into 4 screens:

      • Node Properties - all Node specific properties
      • Camera Properties - all other properties, except Backdrops and Overlays related ones
      • Backdrops - backdrop specific properties
      • Overlays - overlay specific properties

      The Backdrop and Overlay screens now also offer a list of all Backdrops/Overlays, to improve the overview and selection handling.

    • Navigation: The 3DPI will remember the last selected screen within the Camera-Tab. When clicking on the Camera-Tab the 3DPI will navigate back to the last activated part (Node Properties / Camera Properties / Backdrops / Overlays).

    • correction: at property #rootNode the value 0 will be displayed instead of <Void>.

    Havok-Tab changes top
    • Stepping: When clicking on the "step()" Button longer than half a second, the step-function will run continously as long as the Button is pressed.

    • added functions for rigidBodies:
      • applyForce() and applyForceAtPoint() ... available by the Button "applyForce..."
      • applyImpulse(), applyImpulseAtPoint() and ApplyAngularImpulse() ... available by the Button "applyImpulse..."
      • applyTorque() ... available by the Button "applyTorque..."

    • Picking feature at RigidBodies:
      If the Picking Button is switched on, and it's function is set to "Pick TAB specific object", the 3DPI now offers the possibility to pick the RigidBody corresponding to the Model, that was clicked on. Please note, that the 3DPI will only search the RigidBody within that Havok Member that is currently selected.

    • Improvement creating RigidBodies: the dialog for creating rigidBodies does not list anymore models, that have already been used for rigidBodies.

    • Improvement creating springs and dashpots: the dialogs for the Havok functions MakeSpring(), MakeLinearDashpot() and MakeAngularDashpot() do now also offer other types of syntax, e.g. to define a worldPosition instead of a second rigidBody.

    • Navigation Improvement: The 3DPI will remember the last selected screen within the Havok-Tab. Instead of always navigating to the "CastMember" Properties after clicking on the Havok-Tab, the 3DPI will navigate back to the last activated part (CastMember / RigidBody / Spring / LinearDashpot / AngularDashpot).

    • 2 Buttons are added at property #gravity:
      - "gravity along -y axis" sets the gravity to vector(0, -G, 0)
      - "gravity along -z axis" sets the gravity to vector(0, 0, -G)
      while G is the length of the gravity vector that was set before clicking on the Button.
      If the gravity was vector(0,0,0), or when clicking on the Button with the right mouseButton or while pressing the option key (= alt key), then the new length of the gravity (G) will be 386.22.

    • little Improvement: Within the dialog for the setRigidBodyB() function (for Springs, LinearDashpots and AngularDashpots) one now can also choose #none.

    Tracing improvements top

    Generally all the tracing functions of the 3DPI are alittle improved.
    E.g. shockwave3D-objects will now be provided by their name instead of their index, e.g. shader("myShader") instead of shader[3].

    The function "Trace Property List" is completely restructured. It will now output the following informations:

    1. the scriptLine to rebuild the reference to the selected Object
      e.g. theShader = member(7, 1).shader("DefaultShader")

    2. "settable properties"
      a property list of all properties, that can be rebuild with a generic handler (example see below) and the "do" function.

    3. "reference properties"
      a property list of all properties, that refer to other shockwave3D-objects, like shader.textureList or model.parent. To rebuild this properties a special handler is needed (example see below).

    4. "read only properties"
      a property list of all properties, that cannot be set.

    5. "rebuilding Help"
      a property list of informations that might help to rebuild the property values. This list can contain the following informations:
      • #object for the reference of the object (only in Sprite-Tab, Member-Tab, Havok-Tab and Renderer-Tab).
      • #member for the reference to the member of the object.
      • #objectType, which is similiar to #ilk, except that it will always provide #modelResource for all ModelResources.
      • #name for the object name.

    Two example handlers can rebuild all the "settable properties" and "reference properties" that have been outputted by the 3DPI: rebuildHandlers.txt. (The scripts are not optimized for speed, but on the other hand work generic for all outputted lists of the complete 3DPI.)

    other little changes top
    • No more endless errors:
      Due to the restructured scripts it should not happen anymore, that the 3DPI runs into endless errors!
      If the 3DPI runs into an error, Director will display the error, but then the 3DPI will stop, while your movie continues to play (if possible). One needs to reopen the 3DPI to continue working with it.
      Please check the "Known Issues" to get an idea about the reason of errors.

    • New PopUps: the PopUps are redesigned.

    • Previews changes:
      • Previews of shaders and modelresources will remain switched on or off, when entering the 3DPI-screen with the Preview again.
      • The Preview of a texture will only be updated exactly when clicking on the Preview-Button, not constantly.
      • The Preview of a texture will be scaled to fit within the preview area.

    • Picking Button Bugfix:
      Clicking inside the 3DPI will be ignored for the Picking-feature, so if the 3DPI window is placed above the stage, no problems should happen anymore.

    • small Bugfix: Within the dialog for "CloneModelfromCastMember" and "CloneMotionFromCastMember" the suggested new name will now be updated correctly also on PC.

    version 3.9.1

    anti-aliasing properties added top
    The 2 new properties #antialiasingSupported and #antialiasingEnabled, that have been added in the Director 8.5.1 update, are now available in the Sprite-Tab.
    If running the 3DPI with Director 8.5 and not 8.5.1 both properties are greyed out and inactive.
    Also see: About anti-aliasing

    little tracing improvement top
    When creating new objects, the traced script will store the new object in a variable now.
    E.g. instead of:
    it's now:
        theModel = theMember.newModel("model_1")

    small bugfixes top
    • The active renderer should not switch anymore when starting the 3DPI or when creating a Preview. (In fact there are circumstancances the renderer might switch, but in this cases the 3DPI will revert the renderer afterwoards again.)
    • Errors with the value 'NAN' (mainly appearing with Havok objects) should not happen anymore.
    • Tracing was working incorrectly at the models shaderList, if "ALL" was selected for the list index and the model used more than one shader.
    • Tracing is working again when adding, inserting or removing a cameras backdrop or overlay.
    • To avoid possible errors, changing a property of a backdrop or overlay is now ignored if the source of the backdrop or overlay has a width or height of 0.
    • PopUps in the Camera-Tab should work again properly.
    • If "trace changes" of the Trace-Button is active, nothing appears anymore in the message window when only changing any 'index' value.

    version 3.9.2

    Hyperlink to Node's children top

    A Hyperlink button is added beside the child.count property at all nodes.

    If the node has only one child, clicking on the button will link to the one child immediately.
    If the node has more than one child, clicking on the button opens a dropDown that lists all the children. Selecting one child in the popUp will link to that child.

    Transform of bones top

    In the bonesPlayer part of the model-Tab the bones transform / worldTransform is added at the end of the page. (You need to scroll down.)
    Select the bone index at 'bone[indexNumber]' and the corresponding transform values are displayed below.

    The values of the rootbone, the first bone, are not editable.

    Autosearch top

    You can now choose about the way, how the search function (see picture below) should work in detail.

    Autosearch ON (default): If you switch the 'Autosearch' option in the 3DPI preferences on, the first fitting object will be searched immediately after typig a letter into the search field.

    Autosearch OFF: If you switch 'autosearch' off, after typing into the search field you need to press the return key to start searching the first fitting object.

    new feature: Filter top

    On the right side of name lists of the member sub-TABs (texture, shader, motion, modelResource, model, light, camera and group) now appears a small 'Filter' Button.

    If the Button is selected (pressed), you can filter the objects, depending on their names, and so the list of objects only shows what you are interested in.

    Click with the option key (or the right mouse button on PC) on this Button to open the dialog for defining the filtering details:

    You can either hide all objects that names fit to the filter string,
    or only show these and no others.

    You can hide or show objects, which names either contain the filter string,
    or start with it.

    Additionally you can always hide all objects, that Director automatically creates for Overlays and Backdrops. That means, Shaders and models, that names start with "Overlay-copy" or "Backdrop-copy" will not be listed.

    new feature: Duplicate Shader top

    Shaders can now be duplicated. Please note that there does not exist such a Director function, than it is a feature of the 3DPI, which in fact only creates a new shader and sets all its properties identical to the shader that you want to duplicate.

    When clicking with the option key (or the right mouse button on PC) on the duplicate button, the dialog for naming the new shader will be skipped and the 3DPI chooses a new name by its own.

    new feature: Duplicate ModelResource top

    The same way as the 'Duplicate Shader' feature now also works for ModelResources - except for ones of type #fromFile and #extruder.
    Please note
    that duplicating meshes will fail, if the mesh ModelResource to copy does not have a textureCoordinateList defined.

    Small improvement with keyframePlayer and bonesPlayer top

    In the keyframePlayer and bonesPlayer part of the model-Tab the 3DPI now also displays the name of the first motion in the playlist:

    MakeRigidBody improvement top

    In the rigidBody part of the Havok-Tab the technic behind the Button 'Make' (MakeRigidBody) is improved.
    Until now it was not possible to create rigidBodies with the help of the 3DPI if more than one shockwave3d member exists, because there is no way to get the shockwave3d member that was used for Havok initialization. This dead-end is removed.
    Now the 3DPI checks the names of all RigidBodies and compares them with the models in all w3d members:

    • If only one member has models, which names fit with the rigidBody names, this member will be used for the MakeRigidBody dialog.

    • If more than one member might fit, or no rigidBodies exist, there first appears a dialog, asking for the correct shockwave3d member, that was used for initialization. Then the normal dialog appears that helps to create a new RigidBody.

    NOTE 1: If you select the wrong member in the first dialog, making a RigidBody will fail if you select a modelname that does not exist in the correct member: nothing happens after clicking on the 'OK' Button. To close the dialog click on the 'cancel' Button.

    NOTE 2: In fact it could happen that the 3DPI chooses a wrong member, but probably it never will happen. If you delete a model after creating a rigidBody out of it (for example if you want to create invisible walls you can delete the wall-models but the wall-rigidBodies will continue to work) and you have another shockwave3d member, that contains models with the same names, the 3DPI will take this member for the makeRigidBody dialog.
    If you see any problems in this direction, please let me know.

    small correction with wheels at meshdeform top

    Some wheels (endless sliders) at the meshdeform part of the model-Tab did not allow to change values in small steps (< 0) that is normally working while pressing the option-key. This is corrected.
    The wheel-stepSize for the values at textureCoordinateList are set to 0.1 instead of 1.0 in general (so changing the value while pressing the option key will change in 0.01 steps).

    version 3.9.3

    Bugfix with 'clearCache' error top

    A few users reported an error "Script error: Handler not defined #clearCache" after starting the 3DPI. The real problem seems to be the new NetLingo Xtra update, that can be downloaded at Macromedia to adress security issues (technote 16636). It looks like, Macromedias technote is missing one important step: you also need to copy both the IML and DP/Dirapi libraries into your Director folder (varies depending upon auth, projectors and Shockwave).

    However, because the 3DPI does not need the line 'clearcache' anymore since a long time, in version 3.9.3 this line is now finally deleted, and you can continue to work with the 3DPI, even if netLingo does not work correctly.

    version 3.9.4


    You can choose in the 3DPI preferences, if you would like to have the 3DPI window as floating palette or not.

    collapse button

    The collapse Button in the right upper corner now also appears under Mac OSX to be able minimizing the window on this system too.

    version 3.9.5

    window position top

    Finally the 3DPI will open where you closed it last time.

    hyperlink to hierachy top

    At any Node (model, light, camera and group) there is now a 'Parent-Child Hierachy' button on the left side of the name list. If a node is selected and you click on the button, the 3DPI switches to the member-Tab, and displays the Parent-Child Hierachy so that you immediately can see the Node in the Hierachy. (It opens the collapse arrows of the parent nodes and scrolls down if necessary.)

    Bugfix with Overlays and Backdrops top

    Sometimes it could happen that the selection of an Overlay or Backdrop changed unexpectedly. Fixed.

    5.01 | 5.0 | 4.5 | 4.4 | 4.3 | 4.2 | 4.1 | 4.0 | version 3.9 changes | 3.8 | 3.7 | 3.6 and older