You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
98 lines
2.8 KiB
98 lines
2.8 KiB
""" |
|
Configuration settings for the Isometric Terrain Generator |
|
""" |
|
|
|
# Window settings |
|
WINDOW_WIDTH = 1200 |
|
WINDOW_HEIGHT = 800 |
|
WINDOW_TITLE = "Isometric Terrain - RollerCoaster Tycoon Style" |
|
FPS = 60 |
|
|
|
# Terrain generation settings |
|
TERRAIN = { |
|
'grid_size': 20, # 20x20 matrix |
|
'tile_size': 1, # 1 tile per grid cell (so 20x20 tiles total) |
|
'tile_width': 30.0, # 30px tile width |
|
'tile_depth': 30.0, # 30px tile depth |
|
|
|
# Perlin noise parameters |
|
'noise_scale': 8.0, # Smaller scale = more variation in small area |
|
'noise_octaves': 4, |
|
'noise_persistence': 0.6, # Higher = more detail from higher octaves |
|
'noise_lacunarity': 2.5, # Higher = more frequency increase per octave |
|
'noise_repeat_x': 1024, |
|
'noise_repeat_y': 1024, |
|
'noise_base': 1988, |
|
|
|
# Height scaling |
|
'height_multiplier': 80.0, # Multiplier for height variation |
|
'enable_smoothing': False, # Set to True for gentler terrain |
|
'smoothing_kernel_size': 3, |
|
} |
|
|
|
# Camera settings |
|
CAMERA = { |
|
'initial_distance': 800.0, |
|
'initial_height': 450.0, |
|
'initial_angle': 45.0, |
|
|
|
# Movement settings |
|
'zoom_speed': 10.0, |
|
'height_speed': 5.0, |
|
'min_distance': 200.0, |
|
'max_distance': 2000.0, |
|
|
|
# Perspective settings |
|
'fov': 45, # Field of view |
|
'near_clip': 0.1, |
|
'far_clip': 5000.0, |
|
} |
|
|
|
# Rendering settings |
|
RENDERING = { |
|
'background_color': (0.53, 0.81, 0.92, 1.0), # Sky blue |
|
|
|
# Grid/wireframe settings |
|
'grid_line_width': 5.0, |
|
'grid_line_color': (0.0, 0.0, 0.0), |
|
|
|
# Lighting settings |
|
'light_position': [1.0, 1.0, 1.0, 0.0], |
|
'light_ambient': [0.4, 0.4, 0.4, 1.0], |
|
'light_diffuse': [0.8, 0.8, 0.8, 1.0], |
|
|
|
# Side faces color (uniform terrain color) |
|
'side_face_color': (0.55, 0.45, 0.35), # Brown terrain color |
|
'side_face_shading': 0.7, # Right face shading multiplier |
|
'back_face_shading': 0.85, # Back face shading multiplier |
|
|
|
# Procedural texture settings for top faces |
|
'texture_enabled': True, |
|
'texture_detail_scale': 8.0, # Higher = more detail noise |
|
'texture_variation': 0.25, # Amount of color variation (0.0-1.0) |
|
'texture_pattern_scale': 2.0, # Scale for pattern details |
|
'texture_spots_scale': 15.0, # Scale for random spots/patches |
|
'texture_spots_threshold': 0.6, # Threshold for spot appearance |
|
} |
|
|
|
# Biome colors (RCT style) |
|
BIOME_COLORS = { |
|
'water': (0.2, 0.4, 0.8), |
|
'sand': (0.76, 0.7, 0.5), |
|
'grass_low': (0.2, 0.5, 0.2), |
|
'grass_mid': (0.25, 0.6, 0.25), |
|
'grass_high': (0.3, 0.65, 0.3), |
|
'rock': (0.5, 0.5, 0.5), |
|
'snow': (0.9, 0.9, 0.95) |
|
} |
|
|
|
# Height thresholds for biomes |
|
BIOME_THRESHOLDS = { |
|
'water': 10.0, |
|
'sand': 20.0, |
|
'grass_low': 30.0, |
|
'grass_mid': 45.0, |
|
'grass_high': 60.0, |
|
'rock': 70.0, |
|
# snow is everything above rock |
|
}
|
|
|