;
; This file contains the vegetation definitions; it gets parsed on application
; startup but is not otherwise referred to. The data format is:
;
;
; LOD definitions
;


; Vegetation Records
; ==================
;
; Vegetation records have the following structure:
;
; vegetation <record name> [ modifies <record name> ]
; {
;    VEGE_SPEC
; }

; where VEGE_SPEC consists of the following:
; layout <size> <image>
; radius <N>
; height_range <min> <max>
; aspect_range <min> <max>
; lod <lod>
; model <model>
; <optionally more models>...
;
; Height and aspect range are applied as SCALING factors and so depend on original model.
; Layout consists of a size and an image. The image is tiled across the entire world at the size specified, 
; and dots in the image specify vegetation positions.  So, 512 means one tile of the image is 512 metres across,
; and the density can be reduced by increasing the size.
; NOTE that a radius of zero means items are not added to the physical grid


; LOD Records
; ===========
;
; LOD records have the following structure:
;
; lod <record name>
; {
;    LOD_SPEC
; }
;
; where LOD_SPEC is one of the following:
; model <animate stop> <stop> <model level #>          ; A 3D model
; billboard <stop> <update tolerance>   ; A camera following quad
; none <stop>                           ; Render nothing
;
; prepend animated and append <deflection %> <frame rate> for animated versions
;

; Model Records
; =============
;
; Model records have the following structure:
;
; model <record name>
; {
;    level <model name>
;    [
;    level <model name>
;    ... 
;    ]
; }


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; LODs
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
lod trees
{
	low 
	{
		billboard    inf	10.0	; 10 degree tolerance
	}

	medium
	{
		model        50	200	1	15
		billboard    inf	10.0	; 10 degree tolerance
	}

	high
	{
		model        50	200	1	15
		billboard    inf	10.0	; 10 degree tolerance
	}

}

