Commit Graph

1611 Commits

Author SHA1 Message Date
043be07050 Large fix for multires. Changed UV coordinates (MTFaces) to be special first-level data in multires. The data is now stored in a standard CustomData struct in Multires, rather than being stored for each level. (The UVs can now only be edited on level 1.) Changes allow multiple sets of UVs to work correctly. This change should also decrease multires memory usage some (though only when UVs are being used, of course.)
Changes to CustomData:
Some functions would only return the current active layer, added extra variants that take an index to select the level (modeled after CustomData_get_layer_n.)

Still todo:
* UVs are being interpolated linearly, should probably offer Catmull-Clark subdivision like Subsurf modifier.
* Vertex Colors still don't support multiple customdata layers.
* Editing UV data on levels other than 1 should be disabled in the interface (same for weights)
2007-01-10 06:09:10 +00:00
3f5bd9b391 Added a couple of stubs so that blenderplayer compiles fine again after
verse commit. Could someone who is familiar with stubs check that this
is done the right way?
2007-01-10 02:22:22 +00:00
75b553e900 - Bug fix: object trnasformation now follows verse specification. It
means, other verse client will display object transformation correctly.
   Objects will not be up-side down etc. Bug reported at irc by Emil.
   Thanks!
2007-01-09 11:50:45 +00:00
2e66b143f3 - Added panel for Bake render (tabbed now in 'anim' panel).
(Empty space will get OSA options, that I add tomorrow or so)

- Removed a lot of old unused variables in renderdata. Also meant I had
  to remove this from python API... please check if this gives valid
  scripts?

- Cleaned up bad formatted code for FFMPG buttons (spaces instead of tabs)
2007-01-09 11:10:12 +00:00
cc359a6fd5 Format corrections. 2007-01-09 04:32:39 +00:00
cda359c358 Fix for bug #5606:
Subsurf modifier displays normals wrong with mixed smooth and solid faces.
2007-01-08 23:47:03 +00:00
c53c35f582 Bugfix #5631
Missing depsgraph relation for dupliverted Meta system.
Now editing the mesh for this situation is big fun!
2007-01-08 13:10:17 +00:00
5db19e1517 Corrected Typo. 2007-01-08 12:42:12 +00:00
0b2b893cef Added some additional comments about the usage of the the backend
functions used for Pose-Mode bone snapping.
2007-01-07 22:30:44 +00:00
f4ee0f4b4c fixes in rigidbody constraints rigidbody -> IPO baking:
copy system with rigidbody constraint will link new constraints to new objects (instead of old)
fps from blender will be used when baking (left shift/ctrl/alt + P)
2007-01-07 04:54:29 +00:00
36e03e5ca8 Potential fix for bug #5359:
Crash leaving editmode related to vertex groups. I couldn't reproduce this,
but suspect somehow multiple deformvert layers were created. Added some
extra checks to avoid that now.
2007-01-06 20:16:06 +00:00
6c9b0288e5 Bugfix #5617
Armature deform bug: when values in weightgroups are extreme small but not
zero (like 10e-39) a division caused values to warp to infinity or beyond!
2007-01-06 12:33:01 +00:00
4d28796b61 Updated luminance node to work in all color spaces. Also made it work for any channel, not just luminance. 2007-01-06 01:25:59 +00:00
e28ca47908 Fix for both cage and final DerivedMeshes being created in editmode even
if they are identical, as reported by Campbell on the mailing list. Now
uses a single DerivedMesh, saves on memory and drawing time.
2007-01-06 01:01:38 +00:00
429ec5eea3 Bugfix #5212:
IK Locks/Limits were applied to bones in IK-chains even when the IK
constraint for the chain had an influence value of 0.

I've added a check to see if the ik-constraint found has any influence
over a chain, before the chain is made available for ik-solving.
2007-01-05 08:16:23 +00:00
b91d5bf951 Changing the VarStruct name length messed up plugins, so changing back. 2007-01-04 11:15:06 +00:00
04dea66458 == Compositor ==
* Ported Math node from shader nodes to composite nodes too

It's a good general purpose utility node and also allows stupid stuff
like this more easily :)

