Project Space Transportation System 2016

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
She is looking good. No ctds now. Still adding things back in.

Body flap seems to be working.

On the SPI
Body flap works. rudder works, speedbrake works.
whats left is the AILERON and elevon
CreateControlSurface(AIRCTRL_AILERON, 3.0, 1.5, _V(7, -0.5, -15), AIRCTRL_AXIS_XPOS, anim_raileron); CreateControlSurface(AIRCTRL_AILERON, 3.0, 1.5, _V(-7, -0.5, -15), AIRCTRL_AXIS_XNEG, anim_laileron);
This should be easy get the state and move the arrows

But the ELEVONS.

I know it is a combination of the elevator and AILERON
 

JDat

Active member
Joined
Sep 6, 2010
Messages
105
Reaction score
74
Points
43
But the ELEVONS.

I know it is a combination of the elevator and AILERON

Where is problem?
1) How it works on real Space Shuttle? Maybe need to read more NASA documents to understand...
2) How to do it in Orbiter Simulator?
Open scenario " Checklists-> Mission 1 - DG to ISS".
Go outside of vessel as real pilot (F1 button). Walk around vessel (Ctrl + arrows).
Check aeorsurfaces for defects and malfuction before start as any realpilot before flight (activate aerosurfaces on cockpit and press numpad buttons).
Got an idea? ;)

Now study Delta Glider flight manuals, tech spec, checklists, systems, drawings and blueprints (I mean source code).

Good luck!
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
// ***** 4. Elevator animation of elevons ***** static UINT ElevGrp[4] = { GRP_flapR,GRP_flapL,GRP_aileronL,GRP_aileronR }; static MGROUP_ROTATE Elevator(midx, ElevGrp, 4, _V(0, -2.173, -8.84), _V(1, 0, 0), (float)(30.0 * RAD)); anim_elev = CreateAnimation(0.5); AddAnimationComponent(anim_elev, 0, 1, &Elevator); // ***** 5. Aileron animation of elevons ***** static UINT LAileronGrp[2] = { GRP_flapL,GRP_aileronL }; static MGROUP_ROTATE LAileron(midx, LAileronGrp, 2, _V(0, -2.173, -8.84), _V(-1, 0, 0), (float)(10.0 * RAD)); static UINT RAileronGrp[2] = { GRP_flapR,GRP_aileronR }; static MGROUP_ROTATE RAileron(midx, RAileronGrp, 2, _V(0, -2.173, -8.84), _V(1, 0, 0), (float)(10.0 * RAD)); anim_laileron = CreateAnimation(0.5); AddAnimationComponent(anim_laileron, 0, 1, &LAileron); anim_raileron = CreateAnimation(0.5); AddAnimationComponent(anim_raileron, 0, 1, &RAileron);

mRpaDRf.jpg


I noticed in SF when you applied pitch the elevon left and right moved only. So that is rudder. looked like the range is =/- 18 degrees
and here is when 4 is press on the keypad. left rudder and high low ailerons.
 

Attachments

  • sfevelons.jpg
    sfevelons.jpg
    66.1 KB · Views: 2

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
With the addition of the tunnel assembly. Things need to change. A new docking light, docking camera , docking position, eva. If eva occured from the tunnel assembly. The tunnel assembly mesh will need to be redone as the the thermal cover is the cover. MAy need to add a line for the tunnel assembly so the eva may occur there. I know sts 45? did an eva from the tunnel assembly with the Spacehab.
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
I am having issues with the mfd. Not sure but when I run this. Notice the last mesh group
#define GRP_mesh01 808 #define GRP_mesh66 809 #define GRP_mesh451 810 #define GRP_mesh58 811 #define GRP_mesh59 812 #define GRP_.dds 813
 

Attachments

  • meshwizardmeshnumber.jpg
    meshwizardmeshnumber.jpg
    76.4 KB · Views: 3

Jeremyxxx

Active member
Joined
Jan 25, 2013
Messages
296
Reaction score
88
Points
43
Location
Dawson Springs
In the Apple TV+ and Sony Pictures Television show For All Mankind, there are three more space shuttles named Victoria, Beagle and Kon-Tiki. and there are Military Shuttles used by the USAF (the precursor to how the US Space Force would be today)
 
Last edited:

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
When running the mesh program it shows another mesh group.
// ======================================================== // Mesh resource file for D:\orbiter2016\meshes\2016SPACESHUTTLE\EARLYMFD2.msh // Generated with meshc on Thu Jul 22 12:43:41 2021 // ======================================================== // Number of mesh groups: #define NGRP 2 // Number of materials: #define NMAT 2 // Number of textures: #define NTEX 1 // Named mesh groups: #define GRP_MFD4 0 #define GRP_Group52 1 #define GRP_.dds 2

It shows 2 mesh groups 2 materials, 1 texture. But under named groups there are 3
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
Not sure if it affecting the code. But for some reason the side and 2 aft mfd are out of sync. The side mfd controls the cctv1,.....
 

Attachments

  • MESHISSUE.zip
    516 bytes · Views: 5

JDat

Active member
Joined
Sep 6, 2010
Messages
105
Reaction score
74
Points
43
Looks like problem line 37 label.dds
LABEL is reserved keyword in texture format.
Use different file name for texture.
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
Thanks. I changed it and seems to work. label was the name of the texture from the Atlantis.
I think the GPC mfd from SF might be the cause of the CTD.

// ***** 4. Elevator animation of elevons *****

static UINT ElevGrp[4] = { GRP_flapR,GRP_flapL,GRP_aileronL,GRP_aileronR };
static MGROUP_ROTATE Elevator(midx, ElevGrp, 4,
_V(0, -2.173, -8.84), _V(1, 0, 0), (float)(30.0 * RAD));
anim_elev = CreateAnimation(0.5);
AddAnimationComponent(anim_elev, 0, 1, &Elevator);

// ***** 5. Aileron animation of elevons *****

static UINT LAileronGrp[2] = { GRP_flapL,GRP_aileronL };
static MGROUP_ROTATE LAileron(midx, LAileronGrp, 2,
_V(0, -2.173, -8.84), _V(-1, 0, 0), (float)(10.0 * RAD));
static UINT RAileronGrp[2] = { GRP_flapR,GRP_aileronR };
static MGROUP_ROTATE RAileron(midx, RAileronGrp, 2,
_V(0, -2.173, -8.84), _V(1, 0, 0), (float)(10.0 * RAD));
anim_laileron = CreateAnimation(0.5);
AddAnimationComponent(anim_laileron, 0, 1, &LAileron);
anim_raileron = CreateAnimation(0.5);
AddAnimationComponent(anim_raileron, 0, 1, &RAileron);

It looked the range of the Ailerons is +33 to -18. A total of 51 degrees. and make the animation start at .647
 

JDat

Active member
Joined
Sep 6, 2010
Messages
105
Reaction score
74
Points
43
Please practice your .cpp file publication. Here as attachment or in pastebin.com (with c++ syntax highlight). Based on previous expierence I have no Idea are where you are calling API functions. So there are lot of sources for errors and misunderstandings.
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
This is what I have so far for cpp, h.
 

Attachments

  • shuttlecode1.zip
    85.8 KB · Views: 3

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
Elevons. the range is 51 degrees (+33 and -18) the 0 degrees is .647
static UINT ElevGrp[4] = { GRP_flapR,GRP_flapL,GRP_aileronL,GRP_aileronR }; static MGROUP_ROTATE Elevator(midx, ElevGrp, 4, _V(0, -2.173, -8.84), _V(1, 0, 0), (float)(51.0 * RAD)); anim_elev = CreateAnimation(0.647); AddAnimationComponent(anim_elev, 0, 1, &Elevator); // ***** 5. Aileron animation of elevons ***** static UINT LAileronGrp[2] = { GRP_flapL,GRP_aileronL }; static MGROUP_ROTATE LAileron(midx, LAileronGrp, 2, _V(0, -2.173, -8.84), _V(-1, 0, 0), (float)(51.0 * RAD)); static UINT RAileronGrp[2] = { GRP_flapR,GRP_aileronR }; static MGROUP_ROTATE RAileron(midx, RAileronGrp, 2, _V(0, -2.173, -8.84), _V(1, 0, 0), (float)(51.0 * RAD)); anim_laileron = CreateAnimation(0.647); AddAnimationComponent(anim_laileron, 0, 1, &LAileron); anim_raileron = CreateAnimation(0.647); AddAnimationComponent(anim_raileron, 0, 1, &RAileron);

