14 years agoCleaning up some bad stuff from the merge in the release/ directory.
Chris Want [Tue, 7 Feb 2006 03:58:33 +0000 (03:58 +0000)]
Cleaning up some bad stuff from the merge in the release/ directory.
Somebody with good knowledge of the current state of icons should
probably check blenderbuttons for correctness. Also, splash.blend
was corrupt, so I restored the old version, but it says 2.40...

14 years agoFrom __bpydoc__
Campbell Barton [Tue, 7 Feb 2006 03:41:28 +0000 (03:41 +0000)]
From __bpydoc__

This script relaxes selected UV verts in relation to there surrounding geometry.

Use this script in face select mode.
Left Click to finish or wait until no more relaxing can be done.

14 years agoNeeded to add zbuf_accumulate_vecblur() to the stubs.c for correct
Chris Want [Tue, 7 Feb 2006 03:37:35 +0000 (03:37 +0000)]
Needed to add zbuf_accumulate_vecblur() to the stubs.c for correct
linking of the blenderplayer.

14 years agoiImage based Vector Blur
Ton Roosendaal [Mon, 6 Feb 2006 22:11:50 +0000 (22:11 +0000)]
iImage based Vector Blur

After a couple of experiments with variable blur filters, I tried
a more interesting, and who knows... original approach. :)

First watch results here:

These are the steps in producing such results:

- In preprocess, the speed vectors to previous and next frame are
  calculated. Speed vectors are screen-aligned and in pixel size.
- while rendering, these vectors get calculated per sample, and
  accumulated in the vector buffer checking for "minimum speed".
  (on start the vector buffer is initialized on max speed).

- After render:
- The entire image, all pixels, then is converted to quad polygons.
- Also the z value of the pixels is assigned to the polygons
- The vertices for the quads use averaged speed vectors (of the 4
  corner faces), using a 'minimum but non-zero' speed rule.

  This minimal speed trick works very well to prevent 'tearing' apart
  when multiple faces move in different directions in a pixel, or to
  be able to separate moving pixels clearly from non-moving ones

- So, now we have a sort of 'mask' of quad polygons. The previous steps
  guaranteed that this mask doesn't have antialias color info, and has
  speed vectors that ensure individual parts to move nicely without
  tearing effects. The Z allows multiple layers of moving masks.

- Then, in temporal buffer, faces get tagged if they move or not
- These tags then go to an anti-alias routine, which assigns alpha
  values to edge faces, based on the method we used in past to antialias
  bitmaps (still in our code, check the antialias.c in imbuf!)

- finally, the tag buffer is used to tag which z values of the original
  image have to be included (to allow blur go behind stuff).

- OK, now we're ready for accumulating! In a loop, all faces then get
  drawn (with zbuffer) with increasing influence of their speed vectors.
  The resulting image then is accumulated on top of the original with a
  decreasing weighting value.

It sounds all quite complex... but the speed is still encouraging. Above
images have 64 mblur steps, which takes about 1-3 seconds per frame.

Usage notes:

- Make sure the render-layer has passes 'Vector' and 'Z' on.
- add in Compositor the VectorBlur node, and connect the image, Z and
  speed to the inputs.
- The node allows to set amount of steps (10 steps = 10 forward, 10 back).
  and to set a maximum speed in pixels... to prevent extreme moving things
  to blur too wide.

14 years agoABF:
Brecht Van Lommel [Mon, 6 Feb 2006 20:24:15 +0000 (20:24 +0000)]

- Improved splitting of quads, which helps to avoid some degenerate triangles.
- Also improvements to choosing pins to preserve symmetry better in a few
  typical cases.

14 years agoSky textures were using wrong pixel-size vectors, so images got sampled
Ton Roosendaal [Mon, 6 Feb 2006 19:29:37 +0000 (19:29 +0000)]
Sky textures were using wrong pixel-size vectors, so images got sampled
totally blurred.

Thanks plumiferos team for the poke!

14 years agoFixed problem spottet by Ken Hughes, that prevented FFMPEG-output with
Peter Schlaile [Mon, 6 Feb 2006 19:27:24 +0000 (19:27 +0000)]
Fixed problem spottet by Ken Hughes, that prevented FFMPEG-output with
NTSC target from working (floating point exception).
Fixes bug #3879 from the bug tracker.

14 years agoQuite weird... I recall I fixed it, then it came back again.
Ton Roosendaal [Mon, 6 Feb 2006 17:45:43 +0000 (17:45 +0000)]
Quite weird... I recall I fixed it, then it came back again.

Vertex selection (mesh edit) was using a short to calculate distances,
which can overflow with vertices outside of view.

14 years ago- Removed workarounds for Blender 2.41
Campbell Barton [Mon, 6 Feb 2006 14:23:55 +0000 (14:23 +0000)]
- Removed workarounds for Blender 2.41
- Mesh objects split by material- many 3ds objects used more then 16 per mesh. and when a face looses its image texture its tedious to set again.
- Removed a lot of unneeded variable creation.

