Commit Graph

3045 Commits

Author SHA1 Message Date
Ton Roosendaal
34a5739a8a Two fixes in renderpipe...
- Renderwin still used a thread-unsafe malloc, in the header text print

- Setting clipping flags in vertices for parts required a mutex lock after
  all... I thought it would go fine, but noticed on renders with small
  amounts of faces that sometimes faces disappear from a render.
  (was doing movie credits, so all faces are visible! Otherwise it would
  have hardly been noticable...)
2006-03-13 11:01:17 +00:00
Jean-Luc Peurière
2dfc4b9a2f fix for bug #3930 Colour picker broken - HSV sliders
Note : this part of code was quite a mess with things called twice when
not needed, tests for not updating when we want to, and hsv sliders not
handled properly.

I tried to figure what was useful and what was not but cannot garantee i
spotted everything or even fixed it the most proper way, the event callback
nesting making hard to figure what really happen.

However it does work again now
2006-03-13 02:22:48 +00:00
Ton Roosendaal
afc3d1ade3 Sequencer now outputs float buffers to render too, when available. 2006-03-12 19:00:48 +00:00
Ton Roosendaal
0e44aa60b2 Half fix for colorpicker: after using sliders, the redraw callback was
too late... moved it one line up. :)

Still unknown; why doesn't HSV color field not redraw?
2006-03-12 14:51:33 +00:00
Ton Roosendaal
de0262e4c8 New: Import/Export of Cineon and DPX image files. The first is Kodak's
standard for film scanning, 10 bits/channel and logarithmic. DPX is
derived from Cineon as the ANSI/SMPTE industry standard.
DPX supports 16 bits color/channel, linear as well as logarithmic.

Code has been gratefully copied from CinePaint and was integrated in
Blender by Joe Eagar.

According to CinePaint's dev Robin Rowe the DPX code defaults to log
colorspace. Can't find in the code clues yet how to enable/disable that.
However, tests with write/read of DPX seems to show no visible loss by
log conversion code. Might be because it uses the entire 16 bit range...

CinePaint dpx files have been succesfully imported in a Quantel IQ HD/2K
finishing/grading set without problem, so for now I guess we can
use it! :)

Changes in code: added tests for image magic numbers before entering
the actual reading code. Prevents error prints, and makes it faster too.
(Note; this because Blender doesn't check for extensions, but calls
reading functions on every file until one accepts it. :)
2006-03-12 14:11:23 +00:00
Ton Roosendaal
bd151b30ab Pressing Tkey in empty action window crashed... bad pointer handling. 2006-03-12 13:03:40 +00:00
Ton Roosendaal
8a8c70c63a A couple of render improvements;
- Bug fix: the upper tile in a collumn for Panorama render didn't put the
  mainthread to sleep properly. Now panorama renders 25% faster if you had
  set Y-Parts to 4.

- Enabling Compositing in Scene for first time now adds a "Composite" node
  too, so render output gets applied.
- An attempt to render with "Do Composite" without "Composite" node will
  throw an error and stops rendering. In background mode it will just not
  render at all, and print errors.
- Errors that prevent rendering now give a popup menu again.
- Having MBlur or Fields option on will now normally render, but with an
  error print in console (not done yet...)
2006-03-12 11:51:56 +00:00
Brecht Van Lommel
58daa8a370 ==UV Editor==
Ctrl+RMB in local sticky mode now selects as if in sticky mode. This used
to work only in non-sticky mode, but now with local sticky as default,
it's nice to have this functionality working there also.
2006-03-11 21:09:32 +00:00
Ton Roosendaal
6b6511b54c Fix for messy commits in attempt to fix groups wire colors...
- if you add new theme colors, you need to initialize them correctly and
  add that in the usiblender.c version patching for saved themes
- the code for detecting group membership was highly confusing
- group colors were even used for non-groups

