Commit Graph

10681 Commits

Author SHA1 Message Date
34e2fb40c7 More style edits (adding a space between statements and parenthesis, if (foo) blah;), to follow http://wiki.blender.org/index.php/User:Nazg-gul/CodeStyle proposition. 2012-02-22 16:21:17 +00:00
92c47145fd bmesh python api change in internal behavior.
* Only have 1 python object per bmesh, vertex, edge, loop, face.
* Store pointers back to the python data in a custom data layer so as not to use more memory for normal editing operations (when pythons not running).
* Currently this data is created and freed along with the BMesh PyObject.
* Incidentally - this fixes comparisons for bmesh elements which wasnt working before.
2012-02-22 16:08:30 +00:00
b06beb6f35 Style code cleanup and consistancy (mainly spaces around assignements, C++ comments to C, and misc spaces/tabs cleanup). No functional change. 2012-02-22 15:35:42 +00:00
Lukas Toenne
3bae60d0c9 Adds a new node type for saving multiple image files from a single node.
Unlike the existing file output node this node has an arbitrary number of
possible input slots. It has a base path string that can be set to a general
base folder. Every input socket then uses its name as an extension of the base
path for file organization. This can include further subfolders on top of the
base path. Example:

Base path: '/home/user/myproject'
Input 1: 'Compo'
Input 2: 'Diffuse/'
Input 3: 'details/Normals'

would create output files
in /home/user/myproject: Compo0001.png, Compo0002.png, ...
in /home/user/myproject/Diffuse: 0001.png, 0002.png, ... (no filename base
given)
in /home/user/myproject/details: Normals0001.png, Normals0002.png, ...

Most settings for the node can be found in the sidebar (NKEY). New input sockets
can be added with the "Add Input" button. There is a list of input sockets and
below that the details for each socket can be changed, including the sub-path
and filename. Sockets can be removed here as well. By default each socket uses
the render settings file output format, but each can use its own format if
necessary.

To my knowledge this is the first node making use of such dynamic sockets in
trunk. So this is also a design test, other nodes might use this in the future.

Adding operator buttons on top of a node is a bit unwieldy atm, because all node
operators generally work on selected and/or active node(s). The operator button
would therefore either have to make sure the node is  activated before the
operator is called (block callback maybe?) OR it has to store the node name
(risky, weak reference). For now it is only used in the sidebar, where only the
active node's buttons are displayed.

Also adds a new struct_type value to bNodeSocket, in order to distinguish
different socket types with the same data type (file inputs are SOCK_RGBA color
sockets). Would be nicer to use data type only for actual data evaluation, but
used in too many places, this works ok for now.
2012-02-22 12:24:04 +00:00
9064978d0b Remove unused code left from old multires interpolation stuff
- Removed validate() callback for MDisps layer. It wouldn't actually work
  correct from CustomData layer and all needed data might be validated from
  BMesh interpolation level. Also this callback was never actually used in
  BMesh, so can't see why we'll want to have it in structures.
- Removed layrInterp_mdisps callback. Interpolation now happens from
  another level (bmesh_interp) and this callback isn't needed anymore.
- Removed all function from multires.c which were used by old interpolation
  stuff and seems to be useless for other usages.
- multires_topology_changed is still marked as a TODO, Probably it's not
  needed anymore, buy better to keep for now until it'll be 100% clear this
  function isn't needed and all needed re-allocations happens in bmesh_interp.
  Otherwise, it'll be needed to be ported to new system.
2012-02-21 17:24:21 +00:00
b2fd08c754 Flip displacement direction after interpolation in bmesh_loop_interp_mdisps
This is needed because displacement might been interpolated from a grid
with different orientation and in this case X and Y components of displacement
are need to be flipped in needed order.

Order of flipping is determining by projecting source grids axis orientation
on target grid axis. This probably will give some unwanted artifacts when
interpolating non-planar face but currently can't think about better way
to determine how to flip displacement.