http://mke3.net/blender/etc/math-spiral-h264.mov
http://mke3.net/blender/etc/stupidmath.blend.zip
2007-01-04 01:56:21 +00:00
60c2a7eeae The combine HSVA node was missing, now all the color space seperators
and combiners are available.
2007-01-02 14:45:59 +00:00
aa030ba90b == Compositor ==
* Added patch 5251 X/Y Offset to Split Viewer node, by Juho
(with some modifications from the patch version).

Also various small tweaks to compositor drawing & buttons.
2007-01-02 14:15:41 +00:00
2dd1c96761 == Compositor ==
* Added a new top-level add menu category for compositing nodes: Distort

It currently contains Translate, Rotate, Scale, Flip, Displace and Map UV

Also did some cleaning up of the ordering of add node menu items to be a
bit better organised.
2006-12-31 00:28:46 +00:00
822a88959b === Code Fixes ===
Adding missing define for displace node (Matt can change the number when he gets back, this is just to fix compilation)

Removing "#pragma mark" from node.c. IIRC, that's XCode leaving crap around, so be sure to remove them when you commit (it outputs warnings on other compilers).
2006-12-30 16:35:46 +00:00
7d7714a675 == Compositor ==
* Displace Node

Displaces an input image's pixels based on an input vector mask. This can be
useful for a lot of things, like hot air distortion, quick-and-dirty compo
refraction, compositing live footage behind refracting objects, and more!

The amount of displacement in the X and Y directions is determined by:
* The value of the mask's channels
  - (red) channel 1's value determines displacement along the positive or
  negative X axis
  - (green) channel 2's value determines displacement along the positive or
  negative Y axis

If both the channel's values are equal (i.e. a greyscale image) the input
image will be displaced equally in both X and Y directions, also according to:
* The X scale and Y scale buttons
  - These act as multipliers to increase or decrease the strength of the
  displacement along their respective axes. They need to be set to non-zero
  values for the node to have any effect.

Because of this, you can use the displace node in two ways, with a greyscale
mask(easy to paint, or take from a procedural texture), or with a vector
channel or RGB image, such as a normal pass, which will displace the pixels
based on the normal direction.

A quick practical example:
http://mke3.net/blender/etc/displace-desert-h264.mov
http://mke3.net/blender/etc/displace-desert.blend.zip

And some techie examples:

Using a greyscale mask
http://mke3.net/blender/etc/displace-bw-h264.mov
http://mke3.net/blender/etc/displace-bw.png

Using a vector mask
http://mke3.net/blender/etc/displace-vec-h264.mov
http://mke3.net/blender/etc/displace-vec.png
2006-12-30 14:47:03 +00:00
3fb1f2986f Bugfix #5541
Composite: Scale Node didn't correctly pass on 1-channel buffers when no
scaling happened, resulting in crashes.
2006-12-28 12:07:11 +00:00
38f168c3d3 Bugfix #5430
"Delete object" didn't correctly clear all pointers in Object NLA modifiers
2006-12-27 10:21:33 +00:00
84f60b19c8 weightpaint_clean, option to clean all vgroups
weightpaint_envelope_assign - can update active vgroup only
weightpaint_normalize - fixups
BKE_plugin_types - made the max length 32 ratehr then 16 so you can fill the text space in pupBlock
2006-12-27 09:31:28 +00:00
ed2f161c72 == Copy Rotation Constraint - Bugfix #5519 ==
Now, when only one axis toggle is on and click on it, all of the other
toggles will not be turned on.

For this to work, I've moved the version patches in the drawing/evaluation
code for this constraint to the file-reading code.
2006-12-27 05:00:43 +00:00
6b64ccdca1 Sculptmode now works properly with shape keys (Merry Christmas.) Fixes bug #5499, Sculpt mode don't works correctly with Shape Key. 2006-12-25 19:11:20 +00:00
Chris Want
66643dbf1f I think this might be a safer way of dealing with the non-OpenEXR
compilation of image.c -- Ton: please check.
2006-12-24 20:19:56 +00:00
Chris Want
1e6c007497 Some more duct tape to make sure that blender[player] still builds
when compiled without OpenEXR.
2006-12-24 16:03:31 +00:00
c5de881413 added CustomData_add_layer_named, same as CustomData_add_layer but accepts a name. saves Mesh.c having to look up the data after adding (just to rename it) 2006-12-24 11:15:54 +00:00
Alexander Ewering
edf18ca767 Uncommitted the stub again.
Can anyone who knows more than me add a correct stub for this?
Blenderplayer doesn't link for me because it can't find that
symbol...
2006-12-24 10:29:05 +00:00
1c6f41a27a Added CustomData_get_named_layer_index to customdata to get a layer index by name, only used in Mesh.c at the moment.
cleanup Mesh.c, updated the epydocs
2006-12-23 23:33:03 +00:00
bef18061ec Select Grouped editdata- minor fix in the menu.
Updated Python Mesh API to support UV and Color layers with names.
Similar to vertex group's

