blender.git
13 years agofixed a crash in selecting edges based on face angle with some hidden edges.
Campbell Barton [Mon, 28 Aug 2006 03:14:54 +0000 (03:14 +0000)]
fixed a crash in selecting edges based on face angle with some hidden edges.

13 years agoIntegration of the Google Summer of Code Modifier Stack Upgrade project. The
Ben Batt [Mon, 28 Aug 2006 01:12:36 +0000 (01:12 +0000)]
Integration of the Google Summer of Code Modifier Stack Upgrade project. The
main features are:
* Modifiers can now be in any order in the modifier stack
* DerivedMesh now has a standard framework for custom element data to be passed
  through the stack with mesh data (being copied and interpolated as
  appropriate), so modifiers can access whatever data they need
* The modifier stack code has been refactored and a number of bugs have been
  removed
* The EdgeSplit modifier has been added:
  http://mediawiki.blender.org/index.php/BlenderDev/EdgeSplitModifier
* The DerivedMesh modifier has been added:
  http://mediawiki.blender.org/index.php/BlenderDev/DisplaceModifier
* The UVProject modifier has been added:
  http://mediawiki.blender.org/index.php/BlenderDev/UVProjectModifier

For more info, see:
http://mediawiki.blender.org/index.php/User:Artificer/ModifierStackUpgrade
(currently undergoing reorganisation)

13 years agoAdded scn.objects.new(obbdata) as a way of adding object data to a scene and createin...
Campbell Barton [Sun, 27 Aug 2006 16:27:34 +0000 (16:27 +0000)]
Added scn.objects.new(obbdata) as a way of adding object data to a scene and createing the object data at once.
This functionality will probably be moved later on after discussion.

13 years agoTexturepaint now supports all the imagepaint brush settings, with the
Brecht Van Lommel [Sun, 27 Aug 2006 13:29:00 +0000 (13:29 +0000)]
Texturepaint now supports all the imagepaint brush settings, with the
exception of the clone tool.

One level undo for image- and texturepaint, only storing those tiles
that changed.

Test to improve texturepaint performance using glTexSubImage2D, only
enabled with 2^n sized textures and mipmapping off. Painting a 2048x2048
texture is then pretty smooth here, as long as the geometry is not too
complex.

13 years agoBugfix: selection in the sequencer with RMB emulation on Mac OS X
Brecht Van Lommel [Sun, 27 Aug 2006 13:03:23 +0000 (13:03 +0000)]
Bugfix: selection in the sequencer with RMB emulation on Mac OS X
always worked as if shift was pressed.

13 years agoBugfix #4935
Ton Roosendaal [Sun, 27 Aug 2006 12:27:21 +0000 (12:27 +0000)]
Bugfix #4935

July 10 commit accidentally included a testing line for a selection debug
session in IRC... that line saved a /tmp/rt.png file on each border select
in EditMode with 'visible selection' on.

13 years agoBugfix #4923
Ton Roosendaal [Sun, 27 Aug 2006 11:55:32 +0000 (11:55 +0000)]
Bugfix #4923

Particle distribution error when using Vertex Weights.
In the unlucky case the last face in a Mesh has no weight (zero), the code
that tries to distribute particles evenly accidentally could assign it
still a particle, because of the 'remainder' calculus.

Also only happens in cases where the remainder has a value.
So a workaround is also to increase/decrease amount of particles.

13 years agoerrorin mathutils docs, rowSize not rowsize same with colSize
Campbell Barton [Sat, 26 Aug 2006 16:01:25 +0000 (16:01 +0000)]
errorin mathutils docs, rowSize not rowsize same with colSize

13 years agoAdded a new iterator type to the scene - scene.objects should eventualy be used in...
Campbell Barton [Sat, 26 Aug 2006 09:53:26 +0000 (09:53 +0000)]
Added a new iterator type to the scene - scene.objects should eventualy be used in place of scene.getChildren() and linking objects to the scene.

13 years agoMetaball wasnt checking the length of any of the input arg lists which resulted in...
Campbell Barton [Sat, 26 Aug 2006 07:26:04 +0000 (07:26 +0000)]
Metaball wasnt checking the length of any of the input arg lists which resulted in errors in unrelated parts of the script.
Updated the doc too and added a longer example (converting an envalope armature into a meta object)

13 years agoadded tipRadius and headRadius bone properties
Campbell Barton [Sat, 26 Aug 2006 05:40:58 +0000 (05:40 +0000)]
added tipRadius and headRadius bone properties

