Orbiter-Forum  

Go Back   Orbiter-Forum > Orbiter Space Flight Simulator > Orbiter Visualization Project
Register Blogs Orbinauts List Social Groups FAQ Projects Mark Forums Read

Orbiter Visualization Project Orbiter external graphics development.

Reply
 
Thread Tools
Old 10-17-2010, 09:26 PM   #61
Xyon
Puts the Fun in Dysfunctional
 
Xyon's Avatar


Default

What's your hardware, orb? I'm on a Geforce 8600 GTsomethingorothermaybeX.
Xyon is online now   Reply With Quote
Old 10-17-2010, 09:34 PM   #62
jarmonik
Beta Tester

Default

Quote:
Originally Posted by orb View Post
 And this error probably says that my laptop's graphics card isn't compatible with D3D9Client (?):
Hard to say, the D3D9ClientLog.html would contain more information about it. It's good to check the Log always when something happens.
jarmonik is offline   Reply With Quote
Old 10-17-2010, 09:42 PM   #63
orb
O-F Administrator
Ninja
 
orb's Avatar

Default

Quote:
Originally Posted by Xyon View Post
 What's your hardware, orb? I'm on a Geforce 8600 GTsomethingorothermaybeX.
It's "VIA/S3G UniChrome Pro IGP" here, but this computer isn't meant for Orbiter (though 2006 works fine on it, and 2010 with built-in/D3D7Client runs, though with graphics glitches). I just wanted to test whether it will crash like for you, but I can't do it on a better machine (with 8800GTS) for now.


The log says almost the same as the message box:
Code:
(Sun Oct 17 23:41:59 2010)(0xD04)[WARNING] [Not a pure device]
(Sun Oct 17 23:41:59 2010)(0xD04)[ERROR] .\D3D9Frame.cpp Line:282 Error:-2005530516 m_pD3D->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, m_hWnd, devBehaviorFlags, &m_d3dPP, &m_pd3dDevice)
(Sun Oct 17 23:42:00 2010)(0xD04)[ERROR] [Device Initialization Failed]
(Sun Oct 17 23:42:00 2010)(0xD04)[ERROR] Could not initialise 3D environment
orb is offline   Reply With Quote
Thanked by:
Old 10-17-2010, 09:52 PM   #64
jarmonik
Beta Tester

Default

Quote:
Originally Posted by orb View Post
 (Sun Oct 17 23:41:59 2010)(0xD04)[WARNING] [Not a pure device]
Yes, that what I thought. Pure device initialization failed. I'll try to make the client go without it.
jarmonik is offline   Reply With Quote
Thanked by:
Old 10-19-2010, 10:41 AM   #65
jarmonik
Beta Tester

Default

The project situation doens't look too good right now. I got the Vessel mesh and VC rendering online but there is no working state vector information coming out from the Orbiter. So the meshes are appearing randomly here and there.

The state vectors of the Earth seems to stay still most of the time and there is a major jump in evey 10th to 100th second. Also the local state vectors are rounded to nearest 1024m in z-direction and 16384m in a x-direction. Only the y-asix seems to have normal operation.

So the vessel state vector output from the Orbiter is _pos = _V( floor(x/16384)*16384, y, floor(z/1024)*1024 );

There is absolutety no point in continuing this project until the "CTD" issues with the modules are fixed and the state vector output is normal. So far, I have found nothing from the D3D9Client that could cause this.

The latest code is zipped in a package but there are no binaries since they wouldn't work anyway. I am putting this project aside for now.

Last edited by jarmonik; 10-30-2010 at 07:43 PM.
jarmonik is offline   Reply With Quote
Thanked by:
Old 10-21-2010, 04:49 PM   #66
jarmonik
Beta Tester

Default

It's a time for good news once in a while. I was able to track down the issue causing the failure. I still don't know what is it or why does it happen but there is a flag called D3DCREATE_FPU_PRESERVE that must be used when the 3D Device is created. Without it, the DirectX will "somehow" alter the behaviour of the FPU and that will cause the physics engine of the Orbiter to go rogue with a catastrophic results.

I'll try to build a new package ASAP.
jarmonik is offline   Reply With Quote
Old 10-21-2010, 06:13 PM   #67
dbeachy1
O-F Administrator
 
dbeachy1's Avatar


Default

Great catch, mate! I dug up some more info in that rather obscure flag you found here:

Quote:
D3DCREATE_FPU_PRESERVE

Set the precision for Direct3D floating-point calculations to the precision used by the calling thread. If you do not specify this flag, Direct3D defaults to single-precision round-to-nearest mode for two reasons:
Double-precision mode will reduce Direct3D performance.
Portions of Direct3D assume floating-point unit exceptions are masked; unmasking these exceptions may result in undefined behavior.
So apparently Direct3D sets the FPU to single-precision mode by default, which wreaks havoc with the Orbiter core's calculations like you said. I'd never even heard of this flag -- it should be up in bold red letters at the top of the Direct3D documentation given the nasty side-effects it has on programs that expect doubles to actually be treated as doubles.

