Skip to main content
GameDev.net gamedev.net
🔒 Locked

Do you understand this error?

Started by CamelFly Jun 11, 2002 at 3:56 AM 7 replies 1.9k views
Original Post
CamelFly
CamelFly
Hi! After hard work making anything at all visible in my new version of my fantasy style racer progress has come to a halt. After several computer lockdowns (no mouse movement) i decided to try using the debug version of the D3D dlls to find the problem. Said and done the program halts somewhere in EndScene with an error code of 0x8000003. At least that what my debugger claims the thread is. I have no idea what this means. The render produced by my code looks fine to me so I really dont know whats wrong here. Using W2k, DX8.1, MSVC 6 if that helps you to help me...
[Insert cool signature here]
DGates
DGates
If you check the return values from all your DX function calls you can catch when errors occur and find out what happened by the return value. There are functions you can use to turn those hex return values into meaningful messages.

Check out

DirectX 8.1
-> Introducing DirectX 8.1
-> Programming DirectX 8.1 with C/C++
-> Debugging DirectX Applications

in the DirectX SDK Help documentation.


CamelFly
CamelFly
There is not a single HRESULT in my application that will not result in an assertion failure. The thing is that this error _crashes_ my machine completly. Not that puny memory access fault but a real mouse lock crash. If i run it using debug dll''s it results in a messagebox saying

The exception Breakpoint
A breakpoint has been reached
(0x800000003) occurred in the application at location 0x77f9eeea9

If i run it in the debugger, that exception occurrs in disassebly somewhere and when i look at the threads window it says that my game thread is in EndScene(), which is in IDirect3DDevice8... so i''m puzzled what to do.
[Insert cool signature here]
CamelFly
CamelFly
Arghh... stepping through code says that the exception actually occurrs within Present(NULL, NULL, NULL, NULL); which renders me even more clueless...

[Insert cool signature here]
IndirectX
IndirectX
Hit F5 a couple more times, and D3D should dump a sensible error message in the debug output.
---visit #directxdev on afternet <- not just for directx, despite the name
CamelFly
CamelFly
Like.. the stuff _works_ I can see its output in the window but it till generates these exceptions. The only output i get is

Direct3D8: (INFO) :Driver swapped VB pointer at Lock in FlushStates
Direct3D8: (INFO) :Driver swapped VB pointer at Lock in FlushStates
Direct3D8: (WARN) :Too many changes: Limiting internal VB to sys mem.

Not counting stuff it says in the start. It''s on the highest debug level as well. When pressing F5 it just runs on like nothing happened. ALL HRESULTS are checked as well. I also compiled it and released it to my friend and he says it runs fine for him, which annoys me even more... :-)

[Insert cool signature here]
CamelFly
CamelFly
Well. Here is the stuff it says in the beginning:

Direct3D8: :====> ENTER: DLLMAIN(00ad3650): Process Attach: 00000660, tid=00000358
Direct3D8: (WARN) :Executing processor detection code (benign first-chance exception possible)

Direct3D8: (INFO) :MMX detected

Direct3D8: (INFO) entium Pro CPU features (fcomi, cmov) detected

Direct3D8: (INFO) :dwCPUFamily = 6, dwCPUFeatures = 7

Direct3D8: (INFO) :szCPUString = AuthenticAMD

Direct3D8: (INFO) :Win2K SP1 or above detected - enabling VB swap workaround

Direct3D8: :====> EXIT: DLLMAIN(00ad3650): Process Attach: 00000660
Direct3D8: (INFO) :Direct3D8 Debug Runtime selected.
Direct3D8: :This driver exposes an unrecognized DX6 style Z/Stencil format
Direct3D8: :This driver exposes an unrecognized DX6 style Z/Stencil format
Direct3D8: :This driver exposes an unrecognized DX6 style Z/Stencil format
Direct3D8: (INFO) :======================= Hal SWVP device selected

Direct3D8: :BackBufferCount not specified, considered default 1
Direct3D8: :DoneExclusiveMode
Direct3D8: (INFO) :HalDevice Driver Style 5

Direct3D8: (INFO) :Using X3D PSGP

Direct3D8: (WARN) :Ignoring redundant SetRenderState - 7

Direct3D8: (WARN) :Cannot compute WNear and WFar from the supplied projection matrix

Direct3D8: (WARN) :Setting wNear to 0.0 and wFar to 1.0

Direct3D8: (WARN) :Ignoring redundant SetRenderState - 137

( Hoping it helps anyone to help me... )

[Insert cool signature here]
IndirectX
IndirectX
Looks like your projection matrix is messed up. Are you SetTransform()'ing D3DTS_WORLD, D3DTS_VIEW and D3DTS_PROJECTION correctly?

[edited by - IndirectX on June 11, 2002 3:02:16 PM]
---visit #directxdev on afternet <- not just for directx, despite the name
CamelFly
CamelFly
Yes the projection matrix is properly set up.

The problem was solved however - by installing new drivers to the video card. Funny that it showed on just _my_ 3d program.. sigh..

Thanks for all the help people!
[Insert cool signature here]

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.