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
rendezvous manuale Rientro Forum Nassp d3d9 Fleet mesh Antares moonscape brighton AMSO autofcs Multistage2015 anim8or conrad peregrin ltmfd TransX IMFD Connect Shuttle Pegasus Basesync tutorial 2016
Siti amici
Astronautica Ultima Speranza

AstronautiNEWS

Orbiter Forum

Tuttovola
Ultimi argomenti
» [WIP] Missione San Marco 1
Da marcogavazzeni Oggi alle 8:15

» Ripley Administrator!
Da marcogavazzeni Oggi alle 7:43

» Nuova versione BETA di Orbiter
Da wolf Dom 15 Ott 2017 - 14:57

» Rendezvous ISS "by the numbers"
Da wolf Ven 13 Ott 2017 - 12:31

» Ciao a tutti da Francy
Da Pete Conrad Ven 13 Ott 2017 - 7:18

» Salve a tutti
Da DDD Gio 5 Ott 2017 - 13:53

» MOONSCAPE versione completa - documentario di Paolo Attivissimo
Da Ripley Gio 28 Set 2017 - 0:01

» Astronautica US chiude i battenti
Da Ripley Mer 27 Set 2017 - 23:52

» Rilasciato Anim8or versione 1.0
Da Pete Conrad Ven 22 Set 2017 - 14:39

» D3D9Client - il client grafico di Jarmonik
Da Ripley Mar 19 Set 2017 - 17:26

» Segnali di vita da Dansteph!
Da Ripley Gio 31 Ago 2017 - 0:06

» Multistage2015
Da fred18 Lun 28 Ago 2017 - 14:10

» Sviluppo di una base italiana - Sede ASVI
Da marcogavazzeni Dom 27 Ago 2017 - 21:19

» Terza missione di Paolo Nespoli nello spazio.
Da marcozambi Dom 27 Ago 2017 - 9:34

» Texfilms - Un nuovo canale streaming live
Da Ripley Dom 20 Ago 2017 - 20:14

» Nuove textures HRSC per Marte
Da wolf Ven 18 Ago 2017 - 12:02

» Domanda ridicola sui piani orbitali Terra-Luna
Da Ripley Mar 8 Ago 2017 - 7:29

» Space Shuttle Ultra - il vero Shuttle a casa vostra
Da wolf Gio 3 Ago 2017 - 21:17

» sound e carburante limitato
Da DDD Mer 2 Ago 2017 - 11:11

» Cambio indirizzo mail
Da Ripley Mar 1 Ago 2017 - 16:28

» [Risolto] Problema download XR Fleet
Da DDD Dom 23 Lug 2017 - 9:39

» [Risolto] Problema avviamento Orbiter
Da Ripley Sab 22 Lug 2017 - 21:12

» Buonasera, mi presento
Da Ripley Sab 22 Lug 2017 - 14:40

» Nuove navi in sviluppo per la flotta XR: XR0, XR3, XR4
Da wolf Ven 7 Lug 2017 - 12:24

» Traduzione ITA manuale operativo di volo flotta XR
Da Ripley Ven 7 Lug 2017 - 11:44

Argomenti simili
Contatore Visite

Condividere | 
 

 [c++] Luci Beacon di posizione (lampeggianti e fisse)

Vedere l'argomento precedente Vedere l'argomento seguente Andare in basso 
AutoreMessaggio
simone
Add-on Developer
Add-on Developer
avatar

Numero di messaggi : 1005
Età : 21
Località : Catania
Data d'iscrizione : 12.02.10

MessaggioTitolo: [c++] Luci Beacon di posizione (lampeggianti e fisse)   Lun 12 Mag 2014 - 23:48

Ecco il codice che uso per far funzionare le luci di "posizione" del machiavelli

Citazione :


int i;
static VECTOR3 beaconpos[4] = {
{ 1.08, 1.88, 7.392 }, { -1.08, 1.88, 7.392 }, { 1.08, 1.88, 7.392 }, { -1, 1, 1 } };
static VECTOR3 beaconcol[4] = {

{ 1.0, 0.5, 0.5 }, { 1.0, 0.5, 0.5 }, { 0, 1, 0 }, { 0, 1, 0 } };

for (i = 0; i < 3; i++) {
beacon[i].shape = (BEACONSHAPE_DIFFUSE);
beacon[i].pos = beaconpos + i;
beacon[i].col = beaconcol + i;
beacon[i].size = (0.2); ////grandezza
beacon[i].falloff = (0.6); //????
beacon[i].period = (i == 0 ? 1 : i==1 ? 1.5 : i==2 ? 1 : i==3 ? 3 :0); ///spiegata in seguito
beacon[i].duration = (0.05); //durata
beacon[i].tofs = (0.3);; //????
beacon[i].active = true; ///luci attivate
AddBeacon(beacon + i);
};

Questo va messo sotto:
Citazione :
void machiavellism::clbkSetClassCaps(FILEHANDLE cfg)

In ordine con la costante:
beaconpos[4]
inserisco le coordinate (x,y,z) di ogni singola luce (in questo caso proprio 4)

Con la costante:
beaconcol[4]
inserisco i valori rgb di 4 luci

Con questa stringa inseriamo i periodi (cioè la frequenza di accensione/spegnimento di ogni singola luce

Il metodo che ho usato....specificando singolarmente ogni luce è un po rozzo e sicuramente potrebbe essere migliorato
                           
beacon[i].period = (i == 0 ? 1 : i==1 ? 1.5 : i==2 ? 1 : i==3 ? 3 :0);

inserendo il valore : 0 al posto dei vari valori
(in questo caso  1/1.5/1/3) otterremo una luce fissa

se inseriremo ulteriori luci (senza specificarle in questa stringa)
verranno di default impostate a FISSE



Nel file .h andremo a specificare invece questo

semplice copia-incolla

Citazione :
BEACONLIGHTSPEC beacon[4];

Per chiarimenti e per consigli basta commentare.....buone orbite a tutti  Forza

EDIT
l'effetto ottenuto è questo
Tornare in alto Andare in basso
Vedi il profilo dell'utente http://www.facebook.com/profile.php?cropsuccess&id=100000660
fred18
Add-on Developer
Add-on Developer


Numero di messaggi : 939
Età : 34
Località : La Spezia
Data d'iscrizione : 04.01.12

MessaggioTitolo: Re: [c++] Luci Beacon di posizione (lampeggianti e fisse)   Mar 13 Mag 2014 - 10:55

ti aiuto a completare (vado a memoria però e come al solito di corsa): il tofs è l'offset di tempo tra le accensioni del beacon, se non sbaglio è la "sfasatura" delle accensione, è utile in questo senso:

immagina le frecce di un'automobile. quelle davanti e quelle dietro si accendono a intermittenza ma contemporaneamente, tutte e due si, tutte e due no etc. Se invece voglio che si accendano alternate, cioè quella davanti accesa, quella dietro spenta e poi quella davanti spenta e quella dietro accesa e così via, devo "sfasarle" esattamente del periodo di intermittenza. la sfasatura è esattamente il tofs.

il falloff invece è un parametro che serve a bilanciare realismo della simulazione e utilità delle luci: allontanandomi dal mezzo in teoria il puntino luminoso del beacon dovrebbe ridursi sempre di più, ma impostando il parametro di falloff ad un valore maggiore di 0 il beacon (che sullo schermo è rappresentato solo da qualche pixel colorato) rimane più grande di quanto sarebbe in realtà. impostando falloff=1 il beacon non si rimpicciolisce mai fino al momento in cui sparisce perché fuori dal campo visivo. la distanza in cui il parametro di falloff entra in funzione è 50m, io consiglio di lasciare dei valori di falloff alti (>0.6) perché l'effetto del beacon secondo me è più realistico se lo si riesce ad individuare da lontano. Comunque martin ha spiegato come funziona il falloff in QUESTO post

ciao!
Tornare in alto Andare in basso
Vedi il profilo dell'utente
simone
Add-on Developer
Add-on Developer
avatar

Numero di messaggi : 1005
Età : 21
Località : Catania
Data d'iscrizione : 12.02.10

MessaggioTitolo: Re: [c++] Luci Beacon di posizione (lampeggianti e fisse)   Gio 15 Mag 2014 - 3:40

Ottimo Completamento !!! Come sempre d'altronde

Volevo chiederti una cosa se dovessi disattivarle una volta effettuato la separazione SM/CM
come dovrei fare....avevo pensato di inserire qualcosa tipo

beacon[i].active = false;

nella funzione jettison....ma era troppo prevedibile

Cosa mi consigli?
Tornare in alto Andare in basso
Vedi il profilo dell'utente http://www.facebook.com/profile.php?cropsuccess&id=100000660
fred18
Add-on Developer
Add-on Developer


Numero di messaggi : 939
Età : 34
Località : La Spezia
Data d'iscrizione : 04.01.12

MessaggioTitolo: Re: [c++] Luci Beacon di posizione (lampeggianti e fisse)   Gio 15 Mag 2014 - 13:20

beh dovrebbe essere giusto

pseudo-codice:
Codice:

int i;
for(i=0;i<4;i++){
beacon[i].active=false;
}

non funziona perché?
Tornare in alto Andare in basso
Vedi il profilo dell'utente
simone
Add-on Developer
Add-on Developer
avatar

Numero di messaggi : 1005
Età : 21
Località : Catania
Data d'iscrizione : 12.02.10

MessaggioTitolo: Re: [c++] Luci Beacon di posizione (lampeggianti e fisse)   Ven 16 Mag 2014 - 14:50

fred18 ha scritto:
beh dovrebbe essere giusto

pseudo-codice:
Codice:

int i;
for(i=0;i<4;i++){
beacon[i].active=false;
}

non funziona perché?

Ceeerto....che scemo che sono...ora funziona....  Forza Forza 
Tornare in alto Andare in basso
Vedi il profilo dell'utente http://www.facebook.com/profile.php?cropsuccess&id=100000660
Contenuto sponsorizzato




MessaggioTitolo: Re: [c++] Luci Beacon di posizione (lampeggianti e fisse)   

Tornare in alto Andare in basso
 
[c++] Luci Beacon di posizione (lampeggianti e fisse)
Vedere l'argomento precedente Vedere l'argomento seguente Tornare in alto 
Pagina 1 di 1
 Argomenti simili
-
» [c++] Luci Beacon di posizione (lampeggianti e fisse)
» posizione del rifiuto
» Circolare Albo Utilizzo Codici Cer e classificazione tubi al neon
» La cervice in gravidanza
» Parto cesareo

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: