Commit Graph

30138 Commits

Author SHA1 Message Date
Sergey Sharybin
e5d4e0f69b Fix #30231: Drag and Droping Parenting from Outliner giving unnecessary Loop Error
In fact, error was much deeper and DND parenting in outliner used to parent all selected
objects to drop target, not just currently dragging object.

This was caused by code sharing between Parent Set operator and this DND operator which
was iterating all selected objects in scene and was setting parent to it.

Solved issue by separating actual parenting code which makes specified object be parented
to specified parent and moved iterating to Parent Set exec callback.

Now both of discovered issues (unneeded loop error and parenting all selected objects)
are solved, but more extensive testing of this changes are welcome.
2012-02-22 07:56:15 +00:00
Antony Riakiotakis
9ca3084d4d Attempt to fix scons compilation of blenderplayer.
Added bmesh to player libraries and changed the priority of blenlib so as to avoid duplicate definitions (looks like there are actually functions defined twice that cause conflicts if one changes the order of linking...figures).

Only tested this on mingw-windows, I hope it works elsewhere too.
2012-02-22 03:16:34 +00:00
Antony Riakiotakis
c7185d2652 Stitch tool fully functional again. Many thanks to Howard Trickey for proposing the loop winding criterion for normal disambiguation of edges. Unfortunately some extra memory has to be allocated for this to work correctly. If the tool had been initially written for bmesh I would have used the already present adjacency information to make it work, avoiding some extra allocations. Maybe a project for another day though, when I am more proficient with bmesh internals. 2012-02-22 00:06:15 +00:00
Antony Riakiotakis
a4e6967323 change UvElement to directly use BMLoop * instead of tfindex. This saves quite some lookups on uv sculpting and stitching. Based on BMESH todo by Campbell, thanks for the idea! 2012-02-21 19:41:38 +00:00
Antony Riakiotakis
9c3710df1f uv stitch static island highlight ported to bmesh system.
Unfortunately since we are missing a way to tesselate uvs, the result will look good only on concave faces since we are essentially using a triangle fan to draw. When a tesselation of uv polygons is possible the tool should also change to use that instead. This will also influence the preview drawing code, coming next.
2012-02-21 18:20:47 +00:00
Sergey Sharybin
3663bd580f Remove debug print code.
It was harmless because it ifdef-ed, but it's likelly not needed anymore.
2012-02-21 17:27:33 +00:00
Sergey Sharybin
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
Sergey Sharybin
4041c57756 - Remove unused code in bmesh interpolation module and switch it to using mathutils
functions instead of own macros for vectors.
- Double precision isn't needed here at all. It only makes it impossible to use
  mathutils, adds extra float<->double conversions without any benefits.
  (current multires interpolation is already an approximate method and it can't
  be improved using double precision)
