# IdeaShuttle Fleet recompile for Orbiter 2016

#### 4throck

##### Enthusiast !
Cool to know.
If the VC was fully working and you had system simulation, then yes, you'd need all the buttons.
But as it is, I still think that two VC versions (original & final) are enough

Last edited:

#### gattispilot

I just put a older CRT top on the aft CRT. MAy need to redo the texture?

This one is not functional

#### Donamy

Donator
Beta Tester
The best thing you could do, would be to make the payloadbay camera views, visible from the 2 CCTV screens, in the aft deck. That would be really sweet.

#### V1p3rPT

##### Donator
Donator
in fact it would be fantastic since earlyvc only uses 3 mfd's. could also be used 1 in aft right and 2 in aft left in back cameras.

#### 1987VCRProductions

##### Active member
Quick question, will this new Shuttle have aerodynamics and flight characteristics similar to or on par with Shuttle Fleet 4.8 or will you be using the parameters from the stock Atlantis?

#### gattispilot

So what is doable for the 3 mfd is this add 2 more mfd where the CCTV were.
You would need a set of buttons to set up the Camera MFD.

Might built up the frame around the screen.

So for the 10 mfd setup. I think the max mfd is 12. So one could have 2 extras in the aft. The problem for me is coding them.

As far as flight dynamics. I am using a revised Atlantis flight dynamics for IK Atlantis 2006.

#### Donamy

Donator
Beta Tester
Just put a couple of rectangles in front of the screens.

#### gattispilot

Basically yes. If you want button to control the Camera MFd not sure how you do that. From the non vc can you switch to those mfd and make the changes? So in the non VC you can only select 2 mfd. So I guess you could set it up in the scn but not be able to change it in play.
But not sure how to select other mfd and change the values without the buttons?

Last edited:

#### Donamy

Donator
Beta Tester
You can set up a mouse click area. Vessel builder does it easily.

#### gattispilot

Thanks. But not sure if we can use vessel builder into the shuttle?
Maybe a VB vessel of just the CCTV and attached to the shuttle?

So we get this.

the red area is the mfd screen and yellow is where the buttons will be.

So as you can see the mfd screen is mapped out. So this was the 10 mfd Atlantis. So since all 10 spots are used. I think I would need to remap?
But for the 3 mfd oversion I can just reuse a mfd from the 10.

---------- Post added at 03:41 PM ---------- Previous post was at 06:34 AM ----------

So we get this:

Looked like Camera MFD only works in D3D9.
So now every scn will need to be rewritten.
So I guess the 4 payload cameras would need to set up. The RMS camera I don't think can be set as the position and direction move

So does anyone have some code to show where the mouse is when You pressed the button. Can't get the buttons to be active.

Code:
	oapiVCSetAreaClickmode_Quadrilateral(AID_CCTV1_BUTTONS, _V(-1.009228, 2.914146, 12.2876), _V(-.9044127, 2.913743, 12.2876), _V(-1.007414, 2.906084, 12.2876), _V(-.9030017,  2.90568, 12.2876));

// D. Beachy: register+activate MFD power buttons
const double powerButtonRadius = 0.01; // radius of power button on each MFD
oapiVCRegisterArea(AID_CCTV1_PWR, PANEL_REDRAW_NEVER, PANEL_MOUSE_LBDOWN | PANEL_MOUSE_ONREPLAY);

oapiVCSetAreaClickmode_Spherical(AID_CCTV1_PWR, _V(-1.079, 3.0613, 12.412), .01);

Last edited:

#### Donamy

Donator
Beta Tester
All the payload bay cameras pan and tilt.

#### gattispilot

All the payload bay cameras pan and tilt.
Yes. I can do that also. But you need to add no clipping as you get clipped by the bay and hardware.

But not sure if you can see that view from the monitor in the cockpit?

Except for the RMS views. The pan and tilt can be simulated in the Camera MFD. So just make 4 Camera settings.

Last edited:

#### Donamy

Donator
Beta Tester
Kinda cheesy if the cameras, don't move.

#### gattispilot

Well In SF they don't move at all. I know in SSU they do. I can animate them and get the view in the VC just not on the CCTV.

But clipping needs to be turned off in D3D9

This may all I can do:

Still haven't figured out why the buttons are not working. I can get them to turn on/off though.

So in 2010 does the SSu CRT work. I couldn't get them to come on

Last edited:

#### Donamy

Donator
Beta Tester
If each camera was a vessel you could use it's view point on the CCTV.

#### gattispilot

If each camera was a vessel you could use it's view point on the CCTV.
Not sure how?

So in SSu do the CCTV work?

I can animate the camera and the view in the VC. But how to put the vc view on the mfd?

#### Donamy

Donator
Beta Tester
You have to have Dx9 and use the Camera MFD. SSU does not have working CCTVs in the aft flightdeck.

#### gattispilot

So It sounds like the way to do it is just set up Camera MFD with the 4 payload camera. Then use the Camera MFD to move the camera.

But I need to figure out the buttons. I think it may be that the front MFD button change along the x axis and the CCTv would have the main change on the z axis.

---------- Post added at 05:23 PM ---------- Previous post was at 01:33 PM ----------

So I am stuck on why the rear side mfd/CCTV buttons are not working.

IS there some code to display where the cursor is when the button is pressed?

