@pyton: The lamps are taken from the source picture. There this many ^^ And I'm not even sure if that are lamps. Or maybe water splashes.
Acetone, thank you, I appreciate the enthusiasm! I've seen your work with the scenery mods, Talkeetna AK is superb! Do you have any knowledge on modifying the local elevation of the terrain around a static object? (see more at the bottom of this post)
<event name="Vehicle state:" persistent="true">
<description>Output message at 10 second intervals</description>
<notify>
<description>Vehicle state:</description>
<property caption="Mission Elapsed Time: "> guidance/executive/MET </property>
<property caption="ECI Velocity (fps): "> velocities/eci-velocity-mag-fps </property>
<property caption="Orbital apogee (miles): "> guidance/executive/apoapsis </property>
<property caption="Orbital perigee (miles): "> guidance/executive/periapsis </property>
<property caption="Orbital eccentricity: "> guidance/executive/eccentricity </property>
<property caption="Altitude AGL (ft): "> position/h-agl-ft </property>
<property caption="Alpha (deg): "> aero/alpha-deg </property>
<property caption="Pitch rate cmd: "> guidance/executive/gravity-turn-pitch-rate-command </property>
<property caption="Thetadot (rad/sec): "> velocities/thetadot-rad_sec </property>
<property caption="Roll angle (rad): "> attitude/phi-rad </property>
<property caption="Pitch angle (rad): "> attitude/theta-rad </property>
<property caption="Heading (rad): "> attitude/psi-rad </property>
<property caption="Hold-down discrete: "> forces/hold-down </property>
<property caption="Throttle (norm): "> fcs/throttle-cmd-norm[0] </property>
<property caption="GNC Mode: "> guidance/executive/current-mode </property>
</notify>
<condition> simulation/sim-time-sec >= simulation/notify-time-trigger </condition>
<set name="simulation/notify-time-trigger" value="10" type="delta"/>
</event>
Hello Uriah,
Thank you for the compliment! And sorry for late reply.
As I'm not a fan of rockets, I'm not sure how those things work, and how you control them..., but that's definitely a very interesting project you have there, and nice models btw! ;)
Ok, I took a look at the J246 aircraft and engine files, and I assembled a test rocket with those to see if it works, and it does. Also, I've added five structure contact/collision points inside ground_reactions to avoid the rocket to sink in to the ground.
Here you have it to take a look and see how your rocket could be set up: Download http://www.mediafire.com/download/3yo02nn8tc1b9fi/J246_Test.rar (http://www.mediafire.com/download/3yo02nn8tc1b9fi/J246_Test.rar).
All necessary JSBSim files are located here: packages\Levi\J246\FDM
Btw, the 3D model is another rocket, not actually the J246, but Saturn V-C.
When you import the model inside Outerra, I would recommend you to use FBX importer (CTRL+F7) instead of Collada. In the importer you wont have to configure anything, just import the model with default settings.
After the import, you manually edit the .mtl file and most important, the .objdef file. Be careful, the .objdef file will be replaced with a default one each time you re-import your model, just as the .mtl file.
The script (.js) file is mainly used for animations and sounds. All the dynamics, control surfaces, etc... are managed within JSBSim .xml files.
Also, I must say that I'm not an expert at all regarding JSBSim, I'm just a novice. I would better ask user bomber (Simon Morley) for specific JSBSim questions, as He's much more experienced in this area.
Don't hesitate to ask me any other question you have, I'm always happy to help where I can. :)
Regards,
Levi.
Likewise, I am far better at modeling than texturing, however I am decent so I can revisit textures at a later time, or like I said I hope additional enthusiasts jump on the band wagon and help. I should have the J246 working by tomorrow!
-Uriah
However in regards to staging, it was suggested to use vehicle forces, a temporary hack for sure, but it would have the same net outcome. I've been thinking it might actually be possible to develop a new vehicle force which holds components together, and can be released manually with a jettison force along the Y-axis. It might work. You would actually assemble the rocket out of separate components and when the snap points get within proximity they detect each other, snap to alignment and hold the two models together. One model would need to be the parent (command module), I was thinking the propulsion/vehicle forces could be applied to that body, and all the connected bodies are children, and just follow the parent. The ground reaction coordinates could possibly be calculated from a table of know part sizes. Initially the fasteners could have infinite or very high strength and friction, but could possibly have a breaking strength. I am not sure exactly how this would be implemented yet, I am just trying to think outside the box... I would like to know your thoughts.
I asked Cameni about n-body physics and his reply implied we can experiment with vehicle forces in unintended ways, even to calculate multibody physics as it stands. Until an SDK or these features are released, a hack might just do the job.
Did you use the J246 as a starting point, as I did?
How did you solve the problem of the ground instability? I tried adding aircraft/ground_reactions.xml and including it in the J246.xml aircraft file, but it doesn't seem to make a difference. The JSBSim hold-down force for keeping the rocket stable doesn't work either, unless it can be included in the aircraft file directly and not in the script/ file. Do you think that is possible? I asked Jon Berndt just a few hours ago but I haven't heard back about it yet.
Were you able use the functions provided by JSBSim in order to calculate the orbital elements?
Were you able to implement manual user controls instead of autopilot?
Were you able to make fuel consumption and point mass reduction work? I am pretty sure I am operating with infinite fuel like the other Outerra vehicles.
Would you mind sharing your rocket OTX, or is it top-secret?! ;-D
I am always into collaborating, let me know what you have in mind!
My plans were a little larger than just a mod for the engine and more in the realm of a sim built on the engine, but I'm sure we could work together. Since our DCS project fell apart at the hands of ED, I've been itching to switch my efforts to a more promising platform, such as Outerra.
Hi Uriah, and sorry for the late reply again.Levi,Ok, I think you just need to use Reset XForm utility, because you may have changed the scale of your objects (all objects must have the default scale of 100x100x100), and the pivots location as well. Reset XForm sould do the trick.
I am going to contact bomber momentarily with the same questions, but I will also pose them to you.
It took me some time to import my model and get it working like yours. Funny thing is the FBX imported isn't working for me at all and COLLADA is. When I import using FBX all the parts are fragmented is all directions. I determined it has to be my model, because I was able to export your Saturn model side by side from the same MAX file with my J246 and the Saturn parts stay together. I linked all the parts to the Dummy, and the drag around with it in max but something breaks when it is imported via FBX. It is of no consequence to me because COLLADA works just fine.
You can download my J426.otx here: http://www.mediafire.com/download/l5fl1vghciz1hcu/J246.GNU.otx
Just go to Utilities > Reset XForm > Reset Selected. And then just collapse your modifier stack.
(http://i.minus.com/ibfNGFSgvJXfhc.png)(http://i.minus.com/i2SnhuE5qsQKN.png)
Warning: Before using Reset XFrom, it's better to not have the objects linked together.The only key features missing are in the XML scripts to display the velocity and orbit, enable/disable the hold-down force and jettison (decouple) the stages. The script/J2460.xml and J2461.xml files with JSBSim seem to be incompatible with Outerra. Is there a way to implement these same features in J246.js, or manual jettison?I've modified the J246.js script file, and now some properties can be displayed in the console (press "P" key). Some of those are:
Also, there seems to be no way to manually control the rocket's flight, it is on autopilot. Any thoughts there?
- Mission Elapsed Time
- ECI Velocity (fps)
- Orbital apogee (miles)
- Orbital perigee (miles)
- Orbital eccentricity
- Hold-down discrete
I left more within the script, just un-comment them if you want to be displayed.
Also, I linked the Hold-down force to "Gear" control (default key is "period"). This way you can engage and disengage Hold-down force.
Note: Just after spawning the rocket, you may prefer to disable Hold-down force until the rocket is in vertical position.
After some .xml file editing, now you can control the rocket's Pitch ("W" and "S" keys) and Yaw ("Z" and "X" keys). It's not as stable as I would like, but it's something. :D
As far as I know, the scripts J2460.xml and J2461.xml, are not compatible with Outerra. But I believe you can archive the same features with JavaScript.
Within JavaScript you can assign values to any JSBSim property. It's as simple as this:Code: [Select]//Jettison SRBs
jsb['inertia/pointmass-weight-lbs[0]']=0;
jsb['inertia/pointmass-weight-lbs[1]']=0;
I guess the problem would be the limited keyboard functionality... but for decoupling, I think you can do it based on "simulation/sim-time-sec" or "guidance/executive/MET" (Mission Elapsed Time).
Also, I think you'll need to set the correct location for the pointmass items and fuel tanks to match the visual model. Those are located inside J246.xml file:
- Pointmass under "<ground_reactions>"
- Fuel tanks/oxidizers under "<propulsion>"
Keep in mind that in 3Ds Max and Outerra, Negative Y == Positive X in JSBSim.
Here's the updated Rocket: Download (http://www.mediafire.com/download/yyp5exn1bc65jh4/J246.GNU.otx)Lastly, can the camera distance in third person view mode be changed? It doesn't seem to be a parameter that can be changed or else you would have done so with your Airbus.I haven't changed at all the third person camera distance on the Airbus, just used the mouse scroll wheel to temporary change the distance once in game. As far as I know, there are no parameters you could modify for that.
Thanks,
Uriah
Regards,
Levi.Feel free to share this PM if you wish so. :)
Just signed up to say this looks amazing. I'm a big fan of KSP but feel constantly let down with a lot of the decisions the developers make, luckily there are mods. I've been hoping somebody else would come along with something, there's so much untapped gameplay in a realistic spaceflight game, but everyone seems to go the sci-fi route.
Will be keeping a close eye on this, it's looking great. :)
If someone can help me find a way to attach/detach models, in the same FBX/DAE file or not, we are golden!Pyton, that is exactly what I have in mind. :D
Its not as difficult as it sounds, I just need to find the right java function to attach at spawn/detach for jettison, JSBSim handles everything else, so no math really. They will essentially act as individual aircraft, and the jettisoned stage will have the same position and velocity vectors. There is also a jettison force applied to the spent stage directly after the fastener is disabled. Since there is no API to speak of I can't talk to the game engine functions yet.
-Uriah
Thanks to necro for the Vehicle Assembly Building and O2/H2 Tank!
Thanks to Acetone for the awesome Alaskan scenery and the tips on working with the OT road tools. Finally figured out how to make a proper launch pad using nothing but roads.
And thank you Levi for all your help!
Last but not least, thank you to the Outerra team, Great engine!!!!
Thanks everyone!
Acetone, yes I've had mixed success with that technique, but I am starting to get the hang of doing it right the first time so I don't have to come back. Do you work in a fresh install of Anteworld so that the files in the cache folder are ONLY the ones you need? I figure it is very difficult to go in a pull what I just built out because it is mixed in with Talkeetna. It was just a practice run anyway!
I didn't mean to invade Talkeetna with a spaceport either, it just happens to be the biggest small town there is currently ;) ...and you put the radio telescopes in such a convenient location!
I would definitely appreciate your help on scenery for the final launch complex(s), that would be awesome! Once I build them I will send you the files and let you fill in the surrounding areas. We certainly have plenty of buildings, thanks to the likes of Levi. I figure that since static objects disappear after a certain distance that only scenery within the view of the rocket as it ascends would be necessary for each site. I am going to do SLC-37 and LC-39A in Canveral, FL and another somewhere else, maybe WA or CA. These will be installed with the mod. Since the mod will come with all the launch complex parts people can also build their own anywhere. Instead of spawning a rocket from the menu, I need to initialize the rocket on the launch pad in the vertical position next to the launch tower (JSBSim y-axis --> Outerra/Z-axis), that will be tricky.
I didn't realized you had built it near Talkeetna :) It's a bit sad because the next update I will publish will erase your work if you install it (no way to "merge" lower level cache files for the moment) :(
From what I see here, it will not be hard to reproduce, did you use precise data for the lengh/width of the roads?
Good luck ! Maybe a stupid suggestion, but is it possible to add an invisible collision mesh around the rocket wich will help to set it stable when placed? Since rockets are not really supposed to interact with terrain, it could be a good solution for you (if the launch terrain is flat).
var world,igc,vehicle;
function ll2xyz(lon,lat) {
const R = 6378135;
const rad = Math.PI/180.0;
var fc = Math.cos(lon*rad);
var fs = Math.sin(lon*rad);
var ac = Math.cos(lat*rad);
return [R*fc*ac, R*fs*ac, R*Math.sin(lat*rad)];
}
if(!world) world = $eview.$query_interface("ot::js::world.get");
if(!igc) igc = $eview.$query_interface("ot::js::igc.get");
if(world && !vehicle) {
var c = map.getBounds().getCenter(); //this is from google maps object
var pos = ll2xyz(c.lng(), c.lat());
vehicle = world.create_instance("outerra/ddg/ddg", pos, {x:0, y:0, z:0, w:1}, false);
}
[Outerra] uses the JSBSim Flight Dynamics Model library for high fidelity simulation of aircraft, and Bullet physics engine for simulation of vehicle physics. Terrain and fractal algorithms maximally utilize the GPU, leaving the CPU resources for simulation.
Silly military rockets ... they allways confuse the count-downs. ::) Also, after all those booms till now, im sure they have some speedy-construction people at a calls distance. ;)
P.S.: Whats that tower building ? ... is it some service-structure for rockets, as it seems to be able to rotate around the center ? Wold be interesting to have it animated ...
Nice! I have a rough model of that Mobile Service Tower for KLC, just need to texture it, and animating is possible. The SLC-37 MST and Fixed Umbilical Tower are both animated.
Regards.
Uriah
tle = [
'ISS (ZARYA)',
'1 25544U 98067A 15119.57674883 .00015278 00000-0 21995-3 0 9997',
'2 25544 51.6470 326.8384 0005314 280.3312 119.8189 15.56237854940478'
];
You are doing a Great job.
I cant wait for the fire, explosions, smoke, and other efects in the engine. It will make your job even more awesome.
By the way, anybody knows when we will have some of those effects? Driving with smoke in the asphalt, or sand while driving on dirt.. Or planes with smoke, and moving sand or water while near with a helicopter.. With that outerra will be an almost complex engine for enjoy in all.
They are certainly quite impressive controlled explosions aren't they! ;)*a 254 million dollar explosion is always controlled ;)
That's right the flames and shock-diamonds are meshes with diffuse and opacity textures. I already have a method to animate. First the engine glow lights will flicker rapidly using a random seed, as the impulse of a rocket does. Then I will have about 4-6 meshes per flame, and hide/show them, alternating at 10 to 20Hz :) I don't quite have that working yet, but almost.
Regards,
Uriah
Not Aerokinetics scope (more science fiction stuff), but a lot of switch porn and cool sounds. It's a one man work prototype.
https://www.youtube.com/watch?v=vziIgAtD66s
Thought about the falcon rocket to be an interesting one too ... for some bad reason, the last one just got pulverized in flight ...
https://www.youtube.com/watch?t=28&v=u9gFDgJpuUY (https://www.youtube.com/watch?t=28&v=u9gFDgJpuUY)
... it looks strange, did there the last stage try to turn on or one of the fuel tanks got ruptured, with that gas-formation appearing ? Or should that be the sound-barrier passing, going wrong ?
There was an overpressure event in the upper stage liquid oxygen tank. Data suggests counterintuitive cause.
I'll post more information to a separate threat soon if anyone can guess it correctly! :D
LOL! Should I take that as a complement? :))
What do you mean by dev diary?
Regards,
Uriah
Well that is much more of a reply than I was hoping for, so thank you! When I didn't hear back, I just assumed it was the stupidest question ever
and you weren't going to answer. :-[
Which rocket? Jupiter 246? I wasn't sure if the version I have for download would even work now or not, given the number of changes to the JavaScript interface since then. I will be upgrading the J246 and releasing a new version with special effects, stage separation and guidance, before anything else.
Regards,
Uriah
Orbits yes, docking no. Using either Two Line Element (TLE) data or Keplerian Orbital Elements I can put an object into any orbit around Earth. Docking with another spacecraft or space station won't be possible without physics support, including collision and a force to hold the two objects together.
Regards,
Uriah