Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Dark GDK / DarkSDK Bugs

Author
Message
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 18th Feb 2005 04:12 Edited at: 16th Apr 2005 03:30
Here is a list of assorted DBPro bugs, that are currently know, in no real order :

A) Sprite collision is disabled - Works now
B) Sprite width/height commands are disabled - Works now
C) Possible point light problem.
D) dbXRotate, dbYRotate,dbZRotate are disabled. However they are internal commands.
E) dbGetTextureNonLocalVideoMemory() crashes the program
F) dbGetFileName is disabled
G) dbHideSprite, dbShowSprite, dbHideAllSprites, dbShowAllSprites are disabled - Works now
H) void dbExitPrompt ( char* MessageString, char* CaptionString ) generates compiler errors Works now
I) dbGetWindowSize is disabled.
J) dbMakeMemblockFromSound or possible dbMakeSoundFromMemblock messes up various types of wav files and introduces static to others.

Plus some of the documentation doesn't correspond to the prototypes and vice versa.

* by disabled I mean bugged...

Visit http://homepages.nildram.co.uk/~nickk
Bill Nighy - The Doctor for me...
posting unit #42
19
Years of Service
User Offline
Joined: 10th Dec 2004
Location:
Posted: 19th Feb 2005 07:23
dbInt returns a float which is always = 0.
no big loss though.

dbDrawSpritesFirst does the inverse, ie; sets sprites to draw after 3d.

ok im out.
Morcilla
21
Years of Service
User Offline
Joined: 1st Dec 2002
Location: Spain
Posted: 24th Feb 2005 01:07
Hi there,
I'm worried about the dbXRotate (and dbYRotate, dbZRotate) bug. I am near to translate my DBPro project to DBSDK, and I have a few questions:

@ Squidgy The Brick, what do you mean with
Quote: "However they are internal commands"
?

- Is dbRotate also affected?

- This is a serious bug, isn't it? If it is not, how are you controlling the rotation of your objects?

Thanks in advance.
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 24th Feb 2005 02:29
Dont confuse dbXRotate, dbYRotate and dbZRotate with dbXRotateObject, dbYRotateObject and dbZRotate object.
The first 3 are internal, the last 3 aren't (I kept forgetting the object part hence the reason I came across the problem).

Visit http://homepages.nildram.co.uk/~nickk/
Questions are a burden to others, answers a prison for oneself.
Morcilla
21
Years of Service
User Offline
Joined: 1st Dec 2002
Location: Spain
Posted: 24th Feb 2005 03:03
Ok, I see. No big problem then, thanks again.
Mike Johnson
TGC Developer
21
Years of Service
User Offline
Joined: 13th Sep 2002
Location: United Kingdom
Posted: 26th Feb 2005 03:52
Very shortly I will be continuing work on the upgrade for the SDK so now is the time to start posting about any kind of problems.

Please provide as much information as you can regarding any issues. Any code examples will help as I can test and see the problem faster and then set about fixing it.

I would also be interested to see if anyone has any suggestions for the upgrade as I may be able to implement certain things for release.
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 26th Feb 2005 03:54 Edited at: 26th Feb 2005 04:08
I'll see what I can do with example programs

Sprite Collsion bug :



Sprite Width/Height problem (works with dbGetImage though) :



Visit http://homepages.nildram.co.uk/~nickk/
Questions are a burden to others, answers a prison for oneself.
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 26th Feb 2005 04:13
dbGetTextireNonLocalVideoMemory bug :



Visit http://homepages.nildram.co.uk/~nickk/
Questions are a burden to others, answers a prison for oneself.

Attachments

Login to view attachments
billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 26th Feb 2005 04:19 Edited at: 17th Apr 2005 08:04
dbPointLight:



If you comment out dbPointLight, cone will render at 0,0,0. If you leave it as is, it will not render at 0,0,0. Not sure if its rendering somewhere else or just not rendering.

BB:This does seem okay...
billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 26th Feb 2005 04:29
Documentation:

Pretty much all of the availability functions in Basic3D do not match the header files.
Mike Johnson
TGC Developer
21
Years of Service
User Offline
Joined: 13th Sep 2002
Location: United Kingdom
Posted: 26th Feb 2005 04:29
Thanks for this, please keep them coming

