blender.git
14 years agoRemoved a bad return and and unused variable.
Campbell Barton [Tue, 28 Mar 2006 03:20:10 +0000 (03:20 +0000)]
Removed a bad return and and unused variable.
swappsed all // for /**/.

14 years agoFix gcc warning about usage of identifier "main"; renamed the variable to
Ken Hughes [Mon, 27 Mar 2006 22:33:21 +0000 (22:33 +0000)]
Fix gcc warning about usage of identifier "main"; renamed the variable to
"mainptr".

14 years agoAdd structure declaration to beginning of file to fix gcc warnings.
Ken Hughes [Mon, 27 Mar 2006 22:22:08 +0000 (22:22 +0000)]
Add structure declaration to beginning of file to fix gcc warnings.

14 years agoMove variable declaration to beginning of code block, to avoid compiler
Ken Hughes [Mon, 27 Mar 2006 22:20:24 +0000 (22:20 +0000)]
Move variable declaration to beginning of code block, to avoid compiler
warnings or errors.

14 years agoModified editmesh_mods.c
Campbell Barton [Mon, 27 Mar 2006 21:35:31 +0000 (21:35 +0000)]
Modified editmesh_mods.c
Added "Similar Edge Face Angles" to "Select Edge Groups"
This means you can select edges based on the angles of edges in the existing selection.
Only works for edges with 2 face users at the moment.

14 years agoanother couple of uninitalized variables get the axe.
Kent Mein [Mon, 27 Mar 2006 16:15:44 +0000 (16:15 +0000)]
another couple of uninitalized variables get the axe.

This is only to make things predictable until that section of the
code is finished.  Ton said it'd be a good idea to drop in in for now.

Kent

14 years agoMake editmesh edge length and face area drawing's precission proportonate to the...
Campbell Barton [Mon, 27 Mar 2006 14:57:53 +0000 (14:57 +0000)]
Make editmesh edge length and face area drawing's precission proportonate to the gridsize.
Needed when working with small models.

14 years agoneeded to normalize the plane for the manipulator.
Campbell Barton [Mon, 27 Mar 2006 08:52:28 +0000 (08:52 +0000)]
needed to normalize the plane for the manipulator.

14 years agoremoved 2 warnings from Image.py epydocs
Campbell Barton [Mon, 27 Mar 2006 08:34:06 +0000 (08:34 +0000)]
removed 2 warnings from Image.py epydocs

14 years agoSeperated out some functionality into 3 new functions.
Campbell Barton [Mon, 27 Mar 2006 08:25:06 +0000 (08:25 +0000)]
Seperated out some functionality into 3 new functions.
EM_editselection_center
EM_editselection_normal
EM_editselection_plane
These functions are used by the manipulator to get data from an editselection. regardless of weather its a face/edge/vert.

14 years agoSynchronized Bullet physics to latest version.
Erwin Coumans [Mon, 27 Mar 2006 06:37:30 +0000 (06:37 +0000)]
Synchronized Bullet physics to latest version.

- Changed license from MIT to ZLib.
- Added 3D Sweep and Prune contribution
- More stable native constraint solver

Sorry for any inconvenience caused by this checkin.
All Blender buildsystems require update: added files and moved files.

14 years agoAdded rotate about centre for active Vert/Edge/Face in mesh editmode. also works...
Campbell Barton [Mon, 27 Mar 2006 05:28:36 +0000 (05:28 +0000)]
Added rotate about centre for active Vert/Edge/Face in mesh editmode. also works for getting the V/E/F normal. Means we can now rotate about the last selected edge.

14 years ago-> Stored Selections
Geoffrey Bantle [Mon, 27 Mar 2006 05:19:14 +0000 (05:19 +0000)]
-> Stored Selections

Previously Blender did not store the order in which vertices, edges
or faces were selected in edit mode. In many cases it is useful to
have this data, however it is not desirable to store every selection
made. Now blender stores selections in the order in which they were
made in a linked list called 'selected' in  EditMesh. EditSelection structs
are created whenever 'EM_store_selection' from  editmesh_lib.c is called
(currently only on user selection with mouse). There are several cases
in which they might be deallocated by calling the 'EM_remove_selection'
function however:

-When the user deselects something with the mouse ('mouse_mesh' in
 editmesh_mods.c)

-When switching selection modes stored selections that are not relevant
to the new mode are removed by the 'EM_strip_selections' function
(multi-select mode is supported)

-When the vertex, edge or face pointed to by a certain stored selection is
deallocated

-When EM_clear_flag_all is called and where the flag passed to the function
contains the 'SELECT' bitmask.

-When leaving edit mode (making stored selection data persistent across
editing sessions will require modifications to mesh DNA later)

Todo:

There are a few cases still where you can temporarily end up with a stored
selection that points to an element that is no longer selected
(edge loop de-select can cause this for instance). The solution to this is to
add a call to EM_remove_selection from 'EM_select_edge' and 'EM_select_face' when
these functions are being used to deselect elements. For the sake of completeness
however this will also require that an 'EM_select_vert' function be coded and
called at all appropriate parts of the editmesh code. I will look into this
later in the week.

