Commit Graph

8327 Commits

Author SHA1 Message Date
Lukas Toenne
09ed97afc5 Internal node links are now cached in a per-node list, instead of being generated as a transient list that is returned from the callback and had to be freed by the caller. These internal links are used for muted nodes, disconnect operators and reroute nodes, to effectively replace the node with direct input-to-output links.
Storing this list in the node has the advantage of requiring far fewer calls to the potentially expensive internal_connect callback. This was called on every node redraw ...

Also it will allow Cycles to properly use the internal links for muted nodes, which ensures consistent behavior. The previous method was not applicable in Cycles because transient list return values are not supported well in the RNA and particularly the C++ API implementation.
2012-10-25 16:49:06 +00:00
Bastien Montagne
0632da0829 Cleanup: remove old, commented code for constraints' space conversion for bones. 2012-10-25 10:14:35 +00:00
Campbell Barton
9804515cf0 bmesh todo: dont calculate normals in editmesh with modifiers applied, its assumed modifiers output correct normals at the moment. 2012-10-25 04:58:27 +00:00
Campbell Barton
9e6d27bbf0 add BLI_STATIC_ASSERT macro. 2012-10-25 04:44:46 +00:00
Campbell Barton
ade7a000fd hide text overlays when 'Only Render' option is enabled. 2012-10-25 03:10:35 +00:00
Brecht Van Lommel
5aa6327e2f Cycles UI: keep node input sockets collapsed by default in the properties editor,
when doing the linking in the node editor, to keep the properties editor more
clean in this case.
2012-10-24 21:57:16 +00:00
Sergey Sharybin
1fecf8ff31 Patch #29142: Reduce hopping when switching between perspective and orthographic on 3D view
Patch by Yasuhiro Fujii, thanks!

Original issue was that in vases viewport's lens are different from default
value switching between perspective and orthographic projections will change
viewplane a lot, which is disorienting and annoying.
2012-10-24 16:15:46 +00:00
Ton Roosendaal
f746f3ea09 Bugfix #32496
You don't believe it, this bug traces back to 2002. Went by unreported for a decade.

If you link in an object, delete it, and relink again its materials are lost!
Easy fix, annoying error. :)
2012-10-24 13:24:34 +00:00
Campbell Barton
c93978d445 code cleanup: some edits for unused vars in recent smooth addition and some style edits. 2012-10-24 11:31:57 +00:00
Lukas Toenne
cbae51bc93 Removed the experimental (and commented-out) code for FOR and WHILE loops in nodes. This was a feature i tested a while back but was only partially supported by Blender Internal renderer and the old compositor. The main idea was to have nodes that automatically mirror input and output sockets to support incremental changes of "internal variables".
It is not a well-supported feature of the primary node systems (shader, compositor, texture) in Blender. If anybody wants to create a node system that has actual use for loops, they can do so much more elegantly with Python nodes, but it does not have to be a core node type in Blender. Removing this should ease node code maintenance a bit.
2012-10-24 10:00:28 +00:00
Jeroen Bakker
0fb9b7beda Adding a pixelate node.
This makes it possible to create pixelized scale in the Tile compositor.

Just append the node in front of a scale node or where you want the pixelization to take place.