If anyone would like to contribute any demo projects, examples, tutorials etc for the next upgrade that can be included with the installer please let me know.
Sephnroth
21
Years of Service
User Offline
Joined: 10th Oct 2002
Location: United Kingdom
Posted: 26th Feb 2005 13:22
heres some suggestions (or a wish list) of things I would like to see in the next update or future updates:

over-ride of PasteSprite() with 4 extra parameters (left, top, right, bottom) to specify a source rect to paste with (allowing for custom clipping of the image)

greater documentation on some of the internal commands, specifically ones allowing access to directX objects and maybe examples of how you would implement them correctly

PasteSpriteInImage() would be AWESOME but I wont hold my breath for that one XD

Most of the bugs I have found I told TGC about and I see listed up there already. I had a whole list of bugs AND suggestions but i cant remember any.. hey its 5:21am i'll get back to you when im awake XD

[07:16:59-pm] « Sephnroth » you were dreaming about lee...
[07:17:13-pm] « Mouse » stfu
[07:17:22-pm] « Mouse » he was hanging himself lol
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 26th Feb 2005 16:17
Once I've got the sprite collision working, I can send you another of my conversions.

Visit http://homepages.nildram.co.uk/~nickk/
Questions are a burden to others, answers a prison for oneself.
posting unit #42
19
Years of Service
User Offline
Joined: 10th Dec 2004
Location:
Posted: 27th Feb 2005 00:54
dbStr$();

It always creates a new string and returns a pointer to it.
This means the memory is never de alocateed, open up the
task manager and watch the memory usage shoot up.

Obviously this only happens if you call it every loop,but I think it should be mentioned in the docs.

Heres a fix for it.

Benjamin
21
Years of Service
User Offline
Joined: 24th Nov 2002
Location: France
Posted: 27th Feb 2005 02:39
Its strange seeing everyone using commands like that when they can be done in C++ anyway



Like that ^


"Lets migrate like bricks" - Me
billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 27th Feb 2005 08:14
Upgrade suggestion:

Have all functions return an error code. So for example, if you try to load a bsp and it doesnt work. Then the function returns some code which specifies the error. And then in the docs you say which error code corresponds to which error.
Benjamin
21
Years of Service
User Offline
Joined: 24th Nov 2002
Location: France
Posted: 28th Feb 2005 02:48
Thats a good idea. But they haven't properly documented specific errors in the past, so I don't think they would start now


"Lets migrate like bricks" - Me
Morcilla
21
Years of Service
User Offline
Joined: 1st Dec 2002
Location: Spain
Posted: 28th Feb 2005 20:20
We have a code here http://forum.thegamecreators.com/?m=forum_view&t=49471&b=22&p=0 that seems to fail with DBSDK and works fine with DBPro.

It is just a simple .fx shader file that loads and applies.
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 28th Feb 2005 20:46
Yes, I have trouble with FX's too.

Visit http://homepages.nildram.co.uk/~nickk/
Questions are a burden to others, answers a prison for oneself.
Paranoid Android
19
Years of Service
User Offline
Joined: 5th Feb 2005
Location:
Posted: 1st Mar 2005 00:40
Namespacing instead of the db prefix could be cool.

Intellisense might be very helpful.

Cheers,
Paranoid Android.
billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 1st Mar 2005 01:43
Quote: " Thats a good idea. But they haven't properly documented specific errors in the past, so I don't think they would start now"


Yeah error codes can be a lot of work. At the very least, it would be nice for functions that load media from files. And also for functions that apply that media to an object such as textures or shaders.
drnelson
19
Years of Service
User Offline
Joined: 26th Feb 2005
Location:
Posted: 1st Mar 2005 02:42
Dark Games SDK Shader Errors:

Basicly when trying to load a simple shader the dbSetEffectOn() function does not work with standard HLSL .fx file format. Even with the Semantics that DG's uses I still get an error:
Quote: "Unhandled exception ... Access Violation writing location ..."


I also tried useing the dbLoadEffect(), seteffect, and setTechnique functions instead of using the simple loader. I still get the same errors. I have tried all sorts of solutions but can't seem to work out this bug with what I have so I am pretty sure there is an issue with the SDK. I have included both my source.cpp file and my .fx file for testing.

My .fx file works great in DX9. I feel that DG's should not require extra semantics. I feel that you should have to call functions to set all global variables rather than have it done automatically. If that is the case then we can design .fx files in render monkey, straight HLSL, and it will all be immeadatly portable to DG's SDK. I really want to do some more advanced stuff in DGSDK with shaders such as Parallax Mapping etc.. but I'm not sure if it'll be possible.. And on a side note, I've tried tons of different methods in my .fx file, such as using structs, accepting input in the PS() and various other things. DBPro users claim it works fine in their programs.