For now there are two tools that already take advantage of the stored selections.
The first one is 'merge at first or last vertex' in the merge menu (the 'firstvert' and
'lastvert' pointers are gone from EditMesh). The second tool is path select, which builds
a path between the last vert selected and the second to last vert selected. This allows you
to build complex path selections in a short amount of time like this
'select A, select B, path select. select C, path select. select D...'

14 years ago=== Transform Display ===
Martin Poirier [Sun, 26 Mar 2006 22:35:03 +0000 (22:35 +0000)]
=== Transform Display ===
Based on a patch by Matthias Derer, this adds the distance moved to a translation (grab) transform
(both 3D and 2D, although the 2D transform displays the normalised distance only).

14 years ago==sequencer==
Tom Musgrove [Sun, 26 Mar 2006 22:31:11 +0000 (22:31 +0000)]
==sequencer==

a tiny patch by Luis de Bethencourt Guimera (luisbg) adds RETKEY as completing a transform for consistency

14 years ago==Sequencer==
Peter Schlaile [Sun, 26 Mar 2006 21:36:42 +0000 (21:36 +0000)]
==Sequencer==
This patch is mostly a usability patch for the sequencer, mainly written by
Anders Gudmundson and twisted a little bit by me.

- Lock Time to other windows
- Possibility to switch the X-Axis between frames and seconds-display
- IPO-Frame Locking for plugins (T-Key)
- Additional Popup to add HD-Sound and Movie at once
- In Timeline-Window: Sequencer windows only playback
- Make the IPOs a little bit IPO-Frame-Lock friendlier (doesn't jump;
  the frame that is drawn has the right dimension)
- Wheel-Mouse buttons make the sequencer window zoom again.
- The "This is not a sound/movie-file message" now reads "... or
  FFMPEG-support not compiled in!" since I learned some prominent
  people who complained, that hdaudio does not work for them ;-)
- Make SPACEKEY open up the "Add Strip"-Popup on the timeline and start
  playback in the preview window.

14 years agoAdded python image pack/unpack per image.
Campbell Barton [Sun, 26 Mar 2006 09:25:30 +0000 (09:25 +0000)]
Added python image pack/unpack per image.

14 years agoselect group with large selections could make blender hang. break out of the loop...
Campbell Barton [Sun, 26 Mar 2006 01:54:52 +0000 (01:54 +0000)]
select group with large selections could make blender hang. break out of the loop when no more can be done.

14 years agoMade group work from multiple selection's (before it used the first selected face...
Campbell Barton [Sun, 26 Mar 2006 01:02:22 +0000 (01:02 +0000)]
Made group work from multiple selection's (before it used the first selected face/vert/edge)
so you can select 2 faces and then get all coplaner faces around both.
Added fp to face and edge edit data so as to store edge length and face area/perimeter. (in the union so minimal overhead)
current implimentation is fairly optimized.

Change to arithb.c was just to command Inpf as being the dot producr.

14 years ago==paint==
Tom Musgrove [Sat, 25 Mar 2006 22:29:48 +0000 (22:29 +0000)]
==paint==

change CKEY to toggle paint on or off in image paint patch by Stephan Kassemeyer

14 years agoFixed a possible bug where counting faces was a short and could be less then the...
Campbell Barton [Sat, 25 Mar 2006 11:51:33 +0000 (11:51 +0000)]
Fixed a possible bug where counting faces was a short and could be less then the number of items selected.
Added Vertex group select menu- Similar Normal|Same FaceUsers|Shared Vertex Groups

14 years agoFixed a but where DupStart and DupEnd (duplivert settings) max values were larger...
Campbell Barton [Sat, 25 Mar 2006 10:06:40 +0000 (10:06 +0000)]
Fixed a but where DupStart and DupEnd (duplivert settings) max values were larger then a short. which made the buttons act oddly.
Also added tooltips.

Idealy these would be unsigned shorts or ints because they should be able to go up to the max frame number 300000.

14 years agoAdded select group edges (Length/Direction/FaceUsers)
Campbell Barton [Sat, 25 Mar 2006 06:32:39 +0000 (06:32 +0000)]
Added select group edges (Length/Direction/FaceUsers)
Added VecAngle2 - needed for grouping by normal and planer faces.
Made select face & edge group ignore hidden faces.
fixed a bug where hiding faces didnt update G.tot*sel

14 years agoAdded select group meny to mesh editmode.
Campbell Barton [Sat, 25 Mar 2006 04:37:40 +0000 (04:37 +0000)]
Added select group meny to mesh editmode.
Currently only works for faces.
Try Shift+G in face/editmode.

14 years agoBugfix #3818: nmesh.insertKey() was not letting Ipo space know to
Ken Hughes [Fri, 24 Mar 2006 21:56:29 +0000 (21:56 +0000)]
Bugfix #3818:  nmesh.insertKey() was not letting Ipo space know to
recalculate, causing a segfault when the curve was selected in the Ipo
window.  lattice.insertKey() has similar code.  Added calls to
allspace(REMAKEIPO,0) to correct this.