Great job!!
dbeachy1 is offline   Reply With Quote
Thanked by:
Old 10-21-2010, 06:39 PM   #68
jarmonik
Beta Tester

Default

I got the package ready. Place the *.cfg and *.fx files in the Orbiter's root folder and the *.dll files in the /Modules/Plugins/ folder. The configuration file has a debug parameter "DebugLvl" that will control how much information is printed in the D3D9ClientLog.html. It's good to keep it in zero in this release.

The package is containing two prebuild DLLs. D3D9ClientSL.dll is build using a static linking and the other one is using dynamic linking and it will require VC++ 2008 runtime libraries. Install only one of them.

Known issues:

- Dialog windows are missing the close button ??? Clicking the top-right corner will close the window anyway.
- VC may not always appear and when it do appear some of the textures are black.
- Exterior mesh lighting is offline therefore they are fully lit and a few textures containing a vessel ID's are black. Due to failure in a draw to texture functions.
- Glass cockpit buttons aren't always updated due to unknown reason.


Online Features:
- 2D Panel View
- Glass cockpit
- HUD
- MFDs
- Exterior view (F1)
- Planetarium mode (without object markers and labels)

Current build is only tested with stock DeltaGlider. I'll focus into the texture issues, Exterior mesh lighting and Virtual cockpit issues next.

I suppose the celestial sphere background images are something that someone else could start working on.

Last edited by jarmonik; 10-21-2010 at 07:05 PM.
jarmonik is offline   Reply With Quote
Old 10-21-2010, 07:13 PM   #69
jarmonik
Beta Tester

Default

I forgot something important from the package so here is a new one.

Last edited by jarmonik; 10-30-2010 at 07:43 PM.
jarmonik is offline   Reply With Quote
Thanked by:
Old 10-22-2010, 05:36 PM   #70
Tschachim
Beta Tester
 
Tschachim's Avatar


Default

Yikes, it's working!

Some remarks, you're probably already aware about that:

- DirectX August 2009 or later is necessary because of the d3d9_42.dll
- I need to remove all vessels except the Delta Glider from the used scenario
- I need to remove all AddExhaustStream calls from the Delta Glider otherwise it crashes in this call

Please keep it up, we really need a newer client than DirectX 7 at some time!

Cheers
Tschachim
Attached Thumbnails
DX9.jpg   DX9.2.jpg  
Tschachim is offline   Reply With Quote
Old 10-22-2010, 05:44 PM   #71
Xyon
Puts the Fun in Dysfunctional
 
Xyon's Avatar


Default

Quote:
Originally Posted by Tschachim View Post
 Yikes, it's working!
Still not for me, this is all I get:

Xyon is online now   Reply With Quote
Old 10-22-2010, 05:47 PM   #72
DaveS
Addon Developer
 
DaveS's Avatar


Default

Quote:
Originally Posted by Tschachim View Post
 Please keep it up, we really need a newer client than DirectX 7 at some time!
DaveS is online now   Reply With Quote
Thanked by:
Old 10-22-2010, 05:52 PM   #73
Tschachim
Beta Tester
 
Tschachim's Avatar


Default

Quote:
Originally Posted by Xyon View Post
 Still not for me, this is all I get
Please try again with the attached DeltaGlider.dll (Modules directory) and one of the attached scenarios, if you didn't remove the AddExhaustStream calls from your DeltaGlider.dll
Attached Files
File Type: zip DG DX9.zip (173.1 KB, 19 views)
Tschachim is offline   Reply With Quote
Thanked by:
Old 10-22-2010, 06:10 PM   #74
Xyon
Puts the Fun in Dysfunctional
 
Xyon's Avatar


Default

OK! It doesn't crash!

However... it doesn't render much. I get a csphere and, with a landed DG on Earth, blue sky fading to stars, but no planets, no DG exterior. No Sun, even.

Xyon is online now   Reply With Quote
Old 10-22-2010, 06:15 PM   #75
Tschachim
Beta Tester
 
Tschachim's Avatar


Default

Quote:
Originally Posted by Xyon View Post
 However... it doesn't render much. I get a csphere and, with a landed DG on Earth, blue sky fading to stars, but no planets, no DG exterior. No Sun, even.
Well, if I understand Jarmo correctly, it isn't supposed to do more yet, but you should see the DG exterior in external view, see my screenshot.

Still a long way to go, of course, but Rome wasn't built in a day, too...
Tschachim is offline   Reply With Quote
Reply

  Orbiter-Forum > Orbiter Space Flight Simulator > Orbiter Visualization Project

Tags
d3d9client, graphicsclient


Thread Tools

Posting Rules
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
Forum Jump


All times are GMT. The time now is 07:45 PM.

Quick Links Need Help?


About Us | Rules & Guidelines | TOS Policy | Privacy Policy

Orbiter-Forum is hosted at Orbithangar.com
Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright 2007 - 2012, Orbiter-Forum.com. All rights reserved.