14 years agoInserting keypositions for a constraint which is part of action that's
Ton Roosendaal [Mon, 6 Feb 2006 13:56:47 +0000 (13:56 +0000)]
Inserting keypositions for a constraint which is part of action that's
part of action strip... now is corrected for action strip offset.

14 years agoTweaked library link/append rules for groups a bit further;
Ton Roosendaal [Mon, 6 Feb 2006 13:00:42 +0000 (13:00 +0000)]
Tweaked library link/append rules for groups a bit further;

- append group: appends group + puts objects in scene
- link group: only links group, doesn't put objects in scene

- append particle system with group: appends group + objects in scene
- link particle system with group: only links group

14 years ago==SCons==
Nathan Letwory [Mon, 6 Feb 2006 12:47:11 +0000 (12:47 +0000)]

+ Add python24.dll to list of needed dlls for install

14 years ago==SCons==
Nathan Letwory [Mon, 6 Feb 2006 06:52:24 +0000 (06:52 +0000)]

+ Added note about using the config files. I repeat it here: a user NEVER
  should edit config/(platform) directly. Instead, make a copy of
  config/(platform) to, and change that instead.


  PS. now I can say "I told you", and be sure I will :P

14 years agoSupport for ffmpeg for cygwin/gcc. Off by default, enable with
Chris Want [Mon, 6 Feb 2006 06:34:36 +0000 (06:34 +0000)]
Support for ffmpeg for cygwin/gcc. Off by default, enable with
     export WITH_FFMPEG=true
(and be sure to update lib/windows). Test, test, test.