14 years agoBugfix #3772: Allows "Center Cursor" for 3D curves to modify the curve
Ken Hughes [Fri, 24 Mar 2006 20:39:38 +0000 (20:39 +0000)]
Bugfix #3772: Allows "Center Cursor" for 3D curves to modify the curve
center's Z location.  An eons-old comment in the code said:

/* Curves need to be 2d, never offset in
 * Z. Is a somewhat arbitrary restriction,
 * would probably be nice to remove. */

I couldn't find any other reason for the restriction other than 2D curves
limit the point's Z component to 0, so added a check to only forve the
center Z to 0 when the curve is 2D.  If there are other reasons for the
restriction, then this commit may need to be rolled back.

14 years agoa bunch of small warnings fixes:
Kent Mein [Fri, 24 Mar 2006 16:40:32 +0000 (16:40 +0000)]
a bunch of small warnings fixes:

newline missing at end of file fixes:
TypedConstraint.h WheelInfo.h RaycastVehicle.h VehicleRaycaster.h
CcdPhysicsEnvironment.cpp

radiance_hdr.c fixed the following warning by changing type of local variable:
radiance_hdr.c:357: warning: pointer targets in passing argument 3 of
‘fwritecol rs’ differ in signedness

edgeRender.c,edgeRender.h same thing changed type of local vars to get rid
of warnings about signedness

RAS_OpenGLRasterizer.cpp removed unused variable unit line 1295

Kent

14 years agoblender -P xxx -b crashed sometimes, still will crash in some cases if the python...
Campbell Barton [Fri, 24 Mar 2006 16:04:55 +0000 (16:04 +0000)]
blender -P xxx -b crashed sometimes, still will crash in some cases if the python functions access screen data. but at least Blender.sys.expandpath wont segfault anymore.

14 years agoMade blender python work in background mode without a blend file loading.
Campbell Barton [Fri, 24 Mar 2006 15:46:26 +0000 (15:46 +0000)]
Made blender python work in background mode without a blend file loading.
Blender.c python initialization creates a scene when in background mode and when there is no scene.
Needed to skip redrawing when in background mode because it depended on screen data that wasnt there.

14 years agoAttempted to unify and document Dupli* stuff.
Campbell Barton [Fri, 24 Mar 2006 08:36:39 +0000 (08:36 +0000)]
Attempted to unify and document Dupli* stuff.
DupGroup
DupObjects
enableDupVerts
enableDupFrames
enableDupGroup
enableDupRot
enableDupNoSpeed

see the epydocs for documentation at http://members.iinet.net.au/~cpbarton/ideasman/BPY_API/Object.Object-class.html - will update in a tick.

14 years agoFix problem with possibly random calls to MEM_freeN() due to uninitialized
Ken Hughes [Thu, 23 Mar 2006 23:54:48 +0000 (23:54 +0000)]
Fix problem with possibly random calls to MEM_freeN() due to uninitialized
variable in NMesh.c

14 years agoUpdated mallocn.c MEM_check_memory_integrity was casting
Kent Mein [Thu, 23 Mar 2006 17:45:40 +0000 (17:45 +0000)]
Updated mallocn.c MEM_check_memory_integrity was casting
a string as an int and it was causing a warning.
I changed it to check to see if the string == 0
return 0 else return 1.

The only thing that called this function was memtest.c and it
had outdated code, so I fixed that...
        was calling MEM_set_error_stream updated to
                    MEM_set_error_callback

Kent

14 years agooops, typo
Campbell Barton [Tue, 21 Mar 2006 23:59:52 +0000 (23:59 +0000)]
oops, typo

14 years ago===Python API===
Ken Hughes [Tue, 21 Mar 2006 23:30:25 +0000 (23:30 +0000)]
===Python API===
Two small bugfixes:
   * Image.New() resets id.us to 0; it is set to 1 by new_image()
   * allow ima.depth and ima.size getters to propagate their own error
     messages (missing image was returning MemoryError)

Also, seems to me there's something funny going on with image id.us
accounting.  In do_image_buttons(), id.us is set whenever an image is
accessed vi the datablock menu:

        if(idtest!=id) {
            G.sima->image= (Image *)idtest;
            if(idtest->us==0) idtest->us= 1;
            allqueue(REDRAWIMAGE, 0);
        }

This is independent of whether a UV face is selected or not (and it also
seems that the number of UV faces linked to an image is not maintained
either).

14 years agoFix for a bug where python could save a sceneless blend file.
Campbell Barton [Tue, 21 Mar 2006 22:30:29 +0000 (22:30 +0000)]
Fix for a bug where python could save a sceneless blend file.
https://projects.blender.org/tracker/index.php?func=detail&aid=3902&group_id=9&atid=125