There were some bugs on this subject, but they used the work around to add a blur size of 0 in the place where they need the pixelization.
2012-10-24 08:36:10 +00:00
Campbell Barton
2de2acc681 add CDDM_from_bmesh(), avoids using BMEditMesh in modifiers. 2012-10-24 07:24:11 +00:00
Campbell Barton
cbc734dd79 comment R_SEQ_GL_REND flag, opengl render now does gl previews. 2012-10-24 03:37:32 +00:00
Campbell Barton
17530108f4 enable rendering from the sequencer again. this was working since 2.4x and shouldn't have been disabled. 2012-10-24 03:27:11 +00:00
Janne Karhu
9055ec3e0a Final fix for [#31017] Particles not generated on Grid Distribution
* In some cases a quad would be intersected twice so particles near this double-intersection point were not generated in grid distribution due to being marked as outside the surface.
2012-10-24 01:43:59 +00:00
Campbell Barton
e038a1c613 reduce float comparisons for keying operation and despill. 2012-10-23 16:32:39 +00:00
Campbell Barton
fec81d9b56 use min_ max_ functions in more places.
also fix minor error in MOD decimate when the modifier did nothing the reported face count would be wrong.
2012-10-23 16:21:55 +00:00
Campbell Barton
90f7b9e9cc comment quick cache RNA and quiet compiler werning. 2012-10-23 15:07:09 +00:00
Ton Roosendaal
88a23b5327 Related to previous commit I did:
Removed checks for PTCACHE_QUICK_CACHE for exception handling. This to ensure normal
cache works as if old PTCACHE_QUICK_CACHE wasn't set.

Thanks Campbell for pointing at this!
2012-10-23 15:01:41 +00:00
Brecht Van Lommel
b131359834 Fix #32867: normal map baking issue with flat shaded faces since bmesh. Also
removed the old unused normal map tangent computation code.
2012-10-23 14:57:49 +00:00
Ton Roosendaal
d273ddfd4f Bugfix 30974
- Disabled "Quick Cache" option. It was causing ridiculous updates
  on the entire animation system for start-end frame on every user
  event causing changes here (like during transform). Worst was that you
  couldn't transform animated objects for that reason either.

  Most of the code is still there, waiting for a moment to revise it...

- Constraint "Follow Track" (marker) wasn't using inverse matrix code
  in transform, making it wacko to use (wrong pivot, crazyspace)
2012-10-23 14:07:32 +00:00
Campbell Barton
101660c809 code cleanup: give rng functions BLI prefix. 2012-10-23 13:50:44 +00:00
Campbell Barton
f70d2c65d8 rename api functions...
- minf, maxf, mini, maxi --> min_ff, max_ff, min_ii, max_ii
2012-10-23 13:28:22 +00:00
Campbell Barton
1767b65846 style cleanup: also rename bmesh_decimate.c --> bmesh_decimate_collapse.c 2012-10-23 03:38:26 +00:00
Andrea Weikert
05f147f12e fix: drivers on materials and texture don't update when rendering animation
* Added additional tag_main_idcode in BKE_scene_update_for_newframe similar to what was done previously in BKE_scene_update_tagged to fix #32017 (unlimited recursion issue for material updates) by Joshua Leung
* So issue wasn't the dependencies, but the material was already tagged (from previous drawing), so wouldn't be updated each frame.
2012-10-22 19:45:16 +00:00
Brecht Van Lommel
15b561ea41 Fix related to #32933: UV unwrap had 0.0 margin by default in .blend files,
change it now to 0.001 in existing files.
2012-10-22 18:48:50 +00:00
Sergey Sharybin
3285d47842 Fix #32930: texture colors in material nodes (blender internal) are brighter than normal
There was a missing byte buffer linearization for shader nodes.

Also fixed incorrect image input color space refresh when image is packed.
2012-10-22 17:34:06 +00:00
Sergey Sharybin
6e62491c5a Fix #32522: Object's diffuse color not showing in Sculpt Mode
Added option to display object's diffuse color multiplied by sculpting
mask. This option could be found in Options panel of toolshelf when in
sculpting mode.

Thanks to Nicholas and Brecht for reviewing the patch!
2012-10-22 17:33:53 +00:00
Campbell Barton
23baf8c9c3 code cleanup: check defgroup_name_index() return value != -1, rather then checking >= 0.
also remove unused bmesh decimator code.
2012-10-22 17:19:05 +00:00
Sergey Sharybin
4e11fe6c5a Patch #27397: Improved DPX/Cineon code
Patch by Julien Enche, thanks!

From the patch comment:

It allows Blender to load:
- 1, 8, 10, 12 and 16 bits files. For 10 and 12 bits files, packed or
  filled type A/B are supported.
- RGB, Log, Luma and YCbCr colorspaces.
- Big and little endian storage.
- Multi-elements (planar) storage.

It allows Blender to save :
- 8, 10, 12 and 16 bits file. For 10 and 12 bits files, the most used
  type A padding is used.
- RGB and Log colorspaces (Cineon can only be saved in Log colorspace).
  For Log colorspace, the common default values are used for gamma,
  reference black and reference white (respectively 1.7, 95 and 685 for
  10 bits files).
- Saved DPX/Cineon files now match the viewer.

Some files won't load (mostly because I haven't seen any of them):
- Compressed files
- 32 and 64 bits files
- Image orientation information are not taken in account. Here too,
  I haven't seen any file that was not top-bottom/left-right oriented.