14 years agoUsing NAN_FFMPEG_CFLAGS to find the right headers, and making linking
Chris Want [Mon, 6 Feb 2006 06:22:39 +0000 (06:22 +0000)]
Using NAN_FFMPEG_CFLAGS to find the right headers, and making linking
with NAN_FFMPEG_LIBS more general (i.e., not just for linux, and
moving some of the linux linking stuff to source/

14 years agoThe writeframeserver stuff requires that the cygwin stuff links with
Chris Want [Mon, 6 Feb 2006 04:25:20 +0000 (04:25 +0000)]
The writeframeserver stuff requires that the cygwin stuff links with

14 years agoTo aid linking, I added NAN_USE_FFMPEG_CONFIG (true/false).
Chris Want [Mon, 6 Feb 2006 01:49:33 +0000 (01:49 +0000)]
To aid linking, I added NAN_USE_FFMPEG_CONFIG (true/false).
If "export NAN_USE_FFMPEG_CONFIG=true" is added to,
the system executes the ffmeg-config program to set values
for NAN_FFMPEG (--prefix), NAN_FFMPEGLIBS (--libs avcodec avformat),
and NAN_FFMPEGCFLAGS (--cflags). Only one used so far is the
NAN_FFMPEGLIBS for linking on linux (if requested to do so).
Current default is not to do this.

14 years agotypo
Peter Schlaile [Mon, 6 Feb 2006 00:50:21 +0000 (00:50 +0000)]

14 years agoFFMPEG defs was initialized as an array, a string was appended
Peter Schlaile [Mon, 6 Feb 2006 00:49:25 +0000 (00:49 +0000)]
FFMPEG defs was initialized as an array, a string was appended

14 years agoquick fix quick typo
Peter Schlaile [Mon, 6 Feb 2006 00:20:31 +0000 (00:20 +0000)]
quick fix quick typo

14 years agoskip_frame not available in all ffmpeg versions
Peter Schlaile [Mon, 6 Feb 2006 00:19:23 +0000 (00:19 +0000)]
skip_frame not available in all ffmpeg versions

14 years agoAdded NAN_NO_FFMPEG user option
Peter Schlaile [Mon, 6 Feb 2006 00:10:43 +0000 (00:10 +0000)]
Added NAN_NO_FFMPEG user option

14 years agomem_in_use can be victim to C++ name mangling on some platforms...
Peter Schlaile [Sun, 5 Feb 2006 23:46:55 +0000 (23:46 +0000)]
mem_in_use can be victim to C++ name mangling on some platforms...

14 years ago-lopenal slipped between ffmpeg-link on Linux
Peter Schlaile [Sun, 5 Feb 2006 23:32:17 +0000 (23:32 +0000)]
-lopenal slipped between ffmpeg-link on Linux

14 years agouint8_t changed to unsigned char (barfed on MSVC)
Peter Schlaile [Sun, 5 Feb 2006 23:08:30 +0000 (23:08 +0000)]
uint8_t changed to unsigned char (barfed on MSVC)

14 years agoremoved inline since it barfs on MSVC
Peter Schlaile [Sun, 5 Feb 2006 23:07:48 +0000 (23:07 +0000)]
removed inline since it barfs on MSVC

14 years agoForgot #ifdef in sound_copy_hdaudio
Peter Schlaile [Sun, 5 Feb 2006 22:47:32 +0000 (22:47 +0000)]
Forgot #ifdef in sound_copy_hdaudio

14 years ago==SCons==
Nathan Letwory [Sun, 5 Feb 2006 22:11:04 +0000 (22:11 +0000)]
*remove double WITH_BF_FFMPEG

14 years agoreverting default location for OpenEXR to the proper default
Jean-Luc Peurière [Sun, 5 Feb 2006 21:16:55 +0000 (21:16 +0000)]
reverting default location for OpenEXR to the proper default
(the one in doc)

14 years ago==SCons==
Nathan Letwory [Sun, 5 Feb 2006 20:38:40 +0000 (20:38 +0000)]
* Changing linking order of a few libs, hopefully it solves a unresolved issue.

14 years agoAdds ffmpeg-support on Linux-platforms. Since ffmpeg is installed
Peter Schlaile [Sun, 5 Feb 2006 19:49:29 +0000 (19:49 +0000)]
Adds ffmpeg-support on Linux-platforms. Since ffmpeg is installed
always statically (you have to force it to build a dynamic library) the
resulting binary is redistributable.

The code is made ffmpeg-version independent using #ifdef's.

14 years agoAppending a single object with particle system, will now also expand to
Ton Roosendaal [Sun, 5 Feb 2006 19:43:46 +0000 (19:43 +0000)]
Appending a single object with particle system, will now also expand to
append its group and objects.

14 years agoAdds a VFAPI-Plugin for TMPGenc to connect to the blender frameserver.
Peter Schlaile [Sun, 5 Feb 2006 19:39:12 +0000 (19:39 +0000)]
Adds a VFAPI-Plugin for TMPGenc to connect to the blender frameserver.

14 years ago- Header changes to support hdaudio, memcache limitor and framecount boost.
Peter Schlaile [Sun, 5 Feb 2006 19:36:32 +0000 (19:36 +0000)]
- Header changes to support hdaudio, memcache limitor and framecount boost.

14 years agoBase library to support hdaudio-tracks (using ffmpeg only for now).
Peter Schlaile [Sun, 5 Feb 2006 19:33:17 +0000 (19:33 +0000)]
Base library to support hdaudio-tracks (using ffmpeg only for now).

14 years ago* Adds configuration buttons for ffmpeg-output
Peter Schlaile [Sun, 5 Feb 2006 19:30:37 +0000 (19:30 +0000)]
* Adds configuration buttons for ffmpeg-output
* Large sequencer rewrite to support:
  - Audio-tracks, which are not completely loaded into memory (hdaudio) but
    kept on disk instead.
  - A dependency tree, that builds only the Imbufs, that are really needed
  - Cleaner sequencer code
  - Per instance data in sequencer plugins (without this, the Dynamic
    Noise Reduction plugin would be impossible)
  - A Luma Waveform display
  - A U/V scatter plot display
  - Memcache limiting in sequencer
  - Buttons changed according to the boosted framecount limit

14 years ago==SCons==
Nathan Letwory [Sun, 5 Feb 2006 19:29:48 +0000 (19:29 +0000)]
* Add WITH_BF_FFMPEG to scons system. Needs to be added to (platform)
  still. Otherwise defaults to  'false'.

14 years ago* Add memcache limitor-support to imbufs
Peter Schlaile [Sun, 5 Feb 2006 19:23:34 +0000 (19:23 +0000)]
* Add memcache limitor-support to imbufs
* Add ffmpeg-read support in anim.c and util.c
* Makes ImBufs refcountable. You can now increase an internal refcounter
  in ImBufs (using IMB_refImBuf) which is decreased by freeImBuf.
  This makes it possible to simply pass ImBuf pointers around in the
  sequencer saving a few memcopies.

14 years ago* Adds userdef-types for memcache limitor and frameserver-rendering
Peter Schlaile [Sun, 5 Feb 2006 19:18:55 +0000 (19:18 +0000)]
* Adds userdef-types for memcache limitor and frameserver-rendering
* Boosts the blender frame limit by changing the type of the frame number
  from short to int everywhere. Without this, timelines longer than a few
  minutes are impossible to handle.
* Adds several types for ffmpeg input/output, hdaudio-tracks in sequencer

14 years ago* Fixes memory leak in pipeline.c
Peter Schlaile [Sun, 5 Feb 2006 19:16:32 +0000 (19:16 +0000)]
* Fixes memory leak in pipeline.c
* Makes the render pipeline work in arbitrary order to support frameserver

14 years ago==Python API==
Ken Hughes [Sun, 5 Feb 2006 19:15:58 +0000 (19:15 +0000)]
==Python API==
Bugfix #3849: "break" instead of "continue" caused memory corruption in
faces.extend() if an edge was given in the middle of parameter list.

14 years agoFFMPEG-render support.
Peter Schlaile [Sun, 5 Feb 2006 19:14:46 +0000 (19:14 +0000)]
FFMPEG-render support.

14 years agoEnables sequencer ipos for effect plugins and audio-tracks
Peter Schlaile [Sun, 5 Feb 2006 19:13:44 +0000 (19:13 +0000)]
Enables sequencer ipos for effect plugins and audio-tracks
to be locked to frames instead of the range from 0-100.
Comes very handy on long timelines...

14 years agoAdds support for frameserver rendering to blender. This is done by
Peter Schlaile [Sun, 5 Feb 2006 19:12:25 +0000 (19:12 +0000)]
Adds support for frameserver rendering to blender. This is done by
integrating a mini-webserver (around 300 lines of code) into blender.
Using the VFAPI-plugin in contrib/windows it enables blender to
directly feed its output into TMPGEnc, a commercial high quality MPEG-Encoder.
Since it is a mini-webserver, you can probably easily use it for other
interfacing purposes.

14 years agoAdd several usefull sequencer-plugins:
Peter Schlaile [Sun, 5 Feb 2006 19:04:12 +0000 (19:04 +0000)]
Add several usefull sequencer-plugins:
- color-correction-hsv & color-correction-yuv
  Do color correction in HSV or YUV-space, rather sophisticated but slow.
  You can control setup, gain and gamma and saturation (seperated by
  shadows, midtones and highlights).
- gamma
  a simple RGB-Gamma plugin, but very fast.
- dnr
  Dynamic Noise Reduction (plugin ported from VirtualDub).
  This helps mpeg encoding alot, by ignoring noise /movement
  below a given threshold between frames.
  It is also a lot faster than the original VirtualDub-plugin preserving
  it's quality.

14 years agoAdds for additional buttons for the new sequencer code to distinguish
Peter Schlaile [Sun, 5 Feb 2006 18:59:16 +0000 (18:59 +0000)]
Adds for additional buttons for the new sequencer code to distinguish
the display of timeline, output, U/V scatter plot and Luma waveform.

14 years agoAdds generic memcache limitor (used by the new sequencer to cache
Peter Schlaile [Sun, 5 Feb 2006 18:56:30 +0000 (18:56 +0000)]
Adds generic memcache limitor (used by the new sequencer to cache
only a certain amount of frames).

14 years ago==SCons==
Nathan Letwory [Sun, 5 Feb 2006 18:48:01 +0000 (18:48 +0000)]

* Fix typo in bullet SConscript
* win32-vc now copies all necessary files to BF_INSTALLDIR, including dlls

14 years ago==SCons==
Nathan Letwory [Sun, 5 Feb 2006 18:03:02 +0000 (18:03 +0000)]
* make sure PLATFORM_LINKFLAGS are used on Cygwin, too

14 years ago==SCons==
Nathan Letwory [Sun, 5 Feb 2006 17:58:08 +0000 (17:58 +0000)]
* cleaning cruft away

14 years ago==SCons==
Nathan Letwory [Sun, 5 Feb 2006 17:50:19 +0000 (17:50 +0000)]

* remove useless BF_TIFF* options. Upon closer inspection of code, only
  path to headers is needed

14 years ago* add proper WITH_BF_TIFF checks
Nathan Letwory [Sun, 5 Feb 2006 17:29:22 +0000 (17:29 +0000)]
* add proper WITH_BF_TIFF checks

14 years ago+ add check for cygwin to continue parsing of SCons scripts
Nathan Letwory [Sun, 5 Feb 2006 17:14:52 +0000 (17:14 +0000)]
+ add check for cygwin to continue parsing of SCons scripts

14 years ago* option propagation also for darwin :)
Nathan Letwory [Sun, 5 Feb 2006 16:25:38 +0000 (16:25 +0000)]
* option propagation also for darwin :)