Hope this helps and thanks,
David
dbcoder2006
20
Years of Service
User Offline
Joined: 14th Nov 2003
Location:
Posted: 1st Mar 2005 11:27
Hl bsp's simply do not work. I have used the bsp's I am refering in DBP flawlessly, but they do not work w/ DGSDK. It returns a access violation
billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 2nd Mar 2005 02:20
drnelson - You should use code tags instead of the source button as it is bugged. And we cant see your code because of it.
zero impact
19
Years of Service
User Offline
Joined: 1st Mar 2005
Location:
Posted: 2nd Mar 2005 05:08
The DarkSDK cannot compile with VS8, they discontinued the libc.lib and one should use the libcmt.lib that is multithreaded, since the darksdk source is not available to implement the change .... is there maybe a fix for this .....
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 2nd Mar 2005 05:56
As VS .Net 2005 wont be out until later in the year, I dont think it's a great worry yet - at least not until I get it.

Visit http://homepages.nildram.co.uk/~nickk/
Questions are a burden to others, answers a prison for oneself.
Artus
19
Years of Service
User Offline
Joined: 25th Feb 2005
Location: France
Posted: 8th Mar 2005 04:50
Two little things:

- dbMaximizeWindow and dbMinimizeWindow are implemented with a "s" instead of "z" in the sdk

- I think most of the games are running full screen. This is the default behaviour in DBPro with the standard IDE. However, programs written with the SDK are running in a window by default. From my short experience, you need to add something like:
dbSetWindowLayout( 0,0,1);
dbMaximiseWindow();
in the DarkSDK() function to get a full screen (by the way, I encountered problems of erratic behaviour with dbSetWindowOff() so I dropped this solution but maybe it was my fault). The problem is that when the soft loads, there is a transcient apparition of a window entitled "Dark Game SDK" before the program reaches DarkSDK() and maximizes the window. Could it be possible to get an earlier control of the window layout than in DarkSDK() ?
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 8th Mar 2005 05:08
One other thing with regards to Window & FSEX mode - all graphics data is removed and unfortunately you cant re-load the graphics (get graphics not loaded errors).

Visit http://homepages.nildram.co.uk/~nickk/
Questions are a burden to others, answers a prison for oneself.
Y S C
19
Years of Service
User Offline
Joined: 22nd Jan 2005
Location:
Posted: 14th Mar 2005 06:47
the hide/show object is not working properly.
when i use hide its hiding all the object that have smaller
index. and show works only on the object with the larger index.
(big problome....)
Y S C
19
Years of Service
User Offline
Joined: 22nd Jan 2005
Location:
Posted: 14th Mar 2005 07:04
OOOOOOOps my mistake.
Mike Johnson
TGC Developer
21
Years of Service
User Offline
Joined: 13th Sep 2002
Location: United Kingdom
Posted: 14th Mar 2005 20:16 Edited at: 14th Mar 2005 20:21
Some notes on what has been fixed so far today -

* dbSpriteCollision now returns correct value
* dbSpriteWidth returns the proper value
* dbSpriteHeight returns the right value
* dbHideSprite works correctly
* dbShowSprite linked in properly
* dbHideAllSprites updated
* dbShowAllSprites updated
* dbGetTextureNonLocalVideoMemory no longer crashes
* dbGetFileName enabled
* updated function listing for dbExitPrompt

Squidgy The Brick - The function dbGetWindowSize is working correctly here. When you say it's disabled what do you mean by that? Do you get a specific error?
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 14th Mar 2005 20:28 Edited at: 14th Mar 2005 20:33
With dbGetWindowSize, the returning values just hold 0, no matter what the window size is.


Oohh - and dont forget the FX problems...

Visit http://homepages.nildram.co.uk/~nickk/
Questions are a burden to others, answers a prison for oneself.
Dark Psychosis
19
Years of Service
User Offline
Joined: 9th Mar 2005
Location:
Posted: 14th Mar 2005 21:42
Music Bugs -

1. as far as I can see theres no way of detecting that a MP3 has finished playing (come to its end). it'd be nice if (unless looping) the track stopped when it finished so dbMusicPlaying would return 0 allowing ends to be detected.