2012-02-21 17:24:05 +00:00
Sergey Sharybin
debd32d336 Improved displacement flipping algorithm to work properly in cases when target grid isn't orthogonal.
Subdivision of face now works pretty smooth, only producing minor unwanted displacement on the along edges.
2012-02-21 17:23:32 +00:00
Sergey Sharybin
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
Brecht Van Lommel
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
Bastien Montagne
1b0802265c Fix [#30281] Left/Right vertex weights flipped.
Mirror modifier was flipping vgroups on org vertices, not mirrored ones!
2012-02-21 14:45:18 +00:00
Brecht Van Lommel
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
Sergey Sharybin
c8de268e1b Camera tracing: search area was always centered to marker's position when tracking 2012-02-21 12:59:52 +00:00
Nicholas Bishop
88a2be1846 Another fix for non-VBO flat-shading in sculpt mode, this time for non-multires meshes.
As with multires, this change calculates face normals rather than
using vertex normals when the node is flat-shaded.

Flat-shading with VBO on non-multires meshes is still wrong, but
fixing that would require larger changes to our vertex buffers.
2012-02-21 04:24:30 +00:00
Nicholas Bishop
a6dc47b0ca Remove call to GPU_update_mesh_buffers from GPU_build_mesh_buffers.
Building the mesh buffers already gets the PBVH_UpdateDrawBuffers flag
set, so this was double-updating the vertex buffer.
2012-02-21 04:16:27 +00:00
Campbell Barton
3c38830013 fix [#30264] B-Mesh: Crash when unwrapping ngon mesh with Smart UV project 2012-02-21 03:43:57 +00:00
Campbell Barton
89a5cf40e3 remove NGon Interp modifier (which was merged as apart of BMesh),
this didnt really give any advantage over subsurf's Simple-Subdiv mode.
2012-02-20 23:24:57 +00:00
Campbell Barton
71146bf93b copy over a change from bmesh branch that was needed for lightmap unpack to work, also tag some rna vars as unused. 2012-02-20 22:58:00 +00:00
Bastien Montagne
6d3cdbe0e5 Done BMESH_TODO in object/object_vgroup.c (make getSurroundingVerts() use polys/loops instead of tessfaces).
Also done a few optimizations of related code (OBJECT_OT_vertex_group_fix operator).
2012-02-20 22:16:20 +00:00
Campbell Barton
c4e7cc3287 fix for leak in gpu.export_shader(), wasnt freeing the function.
also change the bmesh iterator so its possible to initialize without stepping.
2012-02-20 22:04:29 +00:00
Nicholas Bishop
d31e1533a3 Fix normals for flat-shaded non-VBO sculpt drawing.
Example here, original on left, fixed normals on right:
http://www.pasteall.org/pic/show.php?id=26925
2012-02-20 21:25:24 +00:00
Brecht Van Lommel
83aeb9cbd5 Fix broken predivide option for reading in images, patch by Troy Sobotka. 2012-02-20 20:55:30 +00:00
Sergey Sharybin
3bcca01c24 Another fix for using boolean slot as integer. This time in dissolve operator. 2012-02-20 15:58:01 +00:00
Sergey Sharybin
5c14048600 Fixed incorrect accessing to use_restrict as to integer slot instead of boolean 2012-02-20 14:18:14 +00:00
Miika Hamalainen
a921d9d22b Fixed blenderplayer compile for msvc. 2012-02-20 08:06:24 +00:00
Campbell Barton
2421058379 add type check asserts for bmesh operator get/set funcs so errors wont fail silently. 2012-02-20 02:04:13 +00:00
Campbell Barton
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
Campbell Barton
818e19713a fix [#30266] B-Mesh: Issue with Weight Painting
thanks to Nicholas Bishop for finding the cause of the problem.


don't tesselate on load, this means me->mface will be NULL by default.

we may need to have this set if existing uses of this array are not resolved before release - so add a define USE_TESSFACE_DEFAULT, to change this easily.


this is a rather indirect fix - need to take care here.
2012-02-20 00:18:35 +00:00
Campbell Barton
40c59b1a3d minor edits to have the game engine and player building. 2012-02-19 23:36:10 +00:00
Campbell Barton
e9f93b9117 for bake check polygon texface (not tessface-texface) 2012-02-19 22:55:37 +00:00
Campbell Barton
1cad189e32 fix harmless but annoying memory leak prints, "newmem", now free all scanfill memory on exit. 2012-02-19 22:36:24 +00:00
Campbell Barton
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
Thomas Dinges
56e41a3ef0 B-Mesh:
* Remove Doubles was missing the info how many vertices were removed, added that back.
2012-02-19 20:29:04 +00:00
Campbell Barton
0fd176e03d moved select interior faces into a C function (was python) 2012-02-19 20:27:30 +00:00
Daniel Genrich
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
Campbell Barton
4504ac27a6 remove more unused files. 2012-02-19 19:32:41 +00:00
Campbell Barton
b1a3d3cea1 remove files no longer used since bmesh merge. 2012-02-19 19:27:06 +00:00
Campbell Barton
dc68210c7e misc changes from trunk (avoid confusion since these were not intentional differences) 2012-02-19 18:41:30 +00:00
Campbell Barton
5148828356 svn merge ^/trunk/blender -r44235:44250 2012-02-19 17:59:30 +00:00
Juha Mäki-Kanto
d6deca4e9d Fix #30230, Crash after importing collada file
On collada import a -1 layer_index from CustomData_get_layer_index (CD_MTFACE) was used.
This then managed to overwrite last mface's data with uv-set's name so at least it gave a clue where to look for :]
2012-02-19 17:55:09 +00:00
Campbell Barton
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
Campbell Barton
fd89fa15c5 sync some changes with trunk and rename bmeshutils.c 2012-02-19 17:11:40 +00:00
Campbell Barton
eee22fe2f6 rebane files to match trunk. 2012-02-19 16:54:53 +00:00
Bastien Montagne
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
Sergey Sharybin
0b13390b9f Reload movie clip to ensure all cache and prefetched Ffmpeg frames are properly
updating after proxy building is finished.
2012-02-19 08:09:10 +00:00
Sergey Sharybin
83c91bb22d Proxies: FFmpeg proxy builder wasn't taking image quality into account at all
which made it using default quality settings which are really bad for camera
tracking (and perhaps for CSE too).

haven't found Jpeg quality setting for FFmpeg which will behave in the same way
as quality setting for image sequence, but seems that mapping image quality
from 1..100 UI range to 31..1 range of qmin/qmax gives expected result.

--
svn merge -r44228:44230 ^/branches/soc-2011-tomato
2012-02-19 08:02:05 +00:00
Campbell Barton
cc90116c5a style cleanyp: split > 120 width lines. 2012-02-19 06:00:20 +00:00
Campbell Barton
e43c80620c fix for incorrect check to find largest axis (was checking Y twice, not Z). 2012-02-19 05:17:55 +00:00
Campbell Barton
02b28e9162 replace MIN2 / MAX2 with minf / maxf to avoid calling functions multiple times. 2012-02-19 05:11:24 +00:00