14 years agoPrevious commit broke faces.extend() and edges.extend() for single edges
Ken Hughes [Sun, 5 Feb 2006 15:43:47 +0000 (15:43 +0000)]
Previous commit broke faces.extend() and edges.extend() for single edges
and faces.

14 years agoAngle Based Flattening:
Brecht Van Lommel [Sun, 5 Feb 2006 15:32:19 +0000 (15:32 +0000)]
Angle Based Flattening:

- There's an option to enabled ABF in the UV Calculation panel.
- ABF works with seams, pinning, live transform etc. UI wise it's pretty
  much the same as LSCM.

- ABF favors low angular distortion over area distortion, much like LSCM.
  It does however not have the tendency to "collapse" under high stretch,
  which basically means that it will be able to handle complex charts
  without pinning.
- ABF does however have on serious drawback: it is sensitive to degenerate
  geometry, especially very small angles. I'm working on this, but it seems
  to be quite difficult to improve the situation. There's still a bunch of
  ideas left to try, but I'll just commit this now as is. If ABF fails, it
  will fall back to LSCM, and there will be a warning print in the console.

- This implementation has the matrix tricks from ABF++ also. The second part
  of ABF++, simplification before unwrap, is being worked on. The current
- ABF is about 3-4 times slower than LSCM, which was to be expected. For
  live transform however, once the initial computation is done, it's just as
  snappy as the new LSCM code.