Further; I didnt add group theme colors yet, that's not a bug. It's a todo
item I preferred to tackle with having a decent wirecolor system once.
2006-03-11 18:51:41 +00:00
Brecht Van Lommel
5c2805f3cb Fix for bug #3739:
Drawing of multiple materials in texture mode, if there is no texface,
didn't use correct materials.
2006-03-11 17:15:10 +00:00
Brecht Van Lommel
f9b1eb52ad Fix for bug #3997:
Rotating UV coordinates with snapping was image aspect ratio 'corrected'
for non square images. Only snapping for translation should be affected
by the aspect ratio.
2006-03-11 16:39:07 +00:00
Brecht Van Lommel
7d5be54fec Fix for bug #3802: Display problems with modifiers and uv face select
The bug reported here was already fixed some weeks ago, but there were
more issues. Modifier display in face select and paint modes was never
properly finished.

This fixes some small drawing update glitches, and only allows modifiers
that preserve a mapping to the original mesh to be applied. Otherwise
selection and painting isn't even possible.
2006-03-11 16:13:10 +00:00
Ton Roosendaal
85ac48c782 With the commit last week to have curve bevels nice circular (when no
front/back is selected), the UV coordinates for curves should also be
corrected.
This commit re-uses the same code as for Nurbs, to make sure UV coordinates
wrap around nicely.

BUT! I've noticed that Daniel's commit of august in this code actually
broke this UV correction... in his craze to cleanup old code, he missed
the actual functionality. Meaning that in 2.40 and 2.41, "UV orco" texture
coordinates wrap around ugly in Nurbs Surfaces, something that was fixed
in NaN days.

Got no time for tracker now... but I'm sure it's in there! :)
2006-03-11 12:34:50 +00:00
Tom Musgrove
dd210051a4 ==oops==
on reading the function looks like it is instead meant to select isolated edges and verts - doh! so changing back to previous...
2006-03-11 03:23:57 +00:00
Tom Musgrove
38b3660b4a ==bug fix==
3773 - toolbox function name of 'select - non-triangles/quads'

changed to 'select - non-triangle/quad faces'

for clarity (user expected it to select verts and edges from the name)
2006-03-11 02:44:44 +00:00
Joilnen Leite
1c5aa14c5d fix for bug 3970
.
2006-03-10 19:49:25 +00:00
Joilnen Leite
e932576bb7 fix bug 3970
.
2006-03-10 19:47:36 +00:00
Joilnen Leite
0a6c3993bf fix for bug 3970
.
2006-03-10 18:52:49 +00:00
Campbell Barton
96a6e5637e Fixed a mistake where the hrad/tail radius UI numinput didnt check weather the bobne was connected before using the parents tail value for its head. 2006-03-10 02:55:18 +00:00
Geoffrey Bantle
a6ed488b74 -> Path Select Tool
Rewrote path select tool to use binary heap implementation from BLI_heap.h. Incredible speedup! Thanks to Brecht for the tip.
2006-03-09 22:44:14 +00:00
Ton Roosendaal
bbfc41b246 Commit from campbell of march 5 crashes when no object was active and you
do a move to layer...
2006-03-09 22:05:53 +00:00
Mika Saari
a95362f147 Fixed bug "Bug Tracker item #3988", where <builtin> TTF (datatoc_bfont_ttf)
wasn't handled as UTF-8 font but like normal <builtin> font. This caused
Blender to crash.
2006-03-09 16:57:19 +00:00
Ton Roosendaal
d918fcd055 Uncommitted change of Campbell 9 days ago... the rest of the logic
editor now screws up... smells like a bug in alignment code, will need
to be checked on.

(Campbell: you sure checked the buttons before committing this? ;)
2006-03-09 15:56:08 +00:00
Ton Roosendaal
4953b17be2 Improved CTRL+G grouping menu; it now offers a choice to add to any
existing group, using a 2nd menu.
2006-03-09 15:18:53 +00:00
Ton Roosendaal
610a813c0c Bugfix... very ancient one even. When you use multiple screens in a project
with each having different scenes, changing screens didn't call the proper
set_scene() call, which left quite some stuff improperly initialized.

With depsgraph code even causes crashing.
2006-03-09 12:48:13 +00:00
Ton Roosendaal
ef346ebd33 <sob>dropping OpenGL float buffer drawing... it seems that this isn't
a well supported feature for glDrawPixels(), especially on ATIs crashes
happen with it irregularly. (note; drawing float is a regular opengl 1.0
feature...).

Now all scanline/part updates in renderwindow is converted to 32 bits
before drawing, also the in the UV Image window only 32 bits RGBA is drawn.

