Once an Object Ipo position was inserted, the object couldn't be moved when
a particle system was tied to it. Needed code to copy object settings,
before the particle animation was done.
Duplicated objects, that have modifiers, didn't render (or not correct).
Bug reported case with softbody being duplicated.
The duplicator system is ancient... integration with new derivedmesh or
modifiers has not been really done yet.
Forgot to put back window/screen-size clipping when opening render window.
Note for windows coders; check this diff, here's where you might need to
add an ifdef too for windows, to get the window opening correct for the
top of the screen (probably because of windows bottom toolbar?)
thus directories in the path are created using RE_make_existing_file
in fluidsim.c)
- changed default output to be '//fluidsimdata/...'
- hopefully fixed bugs #3466 and #3470 (orco texture coords caused
problems when the fluidsim mesh was bigger than the original one,
one no other deformations were used - new deformedVerts are now
allocated in this case in DerivedMesh.c)
(Swap colors on bigendian machines)
I also made it so that the env variable is tried ahead of all
of the other looking. (That way you can override a system default
if its broken without having to upgrade)
This also makes it so we can remove the OSX ifdef. So I did.
lukep: If you still want it add it back in but my gut says the less ifdefs
we have the better ;)
Kent
I updated gen_dynlibtiff.py so its in sync with the file(s) it creates.
I added a little more documentation to the readme.txt for adding
new file formats.
I also added two dummy functions to the tiff.c so it stopped whining
about them being NULL.
(I'm still working on the reported bugs but thought this was a good time
to at least get this in)
Kent
- Curves without bevel or extrude didn't calculate the Z value for
softbody when the "3d" option for curves was off.
- Typo in softbody.c, for switch of // comments to /* */
PyDict_SetItemString() with objects that were not properly decrefed
afterwards. Due to the number of places this was used, I added a
wrapper EXPP_dict_set_item_str() to gen_utils.c to handle it.
This started as a scriptlink bug, due to how many times scripts were
being executed I think it just magnified how bad the memory leak in
BPy was. Animating the blend attached with this bug report would cause
memory to grow by about 3MB for every 280 frames. After the patch,
memory did not appear to grow at all (or at least not noticably using
Unix's ps and top utils).
Since many of the PyDict_SetItemString() calls were in initialization
modules I think my tests executed most of the changed code, but would
appreciate script users really giving feedback.
Noticed that static particle orcos (strands) actually were global
coordinates. This was code copied from dynamic particles...
Bugreporter (hi env!) tried to make nice zebra texture, which of course
very much failed.
Note; orco textures for strand give the same texture coordinate for the
entire hair. UV maps don't work here yet.
An image texture without picture returned a '0', causing the texture code
to generate a bump normal that warped the entire shading around.
In bugreport it was showing terminator issues with ray shadow.
Terminator problems can still occor with more extreme bumpmaps though,
something to look at further.
Replaced sqrt() with the safe version sasqrt() in anisotropic.
the formula (1 - n*n) should not give negative values for n = dotproduct
of normals, but float inaccuracy can make negative zeros, as we know!
This solves, hopefully, last annoying "blotches" in hair!
raytracing with a linedist (cylinder) check. It didn't behave OK on strands
set to be more than 1 pixel (not to mention 10 pixels), and I have no time
now to fully check and code it.
Which is not really important either... In general, all 3d papers talk about
using shadowbuffer shadows for hair, which gives much nicer results for
dense volumes of polygons.
This commit restores regular (flat polygon) raytrace shadow for strands.
Also fixes some nasty bugs as reported. :)
in the game engine again.
All files in source/gameengine/ I've committed below have a comment like
/* XXX note .... */
where something needs to be done. This is pretty straightforward for Erwin,
who has been notified in person too about this. :)
(2001) hack that enforced opening renderwindows smaller than screen size.
The notes I could find referred to testing old 3d cards, which failed to
give graphics memory for large windows. Another note was an issue on OSX,
where the topbar and windowbar gets hidden otherwise.
That latter case I corrected now.
Will organize good testing for this, if there's issues, will uncommit :)
sets. To fix it, I got rid of a very ancient hack to enable set grey wire
drawing (setting a global to pretend it's picking select draw).
Now this setting is nicely passed on via functions as argument.
- partially working workaround for nvidia bug on Os X 10.4.3
- brought back the raster ops hack for GT6800 with proper driver version
check so that text works both on Os X 10.4.3 and older systems.
this last patch was given by Kent Miller from Apple
"if" statements. The macro defined in gen_utils.h expands to two
statements; putting after an "if" statement without {} means the second
statement should always be executed. I'm not sure if just putting
braces around both statements would cause other compilers to complain.
But this explains an earlier bug in the Object module which only
appeared on MacOS/X.
incorrectly, including wrapping curve data as BezTriples. Needed to
make a change to beztriple module so we could more easily create a
"thick" BezTriple object similar to Blender.BezTriple.New().
The change to BezTriple.h pointed out some dead code in the Ipocurve
module that could be removed.