Results are quite nice though:

You may recognize the Snurgle model by Colin Levy there.

14 years agoUpdated blenderbuttons (non-sticky now shows icon in the uv editor).
Brecht Van Lommel [Sun, 5 Feb 2006 14:21:09 +0000 (14:21 +0000)]
Updated blenderbuttons (non-sticky now shows icon in the uv editor).
Also have datatoc.c add a new line at the end of the file, seems this
was added directly to blenderbuttons.c to fix a warning before.

14 years agoUV Editor Tweaks:
Brecht Van Lommel [Sun, 5 Feb 2006 14:12:45 +0000 (14:12 +0000)]
UV Editor Tweaks:

- Set local sticky in the uv editor as default.
- Don't do live unwrap on fully selected charts or charts with no pins
- Fixed bug with live unwrap not respecting transform cancel in some cases.
- "View Home" didn't work without an image.
- Move UV Calculation settings (cube size, cylinder radius, ..) into the scene
  toolsettings, instead of global variables
- Remove the name LSCM from the UI (and python docs on seams), and replace it
  with 'Unwrap', with upcoming ABF this didn't make sense anymore.
- Move the Old/New LSCM switch into the UV Calculation panel. New LSCM is the
  default now. Also renamed LSCM there to "Conformal".
- Made some room in the UV Calculation panel by removing the buttons to execute
  the UV calculation, only leaving the settings.

Fill Holes:

- LSCM now has an option to fill holes in the chart before unwrapping. This on
  by default, and enables two things:
  - Prevent internal overlaps (e.g. eyes, mouth) for LSCM unwrapping.
  - Allow the internal boundaries to move freely during stretch minimize.
- The possibility to switch it off is there because it is not always possible
  to define which the outer boundary is. For example with an open cylinder
  where there are two identical holes.

14 years ago* reflect WITH_BF_INTERNATIONAL changes into (platform) files too
Nathan Letwory [Sun, 5 Feb 2006 12:27:49 +0000 (12:27 +0000)]
* reflect WITH_BF_INTERNATIONAL changes into (platform) files too

Nathan Letwory [Sun, 5 Feb 2006 12:24:52 +0000 (12:24 +0000)]
* typo in adding BF_OPENAL_LIBPATH, resulting in it not being added at all

14 years ago- removed redundant code
Nathan Letwory [Sun, 5 Feb 2006 12:08:32 +0000 (12:08 +0000)]
- removed redundant code

14 years agopackaging in bundle of the Os X binary. result in the bin of build dir
Jean-Luc Peurière [Sun, 5 Feb 2006 11:28:28 +0000 (11:28 +0000)]
packaging in bundle of the Os X binary. result in the bin of build dir

Important note, the install target install only the binary not the
packaged bunde for the moment

14 years ago- remove Xmu and Xext from linking line for linux2, as they are not needed
Nathan Letwory [Sun, 5 Feb 2006 11:11:44 +0000 (11:11 +0000)]
- remove Xmu and Xext from linking line for linux2, as they are not needed
+ WITH_BF_OPENAL actually enables or disables use of OpenAL
+ WITH_BF_OPENEXR removes openexr libs from linking if disabled

14 years ago==Python API==
Ken Hughes [Sun, 5 Feb 2006 07:19:37 +0000 (07:19 +0000)]
==Python API==
A couple of bug fixes and enhancements:
(1) Setting the UV attributes of a mesh face will create texture faces if
    they are not already defined.  Previously this threw an exception.
(2) Setting the image attribute of a mesh face will also set the TEX bit
    of the face.mode flag
(3) When "sticky" vertices are created with mesh.vertexUV, the color is
    set to white instead of black.
(4) Bugfix #3872: copying the mode attribute of one mesh to another would
    sometimes result in an exception due to unexpected bits being set. I
    still don't know how these other bits are being set, but this patch will
    stop the complaint if they are set.

14 years ago+ WITH_BF_OPENAL=0 should now actually not need OpenAL stuff
Nathan Letwory [Sun, 5 Feb 2006 01:09:40 +0000 (01:09 +0000)]
+ WITH_BF_OPENAL=0 should now actually not need OpenAL stuff
* BF_PROFILE_FLAGS to list form

14 years ago* argh, sleep deprivation getting upper-hand - I accidently left an Exit()
Nathan Letwory [Sun, 5 Feb 2006 00:53:47 +0000 (00:53 +0000)]
* argh, sleep deprivation getting upper-hand - I accidently left an Exit()
  call lying around, causing SCons never to build anything :)