14 years agoFix for bug,
Campbell Barton [Tue, 21 Mar 2006 22:16:41 +0000 (22:16 +0000)]
Fix for bug,
https://projects.blender.org/tracker/index.php?func=detail&aid=4021&group_id=9&atid=125
Raise an error instead of crash when python expandpath runs and no scene is loaded.

14 years agoSilly bug in using Compositor... the code that checked if a 3d rendering
Ton Roosendaal [Tue, 21 Mar 2006 11:29:03 +0000 (11:29 +0000)]
Silly bug in using Compositor... the code that checked if a 3d rendering
was required (compositor can also be used with only image input) told
the pipeline not to render when no composite nodes were available at all,
and with button 'Use Nodes' on.

14 years agoScene id->us user counter was always set to 1 on a file read, which did not
Ton Roosendaal [Mon, 20 Mar 2006 20:52:04 +0000 (20:52 +0000)]
Scene id->us user counter was always set to 1 on a file read, which did not
work for Composite nodes using a scene... when you delete such a node the
scene could get zero users then.

Now scenes count users correctly, and are initialized to 1 on the correct
place.

14 years ago=== MINGW compile ===
Andrea Weikert [Mon, 20 Mar 2006 17:25:42 +0000 (17:25 +0000)]
=== MINGW compile ===
Fixing compile for Windows mingw builds with cygwin make and scons.
Used SHGetFolderPath instead of SHGetSpecialFolderPath which is
better supported for mingw.
Thanks to Ralf Hoelzemer for the tip and the patch.

Let me know if any problems persist, I'll try to fix then.

--- Andrea

14 years agoCineon/DPX export didn't survive when Blender gave it negative colors.
Ton Roosendaal [Mon, 20 Mar 2006 16:53:13 +0000 (16:53 +0000)]
Cineon/DPX export didn't survive when Blender gave it negative colors.
Was missing test for it before turning it into unsigned short.

14 years agoFixed an error in the help printout and set out the formats that are not supported...
Campbell Barton [Mon, 20 Mar 2006 16:24:00 +0000 (16:24 +0000)]
Fixed an error in the help printout and set out the formats that are not supported on all os's.

14 years agoFix various gcc warnings.
Ken Hughes [Sun, 19 Mar 2006 20:45:50 +0000 (20:45 +0000)]
Fix various gcc warnings.

14 years agoThreshold for non-flat quad detection was too wide still. Causing errors
Ton Roosendaal [Sun, 19 Mar 2006 20:14:16 +0000 (20:14 +0000)]
Threshold for non-flat quad detection was too wide still. Causing errors
of quads filling in in octrees...

14 years agoMore environment map stuff:
Ton Roosendaal [Sun, 19 Mar 2006 17:50:53 +0000 (17:50 +0000)]
More environment map stuff:

- added a zoom factor for Planar Environment Map, allowing to zoom in or
  out on the reflected object. The zoom is corrected when rendering, so it
  just gives control over the resolution.
- Planar maps don't cycle anymore, but only render the front plane, using
  standard image texture extend mode.
- threaded rendering is back in envmap render

14 years ago=== fileseletor ===
Andrea Weikert [Sun, 19 Mar 2006 16:36:37 +0000 (16:36 +0000)]
=== fileseletor ===

patch #2554: My Documents and Desktop folder automaticly added to the Folders
pulldown of the filesector

Only affects Windows builds.

Uses shell functions to correctly get the My Documents and Desktop folders and
then add them to the fsmenu, right below the drive letters.

Needs shell32.lib linked, which is already linked by default for VS7 project files.
Platform maintainer please check if it has to be added to scons and MSVC6 project files.

Patch provided by Martin Poirier (theeth) - many thanks!

14 years agoAdded a way to set the renderpath (dir and name) from the command line.
Campbell Barton [Sun, 19 Mar 2006 16:25:32 +0000 (16:25 +0000)]
Added a way to set the renderpath (dir and name) from the command line.
eg
Blender  -b c:\blends\test.blend  -o "c:\renders\render_#.png"  -x 0  -F PNG

-x 1/0 for extension enable/disable
-F for format/filetype

This is important because somebody elses Blend files can render anywhere on your PC, possibly a security risk.
And nice for renderfarms to be able to set the path without running a python script inside the blend file.

blender --help (render opts only)
Render options:
  -b <file>     Render <file> in background
    -S <name>   Set scene <name>
    -f <frame>  Render frame <frame> and save it
    -s <frame>  Set start to frame <frame> (use with -a)
    -e <frame>  Set end to frame (use with -a)<frame>
    -o <path>   Set the render path and file name.
      Use // at the start of the path to
        render relative to the blend file.
      Use # in the filename to be replaced with the frame number
      eg: blender -b foobar.blend -o //render_# -F PNG -x 1
    -F <format> Set the render format, Valid options are..
        TGA IRIS HAMX FTYPE JPEG MOVIE IRIZ RAWTGA
        AVIRAW AVIJPEG PNG AVICODEC QUICKTIME BMP
        HDR TIFF EXR MPEG FRAMESERVER CINEON DPX
               Use // at the start of the path to
    -x <bool>   Set option to add the file extension to the end of the file.

