Jens Verwiebe [Fri, 24 Feb 2012 18:31:09 +0000 (18:31 +0000)]
OSX: set ffmpeg back in darwin-config according librenaming
Campbell Barton [Fri, 24 Feb 2012 17:47:51 +0000 (17:47 +0000)]
bmesh bridge - copy UVs and face data whem available.
Brecht Van Lommel [Fri, 24 Feb 2012 15:53:26 +0000 (15:53 +0000)]
Python: add MeshLoop.index, same as already existed for vert/edge/face/poly.
Brecht Van Lommel [Fri, 24 Feb 2012 15:53:19 +0000 (15:53 +0000)]
Cycles: tweak for AMD opencl compile of advanced shading, from Daniel Genrich,
still does not work correct but should compile if you have enough memory.
Sergey Sharybin [Fri, 24 Feb 2012 15:34:57 +0000 (15:34 +0000)]
Blender should now compile fine with older FFmpeg libraries used.
Sergey Sharybin [Fri, 24 Feb 2012 14:03:18 +0000 (14:03 +0000)]
More consistent variable naming.
Sergey Sharybin [Fri, 24 Feb 2012 14:01:42 +0000 (14:01 +0000)]
TODO item: zoom to mouse location in image editor
Campbell Barton [Fri, 24 Feb 2012 13:50:36 +0000 (13:50 +0000)]
bmesh py api - fix for error creating a new face
Sergey Sharybin [Fri, 24 Feb 2012 13:44:45 +0000 (13:44 +0000)]
Code clean-up and make zoom in/out operator store mouse coordinate
so exec() callback will zoom in/out properly.
Sergey Sharybin [Fri, 24 Feb 2012 13:31:18 +0000 (13:31 +0000)]
CLIP_OT_view_zoom (Ctrl-MMB) now takes into account Zoom to Mouse Position setting
Campbell Barton [Fri, 24 Feb 2012 12:57:05 +0000 (12:57 +0000)]
bmesh python api:
bm.verts.get(verts) / bm.faces.get(verts)
- use to find an edge or face from a vertex list passed.
Sergey Sharybin [Fri, 24 Feb 2012 12:30:49 +0000 (12:30 +0000)]
Fixed crash in UV project modifier.
Campbell Barton [Fri, 24 Feb 2012 12:10:41 +0000 (12:10 +0000)]
change default name of Texture face layer to UVMap, while we fake UV's and texface as being the same.
Campbell Barton [Fri, 24 Feb 2012 11:04:09 +0000 (11:04 +0000)]
bmesh py api - bmesh.utils.face_flip
Campbell Barton [Fri, 24 Feb 2012 10:40:32 +0000 (10:40 +0000)]
bmesh: minor speedup, use 1 iterator rather then 2 when normalizing verts.
Campbell Barton [Fri, 24 Feb 2012 10:35:52 +0000 (10:35 +0000)]
bmesh py api - normal_update() functions for vert/edge/face.
Campbell Barton [Fri, 24 Feb 2012 10:17:30 +0000 (10:17 +0000)]
bmesh py api, minor change - edges now take a seq of 2: bm.verts.new((v1, v2), example=None)
Campbell Barton [Fri, 24 Feb 2012 09:53:29 +0000 (09:53 +0000)]
bmesh docs now written in sphinx doc generator.
* http://www.blender.org/documentation/blender_python_api_2_62_0/bmesh.types.html
* http://www.blender.org/documentation/blender_python_api_2_62_0/bmesh.utils.html
Sergey Sharybin [Fri, 24 Feb 2012 09:49:44 +0000 (09:49 +0000)]
Changes in FFV1 codec settings
Since FFmpeg 0.10 release FFV1 codec supports alpha channel which is getting
enabled when using PIX_FMT_RGB32 pixel format. This leads to incompatibility of
videos rendered in Blender with almost all external players (especially in OSX).
Seems that PIX_FMT_BGR0 is recommended to be used to make videos compatible with
older players which doesn't support alpha channel in FFV1.
Also added an option to switch to RGBA rendering if FFV1 codec is used and if RGBA
rendering is used FFV1 will be using PIX_FMT_RGB32 format which supports alpha channel.
Campbell Barton [Fri, 24 Feb 2012 06:44:04 +0000 (06:44 +0000)]
typo cleanup, no functional changes.
Campbell Barton [Fri, 24 Feb 2012 05:56:06 +0000 (05:56 +0000)]
bmesh py api (some api changes and doc additions)
* remove 'select' and 'hide' from BMLoop
* remove BMesh.update
* add BMesh.normal_update(skip_hidden=False)
* add BMElemSet.index_update(), eg: bm.verts.index_update()
bmesh api
* BM_mesh_normals_update() now takes skip_hidden as an argument
(previously this was default behavior), however this isnt good when
using BMesh modifiers, where you want all normals to be recalculated.
* add bm_iter_itype_htype_map[], to get the iter type from a BMesh
iterator.
Campbell Barton [Fri, 24 Feb 2012 04:59:13 +0000 (04:59 +0000)]
bmesh python api - add/improve rst docstrings.
Brecht Van Lommel [Thu, 23 Feb 2012 21:23:49 +0000 (21:23 +0000)]
Fix #30325: bmesh edges were marked as sharp by default, after recent
refactor to reuse BM_ELEM_SMOOTH flag for sharp flag.
Brecht Van Lommel [Thu, 23 Feb 2012 21:07:22 +0000 (21:07 +0000)]
Fix #30268: cloth collision and springs not working after bmesh merge,
these cloth and collision modifiers require tesselation still.
Brecht Van Lommel [Thu, 23 Feb 2012 20:31:51 +0000 (20:31 +0000)]
Fix #30326: calling e.g. bpy.ops.object.proxy_make(object = 'Lamp') would
not pick the right object. This operator had two properties "object" and
"type", but the latter was used while the former had the right description.
Now changed it to have only an "object" property, so that the above code works.
Brecht Van Lommel [Thu, 23 Feb 2012 20:27:17 +0000 (20:27 +0000)]
Fix #30140: cycles multi GPU rendering with one device supporting full
shading and the other not can't work correct, disabled that now.
Brecht Van Lommel [Thu, 23 Feb 2012 19:48:18 +0000 (19:48 +0000)]
Fix #30246: rendering multiple render layers with CUDA still not working,
should really be fixed now.
Sergey Sharybin [Thu, 23 Feb 2012 18:51:24 +0000 (18:51 +0000)]
Fix #30323: Graph view in the Movie Clip Editor does not stay open
In fact, Graph View wasn't been supposed to be opened in Clip show editor mode.
Made curves view unavailable from Clip view mode and store it's alignment in
a runtime flag in SpaceClip structure.
Campbell Barton [Thu, 23 Feb 2012 17:22:37 +0000 (17:22 +0000)]
bmesh py api - ensure data layers to store bmesh pointers exist - removing all elements could free them for eg.
Campbell Barton [Thu, 23 Feb 2012 17:14:53 +0000 (17:14 +0000)]
bmesh py api
bmesh.utils.face_join(faces)
added a utility function for converting a list of python BMesh elements into a C array.
use for this face_join as well as BMesh.faces.new()
Brecht Van Lommel [Thu, 23 Feb 2012 16:12:36 +0000 (16:12 +0000)]
Fix #30306: crash duplicating object with action actuator but no animation data.
Campbell Barton [Thu, 23 Feb 2012 16:00:53 +0000 (16:00 +0000)]
bmesh split tool (Ykey), was only splitting off faces, unlike EditMesh which could also split edges.
make this behavior optional and default to off (match EditMesh).
Campbell Barton [Thu, 23 Feb 2012 15:47:18 +0000 (15:47 +0000)]
previous fix wasnt working in edge mode, now selection +/- works in vert/edge/face modes.
Campbell Barton [Thu, 23 Feb 2012 15:22:29 +0000 (15:22 +0000)]
fix [#30318] increase/decrease selection won't work (select-more/less)
This was a problem with bmesh merge, now it works as expected again.
Brecht Van Lommel [Thu, 23 Feb 2012 15:10:26 +0000 (15:10 +0000)]
Fix #30298: fluid simulation from older files not working when loaded into 2.62,
this was due to a wrong version patch which leaves simulation speed to 0.
Brecht Van Lommel [Thu, 23 Feb 2012 15:10:10 +0000 (15:10 +0000)]
Cycles: fix cuda kernel not getting rebuilt correctly after changes, due to
refactoring that changed variable names, also fixed OpenCL compile issue with
advanced shading.
Campbell Barton [Thu, 23 Feb 2012 14:24:45 +0000 (14:24 +0000)]
fix for meshes not showing up in the game engine.
Campbell Barton [Thu, 23 Feb 2012 14:15:26 +0000 (14:15 +0000)]
bmesh py api, added: bmesh.utils.edge_rotate(edge, ccw=False)
also improved docstrings.
Campbell Barton [Thu, 23 Feb 2012 13:14:59 +0000 (13:14 +0000)]
quiet error message when saving (WM_OT_save_as_mainfile.use_mesh_compat not found).
Campbell Barton [Thu, 23 Feb 2012 13:08:42 +0000 (13:08 +0000)]
elsyiun theme
* too light unselected vertex color.
* active color was darker then selected color (make active a lighter tint of selected).
Sergey Sharybin [Thu, 23 Feb 2012 12:28:18 +0000 (12:28 +0000)]
Fix #30320: Shading issue with boolean modifier
Seems that after converting tessfaces into faces normals should be re-calculated.
At least that's what happening in some other modifiers and what makes boolean
work fine with smooth normals.
Campbell Barton [Thu, 23 Feb 2012 12:11:27 +0000 (12:11 +0000)]
adding icosphere was broken with own recent commit
Sergey Sharybin [Thu, 23 Feb 2012 12:06:49 +0000 (12:06 +0000)]
Segments and rings for UV Sphere were swapped.
Campbell Barton [Thu, 23 Feb 2012 11:27:22 +0000 (11:27 +0000)]
bmesh py api, new elements now take optional 'example' arguments, so the new data copies from the existing.
Campbell Barton [Thu, 23 Feb 2012 10:41:31 +0000 (10:41 +0000)]
use __ prefix on header guards to avoid mixing up defines with api functions / classes.
Nicholas Bishop [Thu, 23 Feb 2012 10:35:23 +0000 (10:35 +0000)]
Bugfix: don't read from a write-only VBO when updating grid buffers.
Campbell Barton [Thu, 23 Feb 2012 10:29:04 +0000 (10:29 +0000)]
bmesh py api functions:
bmesh.utils.vert_collapse_edge, vert_collapse_faces, vert_dissolve, face_split
Campbell Barton [Thu, 23 Feb 2012 10:24:20 +0000 (10:24 +0000)]
bmesh api cleanup, remove unused header.
Sergey Sharybin [Thu, 23 Feb 2012 10:18:10 +0000 (10:18 +0000)]
Fix #30315: Temporary proxy files are not erased and old proxys are not updated if the proxy is built more then once (windows)
Two issues are fixed here:
- On windows rename() doesn't actually renames file if destination file is already exist.
Solved by ulinking previously built proxy/timecode.
- IMB_TC_MAX_SLOT was set to incorrect value leading to record run timecode calculating
several times.
Sergey Sharybin [Thu, 23 Feb 2012 09:40:10 +0000 (09:40 +0000)]
BGE is compilable by MSVC again
Compilation error was mostly caused by trying to use namespace std before it was
actually defined (e.g. before any include of stl header).
It's not actually good idea to use namespaces in header files -- it's really easy to
run into namespace conflicts and so. Resolved by not using "using namespace" in header
files and using full quality accessing to stl collections (e.g. std::vector).
Campbell Barton [Thu, 23 Feb 2012 09:26:53 +0000 (09:26 +0000)]
bmesh minor api refactor
* BM_vert_in_face now loops over a vert's faces rather then every vert in the face.
* rename bmesh_radial_find_first_facevert --> bmesh_radial_find_first_faceloop
* rename bmesh_radial_find_next_facevert --> bmesh_radial_find_next_faceloop
* rename BM_vert_collapse_edges --> BM_vert_collapse_edge (only collapses one)
Thomas Dinges [Thu, 23 Feb 2012 09:23:29 +0000 (09:23 +0000)]
* Fixed some typos in the code, patch [#30247] by Vladimir Rutsky (rutsky). Thanks!
Thomas Dinges [Thu, 23 Feb 2012 09:11:17 +0000 (09:11 +0000)]
Cycles:
* Remove obsolete comments in the Oren Nayar code.
Sergey Sharybin [Thu, 23 Feb 2012 08:41:13 +0000 (08:41 +0000)]
Refresh all cached ibmufs used by sequencer after all proxies are built.
Hopefully this will fix #30196: Proxies Not Visible in VSE Preview Window until Blender Reboot
Nicholas Bishop [Thu, 23 Feb 2012 07:21:33 +0000 (07:21 +0000)]
Code cleanup: replace some common CCG operations with functions.
The new functions are ccg_gridsize, ccg_edgesize, ccg_spacing, and
ccg_edgebase. These target most of the left-shift operations in the
code.
Campbell Barton [Thu, 23 Feb 2012 05:20:09 +0000 (05:20 +0000)]
bmesh py api, new submodules
* bmesh.types, just allows access to BMVert, BMEdge etc.
* bmesh.utils, so far only added edge_split() function, this module will give access to mesh editing functions.
Campbell Barton [Thu, 23 Feb 2012 05:17:07 +0000 (05:17 +0000)]
swap arg order for BM_edge_split(), makes sense to have edge as first
arg.
Campbell Barton [Thu, 23 Feb 2012 04:26:24 +0000 (04:26 +0000)]
- swap arg order for BM_face_copy() boolean options.
- use edge example for BM_face_split().
Campbell Barton [Thu, 23 Feb 2012 04:19:25 +0000 (04:19 +0000)]
bmesh py api, more wrapped funcs:
* BMFace.copy(verts=True, faces=Trur)
* BMEdge.other_vert(vert)
Campbell Barton [Thu, 23 Feb 2012 03:39:39 +0000 (03:39 +0000)]
bmesh py api: functions for getting the area/angle/center of BMesh elements.
Campbell Barton [Thu, 23 Feb 2012 02:36:30 +0000 (02:36 +0000)]
code cleanup: dont set the namespace in STR_String.h - 'using namespace std', since this is included in many places.
Campbell Barton [Thu, 23 Feb 2012 02:23:42 +0000 (02:23 +0000)]
code style cleanup, no functional changes.
Campbell Barton [Thu, 23 Feb 2012 02:17:50 +0000 (02:17 +0000)]
style cleanup for blenkernel, no functional changes.
Nicholas Bishop [Wed, 22 Feb 2012 23:57:31 +0000 (23:57 +0000)]
Move PBVH bitmap to separate header in blenlib.
The implementation was also changed in a couple ways: use unsigned
integers as its base type rather than unsigned chars, and uses macros
rather than functions. (These could be changed to inline functions.)
Currently it is still only used during PBVH building, but now it's
accessible elsewhere.
Nicholas Bishop [Wed, 22 Feb 2012 23:30:56 +0000 (23:30 +0000)]
Code cleanup: de-duplicate code in GPU_build_grid_buffers() with a macro.
Nicholas Bishop [Wed, 22 Feb 2012 23:13:05 +0000 (23:13 +0000)]
Code cleanup: split up some long functions in sculpt_undo.c.
Should be no functional changes.
Nicholas Bishop [Wed, 22 Feb 2012 22:48:34 +0000 (22:48 +0000)]
Code cleanup: don't use GHash for GPU_build_mesh_buffers().
At the point where GPU_build_mesh_buffers is called, the
face_vert_indices map has already been built; it contains the same
data in an easier-to-access format.
Nicholas Bishop [Wed, 22 Feb 2012 22:41:08 +0000 (22:41 +0000)]
Code cleanup: remove unused 'skip' field from PBVH iterator.
Nicholas Bishop [Wed, 22 Feb 2012 22:37:01 +0000 (22:37 +0000)]
Code cleanup: move the PBVH iterator's initialization into a function.
Should be no functional changes, just shortens the amount of code
living in the macro.
Antony Riakiotakis [Wed, 22 Feb 2012 20:31:19 +0000 (20:31 +0000)]
fix scons compilation, hopefully for all platforms that have a problem.
Bastien Montagne [Wed, 22 Feb 2012 20:06:33 +0000 (20:06 +0000)]
Armature pose evaluation: more factorization of code.
Now constraints' space conversion code also uses generic armature_mat_(pose_to_bone/bone_to_pose). Previous own function (constraint_pchan_diff_mat) was somewhat inconsistent too with Hinge/NoScale/LocalLocation options...
As with previous similar changes, this might break some old rigs, in very specific cases (when constraint-evaluating an hinge/noscale/local_location bone in local space).
In the same part of code, removed unnecessary matrices copying, mult_m4_m4m4 can take the same matrix as input and output, nowadays...
Also found a bug-generator weakness in those armature_mat_ functions (if both input and output mat where the same, result was wrong, now systematically copying input mat, as done in LIB's matrix funcs).
Finally, factorized offset bone matrix generation into its own small function too, as it is used in two different places in armature.c (pchan_to_pose_mat itself, and restpose's where_is_armature_bone).
Note: I think all parts of blender's code related to that topic have now been tackled, but yet have to check BGE, it’s probably using that stuff too, one way or the other...
Antony Riakiotakis [Wed, 22 Feb 2012 18:57:17 +0000 (18:57 +0000)]
Fix blenderplayer linking with recent additions to bmesh python. We should really start building with player on so that mistakes like this can be detected early.
Campbell Barton [Wed, 22 Feb 2012 16:52:06 +0000 (16:52 +0000)]
code cleanyp - no functional changes.
Bastien Montagne [Wed, 22 Feb 2012 16:21:17 +0000 (16:21 +0000)]
More style edits (adding a space between statements and parenthesis, if (foo) blah;), to follow wiki.blender.org/index.php/User:Nazg-gul/CodeStyle proposition.
Campbell Barton [Wed, 22 Feb 2012 16:08:30 +0000 (16:08 +0000)]
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.
Bastien Montagne [Wed, 22 Feb 2012 15:35:42 +0000 (15:35 +0000)]
Style code cleanup and consistancy (mainly spaces around assignements, C++ comments to C, and misc spaces/tabs cleanup). No functional change.
Brecht Van Lommel [Wed, 22 Feb 2012 15:04:22 +0000 (15:04 +0000)]
Cycles: improve the Oren-Nayar BSDF (roughness value for Diffuse), to avoid
undesired dark rings, and give more accurate lighting when the light is
behind the object. As a bonus, the code is simpler & faster.
Patch by Yasuhiro Fujii, detailed explanation here:
http://mimosa-pudica.net/improved-oren-nayar.html
Campbell Barton [Wed, 22 Feb 2012 14:55:12 +0000 (14:55 +0000)]
fix 2 small bugs
* Ctrl+Click extrude wasnt normalizing the quaternion (was printing warnings)
* bmesh bevel was supposed to add a float layer and remove, but removing passed the mask define of the customdata layer.
Thomas Dinges [Wed, 22 Feb 2012 14:19:39 +0000 (14:19 +0000)]
Multi File Output Node:
* Some small UI tweaks, grey out image settings rather than hide and made it a bit more compact.
Sergey Sharybin [Wed, 22 Feb 2012 13:15:29 +0000 (13:15 +0000)]
Fix freeing of NULL pointer in array modifier.
Sergey Sharybin [Wed, 22 Feb 2012 12:59:43 +0000 (12:59 +0000)]
Fixed compilation error after recent node commit.
Campbell Barton [Wed, 22 Feb 2012 12:54:53 +0000 (12:54 +0000)]
add slice access to bmesh sequences.
eg:
verts = bm.verts[1:-7]
Campbell Barton [Wed, 22 Feb 2012 12:28:32 +0000 (12:28 +0000)]
BMesh-py attributes (readonly):
* is_valid (all types)
* is_wire (verts/edges)
* is_boundry (edge only)
* is_manifold (verts/edges)
also corrected own error, missed updating BMesh operator formatting char (broke erase only-faces)
Lukas Toenne [Wed, 22 Feb 2012 12:24:04 +0000 (12:24 +0000)]
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.
Sergey Sharybin [Wed, 22 Feb 2012 12:11:56 +0000 (12:11 +0000)]
Fix #30290: Shape Keys not working as expected
New method of vertex shapekey propagation didn't restored coordinates in
me->mvert array which lead to unwanted deformation of basis mesh and
lead to issues like described in the report.
Campbell Barton [Wed, 22 Feb 2012 12:04:44 +0000 (12:04 +0000)]
bmesh py api add connectivity attributes - to access adjacent data.
Campbell Barton [Wed, 22 Feb 2012 11:52:56 +0000 (11:52 +0000)]
bmesh py api - function to remove vert/edge/faces
Campbell Barton [Wed, 22 Feb 2012 11:31:07 +0000 (11:31 +0000)]
bmesh python api - add BMEdge.verts, also had to add VERTS_OF_EDGE iterator in bmesh's api.
Campbell Barton [Wed, 22 Feb 2012 10:41:07 +0000 (10:41 +0000)]
bmesh py api - generalize bmesg sequences to use the iterator type and optionally another bmesh element.
This allows BMFace.verts to be added without defining a new sequence type.
Campbell Barton [Wed, 22 Feb 2012 09:19:53 +0000 (09:19 +0000)]
initial bmesh python api.
corrently allows to create and loop over verts/edges/faces, access selection and selection modes.
this is still WIP, access to face, edge verts is still missing, no access to UV's, no access to editing operations yet.
When the api is ready it will be documented by sphinx like mathutils, blf, aud.
Campbell Barton [Wed, 22 Feb 2012 09:15:46 +0000 (09:15 +0000)]
utility functions to convert between flags / sets, without depending on RNA API.
Campbell Barton [Wed, 22 Feb 2012 09:13:29 +0000 (09:13 +0000)]
correct exception - was using a TypeError when should be a ValueError.
Sergey Sharybin [Wed, 22 Feb 2012 08:25:14 +0000 (08:25 +0000)]
Fix #30276: mesh subdivision shorcut with maya preset
Added subdivisions shortcut for mesh editing mode to maya preset.
Not actually sure such shortcut present in Maya, but seems to be logical
to have it both object and edit modes.
Sergey Sharybin [Wed, 22 Feb 2012 08:16:12 +0000 (08:16 +0000)]
Made Maya keymap working again.
Keypam for midpoint knife cutting was disabled for a while due to
midpoint toggle was moved to a model keymap and i'm not sure how to
start operator with midpoint enabled by default.
Sergey Sharybin [Wed, 22 Feb 2012 07:56:15 +0000 (07:56 +0000)]
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.
Antony Riakiotakis [Wed, 22 Feb 2012 03:16:34 +0000 (03:16 +0000)]
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.
Antony Riakiotakis [Wed, 22 Feb 2012 00:06:15 +0000 (00:06 +0000)]
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.
Antony Riakiotakis [Tue, 21 Feb 2012 19:41:38 +0000 (19:41 +0000)]
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!
Antony Riakiotakis [Tue, 21 Feb 2012 18:20:47 +0000 (18:20 +0000)]
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.
Ton Roosendaal [Tue, 21 Feb 2012 18:15:28 +0000 (18:15 +0000)]
Text fix:
Added #blender to list of recommended irc channels.