14 years ago* Use better option propagation everywhere
Nathan Letwory [Sun, 5 Feb 2006 00:47:34 +0000 (00:47 +0000)]
* Use better option propagation everywhere

  lukep, I didn't touch yet, because you're still
  working on it. But if you could see and make similar changes as
  I did to the rest.

14 years ago* Added safeguards around a few list.remove(x) calls, to prevent SCons
Nathan Letwory [Sun, 5 Feb 2006 00:23:43 +0000 (00:23 +0000)]
* Added safeguards around a few list.remove(x) calls, to prevent SCons
  from barfing if a CVS directory was not found (ie when cvs export
  was used).

14 years ago* Made options evaluate differently, so setting one option properly
Nathan Letwory [Sun, 5 Feb 2006 00:03:51 +0000 (00:03 +0000)]
* Made options evaluate differently, so setting one option properly
  propagates to related options:

  In (platform)
    BF_PYTHON_INC = '/usr/include/python${BF_PYTHON_VERSION}'


  This will now have BF_PYTHON_INC evaluate actually to
  '/usr/include/python2.3' and not to '/usr/include/python2.4' as with
  the old way. Reported by Chris Want.

  Todo: also use in other platform configurations.

14 years agomore sensible defaults for new scons on Os X :
Jean-Luc Peurière [Sat, 4 Feb 2006 22:16:01 +0000 (22:16 +0000)]
more sensible defaults for new scons on Os X :

- python 2.3   if you want python 2.4 add the 2 following lines in
              BF_PYTHON = '2.3'
              BF_PYTHON = '/library.Frameworks/Python.framework/Versions/'

- disabled libtiff by default. new scons force lib linking &  it shouldnt
  will work on that
- added SystemStubs lib that 10.4 require in some circumstances.
  10.3 users may have to remove it with this line :
              LLIBS = 'stdc++'

additional notes :

OpenEXR libs and includes are searched in /usr/local
use by preference gcc3.3 gcc4 need some new libs i will commit shortly
you get in final an unpackaged binary. take a previous blender app  and use
show package content command to navigate to Contents/MacOs. replace the
binary there by new one, and voila, you have a working new app.

will commit shortly the automatic packager

14 years ago==SCons==
Nathan Letwory [Sat, 4 Feb 2006 16:36:37 +0000 (16:36 +0000)]
+ BF_BUILDINFO=1 (by default) for build info in splash
- remove redundant renderconverter include dir
* check for win32-vc instead of only win32, so MingW compile goes ok

14 years ago==SCons==
Nathan Letwory [Sat, 4 Feb 2006 16:30:51 +0000 (16:30 +0000)]
* wrong format of two vars made darwin compile barf

14 years ago==SCons==
Nathan Letwory [Sat, 4 Feb 2006 15:52:55 +0000 (15:52 +0000)]
* If you set C_WARN=[] and CC_WARN=[] in your, no complaints
  whatsoever should show. Otherwise a lot of warnings are shown.

14 years ago==SCons==
Nathan Letwory [Sat, 4 Feb 2006 15:44:34 +0000 (15:44 +0000)]
* add REL_CFLAGS and REL_CCFLAGS when not building debug. This adds NDEBUG
  to compile on Win32
* fix path to makesdna binary

14 years ago==SCons==
Nathan Letwory [Sat, 4 Feb 2006 15:10:59 +0000 (15:10 +0000)]
* 'scons blendernogame'
  This target will disable the building of the game engine

14 years agoNew Material option: "OnlyCast". This makes the object only cast shadows,
Ton Roosendaal [Sat, 4 Feb 2006 15:07:48 +0000 (15:07 +0000)]
New Material option: "OnlyCast". This makes the object only cast shadows,
not show up in renders, nor being mirrored.

14 years agoCompositor: Added a basic "Time Node".
Ton Roosendaal [Sat, 4 Feb 2006 14:38:51 +0000 (14:38 +0000)]
Compositor: Added a basic "Time Node".
Just indicate start/end frame, and node outputs with Curve a value between
0.0 and 1.0.

14 years ago== SCons ==
Nathan Letwory [Sat, 4 Feb 2006 14:15:10 +0000 (14:15 +0000)]
== SCons ==

* This commit is all of the rewrite work done on the SCons system. For
  documentation see doc/blender-scons.txt and doc/blender-scons-dev.txt.
  contains valuable information, along with what still needs to be done.

    - linux, os x and windows compile now.
    - files are compiled to BF_INSTALLDIR (see config/(platform)
        - NOTE: Jean-Luc P will commit sometime during the weekend proper
          appit() for OS X. For now, copy the resulting binary to an
          existing .app bundle.
    - features:
        - cleaner structure for better maintenance
        - cleaner output during compile
        - better handling of build options
        - general overall speed increase
        - see the wiki for more info

  Cygwin, FreeBSD and Solaris systems still need work. For these systems:
    1) copy a config/(platform) to ie. config/
    2) set the proper defaults for your platform
    3) mail me at jesterking at letwory dot net with you configuration. if
       you need any modifications to the system, do send a patch, too.

  I'll be giving first-aid today and tomorrow, after that it'll be all
  regular development work :)


