- Joined
- Feb 4, 2008
- Messages
- 9,450
- Reaction score
- 705
- Points
- 203
What are the required items to be able to compile the D3D9Client sources? I want to do some tweaks to sunrise/sunset color and it seems like you can't do that from the fx files.
What are the required items to be able to compile the D3D9Client sources? I want to do some tweaks to sunrise/sunset color and it seems like you can't do that from the fx files.
1. Required components
----------------------
To compile the sources of the D3D9 graphics client, you need:
* The latest Orbiter release (base + SDK packages), available from the
download page at the Orbiter site http://orbit.medphys.ucl.ac.uk/
* The latest Orbiter beta diffs, available under
download.orbit.m6.net/betaNG/orbiter_beta.html
* A Windows C++ compiler (Visual Studio 2008 Express is ok, later should be
fine, other compilers may or may not work).
* For the various graphics clients, you also need the respective 3-D
graphics SDKs. The D3D9 client was built with the MS DirectX February 2010
SDK.
You need the DirectX End-User Runtimes (February 2010 or newer) to run
D3D9Client. It can be downloaded at Microsoft Download Center at
http://www.microsoft.com/download/en/details.aspx?id=9033
(I don't know whether later DX SDK's still support the DX9 interface, but it
may be worth a try.)
* To recompile the D3D9 source documentation you need Doxygen from
http://www.stack.nl/~dimitri/doxygen/
There is a doxygen configuration file in D3D9Client/doc/Doxyfile which
can be used to generate the compressed html help file
orbitersdk/D3D9Client/doc/D3D9Client.chm included in the repository.
Additionally to doxygen itself some other packets might be needed (depending
on the output format you would like to generate) to create the 'chm' file
you need:
- Microsoft HTML Help Workshop (compiler for .CHM files)
http://go.microsoft.com/fwlink/?LinkId=14188
- Graphviz (for the 'dot' tool to generate graphs)
http://www.graphviz.org/
Thanks. By "empty header" do you just mean an empty text file with the file name "nvapi.h"? Also, you don't happen know where the code for the sunrise/sunset effect is?From Orbitersdk\D3D9Client\README.txt :
This information basically tells it all, but might be a bit outdated by now :blush:Code:1. Required components ---------------------- To compile the sources of the D3D9 graphics client, you need: * The latest Orbiter release (base + SDK packages), available from the download page at the Orbiter site http://orbit.medphys.ucl.ac.uk/ * The latest Orbiter beta diffs, available under download.orbit.m6.net/betaNG/orbiter_beta.html * A Windows C++ compiler (Visual Studio 2008 Express is ok, later should be fine, other compilers may or may not work). * For the various graphics clients, you also need the respective 3-D graphics SDKs. The D3D9 client was built with the MS DirectX February 2010 SDK. You need the DirectX End-User Runtimes (February 2010 or newer) to run D3D9Client. It can be downloaded at Microsoft Download Center at http://www.microsoft.com/download/en/details.aspx?id=9033 (I don't know whether later DX SDK's still support the DX9 interface, but it may be worth a try.) * To recompile the D3D9 source documentation you need Doxygen from http://www.stack.nl/~dimitri/doxygen/ There is a doxygen configuration file in D3D9Client/doc/Doxyfile which can be used to generate the compressed html help file orbitersdk/D3D9Client/doc/D3D9Client.chm included in the repository. Additionally to doxygen itself some other packets might be needed (depending on the output format you would like to generate) to create the 'chm' file you need: - Microsoft HTML Help Workshop (compiler for .CHM files) http://go.microsoft.com/fwlink/?LinkId=14188 - Graphviz (for the 'dot' tool to generate graphs) http://www.graphviz.org/
- I for example use the "Visual Studio 2010 C++ Express" for building the client.
- And the 'Beta' of Orbiter is not needed (a Orbiter100830 + SDK also works and is by the way the default build environment of Jarmo)
- A SVN-Client to get the sources of D3D9Client might be usefull although a download of the sources should be enough.
If you don't like to install the NVIDIA API (needed since stereoscopic option was introduced in the Client), you might need to add an empty header "nvapi.h" into the main source directoy (Orbitersdk\D3D9Client\)
/Kuddel
Yes[1]! ...and No, sorry[2]Thanks. By "empty header" do you just mean an empty text file with the file name "nvapi.h"? Also, you don't happen know where the code for the sunrise/sunset effect is?
// ==============================================================
// nvapi.h
// Dummy header to be able to build the D3D9Client without
// the NVIDIA NvAPI interface installed.
// ==============================================================
I tried altering the variables in the sunset section and all it did was change the effect the sunset/sunrise had on the atmosphere. I guess I should have clarified that I wanted to alter the color sunset/sunrise has on the meshes, not the atmosphere.[2]..but I would guess it's in HazeManager::RenderBasic(...)
I guess it's in D3D9Util.cpp: SurfaceLighting (for base objects) and OrbitalLighting (for vessel objects) functions.I guess I should have clarified that I wanted to alter the color sunset/sunrise has on the meshes, not the atmosphere.
Thanks. Unfortunately I can't make heads or tails of the code. Could someone try to break it down? What I want do is to tweak the color as well as the intensity.I guess it's in D3D9Util.cpp: SurfaceLighting (for base objects) and OrbitalLighting (for vessel objects) functions.
You can change the color as also its intensity during sunrise and sunset with changing this constant:Could someone try to break it down? What I want do is to tweak the color as well as the intensity.
// Amount of color component that will be removed:
// red green blue
D3DXVECTOR3 r0 = _one - [u][b]D3DXVECTOR3([color=red]0.65[/color]f, [color=green]0.75[/color]f, [color=blue]1.0[/color]f)[/b][/u] * disp;
..I'm dynamically adding animations and meshes. When working in D3D9 client, there seems to be a problem with AddAnimationComponent. ...
Does anybody know why orbiter 2010 with the latest D3D9 client hangs up when activating the B3OP.dll modul which comes with the most excellent Vostok addon by igel? Does anybody else have this problem and are there any workarounds or solutions know to it?
Thanks a lot!
C
**** Orbiter.log
Build Aug 30 2010 [v.100830]
Timer precision: 4.05195e-007 sec
Found 0 joystick(s)
Module AtlantisConfig.dll .... [Build 100830, API 100830]
Module AtmConfig.dll ......... [Build 100830, API 100830]
Module DGConfigurator.dll .... [Build 100830, API 100830]
Module D3D9Client.dll ........ [Build 130923, API 100830]
Module AeroBrakeMFD.dll ...... [Build ******, API 100830]
---------------------------------------------------------------
>>> WARNING: Obsolete API function used: oapiRegisterMFDMode
At least one active module is accessing an obsolete interface function.
Addons which rely on obsolete functions may not be compatible with
future versions of Orbiter.
---------------------------------------------------------------
Module AtmDataMFD.dll ........ [Build ******, API 060425]
Module CameraMFD.dll [API v.060425]
CameraMFD.dll - Developer hint 3
Error loading module Modules\Plugin\CameraMFD.dll (code 1114)
Module DVToolsMFD.dll ........ [Build 120331, API 100830]
Module Lagrange.dll .......... [Build ******, API 060425]
Module LagrangeMFD.dll ....... [Build ******, API 060425]
Module Load.dll .............. [Build 110920, API 100830]
Module Map3DMFD.dll .......... [Build 101102, API 100830]
Module Telescope.dll ......... [Build 110413, API 100830]
Module OrbiterSound.dll ...... [Build 121120, API 100830]
Module ExtMFD.dll ............ [Build 100830, API 100830]
Module ScnEditor.dll ......... [Build 100830, API 100830]
Module transx.dll ............ [Build 100824, API 100823]
**** Creating simulation session
D3D9Client: [DirectX 9 Initialized]
D3D9Client: Sytem has XNA math support
D3D9Client:WARNING: [Hardware has only a limited non-power of 2 texture support]
D3D9Client: [3DDevice Initialized]
D3D9Client: [Compiling Effects for Shader Model 3.0]
D3D9Client: [Loading Stars]
D3D9Client: [Loading Constellations]
D3D9Client: [D3D9Client Initialized]
Module Sun.dll ............... [Build 100830, API 100830]
VSOP87(E) Sun: Precision 1e-006, Terms 554/6634
Finished initialising world
Module XR2Ravenstar.dll ...... [Build 130504, API 100830]
Module IMS.dll ............... [Build 130413, API 100830]
Module UCGOCars.dll .......... [Build 121103, API 100830]
Module UCGODynamicCargo.dll .. [Build 120623, API 100830]
Module XR_Facility.dll ....... [Build 130320, API 100830]
Module UMmu.dll .............. [Build 130809, API 100830]
Module DeltaGliderXR1.dll .... [Build 110702, API 100830]
Module XR5Vanguard.dll ....... [Build 110702, API 100830]
Finished initialising status
Finished initialising camera
Finished initialising panels
Finished setting up render state
Base Object 0x23E4790 = 'obj1' not cataloged
D3D9Client: [Scene Initialized]
Well, have you tried running it without CameraMFD? Since that's obviously what's causing the error... ?
**** Orbiter.log
Build Aug 30 2010 [v.100830]
Timer precision: 4.05195e-007 sec
Found 0 joystick(s)
Module AtlantisConfig.dll .... [Build 100830, API 100830]
Module AtmConfig.dll ......... [Build 100830, API 100830]
Module DGConfigurator.dll .... [Build 100830, API 100830]
Module D3D9Client.dll ........ [Build 130923, API 100830]
Module AeroBrakeMFD.dll ...... [Build ******, API 100830]
---------------------------------------------------------------
>>> WARNING: Obsolete API function used: oapiRegisterMFDMode
At least one active module is accessing an obsolete interface function.
Addons which rely on obsolete functions may not be compatible with
future versions of Orbiter.
---------------------------------------------------------------
Module AtmDataMFD.dll ........ [Build ******, API 060425]
Module CameraMFD.dll [API v.060425]
CameraMFD.dll - Developer hint 3
Error loading module Modules\Plugin\CameraMFD.dll (code 1114)
Module DVToolsMFD.dll ........ [Build 120331, API 100830]
Module Lagrange.dll .......... [Build ******, API 060425]
Module LagrangeMFD.dll ....... [Build ******, API 060425]
Module Load.dll .............. [Build 110920, API 100830]
Module Map3DMFD.dll .......... [Build 101102, API 100830]
Module Telescope.dll ......... [Build 110413, API 100830]
Module OrbiterSound.dll ...... [Build 121120, API 100830]
Module ExtMFD.dll ............ [Build 100830, API 100830]
Module ScnEditor.dll ......... [Build 100830, API 100830]
Module transx.dll ............ [Build 100824, API 100823]
**** Creating simulation session
D3D9Client: [DirectX 9 Initialized]
D3D9Client: Sytem has XNA math support
D3D9Client:WARNING: [Hardware has only a limited non-power of 2 texture support]
D3D9Client: [3DDevice Initialized]
D3D9Client: [Compiling Effects for Shader Model 3.0]
D3D9Client: [Loading Stars]
D3D9Client: [Loading Constellations]
D3D9Client: [D3D9Client Initialized]
Module Sun.dll ............... [Build 100830, API 100830]
VSOP87(E) Sun: Precision 1e-006, Terms 554/6634
Finished initialising world
Module XR2Ravenstar.dll ...... [Build 130504, API 100830]
Module IMS.dll ............... [Build 130413, API 100830]
Module UCGOCars.dll .......... [Build 121103, API 100830]
Module UCGODynamicCargo.dll .. [Build 120623, API 100830]
Module XR_Facility.dll ....... [Build 130320, API 100830]
Module UMmu.dll .............. [Build 130809, API 100830]
Module DeltaGliderXR1.dll .... [Build 110702, API 100830]
Module XR5Vanguard.dll ....... [Build 110702, API 100830]
Finished initialising status
Finished initialising camera
Finished initialising panels
Finished setting up render state
Base Object 0x22F6868 = 'obj1' not cataloged
D3D9Client: [Scene Initialized]
Hmmm, no still crashing with a similar error
<snip>