Commit Graph

7685 Commits

Author SHA1 Message Date
Ben Batt
879fa3cb4e 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.
2006-08-13 14:59:05 +00:00
Martin Poirier
e341a4e1f4 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.
2006-08-13 14:18:15 +00:00
Johnny Matthews
cf1964cf9c unmixing code and var declarations. 2006-08-13 12:49:31 +00:00
Matt Ebb
28f23d9b81 * Added Shift MMB in the node editor to pan the backdrop image display 2006-08-13 12:01:07 +00:00
Ton Roosendaal
4718a22cd0 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.
2006-08-13 11:11:22 +00:00
Ton Roosendaal
b416e3eeb4 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...)
2006-08-13 10:16:07 +00:00
Campbell Barton
3526235446 Added .radius support for curves, and material's lightGroup 2006-08-13 10:13:19 +00:00
Ton Roosendaal
bdb12f23cf 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.
2006-08-13 10:03:07 +00:00
Matt Ebb
e3d78dd4e1 * 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.
2006-08-13 08:31:59 +00:00
Matt Ebb
d3028ec70d * 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.
2006-08-13 07:37:51 +00:00
Campbell Barton
515fe83f97 added __copy__ to mesh and object types, fixed a monor bug in setTexMesh and made Mesh.c use G.totMesh properly. 2006-08-13 01:51:47 +00:00
Ton Roosendaal
f27acb2e7c 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...
2006-08-12 12:33:24 +00:00
Ton Roosendaal
e47137ff42 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.
2006-08-12 11:27:00 +00:00
Geoffrey Bantle
3be0a5ad70 -> 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.
2006-08-12 03:32:08 +00:00
Ton Roosendaal
0c571a4d5c 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.
2006-08-11 09:20:52 +00:00
Ton Roosendaal
342671308c 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
2006-08-11 09:09:50 +00:00
Geoffrey Bantle
e96c813cc3 -> 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.
2006-08-11 07:24:33 +00:00
Matt Ebb
e31478f129 Tiny header include fix for a warning I introduced earlier. 2006-08-11 00:26:35 +00:00
Ton Roosendaal
411332d953 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.
2006-08-10 13:48:04 +00:00
Ton Roosendaal
7440aba482 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)
2006-08-10 10:38:50 +00:00
Ton Roosendaal
86d72cb7d4 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.
2006-08-09 12:53:49 +00:00
Ton Roosendaal
6ca354f660 Bugfix #4811
Videoscape export wrote color value wrong on little endian systems,
when no material was assigned to object (default color).
2006-08-09 12:36:28 +00:00
Campbell Barton
567f1bef14 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.
2006-08-09 11:39:35 +00:00
Ton Roosendaal
8cd491750e 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.
2006-08-09 10:49:52 +00:00
Ton Roosendaal
c56f04cb5f 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
2006-08-09 10:00:27 +00:00
Ton Roosendaal
6c48d7bda2 Bugfix #4843
Added a call to compatible_eul() after applying camera rotation in fly,
this ensures you can insert rotation keys nicer.
2006-08-09 09:56:27 +00:00
Ton Roosendaal
6e4b28968a Bugfix #4847
Metaball editmode: when editing a linked duplicate, hiding a ball caused
a crash.
2006-08-09 08:53:21 +00:00
Campbell Barton
a5d0af3b4f Type in effect docs, edited some of the object docs also. 2006-08-09 01:53:34 +00:00
Campbell Barton
49e778ed7f Commiting JMS's patch for particles with modifications. 2006-08-09 01:37:17 +00:00
Joilnen Leite
27925d1bf0 fix for bug 4819
.
2006-08-08 17:07:39 +00:00
Campbell Barton
b44ae44c72 Made RotationMatrix accept values outside 360,
added object.type to be used instead of .getType()
2006-08-08 14:34:38 +00:00
Ton Roosendaal
fde5381a94 Fix for Bugfix #4797
In revision 1.13 of pipeline.c a 'return' was added in middle of function,
skipping the free Imbuf.
2006-08-08 12:56:44 +00:00
Tom Musgrove
97e259a827 ==unweld script update==
spelling and grammatical changes..
2006-08-07 19:04:17 +00:00
Tom Musgrove
aaa7182aea ==unweld script update==
unweld script updated by JMS, brings script in line with the draft scripting guidelines thanks
2006-08-07 18:40:58 +00:00
Campbell Barton
531cd7c0fc Removed debug line added when testing for matrix memory leaks that messed up matrix.invert()
updated bvh import which was modified to account for that. as well as other minor changes.
2006-08-06 22:47:57 +00:00
Campbell Barton
4c2ce83986 undid commit to stop overdrawing IPO verts, it assumed that ipo verts were in order which it seems there not. (only the IPO;s I tested with were)
Still might be worth looking into somehow not drawing all the points.
2006-08-06 13:23:22 +00:00
Campbell Barton
e1828bbb63 added rotate 90d to obj export as default to match importer 2006-08-06 11:32:12 +00:00
Campbell Barton
aba435cbc1 Added setName and setFilename as well as making name and filename writable. 2006-08-06 10:47:12 +00:00
Campbell Barton
aaec000545 Made Font.c's pack/unpack work like Sound.c's 2006-08-06 09:51:40 +00:00
Campbell Barton
80f5a232d9 modified Text3d.Font
* Renamed Text3d.Font.New() to Text3d.Font.Load() since New was acring like load anyway.
* Text3d.Font.Get() was just calling Text3d.Font.New(),
  made it get from a name or return a list of all fonts.