renamed a function in customdata.c CustomData_free_layers -> CustomData_free_layers_active and made CustomData_free_layers accept an index, this is needed so python could free layers that arnt active.
2006-12-23 17:07:02 +00:00
Alexander Ewering
1ba244605f Add a stub for IMB_exr_close() so blenderplayer compiles again
(I hope I did this right - works for me at least)
2006-12-23 12:19:18 +00:00
397b09e477 Bugfix #5476
Lattice deforming a Particle system only supported regular parent relation-
ship, not modifiers.
2006-12-23 11:56:22 +00:00
fcd3ea7875 == Snap Bones To Location in PoseMode ==
Now the Snap To Location (Shift S) tools for bones in pose-mode
work correctly. Previously, only one of these tools was implemented,
but it only worked in some cases.


This fixes item #4874 in Todo Tracker. Was patch #5012.
2006-12-22 09:05:37 +00:00
058ceb0b94 Added Vertex Color material node, making render engine support for multiple
vertex color layers actually useful.
2006-12-22 08:10:29 +00:00
d892aac06b Fix: active face was lost switching between faceselect mode and editmode. 2006-12-22 07:45:01 +00:00
d11b6949d8 Made multiple UV layers work with fastshade. 2006-12-22 07:41:29 +00:00
79fd2a2ae4 filename was being copied into a string only the length of the max file. 2006-12-21 22:30:30 +00:00
120ac48728 Another Image recode fix: the Composite backdrop option didn't work when
no viewer images was generated before.
2006-12-21 20:03:25 +00:00
67769dc080 Made new Defocus node compile happily in MSVC 2006-12-21 18:23:30 +00:00
e61dec0767 Defocus Composite Node, by Alfredo de Greef
Log:
http://www.blender3d.org/cms/Composite__Defocus.836.0.html

An incredible quality composite effect, might be slow but worth waiting
for!
2006-12-21 18:11:07 +00:00
af60771eca Fix for threads usage. This solves the hanging 'render baking', cauused
by yesterdays commit.

Now a designater LOCK_IMAGE is used for all image write/read.
2006-12-21 15:44:46 +00:00
e4663acd76 UnPack data fix:
Now uses original filename for unpacking, instead of the Blender ID name.
That latter was a nice idea, but because of its 20 char maxname limit
not working well.
2006-12-21 14:00:18 +00:00
47bc3d1208 Added names to UV and vertex color layers, and display them as a list.
Added support for multiple UVs in the render engine. This also involved
changing the way faces are stored, to allow data to be added optionally
per 256 faces, same as the existing system for vertices.

A UV layer can be specified in the Map Input panel and the Geometry node
by name. Leaving this field blank will default to the active UV layer.

Also added sharing of face selection and hiding between UV layers, and at
the same time improved syncing with editmode selection and hiding.

Still to do:
- Multi UV support for fastshade.
- Multires and NMesh preservation of multiple UV sets.
2006-12-21 13:47:27 +00:00
edccdf9340 Packing Images fix:
- a 'procedural image' like 'UV Test Grid' now can be directly packed,
  it does ask first for confirming to pack it as PNG
2006-12-21 13:39:02 +00:00
fc00e73a83 removed the WKey "Split font" option. It doesnt work and corrupts memory
(saved files cannot read back, they crash).

The implementation of this option was plain accident that it even worked
once... you cannot use the API in blender that way.
2006-12-21 12:36:25 +00:00
Chris Want
5895c903cd Only include the header openexr_multi.h when WITH_OPENEXR is defined.
This header defines function stubs for builds without OpenEXR.
A quote from openexr_multi.h:

/* ugly... but we only use it on pipeline.c, render module, now */

No longer true! Function definitions should never be in header files,
I say.
2006-12-21 01:16:25 +00:00
e6c8702e7b Game Player links again, added new functions in the stubs
(image.c: prototype fix)
2006-12-20 21:51:08 +00:00