What is still float: drawing the final image after render in renderwindow,
and drawing the Z or Alpha in renderwindow and UV image.

Of course we need to test this first. :) Will await reports...
2006-03-09 10:13:37 +00:00
Ton Roosendaal
973b442075 Compositing goodie: ESC now works to stop, but it will finish the node it
was working on.
2006-03-08 21:12:48 +00:00
Ton Roosendaal
0bc3e9639b Baking all selected softbody: press ctrl+b in 3d window! 2006-03-08 17:45:32 +00:00
Ton Roosendaal
8d345b916d Test with render window not drawing in frontbuffer anymore. Only enabled
now for OSX though... that's where we can verify if the irregular crashes
will stop (ATI issue, nvidia seems to be OK)

If ATI users for other platforms want to check; just extend the two
#ifdefs I added for frontbuffer drawing. Note; the syntax then becomes

#if defined(__APPLE__) || defined(_YOUR_PLATFORM_)
2006-03-08 12:28:46 +00:00
Ton Roosendaal
2db9b8fe7f Quick feature: "Around Individual Centers" now works in editmode mesh, but
only in Face-Select mode. It then uses for rotate and scaling the face
center itself as reference.

Code uses a loop-in-loop to find the face that belongs to the vertex...
means it will be slow with operations on 10k or more faces. Acceptable
for now, will make it nicer later. :)
2006-03-08 11:07:49 +00:00
Geoffrey Bantle
d51a6020c8 -> Path Select Tool
Added a new tool to the 'W-Key' popup menu in mesh editmode, 'Path Select'.
When exactly two vertices are selected, 'Path Select' will find the shortest
path of vertices between them. There are two methods for determining
the shortest path, one that finds the path with shortest physical
distance, and one that finds the path with shortest topological distance.

Examples:

Original Selection
http://www.umsl.edu/~gcbq44/pathselect.jpg

Path Select - Edge Length
http://www.umsl.edu/~gcbq44/pathselect-shortestphysical.jpg

Path Select - Topological
http://www.umsl.edu/~gcbq44/pathselect-topological.jpg

The tool uses a straightforward implementation of Dijsktra's algorithm
and may be a bit slow on extremely large meshes. As a speedup you can
hide the parts of the mesh that you are not working on and they will
not be searched.
2006-03-08 03:28:17 +00:00
Ton Roosendaal
d0011f3318 Compositing workflow goodie; each 'render result' node now has a button
option to re-render that specific node. Also works for nodes using other
scenes.
2006-03-07 21:26:37 +00:00
Peter Schlaile
327d413eb3 this patch features several cleanups and bugfixes for the sequencer:
- blur works again (this was a serious bug in gamwarp...)
- seperates all sequence effects into a seperate file with a clean interface
- thereby fixing some obscure segfaults
- seperates the scope views into a seperate file
- adds float support to all effects and scope views
- removes a bad level call to open_plugin_seq
- FFMPEG seeking improved a lot.
- FFMPEG compiles with debian sarge version cleanly
- Makes hdaudio seek and resample code really work
2006-03-07 20:01:12 +00:00
Ton Roosendaal
800e6400dc CTRL+C Copy Menu now includes modifiers for Curve objects. 2006-03-07 13:29:25 +00:00
Campbell Barton
d16254cc2c Rather then just complaining it cant be done, made M move objects out of the current localview.
This is quicker then switching to non localview, de-selecting and going back into localview.
  Test by pressing Mkey in localview.
2006-03-06 01:11:56 +00:00
Ton Roosendaal
8da71e806e Added CTRL+L link copy and SHIFT+L link select for group-duplicators. 2006-03-05 22:31:32 +00:00
Ricki Myers
8ba4f45ec6 Removes warning in drawtext.c 2006-03-05 19:56:31 +00:00
Ricki Myers
7cf600be30 Adds menu item in text editor under format menu to convert whitespace to
Spaces or to tabs.
Adds function void convert_tabs(struct SpaceText *st, int tab)
int tab is eather 0 or 1; 1 if converting to tabs
I was going to make this auto run when running a script but did not know what that would do to the GE or any thing else.
2006-03-05 19:50:14 +00:00
Jean-Luc Peurière
f325da228c fix for bug #3655
adding a DAG update like in other implantations of the call supress
the crash on remove double.

