VIRTUAL SAILOR
COMMUNITY ITALIA
COME COSTRUIRE
NAVI E SCENARI
Clicca qui per sapere
come realizzare gli scenari
Realizzare nuove imbarcazioni
Aggiungere nuove imbarcazioni a Virtual Sailor è semplice, tutti
i file sono in formato standard e possono essere creati o modificati
attraverso programmi di testo e di elaborazione
immagini.
La cartella boats all’interno
della cartella Virtual Sailor contiene le imbarcazioni disponibili, ogni
imbarcazione ha una propria cartella.
All’interno di quest’ultima sono
contenuti i seguenti file:
Boat.cfg |
Descrive
i parametri dell’imbarcazione. |
X files |
Le
varie parti dell’imbarcazione. |
Bmp files |
Le
trame utilizzate per le parti dell’imbarcazione. |
Wav files |
I
suoni disponibili per l’imbarcazione. |
Deck.cfg |
File
di configurazione delle zone trasparenti del ponte. |
Views.cfg |
File
di definizione dei punti di osservazione. |
Smokes.cfg |
File
di definizione delle fonti di fumo. |
Il
file Boat.cfg
Il file boat.cfg si compone di un numero variabile di
righe che contengono due elementi:
dati numerici, parola chiave.
I dati numerici sono tradotti utilizzando la parola chiave a loro
collegata e possono comparire nel file in qualsiasi ordine; se alcuni tipi di
dati non sono richiesti, possono essere omessi dal file boat.cfg.
Queste sono le parole chiave disponibili con relativo
significato:
boat_length |
La
lunghezza dell’imbarcazione, espresso in piedi (ft.). |
boat_alt |
Il
pescaggio, espresso in piedi (ft.). |
mass |
Il peso in kg. |
cdf |
Coefficiente
di resistenza (drag coefficient)
della parte sommersa. |
cross_section_sur |
Area di riferimento per la resistenza della parte
sommersa, in metri quadrati. |
max_tilt |
Angolo
massimo di sbandamento consentito, espresso in radianti. |
stability_factor |
Fattore di stabilità per l’angolo di sbandamento e calcolo
dello sbandamento. |
dagger_area |
Area
della deriva in metri quadrati. |
|
|
clmax_sailb |
Fattore
di spinta massimo ottenibile dalla vela principale. |
clmax_sails |
Massimo
fattore di spinta ottenibile dal fiocco (jib). |
|
|
has_sails |
1
per imbarcazioni a vela, 0 per imbarcazioni senza
vele. |
sur_sailb |
Area
della randa (main sail) in
metri quadrati. |
sur_sails |
Area
del fiocco (jib)
in metri quadrati. |
sur_spin |
Area
dello spinnaker in metri quadrati. |
|
|
has_engine |
1
per imbarcazioni a motore, 0 per imbarcazioni senza
motore. |
max_fuel_time |
Tempo massimo di carburante con motore a tutta forza,
espresso in secondi. |
motor_hp |
Potenza
massima del motore in cavalli. |
|
|
bridge_x |
Posizione
x del punto di osservazione del pilota, espressa in
piedi (ft.). |
bridge_y |
Posizione
y del punto di osservazione del pilota, espressa in
piedi (ft.). |
bridge_z |
Posizione
z del punto di osservazione del pilota, espressa in
piedi (ft.). |
|
|
helm_x |
Posizione
x del timone, espressa in piedi (ft.). |
helm_y |
Posizione
y del timone, espressa in piedi (ft.). |
helm_z |
Posizione
z del timone, espressa in piedi (ft.). |
|
|
panel_number |
Tipo
di quadro di comandi utilizzato. |
panel_scale |
Scala
del quadro di comandi. |
panel_x |
Posizione
x del quadro degli strumenti, espressa in piedi (ft.). |
panel_y |
Posizione
y del quadro degli strumenti, espressa in piedi (ft.). |
panel_z |
Posizione
z del quadro degli strumenti, espressa in piedi (ft.). |
panel_dx |
“Direction
vector” quadro degli strumenti, componente
x. (per comprendere meglio i vettori “direction” e “up”, vedi immagine Coordinate
3D) |
panel_dy |
“Direction
vector” quadro degli strumenti, componente
y. (vedi immagine) |
panel_dz |
“Direction
vector” quadro degli strumenti, componente
z. (vedi immagine) |
panel_ux |
“Up
vector” quadro degli strumenti, componente
x. (vedi immagine) |
panel_uy |
“Up
vector” quadro degli strumenti, componente
y. (vedi immagine) |
panel_uz |
“Up
vector” quadro degli strumenti, componente
z. (vedi immagine) |
|
|
weapon_number |
Tipo
di arma utilizzato. |
weapon_x |
Posizione
x dell’arma, espressa in piedi (ft.). |
weapon_y |
Posizione
y dell’arma, espressa in piedi (ft.). |
weapon_z |
Posizione
z dell’arma, espressa in piedi (ft.). |
|
|
sailb_x |
Posizione
x della randa (main sail),
espressa in piedi (ft.). |
sailb_y |
Posizione
y della randa (main sail),
espressa in piedi (ft.). |
sailb_z |
Posizione
z della randa (main sail),
espressa in piedi (ft.). |
|
|
has_sailb2 |
1
per imbarcazioni con una seconda randa, 0 per imbarcazioni senza seconda randa |
sailb2_x |
Posizione
x randa2 (main sail) , espressa in piedi (ft.). |
sailb2_y |
Posizione
y randa2 (main sail),
espressa in piedi (ft.). |
sailb2_z |
Posizione
x z randa2 (main sail),
espressa in piedi (ft.). |
|
|
has_sailb3 |
1 per imbarcazioni con una terza randa, 0 per imbarcazioni
senza terza randa. |
sailb3_x ecc. |
Procedere come nell’esempio sopra. |
|
|
sails_x |
Posizione
x del fiocco (jib sail),
espressa in piedi (ft.). |
sails_y |
Posizione
y del fiocco (jib sail),
espressa in piedi (ft.). |
sails_z |
Posizione
z del fiocco (jib sail),
espressa in piedi (ft.). |
sails_dx |
“Direction
vector” fiocco, componente
x. (per comprendere meglio i vettori “direction” e “up”, vedi immagine) |
sails_dy |
“Direction
vector” fiocco, componente
y. (vedi immagine) |
sails_dz |
“Direction
vector” fiocco, componente
z. (vedi immagine) |
sails_ux |
“Up
vector” fiocco, componente
x. (vedi immagine) |
sails_uy |
“Up
vector” fiocco, componente
y. (vedi immagine) |
sails_uz |
“Up
vector” fiocco, componente
z. (vedi immagine) |
|
|
has_jib2 |
1 per imbarcazioni con un secondo fiocco, 0 per
imbarcazioni senza secondo fiocco. |
sails2_x |
Posizione
x del fiocco2 (jib sail),
espressa in piedi (ft.). |
sails2_y |
Posizione
y del fiocco2 (jib sail),
espressa in piedi (ft.). |
sails2_z |
Posizione
z del fiocco2 (jib sail),
espressa in piedi (ft.). |
sails2_dx |
“Direction
vector” fiocco2, componente
x. (per comprendere meglio i vettori “direction” e “up”, vedi immagine) |
sails2_dy |
“Direction
vector” fiocco2, componente
y. (vedi immagine) |
sails2_dz |
“Direction
vector” fiocco2, componente
z. (vedi immagine) |
sails2_ux |
“Up
vector” fiocco2, componente
x. (vedi immagine) |
sails2_uy |
“Up
vector” fiocco2, componente
y. (vedi immagine) |
sails2_uz |
“Up
vector” fiocco2, componente
z. (vedi immagine) |
|
|
has_jib3 |
1 per imbarcazioni con un terzo fiocco, 0 per imbarcazioni
senza terzo fiocco. |
sails3_x ecc. |
Procedere come nell’esempio sopra.
|
|
|
sails_seperate |
1
se il secondo o terzo fiocco non è parallelo col primo, 0 se è/sono parallelo/i. |
|
|
has_prop |
1
se l’imbarcazione è a elica, 0 se l’imbarcazione non
è a elica. |
prop_x |
Posizione
x dell’elica, espressa in piedi (ft.). |
prop_y |
Posizione
y dell’elica, espressa in piedi (ft.). |
prop_z |
Posizione
z dell’elica, espressa in piedi (ft.). |
prop_dx |
“Direction
vector” elica, componente x. (per
comprendere meglio i vettori “direction” e “up”, vedi immagine) |
prop_dy |
“Direction
vector” elica, componente
y. (vedi immagine) |
prop_dz |
“Direction
vector” elica, componente
z. (vedi immagine) |
prop_ux |
“Up
vector” elica, componente x. (vedi
immagine) |
prop_uy |
“Up
vector” elica, componente
y. (vedi immagine) |
prop_uz |
“Up
vector” elica, componente
z. (vedi immagine) |
|
|
prop2_x |
Posizione
x dell’elica2, espressa in piedi (ft.). |
prop2_y |
Posizione
y dell’elica2, espressa in piedi (ft.). |
prop2_z |
Posizione
z dell’elica2, espressa in piedi (ft.). |
prop2_dx |
“Direction
vector” elica2, componente
x. (per comprendere meglio i vettori “direction” e “up”, vedi immagine) |
prop2_dy |
“Direction
vector” elica2, componente
y. (vedi immagine) |
prop2_dz |
“Direction
vector” elica2, componente
z. (vedi immagine) |
prop2_ux |
“Up
vector” elica2, componente
x. (vedi immagine) |
prop2_uy |
“Up
vector” elica2, componente
y. (vedi immagine) |
prop2_uz |
“Up
vector” elica2, componente
z. (vedi immagine) |
|
|
Prop3_x ecc. |
Procedere
come nell’esempio sopra. |
|
|
Prop4_x ecc. |
Procedere
come nell’esempio sopra. |
|
|
has_rudder |
1
per imbarcazioni con timone, 0 per imbarcazioni
senza timone. |
rudder_x |
Posizione
x del timone, espressa in piedi (ft.). |
rudder_y |
Posizione
y del timone, espressa in piedi (ft.). |
rudder_z |
Posizione
z del timone, espressa in piedi (ft.). |
rudder2_x |
Posizione
x del timone2, espressa in piedi (ft.). |
rudder2_y |
Posizione
y del timone2, espressa in piedi (ft.). |
rudder2_z |
Posizione
z del timone2, espressa in piedi (ft.). |
rudder3_x ecc. |
Procedere
come nell’esempio sopra. |
|
|
has_elevator |
1
per imbarcazioni con timone di profondità, 0 per imbarcazioni senza. |
elev_x |
Posizione
x del timone di profondità, espressa in piedi (ft.). |
elev_y |
Posizione
y del timone di profondità, espressa in piedi (ft.). |
elev_z |
Posizione
z del timone di profondità, espressa in piedi (ft.). |
|
|
radar_x |
Posizione
x del radar, espressa in piedi (ft.). |
radar_y |
Posizione
y del radar, espressa in piedi (ft.). |
radar_z |
Posizione
z del radar, espressa in piedi (ft.). |
|
|
radar2_x |
Posizione
x del radar2, espressa in piedi (ft.). |
radar2_y |
Posizione
y del radar2, espressa in piedi (ft.). |
radar2_z |
Posizione
z del radar2, espressa in piedi (ft.). |
|
|
radar3_x ecc. |
Procedere
come nell’esempio sopra. |
|
|
crew_mass |
Massa
spostata muovendo il punto di osservazione, in kg. |
|
|
wing_sur |
Superficie
dell’ala, in metri quadrati. |
wing_cd0 |
Coefficiente
di resistenza a incidenza zero dell’ala. |
wing_cla |
Inclinazione
della linea di portanza dell’ala. |
wing_ki |
Coefficiente
di resistenza indotto dell’ala. |
wing_al0 |
Angolo
di attacco dell’ala. |
can_fly |
1
per imbarcazioni volanti, 0 per imbarcazioni sommergibili. |
|
|
has_hydrofoil |
L’imbarcazione
è dotata di scafo idrodinamico (hydrofoil) o di scafo planante. |
hydro_rise |
Velocità
dell’hydrofoil alla partenza (m/sec). |
hydro_cruise |
Velocità
massima dell’hydrofoil (m/sec). |
hydro_alt |
Immersione
dell’hudrofoil a velocità massima (ft). |
hydro_cdf |
Cdf (coefficiente di resistenza) con hydrofoil a velocità massima (ft). |
hydro_angle |
Angolo
di beccheggio (pitch angle) con hydrofoil
a velocità massima (rd). |
hydro_stability |
Fattore
di stabilità con hydrofoil a velocità massima. |
hydro_propoise |
propoising amplitude angle when hydrofoil
effect is max (rd) |
hydro_omega |
propoising frequency when hydrofoil
effect is max |
I file X
I file geometrici DirectX
sono detti file X, questi file sono utilizzati in Virtual Sailor per modellare le imbarcazioni e
gli oggetti statici negli scenari, come edifici e alberi.
Per creare un file X, utilizza qualsiasi programma di grafica 3D in grado di esportare direttamente questo formato o
utilizzane uno che può esportare file 3DS e convertirli con Conv3ds di Microsoft.
Il programma più conosciuto per creare file 3DS è 3D studio, tuttavia esistono altri
software simili scaricabili da internet e in grado di iniziarti all’affascinante
mondo della creazione di oggetti 3D.
Per convertire file 3DS in file X
utilizza Conv3ds di Microsoft,
scaricabile da Download Zone.
L’imbarcazione è costituita da varie parti,
per ognuna di queste esiste un file X che ne definisce la geometria, questi file sono opzionali e possono includere i tipi
seguenti:
boat.x
la carena dell’imbarcazione (può essere dettagliata per esplorazioni
virtuali) sboat.x
la carena (meno dettagliata) sailbf.x la
randa (main sail), quando
è completamente terzarolata. sailbr.x
la randa, quando è a dritta e tutta spiegata. sailbl.x la
randa, quando è a sinistra e tutta spiegata. La seconda randa ha file simili, denominati: sailb2f.x quando
è completamente terzarolata. sailb2r.x quando
è a dritta e tutta spiegata. sailb2l.x quando
è a sinistra e tutta spiegata. La terza randa ha file simili, denominati: sailb3f.x quando è completamente terzarolata. sailb3r.x quando è a dritta e tutta spiegata. sailb3l.x quando è a sinistra e tutta
spiegata. sailsf.x il fiocco, quando la vela è completamente terzarolata. sailsr.x il fiocco, quando la vela è a dritta
e tutta spiegata . sailsl.x il fiocco, quando la vela è a
sinistra e tutta spiegata. Il secondo fiocco ha file simili, denominati: sails2f.x quando
la vela è completamente terzarolata. sails2r.x quando la vela è a dritta e tutta
spiegata . sails2l.x , quando la vela è a sinistra e
tutta spiegata. Il terzo fiocco ha file simili, denominati sails3f.x quando
la vela è completamente terzarolata. sails3r.x quando la vela è a dritta e tutta
spiegata . spin.x –
è lo spinnaker dell’imbarcazione. wheel.x
– è la barra (timone) dell’imbarcazione. elevator.x
– è il timone di profondità per le imbarcazioni sommergibili. radar.x –
è il radar rotante dell’imbarcazione. radar2.x –
è il secondo radar rotante dell’imbarcazione. radar3.x –
è il terzo radar rotante dell’imbarcazione. lights.x –
sono le luci dell’imbarcazione. rudder.x –
è il timone dell’imbarcazione. rudder2.x –
è il secondo timone dell’imbarcazione. rudder3.x –
è il terzo timone dell’imbarcazione. prop.x –
è l’elica dell’imbarcazione. prop2.x –
è la seconda elica dell’imbarcazione. prop3.x – è la terza elica
dell’imbarcazione. prop4.x – è la quarta elica
dell’imbarcazione. sails3l.x quando
orientata a sinistra e completamente spiegata. |
I file Wav:
L’imbarcazione dispone di diversi file
audio che la contraddistinguono. Tutti questi file
possono essere collocati all’interno della cartella dell’imbarcazione in modo
tale che quest’ultima abbia suoni diversi da quelli
di default.
Questi file wav devono
essere 8 bit mono,
preferibilmente 11 o 22 khz.
I file Bmp:
L’imbarcazione dispone di diversi file bitmap che ne definiscono i colori, il quadro degli
strumenti e i comandi. I file sono i seguenti:
boat.bmp –
illustra un’immagine di anteprima dell’imbarcazione;
panels.bmp –
il quadro degli strumenti, deve essere un file bitmap
512x128x256 colori;
free, locked – i comandi delle vele, deve essere un file bitmap 64x64x256 colori;
anyfile.bmp –
tutti i file della trama sono file bmp che
definiscono per l’appunto la trama dell’imbarcazione, devono essere immagini bmp 256x256 o 128x128 o 64x64 o 32x32.
I file Deck.cfg:
Il file Deck.cfg definisce le linee
principali del ponte e l’altezza della linea di galleggiamento. Questo file ha
lo scopo di prevenire il problema dell’ingresso di acqua
nella cabina definendo un’area trasparente all’interno del ponte.
Il file contiene le seguenti informazioni:
deck_alt |
l’altezza del ponte |
pos |
x/coordinate lunghezza |
width |
y/coordinate larghezza |
Questi dati definiscono le linee principali del
ponte lungo 10 sezioni, ogni sezione ha delle coordinate x e y
normalizzate alla lunghezza e alla larghezza dell’imbarcazione.
Ecco un esempio di file Deck.cfg:
pos |
width |
|
|
7.5 |
[deck_alt] |
0.04 |
0.4 |
[pos_width] |
0.1 |
0.45 |
[pos_width] |
0.2 |
0.5 |
[pos_width] |
0.3 |
0.6 |
[pos_width] |
0.4 |
0.7 |
[pos_width] |
0.5 |
0.6 |
[pos_width] |
0.6 |
0.5 |
[pos_width] |
0.7 |
0.4 |
[pos_width] |
0.8 |
0.3 |
[pos_width] |
0.9 |
0.2 |
[pos_width] |
1.0 |
0.0 |
[pos_width] |
I file Views.cfg e Smokes.cfg:
Questi file hanno lo stesso tipo di struttura:
numero di
linee.
Posizioni x, y, z della visuale
o del fumo.
Posizioni x, y, z della visuale o del fumo.
Posizioni x, y, z della visuale o del fumo.
...
Il file views.cfg è definito dal
programma muovendo la telecamera verso il punto dell’imbarcazione desiderato e
premendo il pulsante add-view.
Lo stesso file può essere rinominato smokes.cfg e utilizzato per il punto d’origine del fumo.
In Virtual Sailor
un’imbarcazione è costituita da diversi tipi di file:
Il
file Boat.cfg definisce i parametri fisici
dell’imbarcazione come la lunghezza e il peso, oltre alla posizione e
all’orientazione delle parti mobili.
Nell’esempio
seguente esamineremo passo dopo passo i componenti di
una barca a vela.
Prima fase:
Scarica
i file dell’imbarcazione, converter
e trame.
Download i file
di esempio e conv3ds
Se non hai un programma per la realizzazione di modelli 3D, scarica la demo di B-Cad
.
La cartella new_boat contiene i file utili per
la costruzione della nuova imbarcazione.
La cartella source contiene i file 3DS
originali.
Apri il file make.bat che convertirà i file 3DS
in file X per la nuova imbarcazione.
Quando questa operazione è terminata, esamina il contenuto della
cartella new_boat:
Come puoi notare la barra del timone (helm) si
trova in posizione: Y = 8.0 e Z = -18,5.
Abbiamo le seguenti
informazioni relative al fiocco:
Apri il file lights.3ds con un programma 3D,
come per esempio B-Cad (di cui abbiamo parlato
prima).
Potrai vedere un
oggetto molto semplice, costituito da tre sfere: una rossa, una verde e una
bianca.
1) Assembla
l’imbarcazione in un unico file. Tutte le parti devono essere al posto giusto.
4) Esegui il file
Make.bat con il converter
conv3ds.exe per trasformare questi file in file X.
6) Seleziona il
punto del ponte in cui vuoi che si trovi il pilota (in genere davanti alla timone).
8) Imposta i
parametri fisici della nuova imbarcazione e testane la manovrabilità.
Il quadro è
costituito da un pannello e una serie di strumenti.
La cartella panel
all’interno di Virtual Sailor contiene i quadri
di comando disponibili.
All’interno di ogni cartella panel x sono contenuti i seguenti file:
|
In questa immagine è rappresentato il quadro degli strumenti
del file d’esempio:
Panel.x
Questo file è opzionale ed è un modello di quadro senza strumenti.
Ogni strumento si
compone dello strumento stesso e di una o più lancette
inserite al suo interno.
Gli strumenti
possono essere (soltanto) i seguenti:
All’interno di ogni cartella si trovano i seguenti file:
1. Informazioni
sugli strumenti: 2. Descrizione
dello strumento : è una semplice
parte di testo che inizia con @. Deve trovarsi alla fine del file. |
Dial.x
E’ il file modello dello strumento, senza lancette.
Download
file di esempio e conv3ds