Then there is the indicator.
//ELEVON INDICATOR anim_leftelevonINDICATOR = CreateAnimation(0.647); static UINT ELEVONINDGrp[1] = { GRP_ELEVONSLEFTIND }; static MGROUP_TRANSLATE LEFTELEVONIND(vidx,ELEVONINDGrp, 1, _V(0, .0487, 0.012)); AddAnimationComponent(anim_leftelevonINDICATOR, 0, 1, &LEFTELEVONIND);

The elevon are move according to the elevator position.

3R4nLjX.jpg


//elevon indicator double ELEVON = (GetControlSurfaceLevel(AIRCTRL_ELEVATOR)); if (ELEVON > 0)SetAnimation(anim_leftelevonINDICATOR, ((ELEVON) / 2) + .5); if (ELEVON < 0)SetAnimation(anim_leftelevonINDICATOR, ((ELEVON) / 2) + .5);// 0 to 1 add .5 so as to start at the middle if (ELEVON == 0)SetAnimation(anim_leftelevonINDICATOR, .647); sprintf(oapiDebugString(), "ELEVON %5.3f ELEVONanim %5.3f ", ELEVON, ((ELEVON) / 2) + .5);

the 0 works but the + is too low and the minus to low.
i3vfjde.jpg
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
I got the elevon to work.
when the aileron move the elevon indicators move:
JeC6Iof.jpg


But it should be fluid rather than static.
if (AILERON < 0) { SetAnimation(anim_leftelevonINDICATOR, .2); SetAnimation(anim_rightelevonINDICATOR, .67); } if (AILERON > 0) { SetAnimation(anim_leftelevonINDICATOR, .67); SetAnimation(anim_rightelevonINDICATOR, .2); }

so when I get a CTD this is what shows up.
DVvCu1l.jpg


I am thinking about EVA and the tunnel adapter,......

I wonder if there should be a line TA then the tunnel adapter shows up and eva can occur. The thermal cover and hatch open and the guy appears.

But then when the tunnel adapter and external airlock are there. I guess the eva occurs in the airlock hatch and not the tunnel. Otherwise you would have to tell it which hatch to use. Which sets the animation and eva points.
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
On EVA. I think one way to make it easier is maybe just make a line in the scn for eva point. Then have the spacehab,.... as vessels so you can open the airlock hatch. But this would limit to only one eva point. So if the tunnel adaptor was present and external airlock. Eva could occur only at the External airlock or tunnel adapter, not both. Unless we have 2 eva points. then a key to switch the points. Any ideas?
 

JDat

Active member
Joined
Sep 6, 2010
Messages
105
Reaction score
74
Points
43
DG have 2 hatches, but as I know no EVA from upper hatch. Isn't EVA suit a separate vessel? Make 2 hatches like in DG and EVA vessel (astronaut in spacesuit), who can fly thru airlock and adapter hatches. Just idea. Not shure it will work.

PS: Is somewhere possible to download and test your latest STS 2016 programming results? Like latest alfa or beta versions.
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
The way I have eva is it has an attachment point in the shuttle and one in the EVA guy. So when you exit the shuttle. It creates the guy and attaches to attachment point. Then the movement actually moves the attachment point.

I also added a tether command that lets you reattach to the point. This was needed as the eva guy would attach to the rms arm,........

Right now the eva was 2 options at the end of airlock hatch or the external airlock. So what happens is when the hatch is open the eva occurs.

But the issues comes when certain mission have different setups.

PS: Is somewhere possible to download and test your latest STS 2016 programming results? Like latest alfa or beta versions.
Do you mean the latest work? Really the big changes are VC mesh and textures and dll?
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
I guess another way to do it. Is make the eva happen from the vessel, not shuttle. So make a Tunnel adapter vessel. Then you could attach where ever you wanted. And have the eva occur,......
 

gattispilot

Addon Developer
Addon Developer
Joined
Oct 17, 2007
Messages
8,636
Reaction score
2,613
Points
203
Location
Dallas, TX
Working on the tunnel adapter. Looking at images there seems to be a piece that sticks out like a collar. I guess the thermal cover fits on? And the hatch is below that. What I can't figure out is the dimensions of the hatch. from the dimensions in the drawing the tunnel adapter is 84 inches long. It seems the collar outside diameter to be 40 inches?
I made a cylinder the size of the hatch in the drawing and ut was 43 inches at the widest point
 

Attachments

  • tunnelairlock3.jpg
    tunnelairlock3.jpg
    179.2 KB · Views: 4
  • tunnelairlock1A.jpg
    tunnelairlock1A.jpg
    62.6 KB · Views: 4
Top