14 years agoMore work on render stuff!
Ton Roosendaal [Sat, 4 Feb 2006 13:28:50 +0000 (13:28 +0000)]
More work on render stuff!

- Scene support in RenderLayers
You now can indicate in Compositor to use RenderLayer(s) from other scenes.
Use the new dropdown menu in the "Render Result" node. It will change the
title of the node to indicate that.

The other Scenes are rendered fully separate, creating own databases (and
octrees) after the current scene was finished. They use their own render
settings, with as exception the render output size (and optional border).
This makes the option an interesting memory saver and speedup.

Also note that the render-results of other scenes are kept in memory while
you work. So, after a render, you can tweak all composit effects.

- Render Stats
Added an 'info string' to stats, printed in renderwindow header. It gives
info now on steps "creating database", "shadow buffers", and "octree".

- Bug fixes

Added redraw event for Image window, when using compositor render.

Text objects were not rendered using background render (probably a bug
since depsgraph was added)

Dropdown buttons in Node editor were not refreshed after usage

Sometimes render window did not open, this due to wrong check for 'esc'.

Removed option that renders view-layers on F12, with mouse in 3d window.
Not only was it confusing, it's now more efficient with the Preview Panel,
which does this nicely.

14 years ago== SCons ==
Nathan Letwory [Sat, 4 Feb 2006 12:04:55 +0000 (12:04 +0000)]
== SCons ==

* Added a user and a developer doc for the upcoming SCons commits.
  These documents should get most people started after the commit
  of the new scripts is a fact.

14 years agoFixed bug where a extra vert was duplicated. - (Thanks Brandedo)
Campbell Barton [Sat, 4 Feb 2006 03:44:21 +0000 (03:44 +0000)]
Fixed bug where a extra vert was duplicated. - (Thanks Brandedo)
Face indicies spanning over 1 line are now supported (had a freak obj that did this)
Small optimization @% overall speedup.
- Last release before move to Mesh over NMesh.

14 years agoRender feature request; when saving EXR files during anim render, it can
Ton Roosendaal [Fri, 3 Feb 2006 21:38:59 +0000 (21:38 +0000)]
Render feature request; when saving EXR files during anim render, it can
optionally save a jpg next to it, with compression as set in buttons.

This allows quick previews or download from farms.

Button: next to the 'half' and 'zbuf' options for exr.

14 years agoImproved check for case when vector-blur speed table (previous frame) is of
Ton Roosendaal [Fri, 3 Feb 2006 21:02:20 +0000 (21:02 +0000)]
Improved check for case when vector-blur speed table (previous frame) is of
different size as current frame. It now just skips making vectors then...
there exist solutions, but have to prove first vecblur actually works.

14 years agoRedoing the blur filters for composit;
Ton Roosendaal [Fri, 3 Feb 2006 20:39:36 +0000 (20:39 +0000)]
Redoing the blur filters for composit;

I found out current blur actually doesn't do gauss, but more did regular
quadratic. Now you can choose common filter types, but more specifically;

- set gamma on, to emphasize bright parts in blur more than darker parts
- use the bokeh option for (current circlular only) blur based on true
  area filters (meaning, for each pixel it samples the entire surrounding).
  This enables more effects, but is also much slower. Have to check on
  optimization for this still... use with care!

14 years agoCrash fix! Found one unsafe malloc in allocating the Z render pass...
Ton Roosendaal [Fri, 3 Feb 2006 09:25:46 +0000 (09:25 +0000)]
Crash fix! Found one unsafe malloc in allocating the Z render pass...
Brought back threaded compositing, this was blamed incorrectly.

14 years ago- Face import tested to be about overall 16x speedup over 0.93.
Campbell Barton [Fri, 3 Feb 2006 06:42:07 +0000 (06:42 +0000)]
- Face import tested to be about overall 16x speedup over 0.93.
- Material importing speedup.
- Tested with more models.
- Support some corrupt models.
(Bug in Mesh causes segfaults on some files still, kens looking into it)

14 years ago- Preview images get generated on render event again
Ton Roosendaal [Thu, 2 Feb 2006 23:55:14 +0000 (23:55 +0000)]
- Preview images get generated on render event again
- disabled threading for composit for now, it has a memory error still...
  will work on that tomorrow more.

14 years agoadded needed stub for player (renderpasses)
Jean-Luc Peurière [Thu, 2 Feb 2006 22:55:02 +0000 (22:55 +0000)]
added needed stub for player (renderpasses)

14 years agoAccidentally committed without log...
Ton Roosendaal [Thu, 2 Feb 2006 22:35:23 +0000 (22:35 +0000)]
Accidentally committed without log...

This commit removes old preview-image signals for Compositor, this was
obsolete when event-based updates were added, and was still causing
recalculations for example on loading files.

