Engine 0150

From VRwiki
Jump to: navigation, search

Build 6918

Added a new Class ByteBuffer to easily pass data to a library.

What's new

  • SceneSetParam now allows to specify the "motion blur factor", field of view and near and far plane for the defaul camera.
  • SceneGetParam can retrieve the current scene viewport
  • GetAamType now supports new AAM file header type directly indicating the file type
  • Added CopyMatrix function


  • openGl support:
  1. added glFrontFace implementation
  2. added glTexImage2D implementation


  • CVmNewMesh:
  1. The constructor recognizes also integer parameters as "height" for procedural extruded objects
  2. Added SubsetCallDList method
  3. Added wild card version for ModulateSubsetMaterial
  4. Changed naming convention for subset and shader related methods (old versions deprecated, new versions start with Subset___or Shader___)
  5. Added GetSubsetBoundingBox method
  6. CenterBoundingBox now returns the amount of translation.
  7. Added BuildTangent method. Tangents may be now forcedly sent passing the VR_USE_TANGENT flag in the Draw method.
  • CVmCharacter:
  1. Changed naming convention for component and shader methods (old versions deprecated, new versions start with Component___or Shader___)
  2. Almost completely rewritten documentation of shader methods
  • CVmTextures (all graphical objects):
  1. Video texture now correctly may be reproduced with variable speed
  2. Added support to 1- and 2-components float textures.
  • CVmShaderProgram (all graphical objects):
  1. Deprecated Active method and renamed into Activate
  2. Added a shader manager to prevent the same shader to be loaded twice.
  • CVmObj:
  1. Added RemoveChild method
  2. Added GetScale method
  3. Added Normalize method
  • CVmMMAvi: :
  1. Added Seek() methods
  2. Added SetMCINotBlocking() methods
  • CVmExternDLL:
  1. in the __AddFunction method it is possible to specify an alias for the name of the XVR class method, so as to tell the name of the imported function from the name of the class method
  2. it is possible to pass XVR vectors to dll functions requiring arrays of double (use the C_PDOUBLE constant in the __AddFunction)
  3. Passing TRUE as the second parameter of the constructor, if the dll (or possibly depending dlls) is missing, the constructor returns VOID and generates a WARNING rather than an error

Minor changes

VectorRotate is now much faster.

Fixed bugs

  • ReadCameraAnimation bug (deadlock after an empty AnimFOV: token)
  • MatrixMultiply3 and MatrixMultiply (operands were inverted)
  • MatrixIdentity_3 and MatrixIdentity_4 now works correctly
  • CVMCharacter:
  1. extra initialization caused the animation frames to be forcedly set to 1 instead of the number of animation frames
  2. ComponentReset did not work properly with geometry display lists.
  3. ComponentReset did not invalidate display lists
  4. improved the VRML parser for SolidWorks files (with large files caused the heap to be excessively fragmented, and the application to hang).
  • CVmMMAvi the end of movies is correctly trapped.
  • Profiler was indicated twice the time actually used by methods of user-defined classes
  • Documentation:
  1. Almost completely rewritten documentation of shader methods of CVmNewMesh class
  2. WriteComm documentation
  3. Minor documentation problem in CameraGetCurrent

Known issues

To call CVmNewMesh::SubsetCallDList() you must call the CVmNewMesh::draw at least one time.