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.

Bug Reports / screen invalid bug

Author
Message
SoftMotion3D
AGK Developer
18
Years of Service
User Offline
Joined: 24th Aug 2005
Location: Calgary,Alberta
Posted: 31st May 2011 01:41
i posted about this error on the dbpro forums and then i realized there is a board for posting errors.... here was mine:

(running windows 7 and dbpro 1.075)
application will crash if you hit ctrl+alt+del and not redraw the scene.

this error only happens when a matrix exists....



Mistrel
Retired Moderator
18
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 1st Jun 2011 07:24
This seems to be a popular topic recently. It is not a bug.

http://forum.thegamecreators.com/?m=forum_view&t=180294&b=1&msg=2206665#m2206665

SoftMotion3D
AGK Developer
18
Years of Service
User Offline
Joined: 24th Aug 2005
Location: Calgary,Alberta
Posted: 2nd Jun 2011 22:53
Quote: "This seems to be a popular topic recently. It is not a bug.

"


actualy it is a bug.... test the code.

I know you need to reload all graphics and such when the program loses focus. If you actualy looked at the code and tried it....it crashes your app!

SoftMotion3D
AGK Developer
18
Years of Service
User Offline
Joined: 24th Aug 2005
Location: Calgary,Alberta
Posted: 2nd Jun 2011 22:54 Edited at: 2nd Jun 2011 22:56
i can get this code to work fine if its not a matrix that was needing to be re created.

Doesnt matter....like most commands that people find bugs with.....ill work around it.

Ill just hafta model a matrix from an alternate source and save it as a 3d object.... i was using the matrix only for a grid on my drawing program....but it cant recover from having a matrix exist then loose focus

Mistrel
Retired Moderator
18
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 3rd Jun 2011 01:16 Edited at: 3rd Jun 2011 01:21
You can't use screen invalid() as a way to recover from an invalid render device in DBP. This simply isn't possible to do safely. This command is misleading and does not provide information you can rely upon for this kind of event.

For example:



The only way to do this is to use another solution like PureGDK which supports D3D callbacks so that your recovery code will be called BEFORE execution is resumed.

Here is an example using PureGDK and PureBasic:



Here is an compiled example:

http://puregdk.com/files/upload/d3d-callbacks-matrix.zip

SoftMotion3D
AGK Developer
18
Years of Service
User Offline
Joined: 24th Aug 2005
Location: Calgary,Alberta
Posted: 3rd Jun 2011 17:06
why does it work fine if its 3d models then or textures?

ok here is a new sample code that should work but does not:



now if this was just a 3d object or textures it catches the data is missing and reloads it.

this is a bug!! it only happens with matrixes on dark basic pro 1.075 with windows 7. Ive had another person confirm that it was a bug on another forum...

Mistrel
Retired Moderator
18
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 3rd Jun 2011 22:08 Edited at: 19th Jun 2011 10:17
Your very small test example probably isn't crashing because it's not doing anything. But add any amount of code that expects to interact with the object that no longer exists. You are guaranteed to crash if the device invalidates in the wrong place.

This type of behavior is not supported by DBP. It is not a bug.




I reported this issue four years ago and it was rejected by Lee:

http://forum.thegamecreators.com/?m=forum_view&t=111781&b=15

SoftMotion3D
AGK Developer
18
Years of Service
User Offline
Joined: 24th Aug 2005
Location: Calgary,Alberta
Posted: 5th Jun 2011 06:38
ok... well thanks anyways....

i see nuclear basic is out today... so im gunna give that a test out

Mistrel
Retired Moderator
18
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 5th Jun 2011 08:27 Edited at: 5th Jun 2011 09:02
You can still use the DBP engine. I already posted an example on how to recovery from an invalid device.

I think you're taking your requirements a little too seriously. The engine is fine, it's just a limitation of the language; DBP is a hobbyist solution. Just don't hit ctrl-alt-del if you want to use it.

If you want something more why not try one of the advanced solutions for DBP that already exist? DarkGDK is free. PureGDK is also free while in beta. And the upcoming AppGameKit will be targeting several mobile platforms.

SoftMotion3D
AGK Developer
18
Years of Service
User Offline
Joined: 24th Aug 2005
Location: Calgary,Alberta
Posted: 6th Jun 2011 05:50
no i didnt mean to sound like i was giving up.... i just like to keep my options open. and im always interested in trying new developing packages.... i should also try the new agk app development kit when its released.

Login to post a reply

Server time is: 2024-04-23 13:27:16
Your offset time is: 2024-04-23 13:27:16