* implimenetd getsetattrs
* removed references to bones in the error messages
* added users variable
* renamed name to filename and added access to id.name
2006-08-06 07:34:25 +00:00
Campbell Barton
199ac30459 dont draw IPO points outside the ipo view, avoid extra looping also. 2006-08-05 04:30:59 +00:00
Kent Mein
e4a9ad6d62 I Added a dummy Error Handler temporarly while it trys to
open the tablet and friends up....

Basically the issue this fixes is this.  On my linux machine at
work someone setup a generic xorg.conf file that defines all
kinds of devices (a tablet and other stuff) which are not on my
machine.  So blender was exiting when it tried to open the tablet
and failed.  Now it doesn't.... :)

I also did some very minor reformatting... (replaced parts that had spaces
with tabs)

Kent
2006-08-04 15:08:36 +00:00
Campbell Barton
a8461d2c40 DNA_ipo_types.h comments only
other are changes so calchandles_ipocurve only calc handels on a bezier line.
This makes bvh import faster but should also speed up internal IPO operations.
2006-08-04 14:08:21 +00:00
Campbell Barton
0c748032a6 benchmark bvh output..
spellchecked/expanded comments in armature_symetry.py and tweaked functionality
2006-08-04 12:48:29 +00:00
Campbell Barton
4ae12081c0 found that the rotation order is as defined in the BVH file, store and apply the rotations in this order. 2006-08-04 08:53:28 +00:00
Matt Ebb
8899116fc2 * Added tablet tilt data collection for X11 2006-08-03 16:10:16 +00:00
Johnny Matthews
8dbefad451 --Value Squeeze Node--
This material node takes an input value of any size and fits it to a sigmoid curve (value between 0 and 1) The width of the curve can set to make the sigmoid fall off faster (bigger number) or slower (smaller number) and the centerpoint (what value is mapped to 0.5) can be adjusted as well. Anyone smarter than me can feel free to tweak this and make it better.
2006-08-03 13:22:51 +00:00
Matt Ebb
c22260a7cb * Blender-side stuff for GHOST tablet pressure 2006-08-03 12:25:32 +00:00
Matt Ebb
c85de34c26 * Tablet Pressure support in GHOST
This is 'ported' from Nicholas Bishop's sculpting GSoC tree. I'm bringing it
over now so a) it can be there for when lukep does his GHOST refactor b) it's
something that GHOST should have anyway, particularly now there's interest in
painting tools and c) it's missing support in Windows, so hopefully now some
enterprising Windows coder can add that more easily in the main bf tree.

Right now X11 and Mac OS X are supported. I added and can maintain the Mac OS X
part, but I'm not familiar with the Xinput stuff, which Nicholas wrote. Both
X11 and Mac are collecting active device and pressure, and Mac is also
collecting x and y tilt data. Up to coders how they want to use this info! :)

Although the data's coming in, I haven't actually made this do anything. I
thought it best to leave it to brecht to figure out what he wants to do with the
painting stuff, and I wonder what other interesting uses there could be for it
(proportional edit?). I'll write implementation details in a separate mail to
the committers list.
2006-08-03 12:23:00 +00:00
Kent Mein
454fceb5f5 Solaris was still using compress for make release.
Everyone else was using gzip.  On the latest downloads many of them
are using bzip2, (I think everyone using scons)
So I decided to update make release so that everyone is using
gzip2.  I don't mean to step on anyones toes, I know at least some of
the platform maintainers do not use make though so feel free to change
it back and or to something different for your platform.

While I was at it I also changed default path of OPENEXR to /usr on linux.
Was suggested on mailing list by Matt.
(I'm pretty sure the linux maintainer is using scons)

Kent
2006-08-03 10:48:20 +00:00