[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [58280] branches/soc-2013-depsgraph_mt: Merging r58266 through r58279 from trunk into soc-2013-depsgraph_mt
Sergey Sharybin
sergey.vfx at gmail.com
Mon Jul 15 20:48:34 CEST 2013
Revision: 58280
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=58280
Author: nazgul
Date: 2013-07-15 18:48:34 +0000 (Mon, 15 Jul 2013)
Log Message:
-----------
Merging r58266 through r58279 from trunk into soc-2013-depsgraph_mt
Revision Links:
--------------
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=58266
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=58279
Modified Paths:
--------------
branches/soc-2013-depsgraph_mt/source/blender/blenkernel/BKE_dynamicpaint.h
branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/brush.c
branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/dynamicpaint.c
branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/effect.c
branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/image.c
branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/pointcache.c
branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/scene.c
branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/sequencer.c
branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/smoke.c
branches/soc-2013-depsgraph_mt/source/blender/compositor/nodes/COM_TextureNode.cpp
branches/soc-2013-depsgraph_mt/source/blender/compositor/operations/COM_TextureOperation.cpp
branches/soc-2013-depsgraph_mt/source/blender/compositor/operations/COM_TextureOperation.h
branches/soc-2013-depsgraph_mt/source/blender/editors/physics/dynamicpaint_ops.c
branches/soc-2013-depsgraph_mt/source/blender/imbuf/intern/cineon/logImageCore.c
branches/soc-2013-depsgraph_mt/source/blender/makesrna/intern/rna_dynamicpaint.c
branches/soc-2013-depsgraph_mt/source/blender/makesrna/intern/rna_texture_api.c
branches/soc-2013-depsgraph_mt/source/blender/modifiers/intern/MOD_displace.c
branches/soc-2013-depsgraph_mt/source/blender/modifiers/intern/MOD_util.c
branches/soc-2013-depsgraph_mt/source/blender/modifiers/intern/MOD_util.h
branches/soc-2013-depsgraph_mt/source/blender/modifiers/intern/MOD_warp.c
branches/soc-2013-depsgraph_mt/source/blender/modifiers/intern/MOD_wave.c
branches/soc-2013-depsgraph_mt/source/blender/modifiers/intern/MOD_weightvg_util.c
branches/soc-2013-depsgraph_mt/source/blender/render/extern/include/RE_shader_ext.h
branches/soc-2013-depsgraph_mt/source/blender/render/intern/source/render_texture.c
Property Changed:
----------------
branches/soc-2013-depsgraph_mt/
branches/soc-2013-depsgraph_mt/source/blender/editors/interface/interface.c
branches/soc-2013-depsgraph_mt/source/blender/editors/space_outliner/
Property changes on: branches/soc-2013-depsgraph_mt
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/ge_harmony:42255,42279-42282,42286,42302,42338,42349,42616,42620,42698-42699,42739,42753,42773-42774,42832,44568,44597-44598,44793-44794
/branches/soc-2011-cucumber:37517,38166-38167,38177,38179-38180,38187,38242,38384,38387,38403-38404,38407,38968,38970,38973,39045,40845,42997-42998,43439
/branches/soc-2011-tomato:42376,42378-42379,42383,42385,42395,42397-42400,42407,42411,42418,42443-42444,42446,42467,42472,42486,42650-42652,42654-42655,42709-42710,42733-42734,42801,43872,44130,44141,44147-44149,44151-44152,44229-44230,45623-45625,46037,48089,48092,48551-48552,48679,48790,48792-48793,49076,49087,49292,49294,49466,49894,50052,50126,52854-52856,54573
/tags/blender-2.67b-release/blender:57122
/trunk/blender:57395-58265
+ /branches/ge_harmony:42255,42279-42282,42286,42302,42338,42349,42616,42620,42698-42699,42739,42753,42773-42774,42832,44568,44597-44598,44793-44794
/branches/soc-2011-cucumber:37517,38166-38167,38177,38179-38180,38187,38242,38384,38387,38403-38404,38407,38968,38970,38973,39045,40845,42997-42998,43439
/branches/soc-2011-tomato:42376,42378-42379,42383,42385,42395,42397-42400,42407,42411,42418,42443-42444,42446,42467,42472,42486,42650-42652,42654-42655,42709-42710,42733-42734,42801,43872,44130,44141,44147-44149,44151-44152,44229-44230,45623-45625,46037,48089,48092,48551-48552,48679,48790,48792-48793,49076,49087,49292,49294,49466,49894,50052,50126,52854-52856,54573
/tags/blender-2.67b-release/blender:57122
/trunk/blender:57395-58279
Modified: branches/soc-2013-depsgraph_mt/source/blender/blenkernel/BKE_dynamicpaint.h
===================================================================
--- branches/soc-2013-depsgraph_mt/source/blender/blenkernel/BKE_dynamicpaint.h 2013-07-15 18:46:19 UTC (rev 58279)
+++ branches/soc-2013-depsgraph_mt/source/blender/blenkernel/BKE_dynamicpaint.h 2013-07-15 18:48:34 UTC (rev 58280)
@@ -29,6 +29,7 @@
struct bContext;
struct wmOperator;
+struct Scene;
/* Actual surface point */
typedef struct PaintSurfaceData {
@@ -69,8 +70,8 @@
int dynamicPaint_createType(struct DynamicPaintModifierData *pmd, int type, struct Scene *scene);
struct DynamicPaintSurface *dynamicPaint_createNewSurface(struct DynamicPaintCanvasSettings *canvas, struct Scene *scene);
-void dynamicPaint_clearSurface(struct DynamicPaintSurface *surface);
-int dynamicPaint_resetSurface(struct DynamicPaintSurface *surface);
+void dynamicPaint_clearSurface(struct Scene *scene, struct DynamicPaintSurface *surface);
+int dynamicPaint_resetSurface(struct Scene *scene, struct DynamicPaintSurface *surface);
void dynamicPaint_freeSurface(struct DynamicPaintSurface *surface);
void dynamicPaint_freeCanvas(struct DynamicPaintModifierData *pmd);
void dynamicPaint_freeBrush(struct DynamicPaintModifierData *pmd);
@@ -85,7 +86,7 @@
struct DynamicPaintSurface *get_activeSurface(struct DynamicPaintCanvasSettings *canvas);
/* image sequence baking */
-int dynamicPaint_createUVSurface(struct DynamicPaintSurface *surface);
+int dynamicPaint_createUVSurface(struct Scene *scene, struct DynamicPaintSurface *surface);
int dynamicPaint_calculateFrame(struct DynamicPaintSurface *surface, struct Scene *scene, struct Object *cObject, int frame);
void dynamicPaint_outputSurfaceImage(struct DynamicPaintSurface *surface, char *filename, short output_layer);
Modified: branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/brush.c
===================================================================
--- branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/brush.c 2013-07-15 18:46:19 UTC (rev 58279)
+++ branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/brush.c 2013-07-15 18:48:34 UTC (rev 58280)
@@ -993,7 +993,8 @@
co[2] = 0.0f;
/* This is copied from displace modifier code */
- hasrgb = multitex_ext(mtex->tex, co, NULL, NULL, 0, &texres, NULL);
+ /* TODO(sergey): brush are always cacheing with CM enabled for now. */
+ hasrgb = multitex_ext(mtex->tex, co, NULL, NULL, 0, &texres, NULL, true);
/* if the texture gave an RGB value, we assume it didn't give a valid
* intensity, so calculate one (formula from do_material_tex).
Modified: branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/dynamicpaint.c
===================================================================
--- branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/dynamicpaint.c 2013-07-15 18:46:19 UTC (rev 58279)
+++ branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/dynamicpaint.c 2013-07-15 18:48:34 UTC (rev 58280)
@@ -1449,12 +1449,13 @@
MEM_freeN(temp_data);
}
-static void dynamicPaint_setInitialColor(DynamicPaintSurface *surface)
+static void dynamicPaint_setInitialColor(Scene *scene, DynamicPaintSurface *surface)
{
PaintSurfaceData *sData = surface->data;
PaintPoint *pPoint = (PaintPoint *)sData->type_data;
DerivedMesh *dm = surface->canvas->dm;
int i;
+ bool scene_color_manage = BKE_scene_check_color_management_enabled(scene);
if (surface->type != MOD_DPAINT_SURFACE_T_PAINT)
return;
@@ -1503,7 +1504,7 @@
uv[0] = tface[i].uv[j][0] * 2.0f - 1.0f;
uv[1] = tface[i].uv[j][1] * 2.0f - 1.0f;
- multitex_ext_safe(tex, uv, &texres, pool);
+ multitex_ext_safe(tex, uv, &texres, pool, scene_color_manage);
if (texres.tin > pPoint[*vert].alpha) {
copy_v3_v3(pPoint[*vert].color, &texres.tr);
@@ -1536,9 +1537,9 @@
/* remap to -1.0 to 1.0 */
uv_final[0] = uv_final[0] * 2.0f - 1.0f;
uv_final[1] = uv_final[1] * 2.0f - 1.0f;
-
- multitex_ext_safe(tex, uv_final, &texres, NULL);
+ multitex_ext_safe(tex, uv_final, &texres, NULL, scene_color_manage);
+
/* apply color */
copy_v3_v3(pPoint[i].color, &texres.tr);
pPoint[i].alpha = texres.tin;
@@ -1596,7 +1597,7 @@
}
/* clears surface data back to zero */
-void dynamicPaint_clearSurface(DynamicPaintSurface *surface)
+void dynamicPaint_clearSurface(Scene *scene, DynamicPaintSurface *surface)
{
PaintSurfaceData *sData = surface->data;
if (sData && sData->type_data) {
@@ -1613,7 +1614,7 @@
/* set initial color */
if (surface->type == MOD_DPAINT_SURFACE_T_PAINT)
- dynamicPaint_setInitialColor(surface);
+ dynamicPaint_setInitialColor(scene, surface);
if (sData->bData)
sData->bData->clear = 1;
@@ -1621,7 +1622,7 @@
}
/* completely (re)initializes surface (only for point cache types)*/
-int dynamicPaint_resetSurface(DynamicPaintSurface *surface)
+int dynamicPaint_resetSurface(Scene *scene, DynamicPaintSurface *surface)
{
int numOfPoints = dynamicPaint_surfaceNumOfPoints(surface);
/* free existing data */
@@ -1642,16 +1643,16 @@
/* set initial color */
if (surface->type == MOD_DPAINT_SURFACE_T_PAINT)
- dynamicPaint_setInitialColor(surface);
+ dynamicPaint_setInitialColor(scene, surface);
return 1;
}
/* make sure allocated surface size matches current requirements */
-static int dynamicPaint_checkSurfaceData(DynamicPaintSurface *surface)
+static int dynamicPaint_checkSurfaceData(Scene *scene, DynamicPaintSurface *surface)
{
if (!surface->data || ((dynamicPaint_surfaceNumOfPoints(surface) != surface->data->total_points))) {
- return dynamicPaint_resetSurface(surface);
+ return dynamicPaint_resetSurface(scene, surface);
}
return 1;
}
@@ -1953,7 +1954,7 @@
/* make sure surface is valid */
no_surface_data = surface->data == NULL;
- if (!dynamicPaint_checkSurfaceData(surface)) continue;
+ if (!dynamicPaint_checkSurfaceData(scene, surface)) continue;
/* limit frame range */
CLAMP(current_frame, surface->start_frame, surface->end_frame);
@@ -2225,7 +2226,7 @@
/*
* Create a surface for uv image sequence format
*/
-int dynamicPaint_createUVSurface(DynamicPaintSurface *surface)
+int dynamicPaint_createUVSurface(Scene *scene, DynamicPaintSurface *surface)
{
/* Antialias jitter point relative coords */
float jitter5sample[10] = {0.0f, 0.0f,
@@ -2676,7 +2677,7 @@
}
#endif
- dynamicPaint_setInitialColor(surface);
+ dynamicPaint_setInitialColor(scene, surface);
}
return (error == 0);
Modified: branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/effect.c
===================================================================
--- branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/effect.c 2013-07-15 18:46:19 UTC (rev 58279)
+++ branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/effect.c 2013-07-15 18:48:34 UTC (rev 58280)
@@ -745,6 +745,7 @@
float nabla = eff->pd->tex_nabla;
int hasrgb;
short mode = eff->pd->tex_mode;
+ bool scene_color_manage;
if (!eff->pd->tex)
return;
@@ -764,8 +765,10 @@
mul_m4_v3(eff->ob->imat, tex_co);
}
- hasrgb = multitex_ext(eff->pd->tex, tex_co, NULL, NULL, 0, result, NULL);
+ scene_color_manage = BKE_scene_check_color_management_enabled(eff->scene);
+ hasrgb = multitex_ext(eff->pd->tex, tex_co, NULL, NULL, 0, result, NULL, scene_color_manage);
+
if (hasrgb && mode==PFIELD_TEX_RGB) {
force[0] = (0.5f - result->tr) * strength;
force[1] = (0.5f - result->tg) * strength;
@@ -775,15 +778,15 @@
strength/=nabla;
tex_co[0] += nabla;
- multitex_ext(eff->pd->tex, tex_co, NULL, NULL, 0, result+1, NULL);
+ multitex_ext(eff->pd->tex, tex_co, NULL, NULL, 0, result+1, NULL, scene_color_manage);
tex_co[0] -= nabla;
tex_co[1] += nabla;
- multitex_ext(eff->pd->tex, tex_co, NULL, NULL, 0, result+2, NULL);
+ multitex_ext(eff->pd->tex, tex_co, NULL, NULL, 0, result+2, NULL, scene_color_manage);
tex_co[1] -= nabla;
tex_co[2] += nabla;
- multitex_ext(eff->pd->tex, tex_co, NULL, NULL, 0, result+3, NULL);
+ multitex_ext(eff->pd->tex, tex_co, NULL, NULL, 0, result+3, NULL, scene_color_manage);
if (mode == PFIELD_TEX_GRAD || !hasrgb) { /* if we don't have rgb fall back to grad */
/* generate intensity if texture only has rgb value */
Modified: branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/image.c
===================================================================
--- branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/image.c 2013-07-15 18:46:19 UTC (rev 58279)
+++ branches/soc-2013-depsgraph_mt/source/blender/blenkernel/intern/image.c 2013-07-15 18:48:34 UTC (rev 58280)
@@ -633,7 +633,7 @@
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list