DarkGDK - Unofficial r114 Update
I am building this update on top of The Tall Man's;
DarkGDK Open Source - A Recent Working Version. The download reflects the current state of the update. Looking forward to your questions, comments, suggestions and bug reports.
Compiled With:
Windows 7
Visual C++ 2008 Express Edition
DirectX SDK (August 2007)
Download: Last updated 11.20.2014
DarkGDK - Unofficial r114 Update(full release)
ChangeLog:
3DMaths Module
--------------
dbCopyVector2 and dbCopyVector3 Fixed - parameters reversed in various places in code.
Now works as the help file states. dbCopyVector4 also was coded to copy the source to the source.
void dbCopyVector2(int iDestination, int iSource) - Fixed
void dbCopyVector3(int iDestination, int iSource) - Fixed
void dbCopyVector4(int iDestination, int iSource) - Fixed
void dbSetProjectionMatrix4(int iID) - Added
void dbSetMatrixElement(int iMatrix, int iElement, float fValue) - Added
Basic2D Module
--------------
Now can be optimized using dbLockPixels() & dbUnlockPixels() for batch operation
void dbCircle(int iX, int iY, int iRadius) - Fixed
void dbElipse(int iX, int iY, int iXRadius, int iYRadius) - Fixed
void dbEllipse(int iX, int iY, int iXRadius, int iYRadius) - Fixed
void dbPaint(int iX, int iY) - Added
Basic3D Module
--------------
Use the optional parameter of one to restore the orientation to conform with that used by the other objects
void dbMakeObjectPlane(int iID, float fWidth, float fHeight, int iFlag) - Added variant
void dbMakeObjectPlain(int iID, float fWidth, float fHeight, int iFlag) - Added variant
void dbMakeObjectGroundPlane(int iID, float fWidth, float fDepth) - Added
Stencil shadows
void dbSetShadowShadingOn(int iID) - Fixed
void dbSetShadowShadingOn(int iID, int iMesh, int iRange, int iUseShader) - Fixed
void dbCalculateObjectBounds(int iID) - Added
void dbAddMemblockToObject(int iMemblock, int iID) - Added
void dbGetMemblockFromObject (int iMemblock, int iID) - Added
void dbDeleteMemblockFromObject(int iID) - Added
void dbPositionObject(int iID, D3DXVECTOR3 pos) - Added variant
D3DXVECTOR3 dbObjectPosition(int iID) - Added variant
void dbProjectPoint(float xPos, float yPos, float zPos, int &x, int &y) - Added
The third parameter now works - set to 1 to share animation data
The default dbCloneObject(int iDestinationID, int iSourceID) does not share animation data
void dbCloneObject(int iDestinationID, int iSourceID, int iCloneSharedData) - Fixed
void dbAddLODToObject(int iCurrentID, int iLODModelID, int iLODLevel, float fDistanceOfLOD) - Added
void dbSetObjectMask(int iID, int iMASK) - Added
int dbMaxAnisotropicLevel(void) - Added
void dbSetAnisotropicLevel(int iAnisotropicLevel) - Added
void dbSetObjectFilter(int iID, int iMagState, int iMinState) - Added variant
void dbSetObjectFilterStage(int iID, int iStage, int iMagState, int iMinState) - Added variant
void dbSetLimbFilter(int iID, int iLimbID, int iMagState, int iMinState) - Added
void dbSetLimbFilterStage(int iID, int iLimbID, int iStage, int iMagState, int iMinState) - Added
void dbExcludeObjectOn(int iID) - Fixed
void dbExcludeObjectOff(int iID) - Fixed
D3DXVECTOR3 dbGet3DPointOnXZPlane(float fYPos, int iXPos, int iYPos) - Added
Bitmap Module
-------------
Use the negative of the camera number to render directly to the camera surface - dbSetCameraToImage
void dbSetCurrentBitmap(int iID) - Fixed
void dbSetBitmapFormat(int iFormat) - Added
Camera Module
-------------
void dbPositionCamera(int iID, D3DXVECTOR3 pos) - Added variant
void dbTextureBackdrop(int iImage) - Added
void dbTextureBackdrop(int iID, int iImage) - Added
float dbCameraAspect(void) - Added
float dbCameraAspect(int iID) - Added
float dbCameraFOV(void) - Added
float dbCameraFOV(int iID) - Added
float dbCameraNear(void) - Added
float dbCameraNear(int iID) - Added
float dbCameraFar(void) - Added
float dbCameraFar(int iID) - Added
Core Module
-----------
LONGLONG dbPerformanceTimer() - Added
LONGLONG dbPerformanceFrequency() - Added
float dbRnd(float dbr) - Added float variant
float dbRND(float dbr) - Added float variant
float dbSqrt(float fValue) - Optimized
float dbSQRT(float fValue) - Optimized
void dbAddToRenderList(LPVOID pFunction, int iPriority) - Added
void dbRemoveFromRenderList(LPVOID pFunction) - Added
Fixed backspace not erasing character
char* dbInput() - Fixed
Display Module
--------------
Added variants to dbSetDisplayMode(Width, Height, Depth) for those familiar with DBPro
bool dbSetDisplayMode(int iWidth, int iHeight, int iDepth, int iVSyncOn) - Added variant
bool dbSetDisplayMode(int iWidth, int iHeight, int iDepth, int iVSyncOn, int iMultisamplingFactor, int iMultimonitorMode) - Added variant
Image Module
------------
void dbOpenImageBlock(char* szFilename, int iMode) - Added
void dbExcludeFromImageBlock(char* szExcludePath) - Added
void dbCloseImageBlock() - Added
void dbPerformChecklistForImageBlockFiles() - Added
int dbGetImageFileExist(LPSTR pFilename) - Added
Light Module
------------
The name of this command was changed from dbGetAmbientLight() in r111
int dbAmbientLight() - Changed
ODEPhysics Module
-----------------
Added ODE Physics from DBPro version 7.4 source as a starting point.
Added and modified a few functions and fixed a few other functions. Car physics not tested as of yet.
See DarkSDKOdePhysics.h for full list of functions.
Sound Module
------------
ogg sound file support
void dbLoadSound(LPSTR szFilename, int iID) - Fixed
void dbLoadSound(LPSTR szFilename, int iID, int iFlag) - Fixed
Text Module
-----------
bool dbFindFont(LPSTR szFont) - Added
bool dbLoadFont(LPSTR szFontFilename) - Added
bool dbUnloadFont(LPSTR szFontFilename) - Added