Commit Graph

2466 Commits

Author SHA1 Message Date
34b18fcbc1 code cleanup: BKE_ naming, also make bpy.data.images.load() always load a new image. (not use existing one) 2012-05-05 14:52:04 +00:00
299ff91ea1 code cleanup: BKE_scene api naming.
also stop numpy from being found in /usr/include with cmake.
2012-05-05 14:33:36 +00:00
a731e13043 code cleanup: function naming, use BKE_*type* prefix. 2012-05-05 14:03:12 +00:00
bb1f8d9586 Merged changes in the trunk up to revision 46309.
Conflicts resolved:
source/blender/blenloader/intern/readfile.c
source/blender/editors/interface/resources.c
source/blender/editors/mesh/editmesh_tools.c
2012-05-05 11:40:42 +00:00
084fedd03a code cleanup: brush/camera naming 2012-05-05 00:58:22 +00:00
72fa158724 Added start and end bevel factor for curves, so now it's possible to make
a bevelled curve which isn't fully covered with a bevel.
2012-05-04 17:04:20 +00:00
Dalai Felinto
d7fbe03a8a Fisheye Camera for Cycles
For sample images see:
http://www.dalaifelinto.com/?p=399 (equisolid)
http://www.dalaifelinto.com/?p=389 (equidistant)

The 'use_panorama' option is now part of a new Camera type: 'Panorama'.
Created two other panorama cameras:

- Equisolid: most of lens in the market simulate this lens - e.g. Nikon, Canon, ...)
             this works as a real lens up to an extent. The final result takes the
             sensor dimensions into account also.
             .:. to simulate a Nikon DX2S with a 10.5mm lens do:
                 sensor: 23.7 x 15.7
                 fisheye lens: 10.5
                 fisheye fov: 180
                 render dimensions: 4288 x 2848

- Equidistant: this is not a real lens model. Although the old equidistant lens simulate
               this lens. The result is always as a circular fisheye that takes the whole sensor
               (in other words, it doesn't take the sensor into consideration).
               This is perfect for fulldomes ;)

               For the UI we have 10 to 360 as soft values and 10 to 3600 as hard values (because we can).


Reference material:
http://www.hdrlabs.com/tutorials/downloads_files/HDRI%20for%20CGI.pdf
http://www.bobatkins.com/photography/technical/field_of_view.html

Note, this is not a real simulation of the light path through the lens.
The ideal solution would be this:
https://graphics.stanford.edu/wikis/cs348b-11/Assignment3
http://www.graphics.stanford.edu/papers/camera/


Thanks Brecht for the fix, suggestions and code review.
Kudos for the dome community for keeping me stimulated on the topic since 2009 ;)

Patch partly implemented during lab time at VisGraf, IMPA - Rio de Janeiro.
2012-05-04 16:20:51 +00:00
1fd397d2d6 Split do_versions into separate files for pre-2.50 versions and 2.5x versions
This should make it easier to navigate through readfile.c and also hopefully
will prevent corereview to fail parsing this file.
2012-05-04 15:42:49 +00:00
48ead27366 Camera tracking: switch dopesheet information to lazy calculation
All operators which changes tracking data now just tags dopsheet as outdated,
actual re-calculaiton of happens only when this information is actually needed
(like on dopesheet draw).

This makes things a bit faster when there's no dopesheet visible in current
screen and also makes it much easier to update dopesheet using dependency
graph.

Also renamed dopesheet_sort_order to dopesheet_sort_method in rna and internal
stuff which makes much more sense and also correlated with naming in
file browser.
2012-05-03 23:15:01 +00:00
5821c2973e Camera tracking: pre-calculate tracked segments for dopesheet channels 2012-05-03 17:52:34 +00:00
a0642a2597 Fix wrong unified weight paint value version patch, was doing incorrect version check.
Fix #31209: weight paint sample & fill not using correct brush/unified value.
2012-05-02 16:05:25 +00:00
Lukas Toenne
01b3deb680 A number of changes to node RNA and the file output node, to simplify socket types and make node code more robust for future nodes with extra socket data.
* Removed the struct_type identifier from sockets completely. Any specialization of socket types can be done by using separate collections in RNA and customized socket draw callbacks in node type. Sockets themselves are pure data inputs/outputs now. Possibly the sock->storage data could also be removed, but this will change anyway with id properties in custom nodes.

* Replaced the direct socket button draw calls by extra callbacks in node types. This allows nodes to draw sockets in specialized ways without referring to the additional struct_type identifier. Default is simply drawing the socket default_value button, only file output node overrides this atm.

* File output node slots now use a separate file sub-path in their storage data, instead of using the socket name. That way the path is an actual PROP_FILEPATH property and it works better with the UI list template (name property is local to the data struct).

* Node draw contexts for options on the node itself and detail buttons in the sidebar now have an extra context pointer "node" (uiLayoutSetContextPointer). This can be used to bind operator buttons to a specific node, instead of having to rely on the active/selected node(s) or making weak links via node name. Compare to modifiers and logic bricks, they use the same feature.