Added details to the -v option
Eg
blender -v
Blender 2.41 Build
        build date: 2006-03-20
        build time: 16:16:34
        build platform: linux-glibc2.3.6-i386
        build type: dynamic

Also fixed bugs where nagative/realy big  frames could be set- causing Blender to crash.

14 years agoBugfix in environment mapping: Ztransp and Halo didn't show up. Bug is
Ton Roosendaal [Sun, 19 Mar 2006 15:16:02 +0000 (15:16 +0000)]
Bugfix in environment mapping: Ztransp and Halo didn't show up. Bug is
there since the Render refactor of early january.

14 years agoAdded option to only render a single side of an Environment map cube,
Ton Roosendaal [Sun, 19 Mar 2006 14:26:56 +0000 (14:26 +0000)]
Added option to only render a single side of an Environment map cube,
allowing to use it for planar mirrors. Enable it with the new "Plane"
option in the Environment Map Panel.

Current default is to render the cube side that points to the positive
Z axis direction. To make it work, it uses the same image for all
other cube sides, so it will 'wrap around'.

Also made maximum resolution for environment map to be 4096x4096 now.

14 years agoUpdated to use Blender.sys.exists() which now uses BLI_exist rather then stat.
Campbell Barton [Sun, 19 Mar 2006 13:31:44 +0000 (13:31 +0000)]
Updated to use Blender.sys.exists() which now uses BLI_exist rather then stat.

14 years ago=== bugfix win32 - python ===
Andrea Weikert [Sun, 19 Mar 2006 13:28:01 +0000 (13:28 +0000)]
=== bugfix win32 - python ===

Fixed BLI_exist: In Windows stat doesn't recognize
a dirname ending is a slash, exept when it's
the root dir ("C:\\"), where it is required.
So trailing slashes are only removed when filename
is longer than 3 chars.
Also fixed Python Sys.c that now uses BLI_exist
instead of calling stat directly.

14 years agoAdded support for group objects
Campbell Barton [Sun, 19 Mar 2006 04:45:58 +0000 (04:45 +0000)]
Added support for group objects
  grp.objects

To have an iterator assigned as well as a list. Since gp.objects is an ietartor this is expected.
grp.objects= someGroup.objects works now.

Some other small fixes made.

Made a wrapper for add_to_group() That handles the OB_FROMGROUP flag. Should be moved to group.c's add_to_group()

void add_to_group_wraper(Group *group, Object *ob) {
Base *base;
add_to_group(group, ob);

if (!(ob->flag & OB_FROMGROUP)) { /* do this to avoid a listbase lookup */
ob->flag |= OB_FROMGROUP;

base= object_in_scene(ob, G.scene);
if (base)
base->flag |= OB_FROMGROUP;
}
}

14 years agoAdded object.dupliGroup so objects can access the groups they instance.
Campbell Barton [Sat, 18 Mar 2006 17:24:59 +0000 (17:24 +0000)]
Added object.dupliGroup so objects can access the groups they instance.
This is very confusing.
Since in object has
ob.setDupliGroup() # Enable/Disable Dupligroup
ob.getDupliGroup() # see if its enabled.
ob.dupliGroup # the group data this object is instancing.

Not yet added
ob.groups # Groups that use this object.

14 years agoSlight change, when moving the active object out of localview, keep it the activew...
Campbell Barton [Sat, 18 Mar 2006 15:53:06 +0000 (15:53 +0000)]
Slight change, when moving the active object out of localview, keep it the activew object. Face Select mode, vpain etc need to complain if act ob isnt visible before the modes are activated.

14 years agoMoved declerations to the top of the skope so as to work with MSVC?
Campbell Barton [Sat, 18 Mar 2006 15:23:02 +0000 (15:23 +0000)]
Moved declerations to the top of the skope so as to work with MSVC?
started removeing // from constant.h to shut GCC's -pedantic up. realized // are used everywhere.

14 years agoAdded Blender.Group module
Campbell Barton [Sat, 18 Mar 2006 14:47:26 +0000 (14:47 +0000)]
Added Blender.Group module
The plans for the new Python API are too far off to have this module conform.

Needs testing with MSVC 6

14 years agoTsk! A 'new' for filehandle wasn't combined with a 'delete', which is
Ton Roosendaal [Sat, 18 Mar 2006 14:45:15 +0000 (14:45 +0000)]
Tsk! A 'new' for filehandle wasn't combined with a 'delete', which is
probably causing the leakage issues we have exr in linux.

14 years agoUpdate box unpack with faster python use
Campbell Barton [Sat, 18 Mar 2006 11:41:07 +0000 (11:41 +0000)]
Update box unpack with faster python use
Update image loader, optional arg for not autocreating the image. - aslo removed some stuff that shouldent have been left in.
  Workaround for a bug in Blender.sys.exists()... should fix soon.

14 years ago==SCons==
Nathan Letwory [Fri, 17 Mar 2006 16:42:43 +0000 (16:42 +0000)]
==SCons==