13 years agoAdded missing settings to Modifiers (could not set on Render/Cage/Editmode :/)
Campbell Barton [Sat, 26 Aug 2006 03:18:55 +0000 (03:18 +0000)]
Added missing settings to Modifiers (could not set on Render/Cage/Editmode :/)
added GPL header to Group.c

13 years agocleanup and some speedups with assigning materials
Campbell Barton [Fri, 25 Aug 2006 18:05:05 +0000 (18:05 +0000)]
cleanup and some speedups with assigning materials

13 years ago===Python API===
Ken Hughes [Fri, 25 Aug 2006 16:01:16 +0000 (16:01 +0000)]
===Python API===
More additions for Mesh.faces.extend(); allow faces with 2 verts or duplicate
verts to remain in the input list (although they are still not added to the
mesh) so that indexList option can return None for them.  The goal is for all
faces which are discarded to still be ignored but return None.

13 years agosimplified 3ds mesh importing by storing verts and faces in a list rather then a...
Campbell Barton [Fri, 25 Aug 2006 09:10:06 +0000 (09:10 +0000)]
simplified 3ds mesh importing by storing verts and faces in a list rather then a mesh, before making the final mesh
also make use of meshes faces.extend() indexList option- which means lots of checking can be removed.

indexList is not relyable at the moment so some files wont import but this will be fixed.

13 years ago===Python API===
Ken Hughes [Thu, 24 Aug 2006 20:02:22 +0000 (20:02 +0000)]
===Python API===
New keyword parameters for Mesh.faces.extend() method:
  * ignoreDups: turns off checks for duplicate faces in the input list and
    existing mesh faces.  Intended for constructing new meshes where the
    faces are known to be unique.
  * indexList: makes the method return a list of new faces indices, which
    can be used to index new faces to add other attributes like color.  If
    duplicate faces are removed, None is placed in their list slot.

13 years ago===Python API===
Ken Hughes [Thu, 24 Aug 2006 19:28:36 +0000 (19:28 +0000)]
===Python API===
Bugfix: Mesh.faces.extend() would incorrectly add duplicate faces in some
circumstances.

13 years agoBugfix: structure declaration in the middle of code was breaking compilation.
Ken Hughes [Wed, 23 Aug 2006 00:42:48 +0000 (00:42 +0000)]
Bugfix: structure declaration in the middle of code was breaking compilation.

13 years ago===Python API===
Ken Hughes [Tue, 22 Aug 2006 18:08:57 +0000 (18:08 +0000)]
===Python API===
Fix return value problem in Mesh_getFakeUsers(): compiler warning in this case
was indicating a real bug.