* Added another operator for reordering custom input slots in the file output node.
2012-05-02 07:18:51 +00:00
ae4fda82b0 Merging phase 1 of the BGE Harmony branch:
* Shadow color now usable in the BGE
 * Simplified the shadow panel while "Blender Game" renderer is active
 * Added variance shadow maps for the BGE
 * Buffered shadows on sun lamps in the BGE (orthographic)
 * Light textures in the BGE
2012-05-01 02:50:17 +00:00
a5af5e8f50 style cleanup: re - http://wiki.blender.org/index.php/Dev:Doc/CodeStyle#Braces_with_Macros 2012-04-30 16:22:40 +00:00
f111131ca6 Camera tracking: initial commit of dopesheet view for clip editor
- Displays dopesheet information for selected tracks, and currently does not
  support any kind of editing.
- Changed regions to use the whole main region for such views as curves and dopesheet.
  This allows to have own panels with tools/properties in this area.
- Active clip is getting synchronized between different clip editor editors in the
  same screen, so updating of curve/dopesheet views happens automatically when one
  changes current clip in one of this editors.
- Panels in toolbox and properties panels are now separated to rely on current view
  mode, but some operators and poll functions still need to be updated.
- Added new screen called "Movie Tracking" where layout is configured to
  display timeline, main clip window, curves and dopesheet.
2012-04-30 16:19:20 +00:00
323aedb81e Camera tracking: use texture buffers (if supported) to display clip editor frames
Use texture buffers to display frames of footage in clip editor. This allows
to apply bilinear filtering of proxied resolution which.

This also resolves incredibly slow performance when drawing 4K footage on
some videocards (was originally noticed on macbook pro). Also this allows
to avoid sending the whole frame to the video memory when working with a
single frame (i.e. before this patch the whole frame would be send to the
videocard when panning frame).
2012-04-30 16:19:12 +00:00
0dc4919822 Versioning patch fix for files from tomato branch
Quite harmless but it was silly mistake i a code probably introduced by
some automatic svn merge.
2012-04-30 16:19:08 +00:00
60c9addf79 - improve select grouped prefix/suffix from recent patch
- added select similar direction (Y axis)
2012-04-30 08:24:44 +00:00
f7ec94cbc6 Add per-brush weight field.
Patch from Jaggz H, thanks!

[#31096] Weight-painting: Brush-specific weights
http://projects.blender.org/tracker/?func=detail&atid=127&aid=31096&group_id=9

Each brush's weight can now be set individually, can also enable
unified setting (same as size and strength have.)

Added readfile code to the patch: subversion bumped to 1, brushes get
default weight of 0.5, unified weight enabled by default and value
from old vgroup_weight field.
2012-04-29 20:04:25 +00:00
343edf2722 style cleanup: function calls & whitespace. 2012-04-29 17:11:40 +00:00
e701f9b670 style cleanup: whitespace / commas 2012-04-29 15:47:02 +00:00
2585d52405 Merged changes in the trunk up to revision 46045.
Conflicts resolved:
doc/python_api/sphinx_doc_gen.py
source/blender/blenkernel/intern/subsurf_ccg.c
source/blender/editors/mesh/editmesh_tools.c
source/blender/makesdna/DNA_scene_types.h
2012-04-29 00:59:04 +00:00
ef054e165c style cleanup: format 'for' loop macros the same as for loops, some renaming to BLI_array macros. 2012-04-28 15:14:16 +00:00
b340f930ec style cleanup: changes to brace placement / newlines - for/while/if/switch 2012-04-28 06:31:57 +00:00
e75e40c972 Release commit, 2.63!
Special thanks to Mango team for awesome splash screen!
And everybody else who made this release! :)
2012-04-26 17:49:48 +00:00
e06e338e20 fix [#31079] Revision 45893 crashes when I try to open a certain file created in it.
nasty bug going from 2.63 --> 2.62 --> 2.63, could have incorrect/corrupt data.
fix checks for this case and clears the customdata layer.
2012-04-24 10:25:12 +00:00
4c4389f6a4 code cleanup: remove editbutflag flag from toolsettings & related defines. 2012-04-23 02:48:05 +00:00
5c89138684 style cleanup: comments 2012-04-22 11:54:53 +00:00
b56aabf815 style cleanup: multi-line if statements. 2012-04-21 15:11:03 +00:00
6701933f5c style cleanup 2012-04-21 12:51:47 +00:00
cdbfd1db38 Merged changes in the trunk up to revision 45820.
Conflicts resolved:
source/creator/creator.c
2012-04-21 00:33:36 +00:00
Lukas Toenne
5c646e7e3a Reverted r43219 "Improved auto-hiding of unused sockets for collapsed nodes."
This feature did have a number of flaws and caused some controversy, so removal is the better option. Hiding nodes without prior connections would just hide all the sockets, leaving an unusable node. Better way is to use the ctrl+h shortcut to explicitly hide unused sockets when necessary.
2012-04-16 10:50:57 +00:00
5496e87eee Fluid Simulation:
* Replaced the hard coded viscosity presets with Python ones.

* Added version check, so older files load fine.
Loading new files into 2.62 also works fine.
2012-04-15 21:02:08 +00:00
a73d0d3e72 code cleanup: dont include BLI_winstuff.h on non windows systems, also cleanup some defines/includes for windows. 2012-04-15 07:54:07 +00:00
4a19ccfa5f Merged changes in the trunk up to revision 45619. 2012-04-14 10:38:11 +00:00
60d3b8f27b Fix loading external MDisps, BMesh merge bug.
* When converting mfaces to mpolys, load external MDisp data in, add
  CustomDataExternal struct to loopdata if needed.

* Fix multires modifier's filepath RNA functions to use ldata rather
  than fdata.
2012-04-13 05:39:27 +00:00
405c9d9a95 code cleanup: remove unused KeyBlock.adrcode 2012-04-12 11:50:43 +00:00
c56b39b8dd write mesh selection history to the blend file. without this active edge/vert are lost on UNDO. 2012-04-11 11:52:21 +00:00
b4a0152e76 code cleanup: float formatting was confusing in some cases - eg: (0.,0.,0.) 2012-04-11 08:15:13 +00:00
5f02b167d1 New options for specifying unit line thickness.
The Post Processing tab in the Render buttons has new Line Thickness options for
defining unit line thickness in two different modes as follows:

1. Absolute mode: The unit line thickness is given by a user-specified number
in units of pixels.  The default value is 1.

2. Relative mode: The unit line thickness is scaled by the proportion of the
present vertical image resolution to 480 pixels.  For instance, the unit line
thickness is 1 with the image height set to 480, 1.5 with 720, and 2 with 960.
2012-04-10 23:53:46 +00:00
48d71a40b1 Fixes for MovieClip strip user counter.
Currently copies behavior of clip and image editors:
- On file load, all strip will reference clip they're using
- On adding new strip, clip would be referenced only if it've got zero user
- On removing strip clip wouldn't be de-referenced to prevent clip editors
  pointing to zero-counted datablocks.
Not actually ideal from human beings point of view, but referencing/dereferencing
clip on each strip add/delete is getting crappy because of current logic of how
clip datablocks are referenced from clip editor (which is designed to work fine with
loading files without loading UI).
2012-04-09 08:45:51 +00:00
dabcdc1532 Warning Fixes - const correctness in unicode encoding, unused variables in blenlib, and some type conversions
This is from a patch that is in the tracker, but it leaves out a fix of BLI_gzopen which needs more work.
2012-04-09 01:16:19 +00:00
e94abda66d New options in the Parameter Editor mode for controling the position of stroke thickness.
The new options enable a better control on the position of stroke thickness with
respect to stroke backbone geometry.  Three predefined positions are:
* center: thickness is evenly split to the left and right side of the stroke geometry.
* inside: strokes are drawn within object boundary.
* outside: strokes are drawn outside the object boundary.
Another option called "relative" allows users to specify the relative position by a
number between 0 (inside) and 1 (outside).

The thickness position options are applied only to strokes of the edge types SILHOUETTE
and BORDER, since these are the only edge types defined in terms of object boundary.
Strokes of other edge types are always using the "center" option.
2012-04-07 17:28:09 +00:00
ee307bec88 Fix #30798: when linking a datablock, it got simply added to the back of the
list, now the linked datablocks are sorted by name too (but still appear after
the non-linked datablocks).
2012-04-06 16:19:30 +00:00
79e2cd8fdf Merged changes in the trunk up to revision 45383. 2012-04-04 00:50:41 +00:00
b059554882 Expand active scene's clip when linking scene. 2012-04-02 13:56:39 +00:00
4c36a26af5 Merged changes in the trunk up to revision 45308.
Conflicts resolved:
source/blender/editors/interface/resources.c
source/blender/editors/mesh/editmesh_select.c
source/blender/editors/space_view3d/drawobject.c
2012-03-31 22:09:43 +00:00
5b88712ff9 move debug flag into its own global var (G.debug), split up debug options.
--debug
  --debug-ffmpeg
  --debug-python
  --debug-events
  --debug-wm

This makes debug output easier to read - event debug prints would flood output too much before.

For convenience:
  --debug-all turns all debug flags on (works as --debug did before).

also removed some redundant whitespace in debug prints and prefix some prints with __func__ to give some context.
2012-03-31 00:59:17 +00:00
c9e1ced4dd code cleanup: (dont include ';' in defines), last commit also missed changes to paint_image.c 2012-03-28 01:06:43 +00:00
f83a93e454 bmesh todo, unlikly but possible - entering editmode with faces and no polys.
rather then printing a warning and failing - convert them to polys.
2012-03-27 01:28:25 +00:00