* The documentation for BF_QUICKDEBUG et al, missing from previous commit. Also
  provided by Joseph Eagar.

14 years ago==SCons==
Nathan Letwory [Fri, 17 Mar 2006 16:38:39 +0000 (16:38 +0000)]
==SCons==
* Applied patch #4012 by Joseph Eagar. The patch provides a way to quickly assign a list
  of libraries to build with debug symbols. Usage:

  scons BF_QUICKDEBUG=src,bf_blenkernel,bf_blenlib

14 years agoWe're now doing final conversions... float exrs to dpx amd png. Found a
Ton Roosendaal [Thu, 16 Mar 2006 20:42:00 +0000 (20:42 +0000)]
We're now doing final conversions... float exrs to dpx amd png. Found a
couple of bugs in the new float support in sequencer;

- when effects have float buffer input, the effect strip itself only got
  byte buffers assigned, which bypassed the float versions of effects
- the float version of cross effect used ints to fade... should be float
- tests if an effect should be recalculated didn't check for float yet
- display of float buffer in sequencer preview showed black when no
  byte rect was in imbuf

Peter; we need this urgent, so I commit now.. check if this is according
to how you thought floatbuffers to work? thanks!

14 years ago==SCons==
Nathan Letwory [Thu, 16 Mar 2006 19:16:26 +0000 (19:16 +0000)]
==SCons==
* Link to png_st. Jens reported linking with dynamic lib crashed, but with static doesn't.

14 years ago2 New tools, 'Loop to region' and 'Region to loop'
Geoffrey Bantle [Wed, 15 Mar 2006 20:53:41 +0000 (20:53 +0000)]
2 New tools, 'Loop to region' and 'Region to loop'

-> Loop to Region
Examines the current set of selected edges and seperates them into groups
 of 'loops' that each bisect the mesh into two parts. Then for each loop it
selects the smaller 'half' of the mesh.

Example images:
http://www.umsl.edu/~gcbq44/looptoregion2a.jpg
http://www.umsl.edu/~gcbq44/looptoregion2b.jpg

This tool handles multiple loops fine as is shown by these images:
http://www.umsl.edu/~gcbq44/looptoregion1a.jpg
http://www.umsl.edu/~gcbq44/looptoregion1b.jpg

Furthermore it handles 'holes' just fine as well:
http://www.umsl.edu/~gcbq44/looptoregion3a.jpg
http://www.umsl.edu/~gcbq44/looptoregion3b.jpg

-> Region to Loop

This is the 'logical inverse' of loop to region.

Example:
http://www.umsl.edu/~gcbq44/regiontoloop1a.jpg
http://www.umsl.edu/~gcbq44/regiontoloop1b.jpg

Both features can be accessed by the 'Edge Menu' in EditMode (CTRL-E).

14 years agoDang... on background rendering (renderfarm) the user preset for temp dir
Ton Roosendaal [Wed, 15 Mar 2006 20:41:08 +0000 (20:41 +0000)]
Dang... on background rendering (renderfarm) the user preset for temp dir
isn't set. Hardcoded it to /tmp/ now. Have put on list this requires a
better solution (same issue open for yafray afaik)

14 years agoBugfix: In sequencer, duplicating effects crashed due to calling a NULL
Ton Roosendaal [Wed, 15 Mar 2006 18:16:25 +0000 (18:16 +0000)]
Bugfix: In sequencer, duplicating effects crashed due to calling a NULL
callback.

14 years agommap allocs now fall back on regular malloc when mmap fails.
Ton Roosendaal [Wed, 15 Mar 2006 15:06:53 +0000 (15:06 +0000)]
mmap allocs now fall back on regular malloc when mmap fails.

14 years agoBugfix: when compositor reads incomplete renders, when using the new
Ton Roosendaal [Wed, 15 Mar 2006 10:44:58 +0000 (10:44 +0000)]
Bugfix: when compositor reads incomplete renders, when using the new
render option "save result to disk" and ESC from rendering, it crashed...

Note; reading partially saved exr files still crash... but that's an issue
within the openexr lib. I've mailed the openexr dev list for assistance
how to properly close a partial saved tile-file.

14 years agoSilly copy/paste error enabled the 'save render to file' option always...
Ton Roosendaal [Wed, 15 Mar 2006 10:18:33 +0000 (10:18 +0000)]
Silly copy/paste error enabled the 'save render to file' option always...
now the button works as meant to be.

Still working on the feature though... I noticed exr files dont read
back when only part was saved (on user break). Working...

14 years agoBugfix: Node editor, ALT+G "UnGroup" crashed when group was editable.
Ton Roosendaal [Tue, 14 Mar 2006 21:58:16 +0000 (21:58 +0000)]
Bugfix: Node editor, ALT+G "UnGroup" crashed when group was editable.
Now it exits this editing mode, and ungroups nicely.

14 years agoMemory saving for large renders:
Ton Roosendaal [Tue, 14 Mar 2006 21:29:42 +0000 (21:29 +0000)]
Memory saving for large renders:

New option "Save Buffers", in first Output panel of renderbuttons, will not
allocate all render buffers, but instead save the rendered tiles to exr.
For each scene rendered, a single exr file then is created.
After rendering, the files get read, and only then the memory allocation is
done.

The exr files are saved in the temp dir (from user settings), and have
names derived from the filename+scene name. That way these buffers remain
relatively unique, and can be re-used later too.

Saving all render-layers and passes in a single file (as F3 command) will
be done later. Also reading back the current muli-layer exr files is not
supported yet (will read black). The purpose is that these files then can
be used as input for the Compositor.

One fun thing I added; after rendering once with this option, close
Blender, and restart it. If you have a Composite set up press 'R' on an
active RenderResult node. This will refresh the node(s) and load the exr,
so you can composite again without a re-render.

14 years agoSmall updates to import images in win32.
Campbell Barton [Tue, 14 Mar 2006 20:28:02 +0000 (20:28 +0000)]
Small updates to import images in win32.

14 years agoSupport win32 paths.
Campbell Barton [Tue, 14 Mar 2006 20:27:27 +0000 (20:27 +0000)]
Support win32 paths.

14 years agoCrashfix in compositing RenderLayer that doesn't exist... can happen on
Ton Roosendaal [Tue, 14 Mar 2006 20:01:53 +0000 (20:01 +0000)]
Crashfix in compositing RenderLayer that doesn't exist... can happen on
appending a scene, which used again another scene to do compomagic with. :)

14 years agotweak SCons to use Split() to parse BF_DEBUG_FLAGS and BF_PROFILE_FLAGS
Stephen Swaney [Tue, 14 Mar 2006 18:28:47 +0000 (18:28 +0000)]
tweak SCons to use Split() to parse BF_DEBUG_FLAGS and BF_PROFILE_FLAGS
properly when they have multiple options.

14 years agoWIP commit on getting the 'render result layers' saved in a single
Ton Roosendaal [Tue, 14 Mar 2006 17:48:40 +0000 (17:48 +0000)]
WIP commit on getting the 'render result layers' saved in a single
file. Previous fix accidentally committed parts of that... :)

Note: it is currently disabled still... will commit the real version
soon.

14 years agoUrgh... the commit to free texture images always also did it for preview...
Ton Roosendaal [Tue, 14 Mar 2006 17:44:19 +0000 (17:44 +0000)]
Urgh... the commit to free texture images always also did it for preview...

14 years agoMade 'free texture images' default for a while... gives too many errors
Ton Roosendaal [Tue, 14 Mar 2006 13:26:33 +0000 (13:26 +0000)]
Made 'free texture images' default for a while... gives too many errors
for stressed artists who forget it. Will rewind later. :)

14 years ago==SCons==
Nathan Letwory [Tue, 14 Mar 2006 12:20:04 +0000 (12:20 +0000)]
==SCons==
* CC and CXX for linux2

14 years agoCTRL+C copy menu now has "Copy UV orco" for curves/surfaces
Ton Roosendaal [Tue, 14 Mar 2006 11:29:06 +0000 (11:29 +0000)]
CTRL+C copy menu now has "Copy UV orco" for curves/surfaces

14 years agoWhen faces are extremely small (like 0.01 size of pixel), the UV calculus
Ton Roosendaal [Tue, 14 Mar 2006 10:56:46 +0000 (10:56 +0000)]
When faces are extremely small (like 0.01 size of pixel), the UV calculus
for faces can give inaccuracies resulting in UV values in the hundreds
range. The UV values now are being clipped.

This should fix weird 'shooting lines' for vectorblur on hair renders.

14 years agoRestored syntax for function calls in sequence.c.
Ton Roosendaal [Tue, 14 Mar 2006 09:54:40 +0000 (09:54 +0000)]
Restored syntax for function calls in sequence.c.

Schlaile; do you have a weird texteditor setting or so? It breaks up
function calls in a very strange way, with each argument of a call
on a new line. That's not code that way, that's movie credits! :)

(Check the diff below to see)

14 years agoInterpolated scaling for float buffers in Imbuf still went wrong...
Ton Roosendaal [Tue, 14 Mar 2006 09:40:55 +0000 (09:40 +0000)]
Interpolated scaling for float buffers in Imbuf still went wrong...
leftover bugs of first migration to floats in imbuf. :)

As extra I've reshuffled the mainloops for scaling, it's now twice as
fast.

14 years agorestoring minimum debug build on msvc6 projects
Jens Ole Wund [Tue, 14 Mar 2006 08:49:41 +0000 (08:49 +0000)]
restoring minimum debug build on msvc6 projects
-no GE
-no OpenExr / hum.. may be that's why storing a PNG does not crash

14 years agosecurity patch #3910 provided by Joerg Sonnenberger on Os X
Jean-Luc Peurière [Mon, 13 Mar 2006 18:27:51 +0000 (18:27 +0000)]
security patch #3910 provided by Joerg Sonnenberger on Os X
file opening

