[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [30471] branches/render25: Render Branch: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/ blender -r30448:30470
Campbell Barton
ideasman42 at gmail.com
Sun Jul 18 17:21:59 CEST 2010
Revision: 30471
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=30471
Author: campbellbarton
Date: 2010-07-18 17:21:59 +0200 (Sun, 18 Jul 2010)
Log Message:
-----------
Render Branch: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r30448:30470
Modified Paths:
--------------
branches/render25/release/scripts/ui/properties_material.py
branches/render25/release/scripts/ui/properties_world.py
branches/render25/source/blender/blenkernel/intern/sca.c
branches/render25/source/blender/blenloader/intern/readfile.c
branches/render25/source/blender/editors/include/ED_screen.h
branches/render25/source/blender/editors/include/ED_screen_types.h
branches/render25/source/blender/editors/render/render_internal.c
branches/render25/source/blender/editors/screen/screen_edit.c
branches/render25/source/blender/editors/screen/screen_ops.c
branches/render25/source/blender/editors/space_sequencer/sequencer_ops.c
branches/render25/source/blender/makesdna/DNA_screen_types.h
branches/render25/source/blender/makesrna/intern/rna_sequencer.c
branches/render25/source/blender/windowmanager/intern/wm_event_system.c
branches/render25/source/blender/windowmanager/intern/wm_jobs.c
branches/render25/source/creator/CMakeLists.txt
Removed Paths:
-------------
branches/render25/release/freedesktop/blender-thumbnailer.py
Deleted: branches/render25/release/freedesktop/blender-thumbnailer.py
===================================================================
--- branches/render25/release/freedesktop/blender-thumbnailer.py 2010-07-18 15:19:50 UTC (rev 30470)
+++ branches/render25/release/freedesktop/blender-thumbnailer.py 2010-07-18 15:21:59 UTC (rev 30471)
@@ -1,131 +0,0 @@
-#!/usr/bin/python
-
-# ##### BEGIN GPL LICENSE BLOCK #####
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software Foundation,
-# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-#
-# ##### END GPL LICENSE BLOCK #####
-
-"""
-Thumbnailer runs with python 2.6 and 3.x.
-To run automatically with nautilus:
- gconftool --type boolean --set /desktop/gnome/thumbnailers/application at x-blender/enable true
- gconftool --type string --set /desktop/gnome/thumbnailers/application at x-blender/command "blender-thumbnailer.py %i %o"
-"""
-
-import struct
-
-def blend_extract_thumb(path):
- import os
-
- # def MAKE_ID(tag): ord(tag[0])<<24 | ord(tag[1])<<16 | ord(tag[2])<<8 | ord(tag[3])
- REND = 1145980242 # MAKE_ID(b'REND')
- TEST = 1414743380 # MAKE_ID(b'TEST')
-
- blendfile = open(path, 'rb')
-
- head = blendfile.read(12)
-
- if head[0:2] == b'\x1f\x8b': # gzip magic
- import gzip
- blendfile.close()
- blendfile = gzip.open(path, 'rb')
- head = blendfile.read(12)
-
- if not head.startswith(b'BLENDER'):
- blendfile.close()
- return None, 0, 0
-
- is_64_bit = (head[7] == b'-')
-
- # true for PPC, false for X86
- is_big_endian = (head[8] == b'V')
-
- # blender pre 2.5 had no thumbs
- if head[9:11] <= b'24':
- return None, 0, 0
-
- sizeof_bhead = 24 if is_64_bit else 20
- int_endian_pair = '>ii' if is_big_endian else '<ii'
-
- while True:
- bhead = blendfile.read(sizeof_bhead)
-
- if len(bhead) < sizeof_bhead:
- return None, 0, 0
-
- code, length = struct.unpack(int_endian_pair, bhead[0:8]) # 8 == sizeof(int) * 2
-
- if code == REND:
- blendfile.seek(length, os.SEEK_CUR)
- else:
- break
-
-
- if code != TEST:
- return None, 0, 0
-
- try:
- x, y = struct.unpack(int_endian_pair, blendfile.read(8)) # 8 == sizeof(int) * 2
- except struct.error:
- return None, 0, 0
-
- length -= 8 # sizeof(int) * 2
-
- if length != x * y * 4:
- return None, 0, 0
-
- image_buffer = blendfile.read(length)
-
- if len(image_buffer) != length:
- return None, 0, 0
-
- return image_buffer, x, y
-
-
-def write_png(buf, width, height):
- import zlib
-
- # reverse the vertical line order and add null bytes at the start
- width_byte_4 = width * 4
- raw_data = b"".join([b'\x00' + buf[span:span + width_byte_4] for span in range((height - 1) * width * 4, -1, - width_byte_4)])
-
- def png_pack(png_tag, data):
- chunk_head = png_tag + data
- return struct.pack("!I", len(data)) + chunk_head + struct.pack("!I", 0xFFFFFFFF & zlib.crc32(chunk_head))
-
- return b"".join([
- b'\x89PNG\r\n\x1a\n',
- png_pack(b'IHDR', struct.pack("!2I5B", width, height, 8, 6, 0, 0, 0)),
- png_pack(b'IDAT', zlib.compress(raw_data, 9)),
- png_pack(b'IEND', b'')])
-
-
-if __name__ == '__main__':
- import sys
-
- if len(sys.argv) < 2:
- print("Expected 2 arguments <input.blend> <output.png>")
- else:
- file_in = sys.argv[-2]
-
- buf, width, height = blend_extract_thumb(file_in)
-
- if buf:
- file_out = sys.argv[-1]
-
- f = open(file_out, "wb")
- f.write(write_png(buf, width, height))
- f.close()
Modified: branches/render25/release/scripts/ui/properties_material.py
===================================================================
--- branches/render25/release/scripts/ui/properties_material.py 2010-07-18 15:19:50 UTC (rev 30470)
+++ branches/render25/release/scripts/ui/properties_material.py 2010-07-18 15:21:59 UTC (rev 30471)
@@ -118,6 +118,8 @@
if ob:
split.template_ID(ob, "active_material", new="material.new")
row = split.row()
+ row.prop(mat, "use_nodes", icon="NODETREE", text="")
+
if slot:
row.prop(slot, "link", text="")
else:
Modified: branches/render25/release/scripts/ui/properties_world.py
===================================================================
--- branches/render25/release/scripts/ui/properties_world.py 2010-07-18 15:19:50 UTC (rev 30470)
+++ branches/render25/release/scripts/ui/properties_world.py 2010-07-18 15:21:59 UTC (rev 30471)
@@ -210,6 +210,10 @@
bl_label = "Indirect Lighting"
COMPAT_ENGINES = {'BLENDER_RENDER'}
+ def poll(self, context):
+ light = context.world.lighting
+ return light.gather_method == 'APPROXIMATE'
+
def draw_header(self, context):
light = context.world.lighting
self.layout.prop(light, "use_indirect_lighting", text="")
Modified: branches/render25/source/blender/blenkernel/intern/sca.c
===================================================================
--- branches/render25/source/blender/blenkernel/intern/sca.c 2010-07-18 15:19:50 UTC (rev 30470)
+++ branches/render25/source/blender/blenkernel/intern/sca.c 2010-07-18 15:21:59 UTC (rev 30471)
@@ -800,7 +800,7 @@
(*tot) ++;
*ppoin = MEM_callocN((*tot)*size, "new link");
- for (ibrick=0; ibrick < *tot - 1; ibrick++) {
+ for (ibrick=0; ibrick < *(tot) - 1; ibrick++) {
(*ppoin)[ibrick] = old_links[ibrick];
}
(*ppoin)[ibrick] = *poin;
Modified: branches/render25/source/blender/blenloader/intern/readfile.c
===================================================================
--- branches/render25/source/blender/blenloader/intern/readfile.c 2010-07-18 15:19:50 UTC (rev 30470)
+++ branches/render25/source/blender/blenloader/intern/readfile.c 2010-07-18 15:21:59 UTC (rev 30471)
@@ -11109,7 +11109,9 @@
if(scene) {
Sequence *seq;
SEQ_BEGIN(scene->ed, seq) {
- seq->sat= 1.0f;
+ if(seq->sat==0.0f) {
+ seq->sat= 1.0f;
+ }
}
SEQ_END
}
Modified: branches/render25/source/blender/editors/include/ED_screen.h
===================================================================
--- branches/render25/source/blender/editors/include/ED_screen.h 2010-07-18 15:19:50 UTC (rev 30470)
+++ branches/render25/source/blender/editors/include/ED_screen.h 2010-07-18 15:21:59 UTC (rev 30471)
@@ -98,7 +98,7 @@
void ED_screen_delete_scene(struct bContext *C, struct Scene *scene);
void ED_screen_set_subwinactive(struct wmWindow *win, struct wmEvent *event);
void ED_screen_exit(struct bContext *C, struct wmWindow *window, struct bScreen *screen);
-void ED_screen_animation_timer(struct bContext *C, int redraws, int refresh, int sync, int enable);
+void ED_screen_animation_timer(struct bContext *C, int redraws, int refresh, int sync, int enable, double speed);
void ED_screen_animation_timer_update(struct bScreen *screen, int redraws, int refresh);
int ED_screen_full_newspace(struct bContext *C, ScrArea *sa, int type);
void ED_screen_full_prevspace(struct bContext *C, ScrArea *sa);
@@ -110,7 +110,7 @@
/* anim */
void ED_update_for_newframe(const struct bContext *C, int mute);
void ED_refresh_viewport_fps(struct bContext *C);
-int ED_screen_animation_play(struct bContext *C, int sync, int mode);
+int ED_screen_animation_play(struct bContext *C, int sync, int mode, int toggle);
/* screen keymaps */
void ED_operatortypes_screen(void);
Modified: branches/render25/source/blender/editors/include/ED_screen_types.h
===================================================================
--- branches/render25/source/blender/editors/include/ED_screen_types.h 2010-07-18 15:19:50 UTC (rev 30470)
+++ branches/render25/source/blender/editors/include/ED_screen_types.h 2010-07-18 15:21:59 UTC (rev 30471)
@@ -38,6 +38,7 @@
short refresh;
short flag; /* flags for playback */
int sfra; /* frame that playback was started from */
+ double speed_mul; /* speed multiplier */
} ScreenAnimData;
/* for animplayer */
Modified: branches/render25/source/blender/editors/render/render_internal.c
===================================================================
--- branches/render25/source/blender/editors/render/render_internal.c 2010-07-18 15:19:50 UTC (rev 30470)
+++ branches/render25/source/blender/editors/render/render_internal.c 2010-07-18 15:21:59 UTC (rev 30471)
@@ -626,7 +626,7 @@
/* cancel animation playback */
if (screen->animtimer)
- ED_screen_animation_play(C, 0, 0);
+ ED_screen_animation_play(C, 0, 0, 1);
/* handle UI stuff */
WM_cursor_wait(1);
Modified: branches/render25/source/blender/editors/screen/screen_edit.c
===================================================================
--- branches/render25/source/blender/editors/screen/screen_edit.c 2010-07-18 15:19:50 UTC (rev 30470)
+++ branches/render25/source/blender/editors/screen/screen_edit.c 2010-07-18 15:21:59 UTC (rev 30471)
@@ -25,7 +25,9 @@
*/
#include <string.h>
+#include <math.h>
+
#include "MEM_guardedalloc.h"
#include "DNA_scene_types.h"
@@ -1651,7 +1653,7 @@
/* redraws: uses defines from stime->redraws
* enable: 1 - forward on, -1 - backwards on, 0 - off
*/
-void ED_screen_animation_timer(bContext *C, int redraws, int refresh, int sync, int enable)
+void ED_screen_animation_timer(bContext *C, int redraws, int refresh, int sync, int enable, double speed)
{
bScreen *screen= CTX_wm_screen(C);
wmWindowManager *wm= CTX_wm_manager(C);
@@ -1664,12 +1666,12 @@
if(enable) {
ScreenAnimData *sad= MEM_callocN(sizeof(ScreenAnimData), "ScreenAnimData");
-
- screen->animtimer= WM_event_add_timer(wm, win, TIMER0, (1.0/FPS));
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list