CLICCA QUI PER SCARICARE ORBITER 2016
 
IndiceIndice  FAQFAQ  LinkLink  CercaCerca  RegistratiRegistrati  Accedi  
Accedi
Nome utente:
Password:
Connessione automatica: 
:: Ho dimenticato la password
FOI è sui social
Parole chiave
jarvis manuale TransX Fleet addon AMSO autofcs Poderosa Pegasus lander OrbiterSound Nassp Rientro d3d9 Antares Base Missione Flotta 2016 Universal DGIV sound Basesync Shuttle Orbiter apollo
Siti amici
AstronautiNEWS

ForumAstronautico

Orbiter Forum

Tuttovola
Ultimi argomenti
» Costruiranno uno spazioporto per suborbitali a Taranto?
Da Pete Conrad Mar 15 Mag 2018 - 18:44

» D3D9 - il client grafico di Jarmonik
Da Ripley Sab 12 Mag 2018 - 23:37

» Risorse per l'ambiente di sviluppo Visual Studio 2017 (in Win10)
Da Ripley Gio 10 Mag 2018 - 16:03

» [WIP] Missione San Marco 1
Da Dany Gio 26 Apr 2018 - 0:10

» Conversione carichi DGIV- UCGO
Da Franz Sab 21 Apr 2018 - 19:55

» Domanda punti di Lagrange
Da Ripley Gio 19 Apr 2018 - 7:56

» Addon russi di igel e Thorton incompatibili con Orbiter2016?
Da Ripley Mer 18 Apr 2018 - 14:34

» X-Plane 11
Da masdeca Mer 18 Apr 2018 - 11:57

» "Starlab" space station
Da Franz Lun 16 Apr 2018 - 21:53

» Come si mette nasa tv?
Da Francy03 Sab 14 Apr 2018 - 18:16

» Vista interna Delta Glider
Da Franz Ven 13 Apr 2018 - 18:07

» Nuova versione di TransX (Enjo)
Da Ripley Lun 9 Apr 2018 - 15:48

» ModuleMessagingExt v2
Da Ripley Dom 8 Apr 2018 - 21:05

» BaseSync MFD
Da Ripley Dom 8 Apr 2018 - 20:08

» BurnTimeCalc MFD
Da Ripley Ven 6 Apr 2018 - 1:20

» Launch MFD
Da Ripley Ven 6 Apr 2018 - 0:51

» Glideslope 2 MFD
Da Ripley Gio 5 Apr 2018 - 8:53

» Rilasciato XRSound, il nuovo sistema audio
Da Ripley Lun 12 Mar 2018 - 12:42

» Sviluppo di una base italiana - Sede ASVI
Da Franz Gio 1 Mar 2018 - 10:47

» Dalla Terra alla Luna - Serie TV
Da m.a.s Dom 25 Feb 2018 - 22:21

» Problema con D3D9Client Beta 25.4
Da Pietrogramma Dom 25 Feb 2018 - 16:28

» Intervista (finta) a Samantha Cristoforetti
Da Pete Conrad Sab 24 Feb 2018 - 18:25

» Mission to Mars
Da Edward Sab 24 Feb 2018 - 15:20

» oMMU, l'alternativa per la gestione dell'equipaggio!
Da Edward Gio 22 Feb 2018 - 13:13

» Traduzione ITA manuale operativo di volo flotta XR
Da Ripley Mer 21 Feb 2018 - 16:16

Contatore Visite

Condividi | 
 

 Scudo Termico

Andare in basso 
AutoreMessaggio
marcogavazzeni
Add-on Developer
Add-on Developer
avatar

Numero di messaggi : 1180
Età : 49
Località : Bergamo
Data d'iscrizione : 04.01.09

MessaggioTitolo: Scudo Termico   Ven 24 Dic 2010 - 1:22

Allora,volevo provare a simulare lo scudo termico in stile DGIV o RAVENSTAR,girovagando per la rete ho trovato questo codice:

if (GetAltitude()<54000)
{SetMeshVisibilityMode (InsertMesh (bouclier,3,&ofsr),MESHVIS_EXTERNAL);}
if ((ReentryShieldMeshVisual != 0) & (54000>GetAltitude()) & (GetAltitude()>40000))
{
oapiSetMeshProperty (ReentryShieldMeshVisual,MESHPROPERTY_MODULATEMATALPHA,1);
double opacity = myformula ;
MATERIAL *mat = oapiMeshMaterial (ReentryShieldMeshVisual, 0);
mat->diffuse.a *= opacity;
mat->ambient.a *= opacity;
mat->specular.a *= opacity;
mat->emissive.a *= opacity;
}
if (GetAltitude()<30000)
{DelMesh(3);}