lod shrubs
{
	low
	{
		billboard	500	10.0
		none	inf
	}

	medium
	{
		billboard	500	10.0
		none	inf
	}

	high
	{
		model	50	182	1	15
		billboard	500	10.0
		none	inf
	}
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Models
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; medi tree v1
model medi_tree_01
{
    level models_vegetation/medi_tree_v1.cas
}

; medi tree v1 winter
model medi_tree_01_winter
{
    level models_vegetation/medi_tree_v1_winter.cas
}

; medi tree v2
model medi_tree_02
{
    level models_vegetation/medi_tree_v2.cas
}

; medi tree v2 winter
model medi_tree_02_winter
{
    level models_vegetation/medi_tree_v2_winter.cas
}

; Super Tree - Variant A
model super_tree
{
    level models_vegetation/supertree.cas
}

; Super Tree - Variant B
model super_tree_01
{
    level models_vegetation/supertree_v1.cas
}

; Super Tree - Variant C
model super_tree_02
{
    level models_vegetation/supertree_v2.cas
}

; Super Tree - Winter Variant
model super_tree_winter
{
    level models_vegetation/supertree_winter.cas
}

; Shrub
model shrub_01
{
    level models_vegetation/shrub_01.cas
}

; rocky desert foliage 1
model rd_foliage_01
{
    level models_vegetation/rockydesert_foliage_01.cas
}

; rocky desert foliage 2
model rd_foliage_02
{
    level models_vegetation/rockydesert_foliage_02.cas
}

; alpine_foliage 1
model alpine_foliage_01
{
    level models_vegetation/alpine_foliage_01.cas
}

; alpine_foliage 1 winter
model alpine_foliage_01_winter
{
    level models_vegetation/alpine_foliage_01_winter.cas
}

; alpine_foliage 2
model alpine_foliage_02
{
    level models_vegetation/alpine_foliage_02.cas
}

; alpine_foliage 2 winter
model alpine_foliage_02_winter
{
    level models_vegetation/alpine_foliage_02_winter.cas
}

; medi_foliage 3
model medi_foliage_03
{
    level models_vegetation/medi_foliage_03.cas
}

; medi_foliage 3 winter
model medi_foliage_03_winter
{
    level models_vegetation/medi_foliage_03_winter.cas
}


; medi_foliage 4
model medi_foliage_04
{
    level models_vegetation/medi_foliage_04.cas
}


; medi_foliage 5
model medi_foliage_05
{
    level models_vegetation/medi_foliage_05.cas
}

; medi_foliage 5 winter
model medi_foliage_05_winter
{
	level models_vegetation/medi_foliage_05_winter.cas
}

; Rocky desert rock 1
model rd_rock_01
{
    level models_vegetation/rockydesert_rock_01.CAS
}

; Rocky desert rock 2
model rd_rock_02
{
    level models_vegetation/rockydesert_rock_02.CAS
}

; Rocky desert rock 3
model rd_rock_03
{
    level models_vegetation/rockydesert_rock_03.CAS
}

; Rocky desert rock 4
model rd_rock_04
{
    level models_vegetation/rockydesert_rock_04.CAS
}

; Rocky desert rock 5
model rd_rock_05
{
    level models_vegetation/rockydesert_rock_05.CAS
}

; alpine_Rock 1
model alpine_rock_01
{
    level models_vegetation/alpine_rock_01.cas
}

; alpine_Rock 2
model alpine_rock_02
{
    level models_vegetation/alpine_rock_02.cas
}

; alpine_Rock 2 winter
model alpine_rock_02_winter
{
    level models_vegetation/alpine_rock_02_winter.cas
}

; medi_Rock 3
model medi_rock_03
{
    level models_vegetation/medi_rock_03.cas
}

; medi_Rock 4
model medi_rock_04
{
    level models_vegetation/medi_rock_04.cas
}

; alpine_Conical tree - Variant A
model alpine_conical_tree
{
    level models_vegetation/alpine_conical_tree_v1.CAS
}

; alpine_Conical tree - Variant B
model alpine_conical_tree_02
{
    level models_vegetation/alpine_conical_tree_v2.CAS
}

; alpine_Conical tree - Variant C
model alpine_conical_tree_03
{
    level models_vegetation/alpine_conical_tree_v3.CAS
}

; alpine_Conical tree - Winter A
model alpine_conical_tree_winter_01
{
    level models_vegetation/alpine_conical_tree_winter_v1.CAS
}

; deep forest tree - Variant A
model df_tree_01
{
    level models_vegetation/deepforest_tree_v1.CAS
}

; deep forest tree - Variant B
model df_tree_02
{
    level models_vegetation/deepforest_tree_v2.CAS
}

; deep forest tree - Winter
model df_tree_winter
{
    level models_vegetation/deepforest_tree_winter.CAS
}
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Vegetation Types
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Defaults
vegetation default_forest
{
    layout 384 forest_layout.tga
    radius 2
    height_range 0.4 0.8
    aspect_range 0.7 1.3
    lod trees
    model medi_tree_01
    model medi_tree_02
}

vegetation default_forest_winter
{
    layout 384 forest_layout.tga
    radius 2
    height_range 0.4 0.8
    aspect_range 0.7 1.3
    lod trees
    model medi_tree_01_winter
    model medi_tree_02_winter
}

vegetation default_scrub
{
    layout 512 scrub_layout.tga
    radius 0
    height_range 0.8 1.2
    aspect_range 0.7 1.3
    lod shrubs
    model medi_foliage_03
    model medi_foliage_04
    model medi_rock_03
    model medi_rock_04
}

vegetation default_scrub_winter
{
	layout 512 scrub_layout.tga
	radius 0
	height_range 0.8 1.2
	aspect_range 0.7 1.3
	lod shrubs
	model medi_foliage_03_winter
	model medi_foliage_05_winter
	model medi_rock_03
	model medi_rock_04
}

; Pines
vegetation dense_pine modifies default_forest
{
}

vegetation winter_dense_pine modifies default_forest_winter
{
}

; Alpine
vegetation alpine_dense_forest
{
    layout 400 forest_layout.tga
    radius 4.5
    height_range 0.7 1.1
    aspect_range 0.7 1.0
    lod trees
    model df_tree_01
    model df_tree_02
}

vegetation alpine_dense_forest_win
{
    layout 384 forest_layout.tga
    radius 4.5
    height_range 0.4 0.8
    aspect_range 0.7 1.3
    lod trees
;    model alpine_conical_tree_winter_01
    model df_tree_winter
}

vegetation alpine_dense_scrub
{
    layout 512 alpine_scrub_layout.tga
    radius 0
    height_range 0.5 1.2
    aspect_range 0.7 1.3
    lod shrubs
    model alpine_foliage_01
    model alpine_foliage_02
    model alpine_rock_01
    model alpine_rock_02

}

vegetation alpine_dense_scrub_win
{
    layout 512 alpine_scrub_layout.tga
    radius 0
    height_range 0.5 1.2
    aspect_range 0.7 1.3
    lod shrubs
    model alpine_foliage_01_winter
    model alpine_foliage_02_winter
    model alpine_rock_02_winter

}

; Sub Arctic
vegetation sub_arctic_dense_forest modifies default_forest
{
}

vegetation sub_arctic_dense_forest_win modifies default_forest_winter
{
}

vegetation sub_arctic_dense_scrub modifies default_scrub
{
}

vegetation sub_arctic_dense_scrub_win modifies default_scrub_winter
{
}

; Semi Arid
vegetation semi_arid_dense_forest modifies default_forest
{
}

vegetation semi_arid_dense_scrub modifies default_scrub
{
}

; Highland
vegetation highland_dense_forest
{
    layout 384 forest_layout.tga
    radius 2
    height_range 0.4 0.8
    aspect_range 0.7 1.3
    lod trees
    model super_tree
    model super_tree_01
    model super_tree_02
}

vegetation highland_dense_forest_win
{
    layout 384 forest_layout.tga
    radius 2
    height_range 0.4 0.8
    aspect_range 0.7 1.3
    lod trees
    model super_tree_winter
}

vegetation highland_dense_scrub modifies default_scrub
{
}

vegetation highland_dense_scrub_win modifies default_scrub_winter
{
}

; Open forest
vegetation forest_open_dense_forest
{
    layout 400 forest_layout.tga
    radius 4.5
    height_range 0.7 1.1
    aspect_range 0.7 1.0
    lod trees
    model df_tree_01
    model df_tree_02
}

vegetation forest_open_dense_forest_win
{
    layout 400 forest_layout.tga
    radius 4.5
    height_range 0.5 1.0
    aspect_range 0.7 1.0
    lod trees
    model df_tree_winter
}

vegetation forest_open_dense_scrub modifies default_scrub
{
}

vegetation forest_open_dense_scrub_win modifies default_scrub_winter
{
}

; Deep forest
vegetation forest_deep_dense_forest modifies forest_open_dense_forest
{
}

vegetation forest_deep_dense_forest_win modifies forest_open_dense_forest_win
{
}

vegetation forest_deep_dense_scrub modifies default_scrub
{
    ;layout 128 scrub_layout.tga
}

vegetation forest_deep_dense_scrub_win modifies default_scrub_winter
{
    ;layout 128 scrub_layout.tga
}

; Grass Fertile
vegetation grass_fert_dense_forest modifies default_forest
{
}

vegetation grass_fert_dense_forest_win modifies default_forest_winter
{
}

vegetation grass_fert_dense_scrub modifies default_scrub
{
}

vegetation grass_fert_dense_scrub_win modifies default_scrub
{
}

; Grass Infertile
vegetation grass_infert_dense_forest modifies default_forest
{
}

vegetation grass_infert_dense_forest_win modifies default_forest_winter
{
}

vegetation grass_infert_dense_scrub modifies default_scrub
{
}

vegetation grass_infert_dense_scrub_win modifies default_scrub_winter
{
}

; Mediterranean
vegetation medi_dense_forest modifies default_forest
{
}

vegetation medi_dense_scrub modifies default_scrub
{
}

vegetation medi_dense_scrub_win modifies default_scrub_winter
{
}

;Rocky Desert

;rocky desert scrub areas -- uses scrub
vegetation rocky_desert_scrub
{
    layout 512 scrub_layout.tga
    radius 0
    height_range 0.2 1.2
    aspect_range 0.7 1.3
    lod shrubs
    model rd_foliage_01
    model rd_foliage_02
    model rd_rock_03
    model rd_rock_04
}

vegetation rocky_desert_rock

;rocky desert rocky mountainous areas -- uses trees
{
    layout 320 forest_layout.tga
    radius 2.0
    height_range 1.0 2.0
    aspect_range 1.0 1.3
    lod trees
    model rd_rock_01
    model rd_rock_02
    model rd_rock_05
}