2012-10-22 12:49:00 +00:00
Campbell Barton
ddc2dbc2a4 style cleanup 2012-10-22 08:15:51 +00:00
Campbell Barton
226a5ee834 remove LOD_Decimator (c++ decimator), now replaced by bmesh decimator. also remove CTR c++ classes that are no longer used. 2012-10-22 02:39:26 +00:00
Joshua Leung
91ceb8f552 Tooltip/Description fixes for recent "tweaks"
1) "AnimData" is a technical term used for a specific entity in the system.
"anim data" is mangled fluff.
2) Old tooltip for DopeSheet.source is no longer valid. It's nearly always used
to represent the current scene now.
2012-10-22 02:20:41 +00:00
Bastien Montagne
26d0492653 A final bunch of UI messages fixes and tweaks, and some BKE_report()<->BKE_reportf() fixes. 2012-10-21 14:02:30 +00:00
Ton Roosendaal
fff19a1360 Compatibility error: BLENDER_MINVERSION was set to 2.61, but that should be 2.62.
This define means "the minimum version of Blender that can read the current .blend"

In 2.62 there's compatibility code to read BMesh, not in 2.61.
2012-10-21 09:57:25 +00:00
Campbell Barton
d599b643b7 style cleanup: bge, switch statements mostly.
also left bmesh decimator on in previous commit.
2012-10-21 07:58:38 +00:00
Campbell Barton
f3ece5a108 style cleanup: trailing tabs & expand some non prefix tabs into spaces. 2012-10-21 05:46:41 +00:00
Campbell Barton
7deb8d8a26 code cleanup: spelling 2012-10-20 20:36:51 +00:00
Campbell Barton
c56a911cd9 style cleanup: comments 2012-10-20 20:20:02 +00:00
Campbell Barton
bc8f602601 style cleanup 2012-10-20 18:46:57 +00:00
Campbell Barton
eee64aeccf bmesh-decimate now only does CustomData_has_math for loop layers, add CustomData_has_interp() for vert & edges. 2012-10-20 17:39:56 +00:00
Campbell Barton
8944dab58a bmesh decimator support for loop & edge customdata. (most importantly UVs and vertex colors). 2012-10-20 17:31:07 +00:00
Sergej Reich
0a590aadf5 Add option to set object origin to the center of mass
This uses the weighted average of polygon centroids based on area
It work well in most cases but will be slightly wrong when polygons have 
many vertices.
2012-10-20 16:48:54 +00:00
Campbell Barton
9f8070d047 code cleanup:
- define array sizes for functions that take vectors.
- quiet some -Wshadow warnings.
- some copy/paste error in readfile.c made it set the same particle recalc flag twice.
2012-10-20 08:02:18 +00:00
Bastien Montagne
2256c8e25f Fix [#32925] Center cursor (shift+C) crashing blender after duplicating bone in armature edit mode.
Center Cursor uses BKE_object_minmax(), which uses pchans' bone member to check whether a bone is visible or not. But after a duplication, the duplicated pchan->bone are NULL, skiping in this case (as if they were hidden, not optimal but should do the work for now - anyway, using pchan's values in Edit mode does not really make sense, imho).
2012-10-19 19:16:18 +00:00
Bastien Montagne
3fec74ec1a Minor fix to BKE_reportf(): also output the report's type when printing to console. 2012-10-19 17:08:46 +00:00
Brecht Van Lommel
7e620f04a1 Fix #32920: cloth physics with collision exploding in some cases, due to
uninitialized memory usage.
2012-10-19 16:44:08 +00:00
Campbell Barton
03164c3152 DM_to_bmesh_ex() now initializes index values when running in empty meshes. saves running extra loop on vert/edge/face data if these values are needed after. 2012-10-19 03:28:41 +00:00
Lukas Toenne
d3eb9dddd6 Better fix for #32846. Instead of using time change or object recalc condition, set an explicit object flag to disable particle system modifier update during dupli list creation. This is more transparent and should prevent issues with hair path generation being skipped. 2012-10-18 15:54:24 +00:00
Brecht Van Lommel
497ea5f306 Fix #32912: cycles crash with dead particles, actual crash was caused by an
inconsistency in the particle system code, using <= and <. Also tightened up
checks on cycles side to avoid other potential crashes.
2012-10-18 15:00:32 +00:00