added the undo push too to be consistant
2006-03-05 18:34:49 +00:00
Andrea Weikert
f6cd40ee40 === code cleanup ===
Replacing strcpy with BLI_strncpy where it's safe.
Was part of patch #2840 - thanks Eric Forsythe.
2006-03-05 16:36:32 +00:00
Chris Want
58f4fcfd6e Some C conpilers only want variables to be initialized with constants,
and will not allow variables to be initialized with the contents of
other variables.
2006-03-05 14:56:51 +00:00
Ton Roosendaal
2cabdfa37b Dupli-Group fix: when using multiple instances of groups, with groups on
different layers, the layer flags of objects got mixed up on selection.

This caused groups to become unselectable or uneditable, also the original
group...
2006-03-04 17:05:28 +00:00
Geoffrey Bantle
932717da38 -> Silly mistake in loop_multiselect() in editmesh_mods.c, called EM_select_flush() instead of EM_selectmode_flush()... Oops! 2006-03-03 18:00:33 +00:00
Ton Roosendaal
524a2d24ac New copy option in CTRL+C menu: copy autosmooth settings. 2006-03-02 22:54:12 +00:00
Ton Roosendaal
a85d160a3e Feature: Sofbody bake "Local"
Sofbody simulation happens in global coordinate space, and this was also
used for baking softbodies. Too bad you cannot re-use or further animate
the baked softbody then... :)

If you now use the new "Local" button in the Bake menu, it will allow to
animate or move the baked object.
2006-03-01 23:45:25 +00:00
Brecht Van Lommel
b9861d2a80 Array modifier patch by Ben Batt! (#3788)
This modifier allows to make arrays of meshes, with multiple offset types:
- constant offset
- offset relative to object width
- offset with scale and rotation based on another object

The number of duplicates can be computed based on a fixed count, fixed length
or length of a curve. Duplicate vertices can be automatically merged.

Nice docs and example files available in the wiki:
http://mediawiki.blender.org/index.php/BlenderDev/ArrayModifier
2006-03-01 15:30:10 +00:00
Geoffrey Bantle
13a1a4c15e -> Vertex Group/Weight support in removedoublesflag()
Remove doubles didn't previously deal with vertex groups/weights properly. Now it averages the weights of vertices when they are doubles and share the same group. Verts that get merged but don't belong to all the same groups are dealt with as well.
2006-03-01 03:33:45 +00:00
Ton Roosendaal
3ecee5f154 Complex issue in group duplicators... since they can duplicate entire
animation systems, all transforms of all duplicated group members have
to be set first, before drawing or converting for render. This because
then still deformation can be calculated.
2006-02-28 20:43:21 +00:00
Geoffrey Bantle
3662ce0045 -> Loop MultiSelect
Added new function in editmesh_mods.c, "loop multiselect" and can be
accessed via the CTRL-E popup menu in editmode. It is used to select
multiple edge loops/rings based upon the current selection set. It does
this simply by looping through a list of currently selected edges and
calls 'edge_loop_select' or 'edge_ring_select' for each one. This can
be used to build large selection sets quickly, as can be seen in
the following example images...

step 1 - http://www.umsl.edu/~gcbq44/multiselectA.jpg
step 2 - http://www.umsl.edu/~gcbq44/multiselectB.jpg
step 3 - http://www.umsl.edu/~gcbq44/multiselectC.jpg

-> Misc

While I was in there I fixed a couple of existing issues as well...

- "Select Less" now gets a proper undo push.
- countall() wasn't being called after inclusive selection mode conversion
- some strange formatting in EM_convertsel() in editmesh_lib.c fixed.
2006-02-28 02:28:45 +00:00
Ton Roosendaal
23f9960db9 Restored the free_imbuf_seq_except() in sequencer, to free all memory
of sequencer, except current frame. Apparently the cache limitor doesnt
work for floatbuffers yet... and while rendering, I prefer to have all
memory available for the render itself.

Schlaile; you might check on what is wrong, in case imbufs have have
a rect_float or zbuf_float, the cache doesnt work yet?
2006-02-27 19:36:42 +00:00