Commit Graph

808 Commits

Author SHA1 Message Date
f406cf4ac8 Fix a few compile warnings and rename gpu_buffers.h to GPU_buffers.h
for consistency.
2010-07-14 10:46:12 +00:00
7ad8e5b6f8 Fix #22816: crash in depsgraph loading some 2.49 files, tagging objects for
update on load should be done later because it's not known yet which scene
is used with which layers visible before the windows are created.
2010-07-14 09:46:26 +00:00
e86b78c47c Merging revision 30264:30270 from my GSoC branch to trunk, logs:
Bugfix for [#22284] Blender cursor gets stuck in the timeline when scrubbing (jack transport).

Dirty hack fix for:
* [#22366] Cutting audio and meta strips with audio does not actually cut audio
* [#22639] Audio not clipped to meta bounds

Also fixed a seemingly symptomless bug in sequencer_edit.c
2010-07-13 15:19:15 +00:00
161ee379a0 2.5: startup.blend changes, these should all be consistent with new datablocks,
mostly the startup.blend was trailing behind. Also renamed B.blend.c.

* Lamp shadow buffer was Classical instead of Classical Halfway.
* Point Lamp was named "Spot".
* Render resolution is 50% 1080p.
* Scene and material bake/use tangent space normal maps.
* Remove empty text datablock.
* Enable auto ray bias on material.
* Change default material diffuse color to match new material.
* Mist start/depth from 0/0 to 5/25 so it does something.
* AO uses Add instead of Multiply.
* Change world colors for new world same as startup.blend.
* Default cube rotation was 0,-0,0 now 0,0,0.
* Enable relative/filter/hide files in user preferences.
2010-07-13 10:29:41 +00:00
7ef6b5cdfd filebrowser
* filebrowser now should respect User Preference for using relative paths
* Also set remap_relative default to 'True' for saving .blend file
(With 'hide dot files' set and 'relative paths' set in the User Preferences this should now behave as in the suggestion made by brecht - in the future we could remove the user preference and just use the default.)
2010-07-08 22:07:34 +00:00
b511fbea6d Sequencer display overlay option, this can show a border area from another time to help compare for color grading.
- Okey sets the border in the display.
- Okey resets the frame offset in the sequencer timeline.
- ghost icon in the header can enable/disable.
- frame offset can be relative or absolute (lock icon)

Not very happy that this commit adds a call to BKE_animsys_evaluate_animdata(scene, ...) in do_build_seq_array_recursively()
without this the offset frames dont have fcurves applied.
Though we will need something like this for prefetch frames to work too.
2010-07-08 10:03:29 +00:00
59b8f8d18c Fix #21201: double click didn't use the original mouse position, now
it stores it and sets it later when the double click event is handled.

Decided to not reuse prevx but made prevclickx, because there may be
multiple mousemoves between the two clicks, and prevx is already used
for some other tricky things.
2010-07-05 16:42:42 +00:00
8f825bd460 Fix #21062 and #22175: crash with node previews being calculated while
editing nodes. Now preview jobs are killed before making any node edits.
2010-07-04 19:58:52 +00:00
ca81aa704e Patch [#22339] File/installation paths changes
Patch Tracker: http://projects.blender.org/tracker/?func=detail&aid=22339&group_id=9&atid=127

This patch implements the proposal outlined here:
http://wiki.blender.org/index.php/Dev:2.5/Source/Installation/Proposal

Original patch by Matt Ebb.
Contributions by Nathan Letwory, Damien Plisson and Andrea Weikert

NOTE:
This is a work in progress commit, some work still needs to be done on the SCons and CMake files for this to work properly, but at least should compile and the files should be created in the right directory.

Commit discussed on IRC with Ton and Campbell.
2010-07-04 15:35:23 +00:00
90162cb0cb Fix #21894: backface selection wasn't working correct with < 24 bits colors,
e.g. thousands of colors on OS X, due to use of uninitialized value. Problem
tracked down and patch provided by Shane Ambler, thanks!
2010-07-04 12:24:19 +00:00
80f6102629 better reporting for file i/o failier, use system error message in more places: Permission Denied, No space left, File not found etc.
- blend load/save uses os message.
- image load gives os message. (remove check for slash at end of line, just let the os report an error)
- python api load image/font/text raise errors with message (was just retuning None for image and font)
- minor edits to py api errors.
2010-07-03 17:47:06 +00:00
0b939f9ea7 WM_operator_props_popup was calling ED_undo_push_op() which is also called by wm_operator_finished.
This made new image operator and seperate image sequence call ED_undo_push_op() twice.
Tested with move to layer and python select pattern operators and it works ok.

including backtraces for the double calls just incase.

# first
#2  0x00000000009ff4c4 in ED_undo_push_op (C=0x20e1098, op=0x3ea13a8) at /media/data/blender_ideasman42/blender_trunk/source/blender/editors/util/undo.c:187
#3  0x00000000008b5fa1 in WM_operator_props_popup (C=0x20e1098, op=0x3ea13a8, event=0x3ea0d28) at /media/data/blender_ideasman42/blender_trunk/source/blender/windowmanager/intern/wm_operators.c:1032
#4  0x00000000008be6be in wm_operator_invoke (C=0x20e1098, ot=0x2408bd8, event=0x3ea0d28, properties=0x3e943d8, reports=0x0) at /media/data/blender_ideasman42/blender_trunk/source/blender/windowmanager/intern/wm_event_system.c:613
#5  0x00000000008bfa44 in wm_handler_operator_call (C=0x20e1098, handlers=0x25509a0, handler=0x25cb658, event=0x3ea0d28, properties=0x3e943d8) at /media/data/blender_ideasman42/blender_trunk/source/blender/windowmanager/intern/wm_event_system.c:1158

# second
#2  0x00000000009ff4c4 in ED_undo_push_op (C=0x20e1098, op=0x3ea13a8) at /media/data/blender_ideasman42/blender_trunk/source/blender/editors/util/undo.c:187
#3  0x00000000008bde8e in wm_operator_finished (C=0x20e1098, op=0x3ea13a8, repeat=0) at /media/data/blender_ideasman42/blender_trunk/source/blender/windowmanager/intern/wm_event_system.c:439
#4  0x00000000008be82a in wm_operator_invoke (C=0x20e1098, ot=0x2408bd8, event=0x3ea0d28, properties=0x3e943d8, reports=0x0) at /media/data/blender_ideasman42/blender_trunk/source/blender/windowmanager/intern/wm_event_system.c:640
#5  0x00000000008bfa44 in wm_handler_operator_call (C=0x20e1098, handlers=0x25509a0, handler=0x25cb658, event=0x3ea0d28, properties=0x3e943d8) at /media/data/blender_ideasman42/blender_trunk/source/blender/windowmanager/intern/wm_event_system.c:1158
2010-07-03 12:55:03 +00:00
15be7b215f - changes to the sequencer so new strips use the data name.
- removed the name option for the sequence operators.
2010-07-02 20:09:42 +00:00
643ec7a12f Fix #22690: gestures were not working correct after inbetween mousemove
changes, also forgot to update armature sketching operator.
2010-07-02 11:26:12 +00:00
51fd10a1b5 adding image strips wasnt working, use the 'directory' component of the file selector rather then the full 'filepath' to fix this.
added flags for filename/filepath/directory args to WM_operator_properties_filesel().
2010-07-01 19:28:45 +00:00
a52632182c [#22682] some missing keymaps
Added proportional influence up/down to transform modal keymap.

Also fixed a crash in restoring to previous key map item after edits.
2010-06-27 23:57:58 +00:00
ebde8a7ccc new notifier for FRAME_RANGE, use to recalculate the timeline scrollbar range. 2010-06-26 19:17:48 +00:00
aba62b1797 fix for crash running the file load operator in background mode:
bpy.ops.wm.open_mainfile(filepath="some.blend")
2010-06-26 13:24:52 +00:00
892851f787 file operator cleanup
* the default properties of the file operator now only contain the "filepath", which means only the complete path to a file is returned.
* "filename" and "directory" has been added to the link/append operator - the only place it was used.
* sequence operators still work on the "files", which was custom property passed to the file operator anyway.
* have tested sequence loading, image loading and append/link - please report if there are any issues
2010-06-26 08:53:29 +00:00
f507428d11 Fix #22553: dragging number buttons would run update functions more often than
necessary due to the more accurate mouse move events that are useful for
sculpting and painting (at least on Linux/X11, not sure about other platforms).
If the update function takes a while to run, this in turn causes more mouse
move events to be accumulated, making things even slower, .. going into a spiral
of slower and slower redraws.

As a solution I've added a INBETWEEN_MOUSEMOVE event next to MOUSEMOVE. A
MOUSEMOVE event is automatically changed to INBETWEEN_MOUSEMOVE when a
MOUSEMOVE event is added after it. This new event type is only handled by
painting/sculpting operators, everything else can happily ignore it.
2010-06-23 18:47:56 +00:00
4596588fe8 - avoid divide by zero with node progress
- write_crash_blend() was writing to the original path.
2010-06-23 15:07:20 +00:00
16b15961a8 Fix #21470: changing brush settings redraws the 3d view unecessarily,
added ED_region_tag_redraw_overlay to only redo overlay drawing, which
in case of triple buffer is much faster.
2010-06-23 09:58:32 +00:00
eeed68a20f utility function to save blend's from a crash (from gdb run this)
p write_crash_blend()

Which will save the current blend name with _crash prefix.
2010-06-22 08:38:12 +00:00
1d6c2f214b Timeline addition: Display cached frames
This started off doing pointcache debugging but it's also very useful for users too.
Previously it was very hard to see the state of the system when you're working caches
such as physics point cache - is it baked? which frames are cached? is it out of date?

Now, for better feedback, cached frames are drawn for the active object at the bottom 
of the timeline - a semitransparent area shows the entire cache extents, and more 
solid blocks on top show the frames that are cached. Darker versions indicate it's 
using a disk cache.

It can be disabled in general in the timeline View -> Caches menu, or by each individual
system that can be shown.

There's still a bit to do on this, behaviour needs to be clarified still eg. deciding what
shows when it's out of date, or when it's been played back but not cached, etc. etc. 
Part of this is due to a lack of definition in the point cache system itself, so we should
try and clean up/clarify this behaviour and what it means to users, at the same time.

Also would be interested in extending this to other caches such as fluid cache, 
sequencer memory cache etc. in the future, too.
2010-06-22 02:29:52 +00:00
bfd0810beb Notifier cleanup - replaced ND_*_EDIT and ND_*_SELECT data notifiers
with the generic action equivalents (NA_EDITED and new NA_SELECTED)
2010-06-18 04:39:32 +00:00
08c4725a13 workaround for crash when notifiers cause a scene update at the same time rendering starts.
happens when changing frame and pressing render quickly on a slow scene.

for now ignore animation updates while rendering.
2010-06-14 15:02:16 +00:00
6a0365f59c - option for redraw timer to playback the animation
- py utility property group.users_dupli_group
2010-06-14 10:33:26 +00:00
c2f36a4d6a naming changes
path -> filepath (for rna and operators, as agreed on with elubie)
 path -> data_path (for windowmanager context functions, this was alredy used in many places)
2010-06-14 03:52:10 +00:00
6cc6f8495f - added a flag argument to WM_operator_properties_filesel() currently only used for relative path option.
- added relative option to saving external multires data
- renamed multires external functiosn to have save / pack as suffix.
- added TODO's for file select operators that should support relative paths but dont.

- also disable openmp on linux cross compile, mingw currently isnt linking -lgomp
2010-06-09 14:04:34 +00:00
180a9f1a81 fix for crash with the job system progress bar on load, matt you may want to check if this case should be happening at all. 2010-06-07 14:54:42 +00:00
d57ebc4ecc Fix [#22413] drag & drop images don't work untile you move the object 2010-06-07 07:47:27 +00:00
b4f12db4ec Don't report the python code for operators type which don't have the
'REGISTER' flag set.
2010-06-06 08:52:33 +00:00
4da179749e - [#22492] [29159] commit breaks importing of script file that has a reload to self in it
broke when including the blend path in the modules filename.       

- new function BLI_path_basename(), matches pythons os.path.basename().
  replace a number of cases where BLI_split_dirfile was being used to get the filename only.
2010-06-05 21:19:59 +00:00
21d112c36f Reworked the non-blocking reports display in the info header:
* Now it displays the last report from the global list, not just from operators
* Rather than disappearing when a new operator is run, it stays until it times 
out or a new report is added
* Fun animated transitions ;)
http://mke3.net/blender/devel/2.5/reports_header.mov

Now need to investigate report usage with popups. Ideally we can have most
 reports non-blocking, so they're less intrusive, only popping up for dire errors.
Problem is many things in Blender right now are marked as RPT_ERROR 
when probably RPT_WARNING is more appropriate. Should probably keep 
RPT_ERROR for things that demand immediate attention.
2010-06-03 07:27:55 +00:00
9cbbc9d3af rename some rna properties filename --> filepath
* filename == "foo.ext"
 * filepath == "/path/to/and/including/foo.ext"

this was alredy followed in some places not not everywhere.
2010-06-02 17:58:28 +00:00
3f326354b8 Progress indicator in the application icon
Displays a global progress indicator in the application icon reflecting the total progress of all running jobs.

Currently fully implemented on OSX (Cocoa).
On other OSes that do not allow to redraw the app icon, this can be implemented as a [x%] display in the app title, so to appear in the taskbar.

Thanks to Matt for the windowmanager wrapper.
2010-06-01 20:21:40 +00:00
16ca0163d8 passepartout overlay wasnt written into thumbnails 2010-06-01 13:06:13 +00:00
ccda04131a Python Open Link operator.
* Unified some code for Opening an URL to use only one operator: WM_OT_url_open
* Removed the HELP_OT_url operators.
2010-05-31 11:38:13 +00:00
177cffc171 blend file thumbnails
- fix for blend file thumbnails not being immediately visible in an external file manager (was writing the thumb before the blend)
- move overlay function from wm_files.c into thumbs_blend.c
2010-05-30 19:21:28 +00:00
84d3856498 thumbnail passepartout effect, distinguishes blend files from images. 2010-05-30 09:16:50 +00:00
Dalai Felinto
c6bec43330 reverting previous commit from Mitchell. His commit went to the trunk instead of the branch :)
svn merge -r 29067:29066 https://svn.blender.org/svnroot/bf-blender/trunk/blender
2010-05-29 21:31:57 +00:00
9d3157eed0 Reversing the last merge because I botched it. 2010-05-29 21:22:24 +00:00
Dalai Felinto
8a59a45342 Esc as input for Key Buttons (e.g Logic Brick Keyboard Sensor)
After talking with Brecht he agreed on allowing Esc to be used as input for key input butons.
In order to let the user to cancel an input it can cancel it clicking outside the button.

Also replacing manual check by ui_mouse_inside_button in ui_text function
(patch reviewed (and helped) by Matt (but the change on ISHOTKEY, that's on my own risk ;))
2010-05-29 01:42:42 +00:00
40d7eac69e [#21842] Beta patch to restore cmake MinGW compilation
from Riakiotakis Antonis (psy-fi) 

with modifications.

notes:
- needed to remove quotes around filepaths for copying.
- WITH_JACK, doesnt link
- WITH_FFMPEG, doesnt build
- WITH_RAYOPTIMIZATION, gave an error for me. (no mmx support)
2010-05-28 21:25:23 +00:00
6e92ddf8b3 Progress indicators for threaded jobs
Now, rather than the bit-too-alarming stop sign, threaded wmJobs 
display a progress indicator in the header. This is an optional feature
for each job type and still uses the same hardcoded ui template
(could use further work here...).

Currently implemented for:
Render - parts completed, then nodes comped
Compositor - nodes comped
Fluid Sim - frames simulated
Texture Bake - faces baked

Example: http://mke3.net/blender/devel/2.5/progress.mov
2010-05-27 08:22:16 +00:00
37fab4a3e1 bugfix [#22426] New Thumbnail code crashes when saving
patch from Ken Nign (ken9). (modified slightly)
2010-05-26 10:52:39 +00:00
c61e25e6ac blend file thumbnailing
- uses same thumbnail system as image browser
- blend files show thumbnails in ubuntu/gnome (freedesktop spec)
- 128x128 images are embedded into the blend file header, a simple loader avoids reading the entire blend file to extract it when generating thumbnails in the file selector.
  When the image browser reads a directory it loads images and creates thumbnails, blend files embedded images are treated just like loading an image.
- the thumbnail is created from the camera view in solid mode. (no camera == no thumbnal).
- readfile/writefile.c: had to use the 'TEST' code name to save thumbnails, anything else would segfault older blender versions on load. (its not used elsewhere).
2010-05-24 21:52:18 +00:00
008863daec Merge image related changes from the render branch. This includes the image
tile cache code in imbuf, but it is not hooked up to the render engine.


Imbuf module: some small refactoring and removing a lot of unused or old code
(about 6.5k lines).

* Added a ImFileType struct with callbacks to make adding an file format type,
  or making changes to the API easier.
* Move imbuf init/exit code into IMB_init()/IMB_exit() functions.
* Increased mipmap levels from 10 to 20, you run into this limit already with
  a 2k image.
* Removed hamx, amiga, anim5 format support.
* Removed colormap saving, only simple colormap code now for reading tga.
* Removed gen_dynlibtiff.py, editing this is almost as much work as just
  editing the code directly.
* Functions removed that were only used for sequencer plugin API:
  IMB_anim_nextpic, IMB_clever_double, IMB_antialias, IMB_gamwarp,
  IMB_scalefieldImBuf, IMB_scalefastfieldImBuf, IMB_onethird, IMB_halflace,
  IMB_dit0, IMB_dit2, IMB_cspace
* Write metadata info into OpenEXR images. Can be viewed with the command
  line utility 'exrheader'

For the image tile cache code, see this page:
http://wiki.blender.org/index.php/Dev:2.5/Source/Imaging/ImageTileCache
2010-05-07 15:18:04 +00:00
fbb68188df Restrict keyboard sensor stored events to only what's appropriate per property
(normal key, modifier key, etc)
2010-05-07 08:10:20 +00:00
c9ca41c6f1 dont write blender recent file list or save quit.blend when running in background mode. 2010-05-06 18:25:56 +00:00