2. if a track is set to looping, it plays once and thats it.

3. dbGetNumberOfCDTracks returns the wrong number of tracks. all the time.

these 3 bugs (features) make it really hard to make a playlist system. or just make sure that theres always music playing.


I realise, I could store a track length for each track and count that down while I'm playing it, but its not really as practical or straight forward as just simply having the SDK music system spot the end of a track.
Gen
19
Years of Service
User Offline
Joined: 6th Jul 2004
Location: Oklahoma, USA
Posted: 15th Mar 2005 09:35
Quote: "Some notes on what has been fixed so far today"


Ahh... Finally getting a little closer to my purchase! Me happy

Soon to come...
Dark IDE, New IDE for DarkBASIC Pro!
Two plug-ins, A Time/Date and New File commands.
Artus
19
Years of Service
User Offline
Joined: 25th Feb 2005
Location: France
Posted: 15th Mar 2005 16:34
Not a bug but a suggestion for slight modification.

In the code skeleton created by the DarkSDK wizard, the program returns directly if escape is pressed. This means that instructions past the while ( LoopSDK ( ) ) {..} loop are never reached, contrary to that after the do..loop in DBPRO.



I would suggest to replace "return" by "break"



Of course, the cleaning code could be included in the "if ( dbEscapeKey ( ) ){..}", but the general loop would less readable.
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 15th Mar 2005 22:43
Good point.

Visit http://homepages.nildram.co.uk/~nickk/
Questions are a burden to others, answers a prison for oneself.
Whimsy
19
Years of Service
User Offline
Joined: 16th Mar 2005
Location: UK
Posted: 17th Mar 2005 07:14
I hope this is the right place. I've been tinkering with the SDK and have run into a couple of odd problems.

First is a problem with 3D sound effects. They don't seem to work if I set the sync rate, e.g.

I can hear the sound pan from right to left if I leave out the dbSyncRate(), but if I include it, the sound doesn't move.

Another odd problem was with object limbs. If I make an object limb, and then scale the object, the dbLimbOffsetXYZ() commands don't reflect the scaling. I don't know whether or not they're supposed to, but it confused me when I tried it.


Lastly, how do you get the command line parameters? I can't get the dbCl$() command to work, and there doesn't seem to be any parameters to the DarkSDK() function.

Thanks
Artus
19
Years of Service
User Offline
Joined: 25th Feb 2005
Location: France
Posted: 22nd Mar 2005 16:25
Some bugs and remarks :

- dbGetTerrainXSize and dbGetTerrainZSize return 0

- Case is not consistent in dbChecklistxxx (Checklist or CheckList):
dbPerformCheckListForObjectLimbs()
dbChecklistQuantity()
dbChecklistString()

- Why does dbChecklistString use LONGLONG instead of char* ?? This forces unnecessary casting:

Artus
19
Years of Service
User Offline
Joined: 25th Feb 2005
Location: France
Posted: 23rd Mar 2005 16:03
My "remark" concerning dbCheckListString should have been stated as a bug, as in fact the use of the function provokes a compiler error without casting and a runtime error (debug assertion failed) with casting.

There is a total discrepency between declarations in help file:
char* dbCheckListString ( int IntegerValue )

and in DarkSDKSystem.h header:
DWORD dbChecklistString( DWORD pDestStr, int iIndex )

I saw LONGLONG instead of DWORD for this function somewhere (hint from compiler ?), but casting from char* to LONGLONG or DWORD gives the same (bad) result.

Definition from help fine looks good (except for CheckList instead of Checklist) and it would be quite nice if it would work.
Tak Wing
20
Years of Service
User Offline
Joined: 14th Apr 2004
Location:
Posted: 1st Apr 2005 02:24
Not sure if this is a bug. I am using Traditional Chinese WinXP, running VS6 with SP6.

The resource file generated (Script1.rc) from the wizard cannot be compiled. To correct the problem, I need to comment out part of the code and replace it with something else (which is actually copied from the resource file generated by VS6 standard win32 application wizard).

You can refer to the following code fragement to see what I have done:

OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 1st Apr 2005 06:22
Probably because the project is set for non-unicode languages.

Visit http://homepages.nildram.co.uk/~nickk/
Questions are a burden to others, answers a prison for oneself.
Artus
19
Years of Service
User Offline
Joined: 25th Feb 2005
Location: France
Posted: 5th Apr 2005 17:33
- void dbGhostMatrixOn ( int MatrixNumber, int Mode ) is not implemented

