Suite de la fonction PerlinNoise (pas encore terminée).
This commit is contained in:
parent
67e9de6fee
commit
2c1fadabc5
24
roam.c
24
roam.c
|
@ -33,6 +33,7 @@
|
||||||
* côté (vApex,vRight).
|
* côté (vApex,vRight).
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
/* Permet de récupérer la taille de la base du triangle (hypoténuse).*/
|
/* Permet de récupérer la taille de la base du triangle (hypoténuse).*/
|
||||||
// TODO Optimisze la fonction pour éviter la racine carée.
|
// TODO Optimisze la fonction pour éviter la racine carée.
|
||||||
|
@ -40,16 +41,39 @@ int getFirstTriangleSize(Triangle* t) {
|
||||||
return sqrt(((t->vRight->x - t->vLeft->x)^2) + ((t->vRight->y - t->vLeft->y)^2));
|
return sqrt(((t->vRight->x - t->vLeft->x)^2) + ((t->vRight->y - t->vLeft->y)^2));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO Yoann : Générateur pseudo-aléatoire.
|
||||||
|
// Mettre la greaine au carré et récupérer simplement les nombres du centre.
|
||||||
|
int getValueForSeed(int seed) {
|
||||||
|
|
||||||
|
return seed;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Interpolation cosinusoïdale entre deux points.*/
|
||||||
|
// A optimisze par aproximation.
|
||||||
|
int interpolationCos(int x, int y) {
|
||||||
|
x = x;
|
||||||
|
y = y;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
short** PerlinNoise(Triangle* t) {
|
short** PerlinNoise(Triangle* t) {
|
||||||
short **values;
|
short **values;
|
||||||
int triangleSize = getFirstTriangleSize(t);
|
int triangleSize = getFirstTriangleSize(t);
|
||||||
int i;
|
int i;
|
||||||
|
int seed;
|
||||||
|
int x,y;
|
||||||
|
|
||||||
|
seed = (int)(t->vApex->x / triangleSize + t->vApex->y / triangleSize)*1111;
|
||||||
|
|
||||||
values = (short**) malloc(sizeof(short*)*triangleSize);
|
values = (short**) malloc(sizeof(short*)*triangleSize);
|
||||||
for(i=0; i<triangleSize;i++)
|
for(i=0; i<triangleSize;i++)
|
||||||
values[i] = (short*) malloc(sizeof(short)*triangleSize);
|
values[i] = (short*) malloc(sizeof(short)*triangleSize);
|
||||||
|
|
||||||
|
for(i=0; i<8;i++) {
|
||||||
|
x = getValueForSeed(seed);
|
||||||
|
y = getValueForSeed(x);
|
||||||
|
values[x][y] = 255;
|
||||||
|
}
|
||||||
|
|
||||||
// TODO Yoann : tout le reste.
|
// TODO Yoann : tout le reste.
|
||||||
return values;
|
return values;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user