[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [40078] branches/cycles/intern/cycles: Cycles: fix windows build, some minor tweaks.
Brecht Van Lommel
brechtvanlommel at pandora.be
Fri Sep 9 18:38:16 CEST 2011
Revision: 40078
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=40078
Author: blendix
Date: 2011-09-09 16:38:15 +0000 (Fri, 09 Sep 2011)
Log Message:
-----------
Cycles: fix windows build, some minor tweaks.
Modified Paths:
--------------
branches/cycles/intern/cycles/kernel/kernel_types.h
branches/cycles/intern/cycles/kernel/svm/bsdf_microfacet.h
branches/cycles/intern/cycles/render/film.cpp
branches/cycles/intern/cycles/render/film.h
branches/cycles/intern/cycles/util/util_path.h
Modified: branches/cycles/intern/cycles/kernel/kernel_types.h
===================================================================
--- branches/cycles/intern/cycles/kernel/kernel_types.h 2011-09-09 15:25:15 UTC (rev 40077)
+++ branches/cycles/intern/cycles/kernel/kernel_types.h 2011-09-09 16:38:15 UTC (rev 40078)
@@ -80,7 +80,9 @@
PATH_RAY_DIFFUSE = 16,
PATH_RAY_GLOSSY = 32,
PATH_RAY_SINGULAR = 64,
- PATH_RAY_TRANSPARENT = 128
+ PATH_RAY_TRANSPARENT = 128,
+
+ PATH_RAY_ALL = (1|2|4|8|16|32|64|128)
};
/* Bidirectional Path Tracing */
@@ -248,7 +250,6 @@
float3 svm_closure_weight;
float svm_closure_data0;
float svm_closure_data1;
- float svm_closure_data2;
#if !defined(__KERNEL_GPU__) && defined(WITH_OSL)
/* OSL closure data and context. we store all closures flattened into
Modified: branches/cycles/intern/cycles/kernel/svm/bsdf_microfacet.h
===================================================================
--- branches/cycles/intern/cycles/kernel/svm/bsdf_microfacet.h 2011-09-09 15:25:15 UTC (rev 40077)
+++ branches/cycles/intern/cycles/kernel/svm/bsdf_microfacet.h 2011-09-09 16:38:15 UTC (rev 40078)
@@ -41,18 +41,15 @@
//float3 m_N;
float m_ag;
float m_eta;
- int m_refractive;
} BsdfMicrofacetGGXClosure;
__device void bsdf_microfacet_ggx_setup(ShaderData *sd, float3 N, float ag, float eta, bool refractive)
{
float m_ag = clamp(ag, 1e-5f, 1.0f);
float m_eta = eta;
- int m_refractive = (refractive)? 1: 0;
sd->svm_closure_data0 = m_ag;
sd->svm_closure_data1 = m_eta;
- sd->svm_closure_data2 = __int_as_float(m_refractive);
if(refractive)
sd->svm_closure = CLOSURE_BSDF_MICROFACET_GGX_REFRACTION_ID;
@@ -73,10 +70,10 @@
{
float m_ag = sd->svm_closure_data0;
//float m_eta = sd->svm_closure_data1;
- int m_refractive = __float_as_int(sd->svm_closure_data2);
+ int m_refractive = sd->svm_closure == CLOSURE_BSDF_MICROFACET_GGX_REFRACTION_ID;
float3 m_N = sd->N;
- if(m_refractive == 1) return make_float3 (0, 0, 0);
+ if(m_refractive) return make_float3 (0, 0, 0);
float cosNO = dot(m_N, I);
float cosNI = dot(m_N, omega_in);
if(cosNI > 0 && cosNO > 0) {
@@ -110,10 +107,10 @@
{
float m_ag = sd->svm_closure_data0;
float m_eta = sd->svm_closure_data1;
- int m_refractive = __float_as_int(sd->svm_closure_data2);
+ int m_refractive = sd->svm_closure == CLOSURE_BSDF_MICROFACET_GGX_REFRACTION_ID;
float3 m_N = sd->N;
- if(m_refractive == 0) return make_float3 (0, 0, 0);
+ if(!m_refractive) return make_float3 (0, 0, 0);
float cosNO = dot(m_N, I);
float cosNI = dot(m_N, omega_in);
if(cosNO <= 0 || cosNI >= 0)
@@ -151,7 +148,7 @@
{
float m_ag = sd->svm_closure_data0;
float m_eta = sd->svm_closure_data1;
- int m_refractive = __float_as_int(sd->svm_closure_data2);
+ int m_refractive = sd->svm_closure == CLOSURE_BSDF_MICROFACET_GGX_REFRACTION_ID;
float3 m_N = sd->N;
float cosNO = dot(m_N, sd->I);
@@ -170,7 +167,7 @@
float3 m = (cosf(phiM) * sinThetaM) * X +
(sinf(phiM) * sinThetaM) * Y +
cosThetaM * Z;
- if(m_refractive == 0) {
+ if(!m_refractive) {
float cosMO = dot(m, sd->I);
if(cosMO > 0) {
// eq. 39 - compute actual reflected direction
@@ -260,7 +257,7 @@
}
}
}
- return (m_refractive == 1) ? LABEL_TRANSMIT|LABEL_GLOSSY : LABEL_REFLECT|LABEL_GLOSSY;
+ return (m_refractive) ? LABEL_TRANSMIT|LABEL_GLOSSY : LABEL_REFLECT|LABEL_GLOSSY;
}
/* BECKMANN */
@@ -269,18 +266,15 @@
//float3 m_N;
float m_ab;
float m_eta;
- int m_refractive;
} BsdfMicrofacetBeckmannClosure;
__device void bsdf_microfacet_beckmann_setup(ShaderData *sd, float3 N, float ab, float eta, bool refractive)
{
float m_ab = clamp(ab, 1e-5f, 1.0f);
float m_eta = eta;
- float m_refractive = (refractive)? 1: 0;
sd->svm_closure_data0 = m_ab;
sd->svm_closure_data1 = m_eta;
- sd->svm_closure_data2 = __int_as_float(m_refractive);
if(refractive)
sd->svm_closure = CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID;
@@ -301,10 +295,10 @@
{
float m_ab = sd->svm_closure_data0;
//float m_eta = sd->svm_closure_data1;
- int m_refractive = __float_as_int(sd->svm_closure_data2);
+ int m_refractive = sd->svm_closure == CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID;
float3 m_N = sd->N;
- if(m_refractive == 1) return make_float3 (0, 0, 0);
+ if(m_refractive) return make_float3 (0, 0, 0);
float cosNO = dot(m_N, I);
float cosNI = dot(m_N, omega_in);
if(cosNO > 0 && cosNI > 0) {
@@ -340,10 +334,10 @@
{
float m_ab = sd->svm_closure_data0;
float m_eta = sd->svm_closure_data1;
- int m_refractive = __float_as_int(sd->svm_closure_data2);
+ int m_refractive = sd->svm_closure == CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID;
float3 m_N = sd->N;
- if(m_refractive == 0) return make_float3 (0, 0, 0);
+ if(!m_refractive) return make_float3 (0, 0, 0);
float cosNO = dot(m_N, I);
float cosNI = dot(m_N, omega_in);
if(cosNO <= 0 || cosNI >= 0)
@@ -383,7 +377,7 @@
{
float m_ab = sd->svm_closure_data0;
float m_eta = sd->svm_closure_data1;
- int m_refractive = __float_as_int(sd->svm_closure_data2);
+ int m_refractive = sd->svm_closure == CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID;
float3 m_N = sd->N;
float cosNO = dot(m_N, sd->I);
@@ -403,7 +397,7 @@
(sinf(phiM) * sinThetaM) * Y +
cosThetaM * Z;
- if(m_refractive == 0) {
+ if(!m_refractive) {
float cosMO = dot(m, sd->I);
if(cosMO > 0) {
// eq. 39 - compute actual reflected direction
@@ -500,7 +494,7 @@
}
}
}
- return (m_refractive == 1) ? LABEL_TRANSMIT|LABEL_GLOSSY : LABEL_REFLECT|LABEL_GLOSSY;
+ return (m_refractive) ? LABEL_TRANSMIT|LABEL_GLOSSY : LABEL_REFLECT|LABEL_GLOSSY;
}
CCL_NAMESPACE_END
Modified: branches/cycles/intern/cycles/render/film.cpp
===================================================================
--- branches/cycles/intern/cycles/render/film.cpp 2011-09-09 15:25:15 UTC (rev 40077)
+++ branches/cycles/intern/cycles/render/film.cpp 2011-09-09 16:38:15 UTC (rev 40078)
@@ -52,8 +52,7 @@
bool Film::modified(const Film& film)
{
- return !(exposure == film.exposure &&
- pass == film.pass);
+ return !(exposure == film.exposure);
}
void Film::tag_update(Scene *scene)
Modified: branches/cycles/intern/cycles/render/film.h
===================================================================
--- branches/cycles/intern/cycles/render/film.h 2011-09-09 15:25:15 UTC (rev 40077)
+++ branches/cycles/intern/cycles/render/film.h 2011-09-09 16:38:15 UTC (rev 40078)
@@ -30,7 +30,6 @@
class Film {
public:
float exposure;
- int pass;
bool need_update;
Film();
Modified: branches/cycles/intern/cycles/util/util_path.h
===================================================================
--- branches/cycles/intern/cycles/util/util_path.h 2011-09-09 15:25:15 UTC (rev 40077)
+++ branches/cycles/intern/cycles/util/util_path.h 2011-09-09 16:38:15 UTC (rev 40078)
@@ -25,6 +25,7 @@
* then makes all paths relative to that. */
#include "util_string.h"
+#include "util_types.h"
#include "util_vector.h"
CCL_NAMESPACE_BEGIN
More information about the Bf-blender-cvs
mailing list