Request Prometheus (Ship)

jgrillo2002

Conservative Pioneer
Addon Developer
Joined
Mar 17, 2008
Messages
755
Reaction score
17
Points
33
Location
New York State
Last night I went and saw the movie and I thought it was epic, and I thought of something, "why isnt there a prometheus addon for orbiter?" The ship looks like a great vessel for exploring planets and moons. Has anyone started working on it?
 
Last edited:

Ragtag

New member
Joined
Aug 7, 2008
Messages
156
Reaction score
0
Points
0
Location
House
Last night I went and saw the movie and I thought it was epic, and I though of something, "why isnt there a prometheus addons for orbiter?" The ship looks like a great vessel for exploring planets and moons. Has anyone started working on it?
I posted this in the lounge.
Those engine nacelles would be a really hard thing to animate and the thrust vectors would be a nightmare. I know because I've just spent a good 9 or so hours trying to get it to work and flyable. Not to mention the gear animation which is more of a nightmare. I didn't have a good shot of the model when I first saw it so I rolled my own. I had to fake the thrust because it was unflyable otherwise.
QJFUgly.jpg

I have more thoughts on this design in the Current Projects board over at the Rag Tag Fleet forum.
 
Last edited:

jgrillo2002

Conservative Pioneer
Addon Developer
Joined
Mar 17, 2008
Messages
755
Reaction score
17
Points
33
Location
New York State
Looks good. a repaint might suffice to make it more like the film.
 
Last edited:

C3PO

Addon Developer
Addon Developer
Donator
Joined
Feb 11, 2008
Messages
2,605
Reaction score
17
Points
53
Engine animation is easy. Getting the thrust direction synced to the engine animation is where I'm failing in a big way.

Can't you do it the other way around? Work out where you need the thrust to be, and then 'slave' the animations to that?
 

Ragtag

New member
Joined
Aug 7, 2008
Messages
156
Reaction score
0
Points
0
Location
House
The problem is that I'm dealing with multiple rotations and I just can't get it synced right. I'm sure I'm missing something really dumb but that is the nature of programing. I'll just have to hope that I'll have that epiphany and be able to reflect on how dumb I was.
 

Ragtag

New member
Joined
Aug 7, 2008
Messages
156
Reaction score
0
Points
0
Location
House
Now, I haven't seen this movie... but couldn't you just reuse/modify the 2011 Firefly engine code?

I'm using the FF code but the problem isn't related to that code. The FF rotates the engines on a single axis. The new ship works fine doing the same. The problem comes in when what I call the "Engine Beam" rotates into the landing position. When that happens all the rotation code for the thrust as well as the visible exhaust doesn't update properly. This puts it out of sync with the engine animation. It's hard to explain but if I rotate the engines into a hover position which is straight down and I then rotate the Engine Beam the engines which are attached to the beam end up 26 degrees off but they don't know that. As far as the engine animation is concerned their relationship to the overall ship has not changed. What I have to do is not only rotate the beam but rotate the engines to compensate for the beam changing position. I could most likely do that easy enough but again that's not the issue. The thruster and thrust is not tied to the engine animation in any way. It only looks that way because I rotate the thrust direction in sync with the engine animation. The problem I have is that I have to change the thruster position to be the same as the engine position and do it as the beam is rotating. That is where my problem is. I've been unsuccessful in getting the thruster position to change properly which puts it out of sync with the animation. If the engines didn't change position it would be a done deal but they do and that is my problem. If I didn't have to show the exhaust flame it would be a done deal.
 

Mr Martian

Orbinaut/Addon dev/Donator
Addon Developer
Donator
Joined
Jun 6, 2012
Messages
313
Reaction score
121
Points
43
Location
Sydney, Australia, Earth, Sol
Website
www.orbithangar.com
i made my own Prometheus ship for orbiter and it looks exactly like the film and the engine pods are animated and everything but its like my first ever model, so i suck at the animating and thrust vectors and all that stuff. my model is animated (poorly) it has that big bay door and the engine pods move but thats it. it is textured and looks great so if you want i could upload it and then maybe one of you if you want can play around with it and see what u can do...
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,734
Reaction score
2,702
Points
203
Location
Dallas, TX
It seems from the film this vessel has 2 modes straight flight where the 4 engines are straight back but on different y and z. There are on that beam. In landing mode the beam moves to a level state and the engine then move to straight down. I suppose there is a retro state also.

So if you want to go from flight mode to landing. The beam needs to rotate down and the engine need to rotate down, right?
 

Hielor

