Commit Graph

31878 Commits

Author SHA1 Message Date
Nicholas Bishop
ec29e2620e Clear skin root flag on new vertices created by extruding.
Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier
2012-05-22 15:30:05 +00:00
Nicholas Bishop
45265b326a Add operator to extract armature and vertex groups from skin.
* The operator creates bones for each input edge (does not subdivide
  them like the skin operator does), adds a fake root bone for skin
  roots with multiple children.

* The operator adds vertex weight groups to the original mesh.

* Make copy_object_transform() public, used to match the armature
  object to the mesh object.

Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier
2012-05-22 15:29:57 +00:00
Nicholas Bishop
11309a19e2 Add skin vertex operators.
* Add operator to mark selected vertices as skin roots.
* Add operator to mark/clear selected vertices as loose.
* Add operator to equalize skin radii.

Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier
2012-05-22 15:29:44 +00:00
Nicholas Bishop
0cdd5892fa Ensure skin nodes get created when adding modifier.
Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier
2012-05-22 15:29:37 +00:00
Nicholas Bishop
417ac69320 Draw skin vertex roots in edit mode.
Roots are drawn with a view-oriented dashed red circle around the
vertex location. The circle's radius is the average if the skin
vertex's X and Y radii.

Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier
2012-05-22 15:29:27 +00:00
Nicholas Bishop
6485b32909 Add new theme-able color, TH_SKIN_ROOT.
Bumped file version from 263.5 to 263.6 to ensure the default
TH_SKIN_ROOT color gets set.

Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier
2012-05-22 15:29:15 +00:00
Nicholas Bishop
8801330c18 Add skin modifier: DNA, RNA, UI, and MOD_skin.c implementation.
Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier

Implementation based in part off the paper "B-Mesh: A Fast Modeling
System for Base Meshes of 3D Articulated Shapes" (Zhongping Ji,
Ligang Liu, Yigang Wang)

Note that to avoid confusion with Blender's BMesh data structure,
this tool is renamed as the Skin modifier.

The B-Mesh paper is current available here:
http://www.math.zju.edu.cn/ligangliu/CAGD/Projects/BMesh/

The main missing features in this code compared to the paper are:

* No mesh evolution. The paper suggests iteratively subsurfing the
  skin output and adapting the output to better conform with the
  spheres of influence surrounding each vertex.

* No mesh fairing. The paper suggests re-aligning output edges to
  follow principal mesh curvatures.

* No auxiliary balls. These would serve to influence mesh
  evolution, which as noted above is not implemented.

The code also adds some features not present in the paper:

* Loops in the input edge graph.

* Concave surfaces around branch nodes. The paper does not discuss
  how to handle non-convex regions; this code adds a number of
  cleanup operations to handle many (though not all) of these
  cases.
2012-05-22 15:29:01 +00:00
Nicholas Bishop
f7b116e0bd Add Mesh equivalent to BM_edge_other_vert().
/* Return the index of the edge vert that is not equal to 'v'. If
 * neither edge vertex is equal to 'v', returns -1. */
int BKE_mesh_edge_other_vert(const struct MEdge *e, int v);
2012-05-22 15:28:44 +00:00
Nicholas Bishop
5e22802fae Add new BMesh length query functions.
BMEdge *BM_face_find_shortest_edge(BMFace *f);
BMEdge *BM_face_find_longest_edge(BMFace *f);

Reviewed by Campbell Barton.
2012-05-22 15:19:33 +00:00
Nicholas Bishop
d9ce31104f Add skin modifier icon created by Julio Iglesias.
Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier
2012-05-22 15:19:13 +00:00
Nicholas Bishop
396a3d31cc Add MVertSkin DNA/RNA and customdata (CD_MVERT_SKIN).
The MVertSkin currently just stores local skin radii and skin
flags (MVertSkinFlag).

Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier

Reviewed by Campbell Barton.
2012-05-22 15:18:43 +00:00
Lukas Toenne
53b01d9002 A number of new features for the node editor in general and the Frame node in particular.
For an detailed user-level description of new features see the following blogpost:

http://code.blender.org/index.php/2012/05/node-editing-tweaks/