This commit makes operators like Subdivide works much more unpredictable
for sculpting data, but this stuff should be rethinked much more global
because current approach is not acceptable.
2012-02-21 17:23:03 +00:00
3efe399ed4 Fix part of #30272: cycles preview render not updating when changing particle
emission from with instanced objects.
2012-02-21 16:34:00 +00:00
d47b018f8d Fix #30270, #30265: cycles not displaying textured objects, and not rendering
text/curve objects after the bmesh merge. Also removed a debug print.
2012-02-21 14:39:59 +00:00
c8de268e1b Camera tracing: search area was always centered to marker's position when tracking 2012-02-21 12:59:52 +00:00
3c38830013 fix [#30264] B-Mesh: Crash when unwrapping ngon mesh with Smart UV project 2012-02-21 03:43:57 +00:00
9f243d531c Merged changes in the trunk up to revision 44288.
Conflicts resolved:
source/blender/blenkernel/intern/cdderivedmesh.c
2012-02-21 02:19:54 +00:00
69289c978e Merged changes in the trunk up to revision 44266 (including BMesh).
Freestyle edge/face marks were ported to BMesh.

Conflicts resolved:
source/blender/editors/mesh/editface.c
source/blender/editors/space_view3d/drawobject.c
source/blender/makesdna/DNA_meshdata_types.h
source/blender/blenkernel/intern/editderivedmesh.c
2012-02-21 01:40:04 +00:00
1953f042e6 added boolean type for bmesh operators, will make python wrapping clearer and also makes existing calls more obvious.
also corrected some error reports.
2012-02-20 01:52:35 +00:00
a368e6771a - remove some unused editmesh functions.
- copy & rename EditMesh stricts for use with scanfill (remove unused members)
2012-02-19 22:17:30 +00:00
d8a70df8cc Smoke
------
New: Child particles are used as emitter. 

Based on the patch #30013 by Kai Kostack. Thank you!

Please do test this code!
2012-02-19 20:05:01 +00:00
b1a3d3cea1 remove files no longer used since bmesh merge. 2012-02-19 19:27:06 +00:00
5148828356 svn merge ^/trunk/blender -r44235:44250 2012-02-19 17:59:30 +00:00
85d99737b5 fix for bug where particle system would fail when the original mesh had no tessface's 2012-02-19 17:44:36 +00:00
5cd85ed57e More pose armature code factorization:
* New armature_mat_bone_to_pose, which is just the reverse of armature_mat_pose_to_bone (currently used by armature evaluation code only, but might be used by constraints space conversion code too, see note below).
* Found another place where another (a bit erroneous) pose_to_bone code existed (apply_targetless_ik(), in transform_conversion.c, used by "auto ik" option), replaced it by a call to armature_mat_pose_to_bone.

Notes:
* All those changes leave many #if 0 commented code, I will remove those in a few weeks.
* There is at least one other place where generic armature_mat_(pose_to_bone/bone_to_pose) functions should be usable: the space conversion function of constraints (constraint_mat_convertspace(), in BKE's constraint.c), but here I have some problems (old code is also somewhat erroneous, but using new one makes old rigs using bone space constraints wrong, e.g. sintel one, and it’s just impossible to make conversion code...). So I'll wait and investigate more for this one.
2012-02-19 11:09:44 +00:00
02b28e9162 replace MIN2 / MAX2 with minf / maxf to avoid calling functions multiple times. 2012-02-19 05:11:24 +00:00
bd0f7a290b svn merge ^/trunk/blender -r44213:44235 --- fixes bmesh shading bug [#30125] 2012-02-19 03:19:58 +00:00
4450039734 Change texface draw to always use glShadeModel(GL_SMOOTH), with texface draw.
without this each face would get a solid color, this is the same method used in object mode.

also copy BLI_array.h fix from bmesh branch.
2012-02-19 03:10:11 +00:00
22d326a663 skip per face texface poly lookup while drawing when the layer isnt found.
also remove some unused code.
2012-02-19 02:54:50 +00:00
4ca1d6f28f left print in by mistake 2012-02-19 01:52:59 +00:00
ece3418b4e edit-derived-mesh had a table for vert/edge/face lookups - that were never used.
removed these and replaced them with calls to BM_vert_at_index, BM_edge_at_index - which are not ideal but same as trunk does.
2012-02-19 01:51:36 +00:00
910f04ca63 Merged changes in the trunk up to revision 44221.
Conflicts resolved:
release/datafiles/blender_icons.png
source/blender/blenkernel/intern/anim_sys.c
source/blender/blenloader/intern/readfile.c
2012-02-18 11:26:11 +00:00
24f83c7e3e minor edits to sync up with trunk, remove crash save handler, this can be added later if we need but isnt really apart of bmesh specifically. 2012-02-17 21:22:18 +00:00
48006292d8 svn merge ^/trunk/blender -r44189:44204 2012-02-17 20:56:25 +00:00
61596d5bb3 patch [#30227] Various MSVC (32-bit) Warning and Typo Fixes
made some small edits
- removed changes to AVI reading since the data types are apart of the format spec.
- absf -> abs for a double value in render code.
2012-02-17 19:21:47 +00:00
2b7ca2304a unify include guard defines, __$FILENAME__
without the underscores these clogged up the namespace for autocompleation which was annoying.
2012-02-17 18:59:41 +00:00
4c66e696fb svn merge ^/trunk/blender -r44136:44189 2012-02-17 15:51:48 +00:00
071706e48f Missed this changes needed to fully support animation data in movie clips.
Thanks to Joshua pointed into missed changes!
2012-02-17 10:54:21 +00:00
ed3b7e2c23 Camera tracking: configurable filter type for 2d stabilization
--
svn merge -r44151:44152 ^/branches/soc-2011-tomato
2012-02-17 08:27:19 +00:00
fdeca277fd Camera tracking: run aspect correction before stabilizing shot
This commit fixes image stopped being an orthogonal rectangle because of horizontal
scaling caused by pixel aspect ratio happening after rotating image which used to
make orthogonal angles from footage not actually orthogonal.

--
svn merge -r44150:44151 ^/branches/soc-2011-tomato
2012-02-17 08:23:42 +00:00
0cc2966516 Camera tracking: fixed issue when track used for rotation stabilization points to a freed memory after re-tracking this track.
--
svn merge -r44148:44149 ^/branches/soc-2011-tomato
2012-02-17 08:20:21 +00:00
781b4cafbd Camera tracking: fixed incorrect auto-scale calculation for 2d stabilization
--
svn merge -r44146:44147 ^/branches/soc-2011-tomato
2012-02-17 08:17:46 +00:00
b83577aaec Camera tracking: fix for missing cache invalidation when disabling/enabling channels for stabilized shot
--
svn merge -r44140:44141 ^/branches/soc-2011-tomato
2012-02-17 08:16:29 +00:00
9d0b7b168f Camera tracking: animation datablock for MovieClip
Added AnimData block to MovieClip datablock which allows to animate different properties in clip.
Currently supports animation of stabilization influence only.

--
svn merge -r44129:44130 ^/branches/soc-2011-tomato
2012-02-17 08:13:45 +00:00
5fd24dc3f2 Build proxy from meta and image strips used resolution used for display,
not set by building job which leads to unusable proxies.

This change should resolve issues reported in #30229: Sequencer Meta strip Proxy Fails
and probably #30196 will work nicer too.
2012-02-17 07:32:18 +00:00
62d09c9103 Tomato: configurable filter type for 2d stabilization 2012-02-16 15:03:37 +00:00
14a92fc3a2 Tomato: run aspect correction before stabilizing shot. 2012-02-16 15:03:18 +00:00
aa747f5889 Tomato: fixed issue when track used for rotation stabilization points to a freed memory after re-tracking this track. 2012-02-16 13:15:01 +00:00
fedb95da23 Tomato: fixed incorrect auto-scale calculation for 2d stabilization 2012-02-16 13:14:28 +00:00
008f0e73ee bmesh todo. making an image local wasn't dealing with mesh polygon texface data. 2012-02-16 12:19:02 +00:00
42e50719df ffmpeg: take back 44142, conditional was wrong 2012-02-16 11:52:02 +00:00
f047d90a0e ffmpeg: only suppress loopfilter for .mov ( compatibility ), but keep for .avi (quality ) 2012-02-16 08:48:28 +00:00
da69173269 Tomato: fix for missing cache invalidation when disabling/enabling channels for stabilized shot 2012-02-16 07:45:01 +00:00
bd249c3bff Camera tracking: animation datablock for MovieClip
Added AnimData block to MovieClip datablock which allows to animate different
properties in clip. Currently supports animation of stabilization influence only.
2012-02-15 16:06:48 +00:00
576ce5928f * correct bad pointer check in expand_local_mesh()
* check total polygons rather then faces in draw_mesh_object()
2012-02-15 14:40:45 +00:00
bc6bbcccc9 went over all uses of mesh->mface and added BMESH_TODO comments for
areas that need to be updated.
2012-02-15 14:39:18 +00:00