13 years agoStubs for verse (maybe the verse files should be moved from src/
Chris Want [Tue, 22 Aug 2006 13:19:59 +0000 (13:19 +0000)]
Stubs for verse (maybe the verse files should be moved from src/
to blenkernel/intern/ ?)

13 years ago* Patch #4909 by Joseph Eagar (joeedh)
Nathan Letwory [Tue, 22 Aug 2006 13:04:07 +0000 (13:04 +0000)]
* Patch #4909 by Joseph Eagar (joeedh)

  - this patch adds verse support for SCons, which can be enabled by
    giving WITH_BF_VERSE=1, ie. on command-line
  - this patch also adds a custom lib dir possibility. From the patch description:

 "To set a custom ../lib dir, put LCGDIR="path to lib dir, including the platform folder name!" in your user-config.py."

* Fixed win32-vc-config.py so that it links to the proper library. Reported by Brandano.

13 years ago- modified patch #4681, for scons compiling
Nils Thuerey [Tue, 22 Aug 2006 11:18:00 +0000 (11:18 +0000)]
- modified patch #4681, for scons compiling
  of the fluidsim can now be disabled with the
flag: BF_NO_ELBEEM='true', e.g. for irix systems.
(The number of ifdefs from the original
patch was reduced, and the defines are now
only necessary when elbeem is switched off.)
- particle generation option is available again

13 years ago - bug fix of verse server and verse library backported from verse cvs
Jiri Hnidek [Tue, 22 Aug 2006 11:10:31 +0000 (11:10 +0000)]
 - bug fix of verse server and verse library backported from verse cvs

13 years agoelbeem update:
Nils Thuerey [Tue, 22 Aug 2006 10:45:19 +0000 (10:45 +0000)]
elbeem update:
- slightly improved and optimized
  handling of moving obstacles
- cleanup of debug messages and minor fixes

13 years agoadded fakeUser property to mesh (will need to add to all other library datablocks...
Campbell Barton [Tue, 22 Aug 2006 09:13:44 +0000 (09:13 +0000)]
added fakeUser property to mesh (will need to add to all other library datablocks too)
and added __copy__ to quat and euler types as well as updating the docs.

13 years ago===Python API===
Ken Hughes [Mon, 21 Aug 2006 19:11:43 +0000 (19:11 +0000)]
===Python API===
Fix various typos in Modifier, IpoCurve and Armature docs.

13 years ago===Python API===
Ken Hughes [Mon, 21 Aug 2006 14:36:11 +0000 (14:36 +0000)]
===Python API===
Bugfix: unary minus on a point object should not modify the original point
data but return a new point.

13 years ago - uncommit my personal hack of nan_compile.mk, which came to cvs with
Jiri Hnidek [Mon, 21 Aug 2006 14:22:08 +0000 (14:22 +0000)]
 - uncommit my personal hack of nan_compile.mk, which came to cvs with
   huge commit of verse ... this shouldn't be there, I'm sorry

13 years agoremoved the unpopular 'ed' functions, and added .copy() to Mathutils vector and matrix
Campbell Barton [Mon, 21 Aug 2006 13:52:32 +0000 (13:52 +0000)]
removed the unpopular 'ed' functions, and added .copy() to Mathutils vector and matrix
(inverted, normalized, transposed)

making an inverted copy of an objects matrix used to be.. (2.42)

  imat= Mathutils.Matrix(ob.matrixWorld)
  imat.invert()

# inverted.. I added but now removed

  imat= ob.matrixWorld.inverted()

# with copy (current functionality)...

  imat= ob.matrixWorld.copy().invert()

13 years ago - bug fix, bug reported by Campbel, thanks! Keep in mind, that integration
Jiri Hnidek [Mon, 21 Aug 2006 13:19:18 +0000 (13:19 +0000)]
 - bug fix, bug reported by Campbel, thanks! Keep in mind, that integration
   of verse supports only sharing of mesh geometry now, you can't share
   vertex color, vertex weight, etc.

13 years agoTwo small fixes for armature editing:
Ton Roosendaal [Mon, 21 Aug 2006 10:27:17 +0000 (10:27 +0000)]
Two small fixes for armature editing:

- CTRL+Click bones in editmode gave too small envelope distances (was 0.1
  instead of 0.25*bone->length)
- PoseMode: ALT+S in Envelope drawmode only scaled the Parent Bone(s).

13 years ago added verse library (release r6) to extern directory
Jiri Hnidek [Sun, 20 Aug 2006 16:09:03 +0000 (16:09 +0000)]
 added verse library (release r6) to extern directory

13 years agoHuge commit: VERSE
Jiri Hnidek [Sun, 20 Aug 2006 15:22:56 +0000 (15:22 +0000)]
Huge commit: VERSE
 - All code is in #ifdef ... #endif
 - Only make build system is supported and you have to add:
    export WITH_VERSE=true
   to user-def.mk file
 - Blender can share only mesh objects and bitmaps now
 - More informations can be found at wiki:
    http://mediawiki.blender.org/index.php/BlenderDev/VerseIntegrationToBlender
    http://mediawiki.blender.org/index.php/BlenderDev/VerseIntegrationToBlenderUserDoc

  I hope, that I didn't forget at anything

13 years agoFixes for:
Andrea Weikert [Sun, 20 Aug 2006 14:41:13 +0000 (14:41 +0000)]
Fixes for:
[ #4337 ] Cant refresh the C:\
[ #4710 ] Wrong paths in file selector under user prefs
[ #4353 ] Using ^ char + click on Open/Load = Blender crash

Details:

Fixes for root paths like C:\ on Windows, where Blender still used '/'.

Also contains fixes for relative paths:
- no relative paths for the default dirs (forced to absolute)
- message if using relative paths when .blend file hasn't been saved.

Lastly also added '.' for refresh in root paths. Windows
FindFirstFile/FindNextFile also return '.' and '..', but not in root paths like C:\

13 years agoFixing stuff without using brains... shouldn't do that too often! :)
Ton Roosendaal [Sun, 20 Aug 2006 12:38:06 +0000 (12:38 +0000)]
Fixing stuff without using brains... shouldn't do that too often! :)

This fixes my commit of august 13th, that cleaned up the code for
drawing optional buttons for Constraint targets.
Now, Bone target buttons are corectly drawn, when a target is Armature.

(also bug report #4907)

13 years agoCommit of 2006/08/18, in compositor, had a debug print in armature...
Ton Roosendaal [Sun, 20 Aug 2006 11:45:27 +0000 (11:45 +0000)]
Commit of 2006/08/18, in compositor, had a debug print in armature...

13 years agoBugfix #4906
Ton Roosendaal [Sun, 20 Aug 2006 11:02:31 +0000 (11:02 +0000)]
Bugfix #4906

Python API bug: Importing ipo curves did a memcpy() on a 1 item too large
data block. I wonder how IpoCurve_append() would have ever worked...

13 years agoBugfix #4892
Ton Roosendaal [Sun, 20 Aug 2006 10:18:01 +0000 (10:18 +0000)]
Bugfix #4892

Compositor: Image nodes used for Movie files didn't convert the relative
paths (if used), so it could not load the movie file.

This bug explains why sometimes movies worked in the Compositor... so for
the current release the bypass is to disable the "Relative" button in the
File Window.

13 years ago=== MSVC 7 project files ===
Andrea Weikert [Sat, 19 Aug 2006 14:22:36 +0000 (14:22 +0000)]
=== MSVC 7 project files ===
maintenance work: removed img module following the other build systems
due to this commit:
http://projects.blender.org/pipermail/bf-blender-cvs/2006-July/007415.html

13 years agoAdded another example for Curve in the epy docs
Campbell Barton [Sat, 19 Aug 2006 11:00:11 +0000 (11:00 +0000)]
Added another example for Curve in the epy docs

13 years agoFix: Previous check for front and back filling when using fattened curves was
Matt Ebb [Sat, 19 Aug 2006 06:44:29 +0000 (06:44 +0000)]
Fix: Previous check for front and back filling when using fattened curves was
too strict and ignored bevel objects. Fixed this.

13 years agoPlumiferos bugreport:
Ton Roosendaal [Fri, 18 Aug 2006 08:16:34 +0000 (08:16 +0000)]
Plumiferos bugreport:

The Blur node didn't pass on a buffer when the 'factor' value was not
exactly zero. Tiny values (like 0.0000001) or even negative ones were
still handled by the blur code.

13 years ago-> Adjustable Tolerance for Knife Exact Snapping
Geoffrey Bantle [Fri, 18 Aug 2006 06:08:21 +0000 (06:08 +0000)]
-> Adjustable Tolerance for Knife Exact Snapping

Vertex Snapping for 'Knife Exact' tool was originally set at 75 pixels. Now its adjustable via the 'threshold' value in the editing context of the buttons window. I also changed the tooltip to reflect this.

13 years agoAdded an example to Modifer.py epy docs
Campbell Barton [Fri, 18 Aug 2006 01:56:18 +0000 (01:56 +0000)]
Added an example to Modifer.py epy docs

13 years agofix case on a header. (seems odd that it wasn't caught before but
Kent Mein [Thu, 17 Aug 2006 23:52:58 +0000 (23:52 +0000)]
fix case on a header.  (seems odd that it wasn't caught before but
is consitant with rest of file, so I feel pretty safe commiting it.

Kent

13 years ago===Python API===
Ken Hughes [Thu, 17 Aug 2006 21:39:49 +0000 (21:39 +0000)]
===Python API===
Patch from jms: adds attributes effect.disp and effect.staticStep.

13 years ago===Python API===
Ken Hughes [Thu, 17 Aug 2006 21:36:56 +0000 (21:36 +0000)]
===Python API===
Bugfix #4886: deleting a bone would disconnect bones when it shouldn't have.
Thanks to Michael Ward (easybreasy) for locating the problem.

13 years agokeeping up MSVC6 project build
Jens Ole Wund [Thu, 17 Aug 2006 07:45:41 +0000 (07:45 +0000)]
keeping up MSVC6 project build

13 years agoAdded Armature.New()
Campbell Barton [Thu, 17 Aug 2006 07:14:29 +0000 (07:14 +0000)]
Added Armature.New()

13 years agoChanged previous commit.
Kent Mein [Wed, 16 Aug 2006 20:47:54 +0000 (20:47 +0000)]
Changed previous commit.
Brings it more inline with the rest of blender as far as international
optinality goes...

Kent

13 years ago===Python API===
Ken Hughes [Wed, 16 Aug 2006 19:20:37 +0000 (19:20 +0000)]
===Python API===
Patch to Mesh and NMesh APIs to bring FaceModes dict into sync (thanks jms).

13 years agoadded missing #ifdef INTERNATIONAL around: refresh_interface_font();
Kent Mein [Wed, 16 Aug 2006 18:14:42 +0000 (18:14 +0000)]
added missing #ifdef INTERNATIONAL around:     refresh_interface_font();

Kent

13 years agoAdded python __copy__ to Camera, Lattice, Metaball and World.
Campbell Barton [Wed, 16 Aug 2006 14:06:24 +0000 (14:06 +0000)]
Added python __copy__ to Camera, Lattice, Metaball and World.

13 years agoObject.c - Fixed dupli variable flags
Campbell Barton [Wed, 16 Aug 2006 06:19:08 +0000 (06:19 +0000)]
Object.c - Fixed dupli variable flags

13 years agoA mesh from the Blender python Mesh module can sometimes have
Chris Want [Wed, 16 Aug 2006 01:06:38 +0000 (01:06 +0000)]
A mesh from the Blender python Mesh module can sometimes have
a materials array with entries that are 'None'. Added some code
to check for this perverse situation.

13 years agoBugfix #4890
Ton Roosendaal [Tue, 15 Aug 2006 13:30:06 +0000 (13:30 +0000)]
Bugfix #4890

Driver relations for Constraints (in Actions, Armatures) were not in
depsgraph yet.

13 years ago===Python API===
Ken Hughes [Tue, 15 Aug 2006 13:16:10 +0000 (13:16 +0000)]
===Python API===
Change documentation of ProtectFlags dictionary from SIZE to SCALE.

13 years agoBugfix #4857
Ton Roosendaal [Tue, 15 Aug 2006 11:33:00 +0000 (11:33 +0000)]
Bugfix #4857

Boundbox code for display lists lacked a check for empty Curve/Surface
objects, causing a boundbox to be giant (initialized huge values). That
frustrates code like 'view3d home', or 'centered object view'.

(Commit in view.c is only a little bit code cleanup)

13 years agoAdded __copy__ to armature, material, curve, group
Campbell Barton [Tue, 15 Aug 2006 11:24:08 +0000 (11:24 +0000)]
Added __copy__ to armature, material, curve, group

13 years ago - updated python api doc string for Object_SetDrawMode()
Jiri Hnidek [Tue, 15 Aug 2006 11:06:00 +0000 (11:06 +0000)]
 - updated python api doc string for Object_SetDrawMode()

13 years agoFix for issue found in IRC:
Ton Roosendaal [Tue, 15 Aug 2006 09:41:33 +0000 (09:41 +0000)]
Fix for issue found in IRC:

The Object Buttons, Constraint panel, didn't show Object constraints for
armatures when Armature was not in PoseMode. It was always drawing the
constraints for the active Bone...
Solved with a decent check in beginning of function, and have all types
use that.

13 years agoBugfix #4806
Ton Roosendaal [Tue, 15 Aug 2006 08:56:48 +0000 (08:56 +0000)]
Bugfix #4806

Reports came in that Elephants Dream files crash on quit or loading other
files. Was caused by freeing Material Nodes, which was accessing memory
that potentially was just freed before (node->id). Apparently only Windows
really gives issues then, which is actually a good thing :)

13 years agoimproved TexMesh tooltip, always wondered what it did until recently.
Campbell Barton [Tue, 15 Aug 2006 06:27:33 +0000 (06:27 +0000)]
improved TexMesh tooltip, always wondered what it did until recently.
was "Enter the name of a MeshBlock"
now "Derive texture coordinates from another mesh."
Also changed amb occusion tooltip.

13 years agofixed a problem with UV coords and vert col's when reducing the mesh.
Campbell Barton [Tue, 15 Aug 2006 06:12:55 +0000 (06:12 +0000)]
fixed a problem with UV coords and vert col's when reducing the mesh.

13 years ago===Python API===
Ken Hughes [Mon, 14 Aug 2006 18:01:28 +0000 (18:01 +0000)]
===Python API===
Long-awaited refactor of Object module.  Should not break backward
compatibility -- at least it didn't in my tests -- but I'm requesting users
to put it through heavier testing and report problems through the bug
tracker.

13 years agowas:
Kent Mein [Mon, 14 Aug 2006 17:16:51 +0000 (17:16 +0000)]
was:
BF_FFMPEG_LIBPATH =  '$(BF_FFMPEG)/lib'
Needs to be:
BF_FFMPEG_LIBPATH =  '${BF_FFMPEG}/lib'

There are some commented out ones that should maybe be switched as well
so it doesn't happen again but this fixes the problem for now :)

Kent

13 years ago===Python API===
Ken Hughes [Mon, 14 Aug 2006 16:29:11 +0000 (16:29 +0000)]
===Python API===
Fix compiler warnings in Sound.c and Effect.c.

13 years agoBugfix #4798
Ton Roosendaal [Mon, 14 Aug 2006 13:41:22 +0000 (13:41 +0000)]
Bugfix #4798

Envmap type "Load" didn't work when a new envmap was created for this
type. Seemed to be a very old issue...

Todo still: previews skip envmap...

13 years ago[ #4035 ] patch to make scons compile with ffmpeg in mingw
Nathan Letwory [Mon, 14 Aug 2006 12:47:13 +0000 (12:47 +0000)]
[ #4035 ] patch to make scons compile with ffmpeg in mingw

Submitted by Joseph Eagar (joeedh). windows/gcc ffmpeg library may need recompiling to support all codecs necessary (ie. H264 doesn't work).

13 years agoPatch #4751 - Array modifier merge segfault fix.
Ben Batt [Sun, 13 Aug 2006 15:23:57 +0000 (15:23 +0000)]
Patch #4751 - Array modifier merge segfault fix.

13 years agoFix for bug #4825 - array modifier crashes blender.
Ben Batt [Sun, 13 Aug 2006 14:59:05 +0000 (14:59 +0000)]
Fix for bug #4825 - array modifier crashes blender.

Some faces were not being checked for vertex indices of 0 before remapping,
leading to bad remapping and screwed up output meshes.

13 years agoPatch: Constraints to Limit Transforms (#4662) by Joshua Leung (aligorith)
Martin Poirier [Sun, 13 Aug 2006 14:18:15 +0000 (14:18 +0000)]
Patch: Constraints to Limit Transforms (#4662) by Joshua Leung (aligorith)

This adds three new constraints to limit the range of location, rotation and scaling values.

13 years agounmixing code and var declarations.
Johnny Matthews [Sun, 13 Aug 2006 12:49:31 +0000 (12:49 +0000)]
unmixing code and var declarations.

13 years ago* Added Shift MMB in the node editor to pan the backdrop image display
Matt Ebb [Sun, 13 Aug 2006 12:01:07 +0000 (12:01 +0000)]
* Added Shift MMB in the node editor to pan the backdrop image display

13 years agoBugfix #4882
Ton Roosendaal [Sun, 13 Aug 2006 11:11:22 +0000 (11:11 +0000)]
Bugfix #4882

New toolsettings variable "select_thresh" was not initialized. This caused
the option "similar normals" to not work really (uses a dot product).

It now is initialized (scene.c) as well as corrected in do_versions for
saved files.

13 years agoBugfix #4878
Ton Roosendaal [Sun, 13 Aug 2006 10:16:07 +0000 (10:16 +0000)]
Bugfix #4878

In UV-Face-select mode, a CTRL+click can activate a new Object but keeps the
UV-Face-select mode. This skips the initialization required for this mode,
causing a crash, so it better should end the mode.
(It used to work in past though...)

13 years agoAdded .radius support for curves, and material's lightGroup
Campbell Barton [Sun, 13 Aug 2006 10:13:19 +0000 (10:13 +0000)]
Added .radius support for curves, and material's lightGroup

13 years agoBugfix #4843 revisited
Ton Roosendaal [Sun, 13 Aug 2006 10:03:07 +0000 (10:03 +0000)]
Bugfix #4843 revisited

This is a new incarnation of compatible_eul(), a function called:

void Mat3ToCompatibleEul(float mat[][3], float *eul, float *oldrot)

It uses the two euler extraction methods as added by Brecht a while ago,
and checks for compatibility each, and then picks the best of the two
based on minimal difference with 'oldrot'.

Gives for rotation key inserting a much higher hitrate for OK eulers.

13 years ago* Fix: Disabled radius tapering on 2d curves with filled front or back. It would be
Matt Ebb [Sun, 13 Aug 2006 08:31:59 +0000 (08:31 +0000)]
* Fix: Disabled radius tapering on 2d curves with filled front or back. It would be
really cool to get this working solidly, but there are many potential problems with the
triangle face creation across the flat surfaces, especially when there are holes inside
the curves. Maybe this could be a fun project for someone better at this than I? :)
Taper object curves still cause similar problems...

* Made the curve radius affect the 'Nsize' curve normal drawing too, so you don't need a
bevel to see the value.

13 years ago* Shrink/Fatten for bevelled curves
Matt Ebb [Sun, 13 Aug 2006 07:37:51 +0000 (07:37 +0000)]
* Shrink/Fatten for bevelled curves

This is a much faster and easier way to give a bevelled curve a taper, without
using taper curves. Each point on a curve now has a 'radius' value that you can
shrink and fatten using Alt S, which will influence the taper when the curve is
bevelled (either with a bevob, or with front/back turned off and a bevel dept
set). Alt S shrinks and fattens the selected points in an interactive transform,
and you can set an absolute radius for selected points with 'Set Radius' in the
curve specials menu.

See demo: http://mke3.net/blender/etc/curve_shrinkfatten-h264.mov

This can be a quick way to create revolved surfaces (eg.
http://mke3.net/blender/etc/wineglass-h264.mov ) and it would be very
interesting to use this radius value in other tools, such as a 'freehand curve'
tool that would let you draw a curve freehand, with the radius affected by pen
pressure, or even using the radius at each point to control curve guides for
particles more precisely, rather than the continous maxdist.

13 years agoadded __copy__ to mesh and object types, fixed a monor bug in setTexMesh and made...
Campbell Barton [Sun, 13 Aug 2006 01:51:47 +0000 (01:51 +0000)]
added __copy__ to mesh and object types, fixed a monor bug in setTexMesh and made Mesh.c use G.totMesh properly.

13 years agoBugfix #4872
Ton Roosendaal [Sat, 12 Aug 2006 12:33:24 +0000 (12:33 +0000)]
Bugfix #4872

Posemode, Wkey option "Select constraint target" did not work for Copy
Scale constraint.
Also added a check for NULL pointer, constraint targets cannot exist...

13 years agoBugreport #4787 mentioned subpixel render issues, especially for small
Ton Roosendaal [Sat, 12 Aug 2006 11:27:00 +0000 (11:27 +0000)]
Bugreport #4787 mentioned subpixel render issues, especially for small
images (like used for rendering icons).

When working during Orange on new render pipeline, I've left this topic
alone for a while... subpixel precision testing is very time consuming and
needs concentration for a while. :)

This commit brings back precision as it was for 2.41. Below a short
explanation of the solved issues.

- the window matrix for rendering is kept constant during all OSA passes,
  this to ensure clipping happens for each pass identically.
- a subpixel offset is only applied on filling in the z-buffer
- this offset is inverse corrected for shadepixel code, only on 2 places

Another nasty issue is that for filtered rendering (gauss etc), the tiles
(or entire image) is temporally increased 2 pixel in size. This caused a
'dark' (or sky color) edge on the rendering. During Orange that was solved
with a hardcoded clipping offset value, which only corrected for larger
pictures (like > 500 pixels in size).
Now this clipping offset is correctly calculated, based on render size.

Last issue: the view border in 3d window was calculated using integers,
giving small errors in display too. Now it uses float, so visually the
view border is more close to what a render shows.

13 years ago-> Bugfix (again)
Geoffrey Bantle [Sat, 12 Aug 2006 03:32:08 +0000 (03:32 +0000)]
-> Bugfix (again)

Didn't realize that LMB+ALT was used for middle mouse emulation. Changed
the vertex snap modifier key for knife tool to 'CTRL' and fixed problems
with the drawing of the header instructions.

Also changed color of the knife tool to match that of loopcut tool. This
is easier to see and more consistent from a UI standpoint as well.

13 years agoBugfix 4865
Ton Roosendaal [Fri, 11 Aug 2006 09:20:52 +0000 (09:20 +0000)]
Bugfix 4865

Manipulator orientation tweak: when having multiple objects selected, the
orientation option "Local" was always skipped, showing it global. Now it
uses the orientation of the active object.

The bug reportor noticed a conflict with the "Around" option "Active". In
that case he expected the orientation to be from Active Object as well.

13 years agoBugfix 4783
Ton Roosendaal [Fri, 11 Aug 2006 09:09:50 +0000 (09:09 +0000)]
Bugfix 4783

- draw-extra for Lamps did not follow selection color
- Surface objects were drawing curves always in unselected color, also its
  draw-extra options didn't follow selection color then

13 years ago-> Vertex support for knife tool
Geoffrey Bantle [Fri, 11 Aug 2006 07:24:33 +0000 (07:24 +0000)]
-> Vertex support for knife tool

Previously the knife tool only allowed you to cut through edges. This
approach is limited however, since many times you want to cut through
vertices in order to create precise cuts or terminate a cut in a specific
way. Blenders knife tool now supports cutting through vertices as
demonstrated in these pictures:

http://briggs.zanqdo.com/newknife1.jpg
http://briggs.zanqdo.com/newknife2.jpg

Since the vertex intersection code is very precise, vertex snapping has
been added to the knife tool to assist the user when they wish to cut
through vertices and can be toggled by pressing and holding the 'alt' key.

Notes:
-Vertex cutting and vertex snapping are only available when using the
'knife exact' option.
-Added various fixes to the precision of the knife tool.

13 years agoTiny header include fix for a warning I introduced earlier.
Matt Ebb [Fri, 11 Aug 2006 00:26:35 +0000 (00:26 +0000)]
Tiny header include fix for a warning I introduced earlier.

13 years agoSequence render fix (report Johnny Matthews):
Ton Roosendaal [Thu, 10 Aug 2006 13:48:04 +0000 (13:48 +0000)]
Sequence render fix (report Johnny Matthews):

When a sequencer has mixed use of 32 bits and float images (note, Scene
strip returns float image too), the old 32 bits image should be freed,
otherwise it keeps saving that image.

13 years agoCompositor: finished work on node "File Output".
Ton Roosendaal [Thu, 10 Aug 2006 10:38:50 +0000 (10:38 +0000)]
Compositor: finished work on node "File Output".

- It saves a file with indicated type on each change, with number
  appended denoting the current frame (like ANIM saving).
- Output filename button supports relative paths ("//")
- Shows optional preview image too
- For now, added a print on each file save as feedback

To make this option work nicely, changed the BKE_makepicstring() function
to have less globals inside, so it is more generic. Todo: allow amount of
digits in filenames to be set (to support files like tmp_123456.jpg)

13 years agoBugfix #4810
Ton Roosendaal [Wed, 9 Aug 2006 12:53:49 +0000 (12:53 +0000)]
Bugfix #4810

Particle systems did not support "time offset" anymore, the varialble for
it in the object was cleared in build_particle_system() and never restored.

13 years agoBugfix #4811
Ton Roosendaal [Wed, 9 Aug 2006 12:36:28 +0000 (12:36 +0000)]
Bugfix #4811

Videoscape export wrote color value wrong on little endian systems,
when no material was assigned to object (default color).

13 years agoAdding a cookie cutter that can cut multiple polyline meshes into multiple meshes...
Campbell Barton [Wed, 9 Aug 2006 11:39:35 +0000 (11:39 +0000)]
Adding a cookie cutter that can cut multiple polyline meshes into multiple meshes into a mesh - allong the view axis.
leaving the faces inside the polyline selected.
UV's are maintained but not vertex colors at the moment.

13 years agoBugfix #4830
Ton Roosendaal [Wed, 9 Aug 2006 10:49:52 +0000 (10:49 +0000)]
Bugfix #4830

Preview render in 3d window: when window type changes (like 3d window to
UV window), and you change the window size, and restore to 3d view, the
rendered preview had to be re-initialized.

texture.c: a return was added without value.

13 years agoFixes I did before leaving to siggraph, couldn't commit it due to freeze:
Ton Roosendaal [Wed, 9 Aug 2006 10:00:27 +0000 (10:00 +0000)]
Fixes I did before leaving to siggraph, couldn't commit it due to freeze:

- buffer overflow was possible with providing a file path argument longer
  than 256 characters.
- buttons "VCol Light" and "VCol Paint" were not mutual exclusive
- quicktime error menu (unable to create) had a enter in end
- deleting points in CurveMapping button (like Curves node in compositor)
  did not give proper recalc event
- edges render menu had a tooltip still mentioning the unified render

13 years agoBugfix #4843
Ton Roosendaal [Wed, 9 Aug 2006 09:56:27 +0000 (09:56 +0000)]
Bugfix #4843

Added a call to compatible_eul() after applying camera rotation in fly,
this ensures you can insert rotation keys nicer.

13 years agoBugfix #4847
Ton Roosendaal [Wed, 9 Aug 2006 08:53:21 +0000 (08:53 +0000)]
Bugfix #4847

Metaball editmode: when editing a linked duplicate, hiding a ball caused
a crash.

13 years agoType in effect docs, edited some of the object docs also.
Campbell Barton [Wed, 9 Aug 2006 01:53:34 +0000 (01:53 +0000)]
Type in effect docs, edited some of the object docs also.

13 years agoCommiting JMS's patch for particles with modifications.
Campbell Barton [Wed, 9 Aug 2006 01:37:17 +0000 (01:37 +0000)]
Commiting JMS's patch for particles with modifications.

13 years agofix for bug 4819
Joilnen Leite [Tue, 8 Aug 2006 17:07:39 +0000 (17:07 +0000)]
fix for bug 4819
.