2011-12-10 13:25:22 +00:00
|
|
|
#ifndef _PAYSAGES_CLOUDS_H_
|
|
|
|
#define _PAYSAGES_CLOUDS_H_
|
|
|
|
|
|
|
|
#include "shared/types.h"
|
|
|
|
#include <stdio.h>
|
|
|
|
|
2011-12-23 22:58:50 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2011-12-10 13:25:22 +00:00
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
double ycenter;
|
|
|
|
double ymin;
|
|
|
|
double ymax;
|
|
|
|
NoiseGenerator* noise;
|
|
|
|
Color color;
|
|
|
|
double scaling;
|
|
|
|
double coverage;
|
|
|
|
} CloudsDefinition;
|
|
|
|
|
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
double precision;
|
|
|
|
} CloudsQuality;
|
|
|
|
|
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
int unused;
|
|
|
|
} CloudsEnvironment;
|
|
|
|
|
|
|
|
void cloudsInit();
|
|
|
|
void cloudsSave(FILE* f);
|
|
|
|
void cloudsLoad(FILE* f);
|
|
|
|
|
|
|
|
int cloudsGetLayerCount();
|
|
|
|
int cloudsAddLayer();
|
|
|
|
void cloudsDeleteLayer(int layer);
|
|
|
|
|
|
|
|
CloudsDefinition cloudsCreateDefinition();
|
|
|
|
void cloudsDeleteDefinition(CloudsDefinition definition);
|
|
|
|
void cloudsCopyDefinition(CloudsDefinition source, CloudsDefinition* destination);
|
|
|
|
void cloudsSetDefinition(int layer, CloudsDefinition definition);
|
|
|
|
CloudsDefinition cloudsGetDefinition(int layer);
|
|
|
|
|
|
|
|
void cloudsSetQuality(CloudsQuality quality);
|
|
|
|
CloudsQuality cloudsGetQuality();
|
|
|
|
|
|
|
|
Color cloudsGetColorCustom(Vector3 start, Vector3 end, CloudsDefinition* definition, CloudsQuality* quality, CloudsEnvironment* environment);
|
|
|
|
Color cloudsGetColor(Vector3 start, Vector3 end);
|
|
|
|
|
2011-12-23 22:58:50 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
2011-12-10 13:25:22 +00:00
|
|
|
#endif
|