14 years agoAdded better safety in vertex/weight paint, so it survives painting outside
Ton Roosendaal [Thu, 2 Feb 2006 21:52:35 +0000 (21:52 +0000)]
Added better safety in vertex/weight paint, so it survives painting outside
the window edge. Also did a paranoia larger memory allocation... weird
reports I got.

14 years agoThree feats;
Ton Roosendaal [Thu, 2 Feb 2006 21:08:39 +0000 (21:08 +0000)]
Three feats;

- RenderLayers with 'view layers' set, now also take visible lights into
  account. Works just like for scene layer settings.

- On ESC from render, compositing (if set) is being skipped too

- While rendering with multiple RenderLayers it will end with a display
  of the current RenderLayer (as in Scene buttons)

14 years agoDuplicator bugfix: particle duplicators were not restoring the matrix for
Ton Roosendaal [Thu, 2 Feb 2006 19:54:42 +0000 (19:54 +0000)]
Duplicator bugfix: particle duplicators were not restoring the matrix for
the duplicated object correctly. This appeared like object disappeared.

Note; to see this fix work on older files, you have to invoke a depsgraph
call, like by grabbing the duplicated object.

14 years agoRender fix: object-duplicators now give their layer setting to the
Ton Roosendaal [Thu, 2 Feb 2006 19:31:15 +0000 (19:31 +0000)]
Render fix: object-duplicators now give their layer setting to the
duplicates, enabling lighting and layer-render properly.

14 years agoIf Images have relative path, and come from a library, it uses the library
Ton Roosendaal [Thu, 2 Feb 2006 18:28:01 +0000 (18:28 +0000)]
If Images have relative path, and come from a library, it uses the library
path as reference for loading the image.

14 years agofeatures & fixes:
Ton Roosendaal [Thu, 2 Feb 2006 17:54:22 +0000 (17:54 +0000)]
features & fixes:

- Enabled Groups to execute in Compositor. They were ignored still.
  Note; inside of groups nothing is cached, so a change of a group input
  will recalculate it fully. This is needed because groups are linked
  data (instances use same internal nodes).

- Made Composit node "Viewer" display correctly input for images with
  1/2/3/4 channels.

- Added pass rendering, tested now with only regular Materials. For
  Material nodes this is quite more complex... since they cannot be
  easily separated in passes (each Material does a full shade)
  In this commit all pass render is disabled though, will continue work on
  that later.
  Sneak preview:  (temporal image)

- What did remain is the 'Normal' pass output. Normal works very nice for
  relighting effects. Use the "Normal Node" to define where more or less
  light should be. (Use "Value Map" node to tweak influence of the
  Normal node 'dot' output.)

- EVIL bug fix: I've spend almost a day finding it... when combining AO and
  mirror render, the event queue was totally screwing up... two things not
  related at all!
  Found out error was in ray-mirror code, which was using partially
  uninitialized 'ShadeInput' data to pass on to render code.

- Another fix; made sure that while thread render, the threads don't get
  events, only the main program will do. Might fix issues reported by
  people on linux/windows.

14 years agoCurve tool was not threadsafe... it was storing premultiplied curves in
Ton Roosendaal [Thu, 2 Feb 2006 14:37:25 +0000 (14:37 +0000)]
Curve tool was not threadsafe... it was storing premultiplied curves in
a function (static vars) itself, causing mixups of curve data on usage.

14 years ago* This should have come along with the cursors commit before, to make the standard...
Matt Ebb [Thu, 2 Feb 2006 12:16:23 +0000 (12:16 +0000)]
* This should have come along with the cursors commit before, to make the standard cursor show when over a window header. *blush*

14 years agoBug #3854: Extruded/Bevelled text objects didn't get the right materials
Alexander Ewering [Thu, 2 Feb 2006 12:13:08 +0000 (12:13 +0000)]
Bug #3854: Extruded/Bevelled text objects didn't get the right materials
for front/back faces. This should also fix and enable overlapping extruded/
bevelled characters.

14 years agoyet another temporary strange but straightforward hack for a script at orange to...
Toni Alatalo [Wed, 1 Feb 2006 22:21:46 +0000 (22:21 +0000)]
yet another temporary strange but straightforward hack for a script at orange to work! that is: while Joseph is working on the actual Constraint API for bones etc., this allows our armature script to set influences with a simple call: armatureobject.setConstraintInfluenceForBone(bonename, constraintname, influence); fails silently at failure ('cause the c calls used do and no retvals are checked) and is in the strange place (as the current api is largely not object level) but works for us for now (e.g. next few weeks).

14 years agoStrangely, the BLI_timestr() function returns nonsense on linux for
Chris Want [Wed, 1 Feb 2006 20:16:50 +0000 (20:16 +0000)]
Strangely, the BLI_timestr() function returns nonsense on linux for
ia64. It appears that if I get rid of the fmod expression, and
use integer math I get the right values. Hopefully this isn't a
problem for anybody.