- dbParticlesExist always returns false
- dbHideParticles has no effect
- dbDeleteParticles has no effect


Notes:
It is not so interesting to spend a large part of programming time debugging a software we have paid for, especially when the so-called bugs are mostly functions that simply do not work at all and that could have been at least tested once before the public release. I would say that up to now my first reaction to a bug in a software written by me was to check my own code, not the code from commercial libraries. I have to change my habits because suspecting my code first has made be loose a lot of time with Dark SDK. (I would add that trying to understand, or to "interpret", the DBPro documentation has also made me loose quite a number of hours..).

I also think that the minimum would be that function definitions in help would match definitions in headers. It seems to me that it is just a question, for the company commercialising the library, of comparing line by line the headers and the help; quite a boring work, I admit, but I don't see why I should do it for them.

This does not prevent me from being grateful to TGC conceptors and programmers for the fantastic tool they have made available to us !
Ancient Lady
Valued Member
20
Years of Service
User Offline
Joined: 17th Mar 2004
Location: Anchorage, Alaska, USA
Posted: 7th Apr 2005 23:03
I have run into two, possibly related, problems. Fixing either would allow me to build my games easier (I can brute force a solution, but would rather to it properly).

1. The dbLimbAngleY function does not return the proper value, even when the limb is clearly changing angle
2. The dbObjectPosition<X><Y><Z> and dbObjectAngle functions do not return values for an object that is glued to a limg, even when the object is moving

I will send the model and VC7 project to anyone interested in looking into this. The model was built with 3ds max 6 and converted to .x using Deep Exploration.



Cheers,
Ancient Lady
Smithy
19
Years of Service
User Offline
Joined: 8th Dec 2004
Location: Switzerland
Posted: 12th Apr 2005 21:13 Edited at: 14th Apr 2005 02:35
Not a real bug but...
From what I see in the help file, there should be more
than only the command descriptions, it seems there are
also kind of tutorials etc, but they are not accessible
trough the index/overview.

As there was no document like a "handbook" in the
electronic version, I would really like to see a
"debugged" helpfile.

I am looking forward to the update
DaByte

//edit
@mod
Maybe move over to: "Errors in the SDK CHM file" (?)
http://forum.thegamecreators.com/?m=forum_view&t=51341&b=22

//Pentium IV 3200E/Prescott; 800Mhz FSB; Hyperthreading; WinXP Pro (!XP2); ATI R9700PRO; 1024MB RAM (2x 512MB "DualChanneled"; VC++ 6.0; Delphi; ADSL;
billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 17th Apr 2005 08:26
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 29th Apr 2005 05:56
Ancient Lady - Can you make the model availiable - Its time to test the code in 1.1 now.

Visit http://homepages.nildram.co.uk/~nickk
Calm down dear! Its only an election...
Ancient Lady
Valued Member
20
Years of Service
User Offline
Joined: 17th Mar 2004
Location: Anchorage, Alaska, USA
Posted: 29th Apr 2005 07:41
Bouncy Brick (cool name),

The ObjectPosition<X><Y><Z> for a glued limb now work (works?) with 1.1.

Using dbLimbDirectionY (as suggested elsewhere) instead of dbLimbAngleY gives sufficient information for my purposes. Although, being able to use the other would be good. (Functions should work as advertised.)

I have e-mailed you the model using the 'Contact' option from your site.

Cheers,
Ancient Lady
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 30th Apr 2005 00:31
Quote: "Bouncy Brick (cool name),"

Well, anyone as cool as me has to have a cool name.

I'll check the program out later, whilst you said it now works in 1.1, its always worth another check.

Visit http://homepages.nildram.co.uk/~nickk
Calm down dear! Its only an election...
Sephnroth
21
Years of Service
User Offline
Joined: 10th Oct 2002
Location: United Kingdom
Posted: 30th Apr 2005 04:40
*takes a pin to bouncy brick's head*

[07:16:59-pm] « Sephnroth » you were dreaming about lee...
[07:17:13-pm] « Mouse » stfu
[07:17:22-pm] « Mouse » he was hanging himself lol
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 30th Apr 2005 04:48


Visit http://homepages.nildram.co.uk/~nickk
Calm down dear! Its only an election...

Login to post a reply

Server time is: 2024-04-26 21:57:48
Your offset time is: 2024-04-26 21:57:48