Defender of Truth
Donator
Beta Tester
Joined
May 30, 2008
Messages
5,580
Reaction score
2
Points
0
I'm using the FF code but the problem isn't related to that code. The FF rotates the engines on a single axis. The new ship works fine doing the same. The problem comes in when what I call the "Engine Beam" rotates into the landing position. When that happens all the rotation code for the thrust as well as the visible exhaust doesn't update properly. This puts it out of sync with the engine animation. It's hard to explain but if I rotate the engines into a hover position which is straight down and I then rotate the Engine Beam the engines which are attached to the beam end up 26 degrees off but they don't know that. As far as the engine animation is concerned their relationship to the overall ship has not changed. What I have to do is not only rotate the beam but rotate the engines to compensate for the beam changing position. I could most likely do that easy enough but again that's not the issue. The thruster and thrust is not tied to the engine animation in any way. It only looks that way because I rotate the thrust direction in sync with the engine animation. The problem I have is that I have to change the thruster position to be the same as the engine position and do it as the beam is rotating. That is where my problem is. I've been unsuccessful in getting the thruster position to change properly which puts it out of sync with the animation. If the engines didn't change position it would be a done deal but they do and that is my problem. If I didn't have to show the exhaust flame it would be a done deal.
Perhaps hackish, but could you have a couple of known vertices inside the center of the engine for which you could detect the actual position (including rotations) at runtime? With two vertices making a line down the center of the engine, you'd have the thruster attack point and the thrust vector. That way you'd have the thruster location/direction slaved directly to the engine pod, so whatever it does, the thruster does too...

Not sure if that's possible in the Orbiter API...maybe not by vertices, but you'd at least be able to do it with a mesh group or two, right?
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,734
Reaction score
2,702
Points
203
Location
Dallas, TX
I think the problem is a timing issue. If you have the engines starting at rear at 180. 0 being forward. And then beam is at 26.5 degrees. When you rotate the beam to 0 the engine move with the beam so now they are at 153.5(180-26.5). But the animation thinks they are still at 180.

So I think the engine rotation needs to add/subtract 26.5* beam proc. So if the beam_proc =0 then the engine rotation is (180+0*26.5). but if the beam is at prco=1 then the engine rotation would be (180+1*26.5)
 
Last edited:

Ragtag

New member
Joined
Aug 7, 2008
Messages
156
Reaction score
0
Points
0
Location
House
Perhaps hackish, but could you have a couple of known vertices inside the center of the engine for which you could detect the actual position (including rotations) at runtime? With two vertices making a line down the center of the engine, you'd have the thruster attack point and the thrust vector. That way you'd have the thruster location/direction slaved directly to the engine pod, so whatever it does, the thruster does too...

Not sure if that's possible in the Orbiter API...maybe not by vertices, but you'd at least be able to do it with a mesh group or two, right?

That's what I'm doing and I don't understand why it goes out of sync. The thruster position are correct but the rotation is off. It seems like the rotations don't update with the animation although they both use the same variables.
 

Hielor

Defender of Truth
Donator
Beta Tester
Joined
May 30, 2008
Messages
5,580
Reaction score
2
Points
0
That's what I'm doing and I don't understand why it goes out of sync. The thruster position are correct but the rotation is off. It seems like the rotations don't update with the animation although they both use the same variables.
How are you calculating the rotation? It seems to me that if the position is correct for the thruster, the position should also be correct for whatever other anchor you're using to determine the vector for the rotation...Unless you're using the normal vector for the rotation, and maybe that's not updating correctly?
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,734
Reaction score
2,702
Points
203
Location
Dallas, TX
I think the engine rotation needs to adjust for the angle of beam as the beam is moving. If the engine are at 270 degrees facing down that is good when the beam is at 0 degrees level to the ground. But as the beam moves the engines need to compensate for the angle of the beam.
So when the beam is at 26.5 degrees the engines now need to be at 243.5 (270-26.5) to remain in the down position.

It seems in forward flight mode the beam needs to be at 26.5 and the engines at 0 degrees facing the rear.

When you switch to landing mode the beam and engines need to rotate. So then the beam needs to be at 0 and the engines at 270. But if you just move the engines 90 degrees and then move the beam the engines the engines will move 116.5 degrees and end up at 243.5degrees.
 

jangofett287

Heat shield 'tester'
Joined
Oct 14, 2010
Messages
1,150
Reaction score
13
Points
53
Is the problem that when the beam moves, the local 'up' for the engines changes, because their mounting points are rotating?
 

Ragtag

New member
Joined
Aug 7, 2008
Messages
156
Reaction score
0
Points
0
Location
House
Is the problem that when the beam moves, the local 'up' for the engines changes, because their mounting points are rotating?
That does happen but is compensated for. I can't emphasize enough that the location for the thruster and the rotation for the engines works without a problem. The problem is that for some reason the angle change is not being applied to the thruster even though the thruster uses the same variable as the engine. In other words;
newangle = newangle +1,
engineangle = newangle,
thrustangle = newangle.

They both use the same variable but it doesn't get applied to the thruster and I don't know why. The thrust is 26.5 degrees out and stays that way and in perfect sync until the beam is rotated back to the flight position.

I've tried changing the thrust point as well as deleting and recreating the thrusters as they move. Still it is out that 26.5 degrees and remains 26.5 degrees off until I change the beam again. It not that it is rotation differently but rather it's 26.5 degrees different that the engine. The 26.5 degrees is the amount of rotation applied to the beam.

The only thing I can think of is to cut the thruster to 0 as the beam moves, set the thrust angle correctly and then turn the thrust back on.
 
Top