14 years agoAutosmooth fix: if original Mesh has same amount of faces and vertices
Ton Roosendaal [Mon, 13 Mar 2006 18:16:23 +0000 (18:16 +0000)]
Autosmooth fix: if original Mesh has same amount of faces and vertices
as the one resulting from Modifiers, it uses that data to calculate
autosmooth for. This prevents weird stuff on rendering softbody for
example.

14 years agoA small alteration for C syntax, code before vars (MSVC complained about this).
Johnny Matthews [Mon, 13 Mar 2006 14:44:49 +0000 (14:44 +0000)]
A small alteration for  C syntax, code before vars (MSVC complained about this).

14 years ago==BPy==
Nathan Letwory [Mon, 13 Mar 2006 14:43:20 +0000 (14:43 +0000)]
==BPy==
* move declaration to start of function. Again I repeat: these *have* to
  be at the start. GCC users should check themselves always, as GCC allows
  this kind of atrocities :)

  /Nathan

14 years ago==SCons==
Nathan Letwory [Mon, 13 Mar 2006 13:45:11 +0000 (13:45 +0000)]
==SCons==
* If you look quickly somewhere else, you won't notice the missing ''s

14 years ago==SCons==
Nathan Letwory [Mon, 13 Mar 2006 13:42:56 +0000 (13:42 +0000)]
==SCons==
* Begin of the week, so I wanted to fill my commit quota right off the bat.
  Add CC and CXX defaults for mingw, too. Unless we have invisible configs
  this should be the last one :S

14 years ago==SCons==
Nathan Letwory [Mon, 13 Mar 2006 12:00:01 +0000 (12:00 +0000)]
==SCons==
* added default compilers for darwin and win32-vc. Sorry orangers :) (Note:
  this was not slapping opportunity related to cross-compile)

  /Nathan

14 years ago==SCons==
Nathan Letwory [Mon, 13 Mar 2006 11:42:49 +0000 (11:42 +0000)]
==SCons==

* These changes bring cross-compiling Blender for Windows on Linux one step
  closer to reality. The 'biggest' change is in makesdna SConscript to make
  sure a linux native makesdna is built, that can be run, too. Next to that
  proper checks for env['OURPLATFORM']=='linuxcross' are added in various
  places.

  Switch change in pluginapi.c was necessary, and AFAIK it should work like
  that also on WIN32, if not, slap me.

  Note: everything *compiles* now nicely, it is just that the final *linking*
  doesn't work (yet). Anyone who fixes this will be the
  hero of cross-compilers :)

14 years agoTwo fixes in renderpipe...
Ton Roosendaal [Mon, 13 Mar 2006 11:01:17 +0000 (11:01 +0000)]
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...)

14 years ago==SCons==
Nathan Letwory [Mon, 13 Mar 2006 08:49:06 +0000 (08:49 +0000)]
==SCons==
* actually add CC and CXX to option handling, so they get also read in
  from (platform)-config.py and user-config.py

14 years agofix for bug #3930 Colour picker broken - HSV sliders
Jean-Luc Peurière [Mon, 13 Mar 2006 02:22:48 +0000 (02:22 +0000)]
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

14 years agoScene unlinking didnt set the python objects scene to NULL,causing memory errors...
Campbell Barton [Mon, 13 Mar 2006 02:02:19 +0000 (02:02 +0000)]
Scene unlinking didnt set the python objects scene to NULL,causing memory errors if accessing the data after the scene was unlinked.
Also a few functions segfulted if scene was unlinked, added more checking.

First commit from win32, hope line endings are ok.

14 years agoMore bugs in float imbuf scaling code... an x and y were mixed up, causing
Ton Roosendaal [Sun, 12 Mar 2006 21:26:34 +0000 (21:26 +0000)]
More bugs in float imbuf scaling code... an x and y were mixed up, causing
memory troubles.

14 years agoScaling code in imbuf didn't like float buffers enough yet
Ton Roosendaal [Sun, 12 Mar 2006 19:53:23 +0000 (19:53 +0000)]
Scaling code in imbuf didn't like float buffers enough yet

14 years agoForgot Cineon lib in Makefile :)
Ton Roosendaal [Sun, 12 Mar 2006 19:48:51 +0000 (19:48 +0000)]
Forgot Cineon lib in Makefile :)

14 years agoSequencer now outputs float buffers to render too, when available.
Ton Roosendaal [Sun, 12 Mar 2006 19:00:48 +0000 (19:00 +0000)]
Sequencer now outputs float buffers to render too, when available.

14 years ago==SCons==
Nathan Letwory [Sun, 12 Mar 2006 15:23:56 +0000 (15:23 +0000)]
==SCons==

* cineon support enabled for SCons (part 2 of fix)

14 years ago==SCons==
Nathan Letwory [Sun, 12 Mar 2006 15:23:00 +0000 (15:23 +0000)]
==SCons==

* first part of cineon fix commit - after next commit it'll compile also with SCons