Tutto in poststep
Tornare in alto Andare in basso
Visualizza il profilo dell'utente http://www.orbithangar.com/searchauth.php?search=marcogavazzeni
Fausto
Admin
Admin
avatar

Numero di messaggi : 7088
Età : 35
Località : Arcore (Milano)
Data d'iscrizione : 27.06.09

MessaggioTitolo: Re: Scudo Termico   Ven 24 Dic 2010 - 13:33

Giusto quello che cercavo! Nell'Antares andrà benissimo! Grazie!

_________________________________________________

Dategli una grande sfida, una che sembra impossibile. Dategli il desiderio di vincerla. Unite le due cose, e l'essere umano è capace di tutto

Jim Lovell
Tornare in alto Andare in basso
Visualizza il profilo dell'utente
marcogavazzeni
Add-on Developer
Add-on Developer
avatar

Numero di messaggi : 1180
Età : 49
Località : Bergamo
Data d'iscrizione : 04.01.09

MessaggioTitolo: Re: Scudo Termico   Ven 24 Dic 2010 - 15:29

Fausto ha scritto:
Giusto quello che cercavo! Nell'Antares andrà benissimo! Grazie!

Si ma io l'ho provato e non funziona....forse manca qualcosa confused 2
Tornare in alto Andare in basso
Visualizza il profilo dell'utente http://www.orbithangar.com/searchauth.php?search=marcogavazzeni
marcogavazzeni
Add-on Developer
Add-on Developer
avatar

Numero di messaggi : 1180
Età : 49
Località : Bergamo
Data d'iscrizione : 04.01.09

MessaggioTitolo: Re: Scudo Termico   Dom 26 Dic 2010 - 18:48

Adesso funziona Big Grin

//*******************SIMULATION HEAT SHIELD***********************
double alpha = (0.5*GetDynPressure() * (GetAirspeed()))/100000;
double shield;

shield = min(alpha/1200.0, 1.0);

SetMeshVisibilityMode (InsertMesh (hMeshReentryShield,3,&offsetsh),MESHVIS_EXTERNAL);

oapiSetMeshProperty (hMeshReentryShield,MESHPROPERTY_MODULATEMATALPHA,1);
double opacity = shield ;
MATERIAL *mat = oapiMeshMaterial (hMeshReentryShield, 0);
mat->diffuse.a = shield;
mat->ambient.a = shield;
mat->specular.a = shield;
mat->emissive.a = shield;


La parte in grassetto è il nome della mesh,e il numero della texture

Alpha sarebbe il calcolo della temperatura,ma nelle capsule è notevolmente più alta.

La mesh deve essere emissiva,cioè luminosa.

Vabbhè poi se non capite qualcosa stòqquà Yeah right
Tornare in alto Andare in basso
Visualizza il profilo dell'utente http://www.orbithangar.com/searchauth.php?search=marcogavazzeni
Fausto
Admin
Admin
avatar

Numero di messaggi : 7088
Età : 35
Località : Arcore (Milano)
Data d'iscrizione : 27.06.09

MessaggioTitolo: Re: Scudo Termico   Mar 28 Dic 2010 - 13:47

Perfetto! Grazie Marco! La proverò e ti farò sapere! Thumb Up

_________________________________________________

Dategli una grande sfida, una che sembra impossibile. Dategli il desiderio di vincerla. Unite le due cose, e l'essere umano è capace di tutto

Jim Lovell
Tornare in alto Andare in basso
Visualizza il profilo dell'utente
Fausto
Admin
Admin
avatar

Numero di messaggi : 7088
Età : 35
Località : Arcore (Milano)
Data d'iscrizione : 27.06.09

MessaggioTitolo: Re: Scudo Termico   Lun 10 Gen 2011 - 13:23

Marco ho provato ad inserirlo ma naturalmente non funziona.. cosa intendi per mesh emissiva cioè luminosa? Devo aggiungere qualcosa al file msh? confused 2

_________________________________________________

Dategli una grande sfida, una che sembra impossibile. Dategli il desiderio di vincerla. Unite le due cose, e l'essere umano è capace di tutto

Jim Lovell
Tornare in alto Andare in basso
Visualizza il profilo dell'utente
marcogavazzeni
Add-on Developer
Add-on Developer
avatar

Numero di messaggi : 1180
Età : 49
Località : Bergamo
Data d'iscrizione : 04.01.09