TL;DR:
* Frame node gets more usable bounding-box behavior
* Node resizing has helpful mouse cursor indicators and works on all borders
* Node selection/active colors are themeable independently
* Customizable background colors for nodes (useful for frames visual
distinction).
2012-05-22 14:13:33 +00:00
Campbell Barton
85923aff28 code cleanup: key/interpolation 2012-05-22 13:59:58 +00:00
Campbell Barton
4a788a2277 expose absolute shape keyblock interpolation in the ui 2012-05-22 13:43:36 +00:00
Campbell Barton
eb023322ef style cleanup: mmap_win32 2012-05-22 13:20:01 +00:00
Andrew Hale
c63602286c Fix for customdata layer copying. Issue was caused by mixing up of destination and source in copy function. Also fixed an error in Py API, check to see if layers were different should be check to see if they're the same. 2012-05-22 12:03:56 +00:00
Campbell Barton
8b2ffc1428 fix for error in last commit and minor speedup to looping over edges. 2012-05-22 10:10:14 +00:00
Jeroen Bakker
dbd70c05f7 * Composite result is updated when editing (preview were already
calculated, now the final result is also updated in the image space
 * default texture size when not connected to any resolution depended
operation defaults to render size
2012-05-22 09:54:08 +00:00
Campbell Barton
e7647e1585 solidify modifier - remove a loop on all edges. 2012-05-22 09:53:33 +00:00
Sergey Sharybin
d3067dfaa2 Fix imbuf users leak in MovieClip tiles node
Leak was caused by not calling IMB_freeImBuf for result of BKE_movieclip_get_ibuf
2012-05-22 09:15:05 +00:00
Sergey Sharybin
1ae3929138 Fix for movie distoriton node in tiles
Now it works in the same way as non-tiles node in cases when image's
resolution is not equal to resolution used for calibration.

Also add some additional checks for distortion cache, so now it should
be updating properly when camera intrinsics are changing.

Potentially added support of overscan, but currently all needed computation
is commented out.
2012-05-22 09:15:01 +00:00
Campbell Barton
40b7b9655a fix for regression in curve modifier (own fault) 2012-05-22 09:00:34 +00:00
Bastien Montagne
7767239ac7 I18n fixes, mainly for (cycles) nodes (i.e. node template in Buttons window).
Note: the problem of sockets translation remains (for all node types), currently they are unavailable from RNA, hence not detected by i18n tools, so only solution is to add N_() in all node sockets templates… yuck! Really have to fix this.
2012-05-22 08:36:06 +00:00
Campbell Barton
00e7a4b5a7 fix [#31530] Project paint with Clipping border gives opaque background
draw clipping box alpha 0 so reprojection and rendering show the background as alpha 0.
2012-05-22 08:24:52 +00:00
Sergey Sharybin
d435be750a Fix #31522: wrong ID user count on custom bone shape object after duplicate 2012-05-22 07:46:14 +00:00
Campbell Barton
3289628610 fix [#31489] EdgeSplit modifier prevents All Edge to be work correctly since 2.63
bmesh regression where the edge-draw flag was cleared when bmesh modifiers were used.
2012-05-22 07:26:45 +00:00
Campbell Barton
82d1b699b5 remove unused enums (these are defined and used elsewhere) 2012-05-22 07:07:25 +00:00
Sergey Sharybin
acd468f2b3 Fix #31500: Displacement Baking from Multires doesn't work
Issue was caused by wrong calculation of grid coordinates when switching
from low resolution mesh to high resolution mesh. Somehow was affected only
for face U or V equals to 1.0f.

Checked fix using all test files used during initial implementation of
multires baker and tested sample file from bug/ Seems everything is OK.
2012-05-22 07:06:48 +00:00
Campbell Barton
72f38b4f09 style cleanup: brace placement. 2012-05-22 06:29:46 +00:00
Nicholas Bishop
5f95f7d2ad Add input sample averaging to PaintStroke.
Averages input samples to make the brush stroke smoother. Only mouse
location is averaged right now, not pressure/tilt/etc.

The DNA is in struct Paint.num_input_samples, RNA is
Paint.input_samples. In combination with PaintStroke usage this change
applies to sculpt, vpaint, and wpaint.

The range of useful values varies quite a bit depending on input
device; mouse needs higher values to match tablet pen, so set max
samples pretty high (64).

Release note section:
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.64/Sculpting#Input_Stroke_Averaging
2012-05-21 23:32:46 +00:00
Monique Dewanchand
b951c2be7f fix for
[#31502] Defocus max radius help tekst
2012-05-21 20:36:02 +00:00
Dan Eicher
9b20cecd22 Missing RNA_def_property_update functions for RenderSettings bake properties 2012-05-21 20:28:54 +00:00
Jeroen Bakker
877dc58724 Fix for [#31413] Code review testing: Regarding chunksize, could the
tooltip be made more clear
2012-05-21 20:21:32 +00:00
Jeroen Bakker
146e92311f UI mafia fix thanks to venomgfx for reporting
* Color correction node
2012-05-21 20:10:21 +00:00
Monique Dewanchand
cd002016e9 Fix for
[#31408] Code review testing: Button labels are invisible in many nodes
2012-05-21 19:58:23 +00:00
Jeroen Bakker
564711418d Fix for [#31418] Code review: OpenCL initialization
* Moved OpenCL initialization to first use
 * cleaned up build files
 * display some debug lines only when debugging is enabled.
2012-05-21 19:31:29 +00:00
Jeroen Bakker
ff87bdecfe [#31410] Code review testing: The color correction node in particular is
quite problematic in button layout
 * Added first column with labels
 * increased max size of node
 * moved the start/end midtones to the bottom of the node
2012-05-21 18:47:55 +00:00
Mitchell Stokes
f76419d6de Fix for [#31367] render.drawLine not 2D filter aware:
The lines from render.drawLine() are now drawn before motion blur and 2D Filters.
2012-05-21 18:35:31 +00:00
Bastien Montagne
7fbf2ffd53 A few minor UI message fixes... 2012-05-21 18:06:20 +00:00
Campbell Barton
2970b7a735 change name length from 32 to 64, perhaps we should have some constant here bpy.constants.NAME_MAX ? - but this hardly ever changes.
also hide allow overlap option for adding sequence strips, this was only intended for api use
2012-05-21 16:52:04 +00:00
Jeroen Bakker
081f3dd9fa fix for [#31543] Nodes use array past bounds 2012-05-21 16:05:45 +00:00
Jeroen Bakker
c55bb6eae2 * Bokeh Image angle now has rnge from -720 to +720 degrees 2012-05-21 14:05:47 +00:00
Brecht Van Lommel
c3e1fce775 Cycles: add Object Info node, with outputs object location, object/material
pass index, and a random number unique to the instance of the object.

This can be useful to give some variation to a single material assigned to
multiple instances, either manually controlled through the object index, based
on the object location, or randomized for each instance. 

http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/More#Object_Info
2012-05-21 12:52:28 +00:00
Campbell Barton
ea11bc980a debugging check for bmesh (commented since its very slow), but useful for debugging some scripts. 2012-05-21 12:30:06 +00:00
Jeroen Bakker
998a850f9f Added switch in dilate/erode between old (Step) and new (Distance)
algorithm

Connected the Glare Fog Flow to use Fast Gaussian in stead of Bokeh blur
2012-05-21 10:20:30 +00:00
Campbell Barton
14e4ad9302 fix for fix - possible on second loop to use freed memory still. 2012-05-21 10:13:43 +00:00
Campbell Barton
23d628a54f fix for unlikely but possible use of uninitialized pointers. 2012-05-21 10:11:51 +00:00
Campbell Barton
04bc89a8b6 code cleanup: remove some old comments 2012-05-21 09:00:35 +00:00
Campbell Barton
252f3556e4 fix for minor annoyance when an operator is called by another - dont add blend file to recent history.
this way demo-mode addon doesnt clobber the recent history with demo files its operator loads.
2012-05-21 08:24:03 +00:00
Campbell Barton
09b4d262b9 Quiet null pointer free warning/error. 2012-05-21 08:10:37 +00:00