Commit Graph

25566 Commits

Author SHA1 Message Date
d5984b2d50 fix [#27683] Blender hangs when baking a particle system when a driver is present 2011-07-09 17:41:39 +00:00
2bb08ee48e Wrong tooltip for OBJECT_OT_make_links_scene() operator. 2011-07-09 17:09:28 +00:00
de10ffab75 Bugfix #27761
Material nodes: when no output node was active, it sets one.
Not common to happen anymore, only for deleting output nodes
without clicking on nodes.
2011-07-09 17:03:35 +00:00
c314ac8ce3 Fix #27888: Render artifacts in 2.58.1
It was a regression introduced in rev36301. Average normal calcilation
used to fail due to triangular faces which are too slight.

Do not use triangles with too small area for average normal calculation.
2011-07-09 15:10:12 +00:00
905d04ef9d fix [#27915] Relax Pose crashes blender on bone with ChildOf constraint in linked rig 2011-07-09 14:33:28 +00:00
5506d18fa8 Fox #27866: Curve handle snaps/locks when it shouldnt
It was a precision error in calchandleNurb. Do not align handles
along handle which si too short.
2011-07-09 14:22:52 +00:00
abdf420a6d == GPU Buffers ==
This patch attempts to clean up and document the GPU buffers
code. There are a few bug fixes as well.

Patch reviewed here: http://codereview.appspot.com/4631052/

Summary:

* Bugfix: make GPU_buffer_copy_normal convert from shorts to floats
  correctly, also fixed the use of cached face normal CustomData.

* Bugfix: changed the `mat_nr' field of GPUBufferMaterial from char to
  short.

* Changed color buffer setup to not alloc a temporary copy of color
  data, just passes the MCol data in directly.

* Changed the GPU buffer pool code to make clearer what operates
  specifically on the global pool.

* Lots of refactoring for GPU_drawobject_new; should operate mostly
  the same (except got rid of one unecessary allocation), just split
  into more functions and without macros now.

* Converted some #defines into enumerations.

* Made some stuff private, pulled out of header file.

* Deleted unused function GPU_buffer_pool_free_unused().

* Removed GPU_interleaved_setup and related #defines. (I think this
  was used for editmode VBOs, but those were disabled.)

* Added lots of comments.

* Added a few comments in the code signed `--nicholas' to note places
  where I am unsure about design or usage, would be good to address
  these better.

* Code formatting changed to be more consistent with the rest of
  Blender.

* Renamed some fields and variables to be more consistent with
  Blender's naming conventions.

* Renamed some fields and variables to use more descriptive names,
  e.g. renamed `redir' to `mat_orig_to_new'.

* Removed print outs with DEBUG_VBO -- don't feel too strongly about
  this one, just not used elsewhere in Blender, could be easily added
  back if others disagree though.

* Moved the PBVH drawing code down to the bottom of the file, before
  was sitting in the middle of the other VBO code
2011-07-08 19:58:02 +00:00
a6bb0f93ad Fix #27897: mesh with negative scale disappears while sculpting, clipping
planes were wrong in that case.
2011-07-08 15:58:00 +00:00
a5906de7c4 Fix #26962: softbody collision doesn't respect subsurf+displace modifiers.
Softbody was still using a flag to determine if it should use the final or
deform derivedmesh, but this wans't exposed in the UI. Others systems use the
collision modifier, now softbody uses it also to get vertices and faces, but
with own collision code.
2011-07-08 13:22:58 +00:00
668323d701 Fix #27900: file browser filter, sort, .. parameters were not saved. This is
useful if you have a screen setup with a file browser editor.
2011-07-08 12:22:48 +00:00
aa7b843b1c Fix #27902: autokey bones with individual origins transform not working. 2011-07-08 11:43:35 +00:00
99736f373c Allow pose matrix to be set for Benjy Cook's GSOC project.
this uses the same function as pose mode snapping.
2011-07-07 16:09:57 +00:00
Nathan Letwory
5e6abb8004 Fix compile with scons, after thread commit in r38185 2011-07-07 13:57:20 +00:00
4d7449b336 Fix part of #26811: absolute shape keys should not show influence value in list. 2011-07-07 11:01:36 +00:00
4e7417e9fd The Blenderplayer wasn't freeing GPU_Textures since according to BLI_threads, GPU_free_image() was never being called from the main thread. Calling BLI_threadapi_init() when the Blenderplayer starts sets the current thread as the main thread and solves the problem. 2011-07-07 10:37:46 +00:00
ccc56a6570 Tiny tweak: hierarchy lines in outliner were nearly invisible. Color is
blend between backdrop and text color (black), made it blend 0.4 instead
of 0.2
2011-07-07 09:56:06 +00:00
Nathan Letwory
5b4bffba52 [#27854] Collada import doesn't handle UVW mapping
Reported by David Roy
Patch by Brecht van Lommel

UV import code wasn't taking possible stride into account (always assuming stride==2), thus reading UV coords totally wrong.
2011-07-06 21:37:31 +00:00
a83c3c0b14 The material index did not work when FSAA was turned on.
The information was written in the temp exr files, but was not read back.
After checking I saw that the pass was not merged back in the rendercore.

After adding this it worked. tested with all FSAA settings.
2011-07-06 16:08:24 +00:00
e1b060486f Fix #27879: sequencer didn't draw overlapping strips well, selected were drawn
under unselected, and active strips red border color for active strips was not
clear enough.
2011-07-06 13:15:22 +00:00
cf71712bba Fix #27883: object actions did not get duplicated on full scene copy. 2011-07-06 12:33:33 +00:00
03b81a5c80 Ergh! first compile and test then commit! 2011-07-06 12:22:36 +00:00
9f25b85168 Making Blender compile for C90 standard, var declared after code :)
Also cleaned a line of code that was horribly spread over 4 lines.
2011-07-06 11:44:27 +00:00
ed897750ca Fix #27880: sequencer separate images operator lost strip properties like
blend mode, opacity, etc.
2011-07-06 10:58:23 +00:00
11645e7a3f Fix #27877: writing .avi files > 4 GB not working on windows.
Solution is to replace "long" by "int64_t" and "fseek" by "_fseeki64", because
long on 64 bit windows is still 32 bit.
2011-07-06 10:19:04 +00:00
29f2cbdd8f Fix #27876: particles instancing a whole group didn't take group offset into account. 2011-07-06 10:05:27 +00:00
5470326c3b Fix #27875: different texture nodes result after decompose/compose. 2011-07-06 09:58:29 +00:00
febce577ba Fix #27873: nan pixels in render with degenerate faces. 2011-07-06 09:15:18 +00:00
959cd0fe69 Fix #27777: vertex color disabled when in a reused node material. 2011-07-05 19:45:26 +00:00
87c2842630 Patch #27842: build fix for solaris, missing finite(). Patch by A. Hettinger. 2011-07-05 19:04:38 +00:00
81ad6fa4e6 Fix small part of #27815: recognize m2ts as video file extension. 2011-07-05 18:54:16 +00:00
33afa06412 Fix #27848: sequencer strip hard cut looses soft trim on second strip. 2011-07-05 16:31:21 +00:00
495ce5c88b Fix part of #27858: crash trying to apply subsurf modifier as shape key,
fix found by Bastian Schreiber.
2011-07-05 10:35:48 +00:00
ef0f475f20 Fix #27826: bone envelope head/tail radius not dynamically updated in viewport. 2011-07-05 10:04:40 +00:00
7950ac791b Fix #27846: time extend / E key not work in sequence editor. 2011-07-05 09:47:09 +00:00
962c1606fc Fix #27810: bones drawn blue in 2.49 file, was still checking stride bone
flag for drawing even though that feature is no longer in 2.5.
2011-07-05 09:35:38 +00:00
3d5ae95986 Fix #27863: converting curve spline type from python crashes. 2011-07-05 08:57:11 +00:00
1ff54f91ff Fix: #27861 bevel angle limit at 90° wasn't working well on cube, tweaked
epsilon value to be a bit smaller.
2011-07-05 08:28:54 +00:00
61fc839200 fix [#27862] OpenGL render animation don't respect .png RGB option. 2011-07-05 07:46:25 +00:00
db2d737f0e Fix for [#27182] particle/collision kill interacting strangely
* Particle die time wasn't taken correctly into account in certain situations when calculating dynamics.
2011-07-05 02:56:14 +00:00
35965308a8 Fix for [#27579] Particles Cache Problem
* Horrors from the ancient world of deprecated code: object animation offset can't really work correctly with particles unless point cache takes full control of particle system timing.
* Disabled the non-working offset control from effecting particles so that for now particles will work consistently and the offset is only applied to the object.
2011-07-05 02:18:55 +00:00
0dcc370f3b Fix for [#27347] Particle x-axis mirror editing not working as expected.
* The x-mirror editing didn't mirror strand lengths.
2011-07-05 01:49:34 +00:00
830fe8af84 Updated the indent, sorry! 2011-07-04 19:22:37 +00:00
e814f2c71d ====== Proposal: Nodes property windows enhancement ======
===== Situation before this patch =====

in the current situation inside the node editor there is a properties panel (press 'n'-key). This pabel displays some information about the node, backdrop and grease pencil. The UI of the property panel is typically vertical oriented. Nodes in the other hand are not oriented in a direction. Both area's are draw via the same draw function.

With some nodes this will create not user-friendly UI. Try the color-balance for instance). The 3 color circles are drawn next to each other, it would be better to draw them below each other.

When creating more complex nodes you don't want to display all handles in the node-panel and in the properties panel. For instance fine-tuning handles you only want to appear in the property panel to reduce place in the node itself.

===== Situation after this patch  =====

This patch separates the draw functions of the property panel and the node panel.
When no special draw function is created for the property panel, the draw function of the node will be used as 'fallback'

===== Impact =====

==== BKE_node.h ====

add a new uifunc (called uifuncbut) to the bNodeType struct. The definition is the same as the uifunc.

==== node_buttons.c ====

if the uifuncbut is set, call it. currently calls the uifunc method

==== drawnode.c ====

static void node_composit_set_butfunc(bNodeType *ntype). set the uifuncbut function where needed. When at the end of the method uifuncbut is still empty, set uifuncbut to the uifunc. 

===== Final note =====

! PS. this is not limited to the compositor it also works for Materials and Textures !
! PPS. For other branching creating their own node-tree. Please make sure that your uifuncbut is set NULL or a valid draw function !
2011-07-04 18:48:36 +00:00
c4491f558b Current situation
A mesh can consist out of multiple material. Take a character with clothing's. the skin can be a different material as the different clothing's. During compositing it is a common use-case to only do a part of the composit on only a specific material. Currently this can not be done.

In blender movies this feature is known to be implemented, but until now it never got integrated into trunk.
Proposal

With material index the Blender internal renderer will be capable of creating a buffer containing the material indexes of the first pixel-hit. This will be implemented in the same manner as the object index.

In the compositor the ID Mask node can be used to extract the information out of the Render pass.
Impact
User interface

On the properties-space the next changes will be done

    Scene⇒Render layer⇒Passes⇒Material index will be added
    Material⇒Options⇒Pass index will be added

DNA

    Material struct will get an new field called “index”. this will be a short-type.
    Material struct the field pad will be removed.
    A new Render-layer pass will be added (bit 1«18)

RNA

    Material RNA is updated (based on “pass index” from object)
    Render layer RNA is updated (based on IndexOB)

Blender internal renderer

The Blender internal renderer will process the render pass as a copy of the Object index.
Blender compositor

The render layer input will get a new output socket called “IndexMA”
Usage

An example on how to use material index can be found at:

https://svn.blender.org/svnroot/bf-blender/trunk/lib/tests/compositing/composite_materialindex.blend

This is also example of a commit message longer than the commit itself :)
2011-07-04 18:14:41 +00:00
7c15143449 bind marker camera now uses active object rather then scene camera (was requested a few times) 2011-07-04 15:09:02 +00:00
796c6a9467 Fix #27849: 3D manipulator widget lost on mesh in edge mode.
The manipulator was always using vertex selection flags, but those are only
valid in vertex mode, as selection flag flushing only happens in the direction
vertex -> edge -> face. Now use edge/face selection flags when needed.
2011-07-04 13:48:18 +00:00
7e36a75b45 Paths: remove some temporary code that was only needed for 2.57. 2011-07-04 13:33:47 +00:00
398807e235 Fix #27785: blenderplayer + eltopo linking error. 2011-07-04 13:03:41 +00:00
5918521959 Bug report (IRC)
Knife cut with long mouse trails failed, increased max amount of input points
4 fold (1024).
2011-07-04 11:28:39 +00:00
ca2c319649 Fix #27850: keyboards with a comma instead of a dot on the numpad now get
converted to a dot when typing into number buttons, for easier number entry.
2011-07-04 10:56:59 +00:00