Problem Improving Exhaust effects on FalconHeavy

tradx

New member
Joined
Sep 6, 2016
Messages
18
Reaction score
0
Points
0
Dear Orbiter-forumers

I raised a question a few days ago about add-ons that can change the exhaust, contrail and smoke effects on existing vessels (see below)
http://www.orbiter-forum.com/showthread.php?t=37487

I spent some time on orbithangar and have seen nothing so I decided to modify the code of the existing FalconHeavy (taking advantage of the sdk provided by brianj) changing the PARTICLESTREAM params and recompile it.
FalconHeavy add-on-> [ame="http://orbithangar.com/searchid.php?ID=6659"]FalconHeavy[/ame]
My target at the moment (I have just set-up the c++ dev environment) is to modify something small, recompile it and see the change in orbiter (i.e. some of the params of the PARTICLESTREAM object).
Unfortunately the only thing I've seen so far is only printing strings using the oapiDebugString
There are many things that I don’t yet understand even quite basic concepts…
For example, I was not sure how to modify for example the f9h_stg1_centre.cpp which to me looked the one responsible for the exhaust effects, so I created a new project from scratch, I added the cpp, the orbiter libs, did the modifications on the code and recompile it. Then I get the new f9h_stg1_centre.dll and that new module should reflect some changes when executing the appropriate scenario, but nothing happens…
The only different thing is that in the Modules section, it appears the name of the file as a new module and when enabling it I can see msg called by oapiDebugString
I set-up my dev environment as per Mohd Ali video (transcripted on this site http://gemnets.blogspot.co.uk/2014/01/setting-up-microsoft-visual-c-2010.html)
Could it be possible that the module that is used to create the thrusts and particle effects is not in the samples dir of the FH sdk? (for example f9h.dll)
What should be the right procedure to modify f9h_stg1_centre.cpp and compile it into a dll?

Thanks in advance for your time in reviewing my post
 

BrianJ

Addon Developer
Addon Developer
Joined
Apr 19, 2008
Messages
1,678
Reaction score
902
Points
128
Location
Code 347
Hi
For example, I was not sure how to modify for example the f9h_stg1_centre.cpp which to me looked the one responsible for the exhaust effects
The f9h.dll (f9h_stg2.cpp) controls everything except jettisoned stages,fairings,etc. If you want to change the particlestream effects during launch, you need to modify f9h_stg2.cpp.

The f9h_stg1_xxxx.cpp files are for the modules that control the stages after jettison.

Hope that helps, good luck.
BrianJ

P.S. Beware of using my code for anything, I don't really know what I'm doing with c++, I just have fun with it.
 

turtle91

Active member
Joined
Nov 1, 2010
Messages
319
Reaction score
7
Points
33
I am not an expert, but that's how it works in my MS-VS 2010 env:
-copy all the sources/headers I need into a dedicated (outside-orbiter) project-dir
-start with an empty project
Then I got two things in the proberties-manager (on left side)
1. debug
2. release

You don't need to include orbiter-sdk-libs or headers, Orbiter comes with so called "property-sheets". (OrbiterSDK\resources)
This sheets/templates are doing most the work for you (pointing your project to Orbiter-SDK etc...)

So for a vessel like the falcon you would need:
1. In Debug-section:
"Orbiter Vessel" sheet
"Orbiter Debug" sheet

2. in Release:
just the "Orbiter vessel" sheet

All "sheets/templates" can be clicked-on until you see "orbiterroot"
Here you can set the "output-dir" for the vessel Your-Orbiter-Dir\modules\mytest-F9H (i.e.)

Then it might work....again...I am not an expert..
And btw....the "modules\plugin"-folder is meant for MFD's not vessels...thats the reason, why you see you F9 here...which should be not there.

Ok...if you have now your i.e. Orbiterdir\modules\mytestF9H\mytestF9H.dll, you need a config-file to point to your new vessel:

Here we have "Orbiter\config\vessels\"
Depends on which version of the F9 from brianj you are using, he prefers to create his vessels in sub-folders, which is IMHO a good prtactice to keep Orbiter more structured.
So for example the F9H, you would find:
OrbiterDir\Config\Vessels\F9H\F9H.cfg

So just copy the F9H.cfg to ..config\Vessles\mytestF9H\mytestF9H.cfg
Open it, and rename the class and the module to your mytestF9H.

Then you would be able to open the new created "mytestF9H" in ScnEditor.

Maybe a more C++ experienced developer could give a better help.
 
Last edited:

tradx

New member
Joined
Sep 6, 2016
Messages
18
Reaction score
0
Points
0
Thanks BrianJ for your quick reply and for the brilliant FH add-on. Now it works;) I was thinking all the time that f9h_stg2 was the upper stage that’s why I didn’t even try to modify that one
Thanks turtle91 for taking the time to explain to me how to set-up a project from scratch!
I’ll now try to add some smoketrail effects when lifting off to get something closer to the F9 pic below as well as to change the exhaust effect a bit to make it more like the Atlantis SRB
https://3dprint.com/wp-content/uploads/2014/07/falcon-1.jpeg

I’ll post the new dll when I have it ready so you can give me your inputs on how it looks. Also if you want to give a try please do, you are the experts here:ninja:
 
Top