Commit Graph

1221 Commits

Author SHA1 Message Date
affb38fd59 Fix #29864: crash running blender in background mode with non-default key
configuration.
2012-01-12 15:44:18 +00:00
9f2443293e replace fixed sizes with sizeof when passing string length since size wasn't always correct. 2012-01-12 13:16:30 +00:00
Dalai Felinto
de86d89a9f Cucumber - AA for blenderplayer and fullscreen
..............................................
svn merge ^/branches/soc-2011-cucumber -r 38968,38970,38973,39045,40845

Notes:
======
*  we replaced fullscreen by playerflag in DNA_scene.types.h. So no doversion here, I think this is a small reversion can't see any potential problem in forcuing users to re-check fullscreen. If the file is really old (<250) it will doversion though;

* (for after commit) it would be nice to gray out the width/height when desktop=True

* for a rainy day: it would be nice to have other ghost modes (e.g. screensaver) to support desktop + MSAA as well. It's not a huge deal given that I don't even know if anything else work (apart from windowed, fullscreen and embed) but it doesn't hurt to have it updated as well.

* there is something strange with outliner. I think space_outliner merge-info is not in sync with the ^/ folder. It's probably a wrong merge early in cucumber.

Commit Logs:
===========
# 40845 by dfelinto
remove desktop and fullscreen properties. They are both part of playerflag now
also I removed the fullscreen from the DNA completely. I don't think we need doversion that..

#39045 by kupoman
The Desktop option is now greyed out when fullscreen is not checked rather than disappearing from the UI completely.

#38973 by kupoman
Adding a checkbox to the UI to allow the full screen Blender Player to use the current desktop resolution instead of the resolution setting.

#38970 by kupoman
Multisampling now works in a fullscreen Blender Player.

#38968 by moguri
Committing a patch from Mitchell Stokes (Moguri) to include a setting in the UI for the Blenderplayer multisampling.
2012-01-11 20:53:22 +00:00
45e3b0c44e fix for error in last commit - don't overwrite options in the new operator which have been set before the operator runs. 2012-01-11 20:03:41 +00:00
03b0681fe5 running operators now uses last used settings, added reset button to set defaults.
details
- uses redo stack to get recent settings from.
- adds a flag to IDProperties so RNA_property_is_set() can return false even if the property is exists.
- PROP_SKIP_SAVE option skips these settings from getting reset (as with presets).
2012-01-11 19:33:14 +00:00
02560d748f add RNA_property_is_set function, use for WM_menu_invoke to avoid double lookup and py api to de-duplicate some checks 2012-01-11 16:48:22 +00:00
f66f33cefc rename RNA_property_is_set() --> RNA_struct_property_is_set() in preperation to add a second version of the function which takes the property rather then its name. 2012-01-11 16:32:12 +00:00
e10fd04db0 use BLI_strncpy and BLI_snprintf when the size of the string is known.
fix for sequencer unique naming which was missed with string length update.
2012-01-11 12:33:51 +00:00
535d27eb49 minor cleanup for string use - no functional changes
- use more logical names for strings, noticed too many strings called `str` when reviewing name patch.
- pass __func__ macro to uiBeginBlock(), quite a few names were wrong (copy/paste error).
2012-01-11 09:33:44 +00:00
84c6daedd7 Fix jobs progress display in taskbar incorrectly flashing on/off with multiple
jobs active.
2012-01-10 14:24:02 +00:00
5bf5d5a844 Camera tracking: tracks copy/paste operator
This commit implements basic clipboard support for movie tracking data
int clip editor. Used own implementation of clipboard like it's done
for sequencer.
Ideally it needed to be switched to more general clipboard system, but
currently this system is designed for text data only and it need to
be re-designed itself. But this feature is quite useful since object
tracking is implemented, so it should be OK to live with such own
implementation for a while.
2012-01-09 20:18:48 +00:00
ecd463d20d fix an error rendering opengl weightpaint data wasn't working when python initialized opengl render on startup (needed for testing script). 2012-01-09 02:50:09 +00:00
491fe9df19 Fix #29568: Blender restores deleted scene
Special notifiers used for scene deletion which lead to undo pushes
after SCENE_OT_delete operator happening with scene still present in
the mainfile. That was a reason why operator redo used to restore
scene.