Code:
void Atlantis::RegisterVC_AftMFD ()
{

SURFHANDLE tex1 = oapiGetTextureHandle (hOrbiterVCMesh, 20);
// activate MFD function buttons
oapiVCSetAreaClickmode_Quadrilateral(AID_CCTV1_BUTTONS, _V(-1.009214, 2.905935, 12.39062), _V(-0.906, 2.906741, 12.285), _V(-1.007, 2.913594, 12.392), _V(-0.903 , 2.914401,  12.288));
oapiVCSetAreaClickmode_Quadrilateral(AID_CCTV2_BUTTONS, _V(-0.9271295, 2.69396, 12.31786), _V(-0.9271295, 2.694549, 12.285), _V(-0.9271295, 2.701223, 12.31629), _V(-0.9271295,  2.702009 , 12.41936));

// D. Beachy: register+activate MFD power buttons
const double powerButtonRadius = 0.01; // radius of power button on each MFD
oapiVCRegisterArea(AID_CCTV1_PWR, PANEL_REDRAW_NEVER, PANEL_MOUSE_LBDOWN | PANEL_MOUSE_ONREPLAY);
oapiVCRegisterArea(AID_CCTV2_PWR, PANEL_REDRAW_NEVER, PANEL_MOUSE_LBDOWN | PANEL_MOUSE_ONREPLAY);

oapiVCSetAreaClickmode_Spherical(AID_CCTV1_PWR, _V(-1.079, 3.0613, 12.412), .01);
oapiVCSetAreaClickmode_Spherical(AID_CCTV2_PWR, _V(-1.0401, 2.8382, 12.443), .01);

oapiVCRegisterArea(AID_CCTV1_BUTTONS, _R(0, 99, 255, 112), PANEL_REDRAW_USER, PANEL_MOUSE_LBDOWN | PANEL_MOUSE_LBUP | PANEL_MOUSE_LBPRESSED | PANEL_MOUSE_ONREPLAY, PANEL_MAP_BACKGROUND, tex1);
oapiVCRegisterArea(AID_CCTV2_BUTTONS, _R(0, 113, 255, 126), PANEL_REDRAW_USER, PANEL_MOUSE_LBDOWN | PANEL_MOUSE_LBUP | PANEL_MOUSE_LBPRESSED | PANEL_MOUSE_ONREPLAY, PANEL_MAP_BACKGROUND, tex1);}
Code:
bool Atlantis::clbkVCMouseEvent (int id, int event, VECTOR3 &p)
{

static bool counting = false;
static double t0 = 0.0;

switch (id) {
// handle MFD selection buttons
case AID_CDR1_BUTTONS:
case AID_PLT1_BUTTONS:
case AID_MFD1_BUTTONS:
case AID_CCTV1_BUTTONS:
case AID_CCTV2_BUTTONS:
//case AID_MFDA_BUTTONS:
{
int mfd = id-AID_CDR1_BUTTONS+MFD_LEFT;
int bt = (int)(p.x*5.99);
if (bt < 5) oapiProcessMFDButton (mfd, bt, event);
else {
if (event & PANEL_MOUSE_LBDOWN) {
t0 = oapiGetSysTime();
counting = true;
} else if ((event & PANEL_MOUSE_LBUP) && counting) {
oapiSendMFDKey (mfd, OAPI_KEY_F2);
counting = false;
} else if ((event & PANEL_MOUSE_LBPRESSED) && counting && (oapiGetSysTime()-t0 >= 1.0)) {
oapiSendMFDKey (mfd, OAPI_KEY_F1);
counting = false;
}
}
} return true;

// D. Beachy: handle power buttons
case AID_CDR1_PWR:
case AID_PLT1_PWR:
case AID_MFD1_PWR:
case AID_CCTV1_PWR:
case AID_CCTV2_PWR:
//case AID_MFDA_PWR:
{
int mfd = id - AID_CDR1_PWR+MFD_LEFT;
oapiSendMFDKey(mfd, OAPI_KEY_ESCAPE);
} return true;

// handle MFD brightness buttons
case AID_CDR1_BRT:
case AID_PLT1_BRT:
case AID_MFD1_BRT:

//case AID_MFDA_BRT:
{
static double t0, brt0;
static bool up;
int mfd = id-AID_CDR1_BRT;
if (event & PANEL_MOUSE_LBDOWN) {
up = (p.x >= 0.5);
t0 = oapiGetSysTime();
brt0 = mfdbright[mfd];
} else if (event & PANEL_MOUSE_LBPRESSED) {
double dt = oapiGetSysTime()-t0;
double brt, dbrt = dt * 0.2;
if (up) brt = min (1.0, brt0 + dbrt);
else    brt = max (0.25, brt0 - dbrt);
mfdbright[mfd] = brt;
if (vis) {
MATERIAL mat;
memset (&mat, 0, sizeof(MATERIAL));
mat.emissive.r = mat.emissive.g = mat.emissive.b = (float)brt;
mat.emissive.a = 1.0f;
DEVMESHHANDLE hMesh = GetDevMesh (vis, mesh_vc);
oapiSetMaterial (hMesh, 23+mfd, &mat);
}
}
} return true;

// handle panel R13L events (payload bay operations)
case AID_R13L:
return plop->VCMouseEvent (id, event, p);
}

return false;
}
So I can turn the mfd on/off when I press in the right area.

#### gattispilot

So just guessing now. But because of 45 degree angle of the CCTV

I am thinking that is why I am not being able to hit the buttons. I made a large area and did hit so that part is right.

So I adjusted the view to a 45 degree view.
But I think I need to see what the coordinates of the cursor are to be adjust the click area.

Last edited: