Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrea Weikert <elubie@gmx.net>2007-11-28 00:48:14 +0300
committerAndrea Weikert <elubie@gmx.net>2007-11-28 00:48:14 +0300
commitab2e2ec34b14a5410cb0ae2ce37e1f7e90dd432d (patch)
tree89612a392d97264a2005a9abe0a24ce0a94f9983 /source/blender/nodes
parentee40a913a57cba3e094031a5542a4c0e682aab52 (diff)
== MSVC 7.1 projectfiles ==
- update for new particle system - made blenderplayer.exe compile again (DDS library missing) - exchanged a few float math functions (logf, sinf, cosf, expf, powf) with their double counterparts in CMP_nodes (MSVC chokes on them, because the compiler is not C99 compliant)
Diffstat (limited to 'source/blender/nodes')
-rw-r--r--source/blender/nodes/intern/CMP_nodes/CMP_chromaMatte.c4
-rw-r--r--source/blender/nodes/intern/CMP_nodes/CMP_glare.c10
-rw-r--r--source/blender/nodes/intern/CMP_nodes/CMP_tonemap.c22
3 files changed, 18 insertions, 18 deletions
diff --git a/source/blender/nodes/intern/CMP_nodes/CMP_chromaMatte.c b/source/blender/nodes/intern/CMP_nodes/CMP_chromaMatte.c
index d836a829696..6a40018e659 100644
--- a/source/blender/nodes/intern/CMP_nodes/CMP_chromaMatte.c
+++ b/source/blender/nodes/intern/CMP_nodes/CMP_chromaMatte.c
@@ -89,8 +89,8 @@ static void do_chroma_key(bNode *node, float *out, float *in)
if(kfg>0.0) { /* found a pixel that is within key color */
newY=in[0]-(1-c->t3)*kfg;
- newCb=in[1]-kfg*cosf(theta);
- newCr=in[2]-kfg*sinf(theta);
+ newCb=in[1]-kfg*cos((double)theta);
+ newCr=in[2]-kfg*sin((double)theta);
alpha=(kfg+c->fsize)*(c->fstrength);
beta=atan2(newCr,newCb);
diff --git a/source/blender/nodes/intern/CMP_nodes/CMP_glare.c b/source/blender/nodes/intern/CMP_nodes/CMP_glare.c
index 9943dd2246d..e7b8fd00c93 100644
--- a/source/blender/nodes/intern/CMP_nodes/CMP_glare.c
+++ b/source/blender/nodes/intern/CMP_nodes/CMP_glare.c
@@ -244,12 +244,12 @@ static void streaks(NodeGlare* ndg, CompBuf* dst, CompBuf* src)
for (a=0.f; a<360.f; a+=ang) {
const float an = (a + (float)ndg->angle_ofs)*(float)M_PI/180.f;
- const float vx = cosf(an), vy = sinf(an);
+ const float vx = cos((double)an), vy = sin((double)an);
for (n=0; n<ndg->iter; ++n) {
- const float p4 = powf(4.f, n);
+ const float p4 = pow(4.0, (double)n);
const float vxp = vx*p4, vyp = vy*p4;
- const float wt = powf(ndg->fade, p4);
- const float cmo = 1.f - powf(ndg->colmod, n+1); // colormodulation amount relative to current pass
+ const float wt = pow((double)ndg->fade, (double)p4);
+ const float cmo = 1.f - pow((double)ndg->colmod, (double)n+1); // colormodulation amount relative to current pass
float* tdstcol = tdst->rect;
for (y=0; y<tsrc->y; ++y) {
for (x=0; x<tsrc->x; ++x, tdstcol+=4) {
@@ -408,7 +408,7 @@ static void fglow(NodeGlare* ndg, CompBuf* dst, CompBuf* src)
// linear window good enough here, visual result counts, not scientific analysis
//w = (1.f-fabs(u))*(1.f-fabs(v));
// actually, Hanning window is ok, cos^2 for some reason is slower
- w = (0.5f + 0.5f*cosf(u*(float)M_PI))*(0.5f + 0.5f*cosf(v*(float)M_PI));
+ w = (0.5f + 0.5f*cos((double)u*M_PI))*(0.5f + 0.5f*cos((double)v*M_PI));
fRGB_mult(fcol, w);
qd_setPixel(ckrn, x, y, fcol);
}
diff --git a/source/blender/nodes/intern/CMP_nodes/CMP_tonemap.c b/source/blender/nodes/intern/CMP_nodes/CMP_tonemap.c
index cd617eca5c5..662d8e8dde9 100644
--- a/source/blender/nodes/intern/CMP_nodes/CMP_tonemap.c
+++ b/source/blender/nodes/intern/CMP_nodes/CMP_tonemap.c
@@ -50,16 +50,16 @@ static float avgLogLum(CompBuf *src, float* auto_key, float* Lav, float* Cav)
float L = 0.212671f*bc[0][0] + 0.71516f*bc[0][1] + 0.072169f*bc[0][2];
*Lav += L;
fRGB_add(Cav, bc[0]);
- lsum += logf(MAX2(L, 0.f) + 1e-5f);
+ lsum += (float)log((double)MAX2(L, 0.0) + 1e-5);
maxl = (L > maxl) ? L : maxl;
minl = (L < minl) ? L : minl;
bc++;
}
*Lav *= sc;
fRGB_mult(Cav, sc);
- maxl = logf(maxl + 1e-5f); minl = logf(minl + 1e-5f); avl = lsum*sc;
+ maxl = log((double)maxl + 1e-5); minl = log((double)minl + 1e-5f); avl = lsum*sc;
*auto_key = (maxl > minl) ? ((maxl - avl) / (maxl - minl)) : 1.f;
- return expf(avl);
+ return exp((double)avl);
}
@@ -74,8 +74,8 @@ void static tonemap(NodeTonemap* ntm, CompBuf* dst, CompBuf* src)
if (ntm->type == 1) {
// Reinhard/Devlin photoreceptor
- const float f = expf(-ntm->f);
- const float m = (ntm->m > 0.f) ? ntm->m : (0.3f + 0.7f*powf(auto_key, 1.4f));
+ const float f = exp((double)-ntm->f);
+ const float m = (ntm->m > 0.f) ? ntm->m : (0.3f + 0.7f*pow((double)auto_key, 1.4));
const float ic = 1.f - ntm->c, ia = 1.f - ntm->a;
if (ntm->m == 0.f) printf("tonemap node, M: %g\n", m);
for (y=0; y<src->y; ++y) {
@@ -86,15 +86,15 @@ void static tonemap(NodeTonemap* ntm, CompBuf* dst, CompBuf* src)
float I_l = sp[x][0] + ic*(L - sp[x][0]);
float I_g = Cav[0] + ic*(Lav - Cav[0]);
float I_a = I_l + ia*(I_g - I_l);
- dp[x][0] /= (dp[x][0] + powf(f*I_a, m));
+ dp[x][0] /= (dp[x][0] + pow((double)f*I_a, (double)m));
I_l = sp[x][1] + ic*(L - sp[x][1]);
I_g = Cav[1] + ic*(Lav - Cav[1]);
I_a = I_l + ia*(I_g - I_l);
- dp[x][1] /= (dp[x][1] + powf(f*I_a, m));
+ dp[x][1] /= (dp[x][1] + pow((double)f*I_a,(double)m));
I_l = sp[x][2] + ic*(L - sp[x][2]);
I_g = Cav[2] + ic*(Lav - Cav[2]);
I_a = I_l + ia*(I_g - I_l);
- dp[x][2] /= (dp[x][2] + powf(f*I_a, m));
+ dp[x][2] /= (dp[x][2] + pow((double)f*I_a, (double)m));
}
}
return;
@@ -114,9 +114,9 @@ void static tonemap(NodeTonemap* ntm, CompBuf* dst, CompBuf* src)
dp[x][1] /= ((dg == 0.f) ? 1.f : dg);
dp[x][2] /= ((db == 0.f) ? 1.f : db);
if (igm != 0.f) {
- dp[x][0] = powf(MAX2(dp[x][0], 0.f), igm);
- dp[x][1] = powf(MAX2(dp[x][1], 0.f), igm);
- dp[x][2] = powf(MAX2(dp[x][2], 0.f), igm);
+ dp[x][0] = pow((double)MAX2(dp[x][0], 0.), igm);
+ dp[x][1] = pow((double)MAX2(dp[x][1], 0.), igm);
+ dp[x][2] = pow((double)MAX2(dp[x][2], 0.), igm);
}
}
}