It's not so obvious why special notifier type is needed for scene
set and deletion -- it confuses undo system without having some
obvious advantages. Using "direct" scene deletion and setting
seems to be working fine so let's see if there'll be some issues
with this.
2012-01-06 17:32:20 +00:00
8ccf5026e0 more changes from bmesh into trunk (mesh mpoly strict member) 2011-12-28 14:21:51 +00:00
5b88e16306 WIP loading bmesh in trunk, some conversion functions for this purpose. 2011-12-28 13:50:33 +00:00
0059b8dd96 option to save as older mesh format (ifdef'd for now) 2011-12-27 13:17:58 +00:00
eb3beca8d4 replace u_int64_t with cc99's uint64_t as suggested by Nicholas Bishop. 2011-12-24 03:03:42 +00:00
ddcf56366d change customdata mask from an 'unsigned int' to an 'u_int64_t', since BMesh branch has run out of bits 2011-12-23 20:30:23 +00:00
7d2fbfeb9f move GPU_code_generate_glsl_lib to GPU_extensions_init. This makes more sense as we cleanup the library string in GPU_extensions_exit. Thanks to Mitchel Stokes for reporting and proposing this 2011-12-17 12:58:20 +00:00
2253b63c97 static functions for getting power of 2 values were being copied about too much, add to the BLI_math api.
- is_power_of_2_i
- power_of_2_min_i
- power_of_2_max_i
2011-12-16 09:25:07 +00:00
6ccc605660 Bicubic bump map filtering.
This commit introduces bicubic bump map capabilities for the viewport for OpenGL 3.0+ capable GPUs. 

To use the functionality change the bump mapping method to "best quality"
Previous "best quality" setting becomes "medium quality" now.
For non OpenGL 3.0 GPUs this becomes the same as "medium quality"

Also:
* added tooltip descriptions to the bump method settings.
* modified the shader to ommit extraneous matrix multiplications for matrices already provided by OpenGL.

Bicubic shader by Morten Mikkelsen. Thanks a lot!

Oh...and FIRST!
2011-12-15 13:58:09 +00:00
50d05a2a58 Disallow link/append when in edit mode
Linking changes active object which is pretty useful in general,
but which totally confuses edit mode (i.e. it becoming not so obvious
to leave from edit mode and inwalid tools in toolbar might be displayed)
so disable link/append when in edit mode
2011-12-13 12:51:40 +00:00
7abc66ba42 add WM_operator_call_notest() for operators that need to call themselves within invoke functions without being freed. 2011-12-12 18:52:18 +00:00
3e7ad0e271 fix [#29537] file/save crashes when target path isnt found
bug was that uiPupMenuSaveOver(...) could run the WM API call function which freed the operator, within the low level invoke function which kept using the freed memory.

Changed uiPupMenuSaveOver(...) to only show a popup so the caller needs to check if the file exists and should be immediately written (which was done everywhere except for blend saving anyway).

* added note that operators invoke/exec funcs cant call WM_operator_call(...) on themselves, ends up using freed memory.
* added BLI_is_file(path), checks the file exists and isnt a directory.
2011-12-12 18:06:36 +00:00
c280002879 fix [#29579] Redo brolken when jobs are running
changes
* undo now checks screen jobs only, was checking all jobs before so a material preview could make an undo fail.
  now this is only limiteds for render/fluid bake/bake.

* the redo UI is now disabled when screen operators run.
2011-12-11 19:23:02 +00:00
d0c327c81c Fix #29432: Marquee Select Bug
Moved tweak threshold value to user preferences

This threshold might be needed to be tweaked when working with tables, i.e.
to prevent tap+slight movement be treated as tweak event.
2011-12-07 09:55:37 +00:00
c40d8921b8 Fix #28107: save screenshot operator option to save full screen or only a single
editor was not working. Solution is to take full screenshot and crop it on save.
Also fixed screenshot showing popup menu used to execute operator.
2011-12-05 16:37:31 +00:00
725207a1e6 Possible fix for #29436: issue with external numpad, that is generating unknown
key events. Disable using these as "key modifier".
2011-12-02 19:29:42 +00:00
1a7ae3634d Blender 2.61 Release links and readme:
* Updated links to http://www.blender.org/development/release-logs/blender-261/
* Update readme file for 2.61
2011-11-29 20:13:20 +00:00
9c0f557b35 Fix #27328: Undoing an operation while baking fluids freezes Blender
Prevent Undo be run if there are any jobs are currently running.
This also makes sense with such jobs as multires baker, for example.
2011-11-29 15:26:46 +00:00
7baaa08211 Fix #29389: cycles viewport render not updating on frame changes. This sort of
worked by accident before, because of flags that weren't cleared properly. Now
moved the call to update render engines into scene_update_* itself.
2011-11-28 14:55:35 +00:00
8ab167d33d pass args as vectors to opengl functions where possible. 2011-11-26 05:10:53 +00:00
6736576f6d replace FILE_MAXDIR + FILE_MAXFILE with FILE_MAX 2011-11-26 04:07:38 +00:00
c1c3d66079 Fix #29306: Alt+N, Enter In Image View Does closes the dialog without executing.
If enter is pressed outside of any button in menu, generate two menu return values:
- UI_RETURN_CANCEL so button wouldn't be executed
- UI_RETURN_POPUP_OK so callback associated with popup block would be executed
2011-11-24 13:51:31 +00:00
4fbac96fd5 Fix #29333: issue with modal keymap saving. 2011-11-21 14:52:05 +00:00
0c7a25cd0e patch [#28993] wm_window_match_do(): Fix crash on null pointer dereference
from Ola Jeppsson (olajep)

also some cleanup edits
2011-11-15 16:38:48 +00:00
8623935aa8 pass a pointer to IDP_New's IDPropertyTemplate rather then a copy. 2011-11-15 09:22:52 +00:00
9e6860d864 fix [#29242] menus have no keyboard shortcuts 2011-11-14 14:42:47 +00:00
e84c0980a3 correct indentation and some whitespace edits (no functional changes) 2011-11-11 13:09:14 +00:00
1d225c6696 use macro for access to library filepath 2011-11-07 15:55:03 +00:00
27d42c63d9 Camera tracking integration
===========================

Commiting camera tracking integration gsoc project into trunk.

This commit includes:

- Bundled version of libmv library (with some changes against official repo,
  re-sync with libmv repo a bit later)
- New datatype ID called MovieClip which is optimized to work with movie
  clips (both of movie files and image sequences) and doing camera/motion
  tracking operations.
- New editor called Clip Editor which is currently used for motion/tracking
  stuff only, but which can be easily extended to work with masks too.

  This editor supports:
  * Loading movie files/image sequences
  * Build proxies with different size for loaded movie clip, also supports
    building undistorted proxies to increase speed of playback in
    undistorted mode.
  * Manual lens distortion mode calibration using grid and grease pencil
  * Supervised 2D tracking using two different algorithms KLT and SAD.
  * Basic algorithm for feature detection
  * Camera motion solving. scene orientation

- New constraints to "link" scene objects with solved motions from clip:

  * Follow Track (make object follow 2D motion of track with given name
    or parent object to reconstructed 3D position of track)
  * Camera Solver to make camera moving in the same way as reconstructed camera

This commit NOT includes changes from tomato branch:

- New nodes (they'll be commited as separated patch)
- Automatic image offset guessing for image input node and image editor
  (need to do more tests and gather more feedback)
- Code cleanup in libmv-capi. It's not so critical cleanup, just increasing
  readability and understanadability of code. Better to make this chaneg when
  Keir will finish his current patch.

More details about this project can be found on this page:
    http://wiki.blender.org/index.php/User:Nazg-gul/GSoC-2011

Further development of small features would be done in trunk, bigger/experimental
features would first be implemented in tomato branch.
2011-11-07 12:55:18 +00:00
bb8fe0bf4a minor edits
- remove unneeded type check from convert grease pencil operator.
- correct some error prints & use __func__.
- make copy_libblock take an ID* argument rather than void*.
2011-11-07 04:36:37 +00:00
21d188a70f Depsgraph: add "Dependency Relations" operator to print the dependency graph to
the console, useful for debugging and understanding the relations.
2011-11-04 13:17:35 +00:00
2d787e6e01 utility function to find the biggest area: BKE_screen_find_big_area(...), was being done with static functions that were copied about. 2011-11-04 01:15:04 +00:00
e2393d1109 ability to have permanent callbacks that stay active when new blend files are loaded.
this works by tagging functions, eg:

  def my_func(scene):
      pass

  bpy.app.handlers.permanent_tag(my_func, True)  # <-- important bit
  bpy.app.handlers.frame_change_pre.append(my_func)
2011-11-03 06:53:52 +00:00
1f291a69c1 correct spelling mistakes 2011-11-03 03:00:45 +00:00
723e129252 Depsgraph/Python: callbacks and properties to detect datablock changes
* Adds two new python handlers: scene_update_pre() and scene_update_post()
  These run before and after Blender does a scene update on making modifications
  to the scene.
* Datablocks now have an is_updated property. This will be set to true in the
  above callbacks if the datablock was tagged to be updated. This works for the
  most common datablocks used for rendering: object, material, world, lamsp,
  texture, mesh, curve.
* Datablock collections also have an is_updated property. If this is set, it
  means one datablock of this type was added, removed or modified. It's also
  useful as a quick check to avoid looping over all datablocks.
* RenderEngine.view_update() can also check these properties, for interactive
  viewport rendering.

http://wiki.blender.org/index.php/Dev:2.6/Source/Render/UpdateAPI
2011-11-02 20:56:52 +00:00
97a0ae3e1b RenderEngine api: support for viewport rendering, details here:
http://wiki.blender.org/index.php/Dev:2.6/Source/Render/RenderEngineAPI

* This adds a Rendered draw type in the 3D view, only available when
  the render engine implements the view_draw callback.
* 3D view now stores a pointer to a RenderEngine.

* view_draw() callback will do OpenGL drawing instead of the viewport.
* view_update() callback is called after depsgraph updates.
2011-11-02 18:20:53 +00:00
dc1b3d88b8 fix [#29098] File save dialog cannot handle extra periods in file name 2011-10-31 00:23:42 +00:00
4b635d1631 use generic path remapping when making all library data local, previously only image paths were getting corrected, now all paths will (scene image seq strips, pointcache etc) 2011-10-28 04:44:59 +00:00