Project History
This document will list changes
that have been made from version to version.
Version
0.4.7-6 :
- Code cleanup.
- Support for dynamic/hierarchical rendering (see the demo,
"rotbox2", for usage example) :
- Improvement of _CVortexMatrix3D class, some added members are :
- SetToLookAtMatrix()
- PreDynTransform(), PstDynTransform()
- MultMatrixCCN(), MultMatrixCNC()
- MultMatricesDDS(), MultMatricesDSD()
- Improvement of _CVortexPanel3D class, added members are :
- _DynFSCalcIntenOmni_()
- _DynGSCalcIntenOmni_()
- Improvement of _CVortexPanel3DBuffer class, added members are :
- RefitTexCoords()
- DynTransform()
- PreDynNSRender(), PreDynFSRender(), PreDynGSRender()
- Dyn??Render(), DynFog??Render()
- Note that ?? can be UF/UG/CF/CG/TN/TF/TG
- Added a new class, _CVortexHNode, note :
- All child nodes must be dynamically allocated using new.
- All child nodes will be deleted automatically when their
parent is deleted, it means performs a manual delete to a child node
may cause segmentation fault.
- If a child node need to be preserved whenever its parent is
about to be deleted, set the child node's parent to NULL first before
deleting the parent.
- Overloading new and delete operator for these classes :
- _CVortexVideoEnv
- _CVortex3DEnv
- _CVortexPoint3D
- _CVortexPanel3D
- _CVortexMatrix3D
- Dummy (NULL) audio system has been added.
- A new build macro (__USE_COLORED_MESSAGES__) has been added, see build macros for details.
- All documentations have been converted to HTML.
Version
0.4.5-1 :
- Code cleanup, feature addition, and SSE optimization for class
_CVortexMatrix3D.
- Additions/improvements inside file "v3denv.h" :
- Added a precision profiling function, _CVortex3DEnv::RDTSC().
- Added a function, VCalcLightCosValue() which can do SSE
optimized calculation in order to find the angle (cosine value) between
the panel's normal and the light's vector. This function is used in
some omni light intensity calculation functions. However, this SSE
optimization is still buggy (may cause the application to crash). So
the SSE version will not be used by default. To use it, change the
commented preprocessor written in the function
body.
- Added a signal handler for some fatal signals. This handler is
not installed by default, use this function to install it :
- _vvoid VInstallFSH(PFNVortexFatalFunc pfnUserCallback, _vvoid
*pvUserData)
- and use this function to uninstall it :
- _vvoid VUninstallFSH(_vvoid)
- Added two versioning macros :
- __VG_COMB_VER__(MJ, MN, RV)
- This macro will combine MJ, MN, and RV to a complete version
number
- __VG_MIN_VER__(MJ, MN, RV)
- This macro will return true if compiled with VortexGE of
which the complete version >= MJ.MN.RV
- Makefiles are improved
- Added a demo application (inside "srcdemos" directory)
- Matrix operations benchmarking application (bench2.cpp) is
improved by completing the SSE matrix-matrix multiplication function
and adding matrix copy functions and matrix identity functions.
- Added a benchmarking application (bench3.cpp) in order to
benchmark various 3D operations.
Version
0.4.4-1 :
- These classes are replaced in order to support reimplementation
these classes using various systems :
- _CVortexDisplayX11 is replaced by _CVortexVideoEnv, see
"vvidenv.h" and "vvidenv.cpp" for details.
- _CVortexDSPEnv is replaced by_CVortexAudioEnv, see "vaudenv.h"
and "vaudenv.cpp" for details.
- _CVortexDSPSoundBuffer is replaced by_CVortexSoundBuffer, see
"vaudsb.h", "vaudsb.cpp", "vaudsf.h", and "vaudsf.cpp" for details.
- Added an utility application : font displayer.
- Makefiles are improved.
Version
0.4.3-5 :
- This is the initial release of VortexGE.
Main Index