MessaggioTitolo: Re: Scudo Termico   Dom 12 Giu 2011 - 18:21

Fausto ha scritto:
Marco ho provato ad inserirlo ma naturalmente non funziona.. cosa intendi per mesh emissiva cioè luminosa? Devo aggiungere qualcosa al file msh? confused 2

Devi fare la mesh luminosa,come gli interni delle cabine per intenderci.

Poi nel file .h devi dichiarare la mesh-------------------------------------------

MESHHANDLE hMeshReentryShield;

Mi raccomando la "h"----> hMeshReentryShield

Poi la posizione della mesh:

const VECTOR3 offsetshield = {0,0.268,0.548};

Nel file .cpp ------------------------------------------------------------------------

ShuttlePB::ShuttlePB (OBJHANDLE hVessel, int flightmodel)
: VESSEL2 (hVessel, flightmodel)

Metti in lista la mesh dello scudo insieme alle altre:

f150 = oapiLoadMeshGlobal ("beta1");
f151 = oapiLoadMeshGlobal ("betapilot1");
f152 = oapiLoadMeshGlobal ("Spiralcab1");
f153 = oapiLoadMeshGlobal ("Spiralcab2");
f154 = oapiLoadMeshGlobal ("Spiralcab3");
f155 = oapiLoadMeshGlobal ("Spiralcabdummy");
f156 = oapiLoadMeshGlobal ("mfd_1"); //right
f157 = oapiLoadMeshGlobal ("mfd_2");//left
f158 = oapiLoadMeshGlobal ("mfd1_1n");
f159 = oapiLoadMeshGlobal ("mfd2_2n");
hMeshReentryShield = oapiLoadMeshGlobal ("shield");

Poi in :
void ShuttlePB::clbkPostStep (double simt, double simdt, double mjd)

double atmTemp = 0.5*(GetAtmDensity()*(GetAirspeed()*GetAirspeed()*GetAirspeed()));
double alpha1 = ((atmTemp-40000000) / 100000000);
double f1 = ((GetAirspeed()*GetAirspeed())/2);
double alpha2 = (alpha1 / (f1*0.1));
double alpha = alpha1-alpha2;
double aspd = GetAirspeed();

if (alpha < 0)(alpha = 0);
if (alpha > 1) (alpha = 1);
if (aspd < 20) (alpha = 0);

SetMeshVisibilityMode (InsertMesh (hMeshReentryShield,10,&offsetshield),MESHVIS_EXTERNAL); //nota 1
oapiSetMeshProperty (hMeshReentryShield,MESHPROPERTY_MODULATEMATALPHA,1);//nota 2
MATERIAL *mat = oapiMeshMaterial (hMeshReentryShield, 0);
mat->diffuse.a = alpha;
mat->ambient.a = alpha;
mat->specular.a = alpha;
mat->emissive.a = alpha;

Attenzione a:

nota 1
SetMeshVisibilityMode (InsertMesh (hMeshReentryShield,10,&offsetsh),MESHVIS_EXTERNAL);

Il numero 10 corrisponde al numero della mesh,se la tua nave ha 5 mesh metterai lo scudo per ultimo con il numero 4 (0-1-2-3-4)

nota 2
MATERIAL *mat = oapiMeshMaterial (hMeshReentryShield, 0);

Dove il numero 0 corrisponde al numero della texture nel file .msh
Tornare in alto Andare in basso
Visualizza il profilo dell'utente http://www.orbithangar.com/searchauth.php?search=marcogavazzeni
Fausto
Admin
Admin
avatar

Numero di messaggi : 7088
Età : 35
Località : Arcore (Milano)
Data d'iscrizione : 27.06.09

MessaggioTitolo: Re: Scudo Termico   Dom 12 Giu 2011 - 19:04

Ah ok, quindi ci vuole una mesh a parte.. ora ho capito grazie!!! Thumb Up

_________________________________________________

Dategli una grande sfida, una che sembra impossibile. Dategli il desiderio di vincerla. Unite le due cose, e l'essere umano è capace di tutto

Jim Lovell
Tornare in alto Andare in basso
Visualizza il profilo dell'utente
Contenuto sponsorizzato




MessaggioTitolo: Re: Scudo Termico   

Tornare in alto Andare in basso
 
Scudo Termico
Tornare in alto 
Pagina 1 di 1

Permessi di questa sezione del forum:Non puoi rispondere agli argomenti in questo forum
Forum Orbiter Italia :: Orbiter Space Flight Simulator :: Sviluppo Add-on :: Orbiter SDK-
Andare verso: