Commit Graph

47594 Commits

Author SHA1 Message Date
Ken Hughes
39ca3e3fa4 -- Bugfix #3548: material.setMode() was doing incorrect range check on
inputs, returned error setting RAYMIRROR or RAYTRANSP modes.
2005-12-06 17:08:09 +00:00
Ton Roosendaal
ee63a6fd79 Orange:
Depsgraph support for animated duplicated groups that come from Library
files.... so nice, a huge walking group of characters in a 90k file or so!
2005-12-06 17:05:37 +00:00
Ton Roosendaal
6555ddbcd8 Orange:
Series of fixes in Library linking of groups;

- On library-linking (SHIFT-F1) a Group, the Objects now don't get a "Base"
  anymore, meaning they won't show up as Objects in the Scene.
  This ensures you can use the linked Group as duplicator without having
  your file polluted with new (and linked) objects.
  (I realize it should be possible to have it with Base too, will check)
- On append or file-read, the linked Group Objects get drawn properly,
  but the animation system doesn't run yet.
- Group buttons (F7) now shows if a Group is from Library
- Outliner draws Library linked data with blue-ish text

Other fixes;

- Using group-duplicator, with originals in hidden layer, now shows and
  updates animated Objects correctly.
- All of Object button panels did not have a proper protection against
  editing Library data.
2005-12-06 15:39:25 +00:00
Ton Roosendaal
898cbe370e Orange:
Pointer was checked before being set... but it refused to crash on me! For
everyone else it crashed on rendering.
Thanks Toni for the bughunt.
2005-12-06 15:02:13 +00:00
Ton Roosendaal
2f716483a9 Orange: fix for reading material light groups (didnt set pointer OK yet)
(Thanks Lee for finding it!)
2005-12-06 12:14:53 +00:00
Ton Roosendaal
952a2709ad Orange: tuesday sync with bf-blender 2005-12-06 10:58:54 +00:00
Ton Roosendaal
d024452ebf Orange branch: Revived hidden treasure, the Groups!
Previous experiment (in 2000) didn't satisfy, it had even some primitive
NLA option in groups... so, cleaned up the old code (removed most) and
integrated it back in a more useful way.

Usage:
- CTRL+G gives menu to add group, add to existing group, or remove from
  groups.
- In Object buttons, a new (should become first) Panel was added, showing
  not only Object "ID button" and Parent, but also the Groups the Object
  Belongs to. These buttons also allow rename, assigning or removing.
- To indicate Objects are grouped, they're drawn in a (not theme yet, so
  temporal?) green wire color.
- Use ALT+SHIFT mouse-select to (de)select an entire group

But, the real power of groups is in the following features:

-> Particle Force field and Guide control
In the "Particle Motion" Panel, you can indicate a Group name, this then
limits force fields or guides to members of that Group. (Note that layers
still work on top of that... not sure about that).

-> Light Groups
In the Material "Shaders" Panel, you can indicate a Group name to limit
lighting for the Material to lamps in this group. The Lights in a Group do
need to be 'visible' for the Scene to be rendered (as usual).

-> Group Duplicator
In the Object "Anim" Panel, you can set any Object (use Empty!) to
duplicate an entire Group. It will make copies of all Objects in that Group.
Also works for animated Objects, but it will copy the current positions or
deforms. Control over 'local timing' (so we can do Massive anims!) will be
added later.
(Note; this commit won't render Group duplicators yet, a fix in bf-blender
will enable that, next commit will sync)

-> Library Appending
In the SHIFT-F1 or SHIFT+F4 browsers, you can also find the Groups listed.
By appending or linking the Group itself, and use the Group Duplicator, you
now can animate and position linked Objects. The nice thing is that the
local saved file itself will only store the Group name that was linked, so
on a next file read, the Group Objects will be re-read as stored (changed)
in the Library file.
(Note; current implementation also "gives a base" to linked Group Objects,
to show them as Objects in the current Scene. Need that now for testing
purposes, but probably will be removed later).

-> Outliner
Outliner now shows Groups as optio too, nice to organize your data a bit too!

In General, Groups have a very good potential... for example, it could
become default for MetaBall Objects too (jiri, I can help you later on how
this works). All current 'layer relationships' in Blender should be dropped
in time, I guess...
2005-12-06 10:55:30 +00:00
Ken Hughes
1aebee2f9e More corrections and additions to Ipo and IpoCurve documentation. 2005-12-06 06:16:10 +00:00
Ken Hughes
569f9de63c Added some extra parameter checking in Ipo driver code. 2005-12-06 05:42:23 +00:00
Ken Hughes
2d19c4f208 -- Bugfix 3543: call to test_index_face() in decimateModifier_applyModifier()
was passing pointer to the wrong face, which led to eekadoodle later in
   EditMode.
2005-12-06 00:02:55 +00:00
Ken Hughes
1a2ac4e64d -- Bugfix #3072: As discussed on IRC, matrix.invert() should throw a
ValueError exception if matrix is singular.
2005-12-05 19:57:23 +00:00
Ken Hughes
e209676d3d -- Bugfix 3453: coercion operations were doing an extra incref on coerced
objects.  Also found extra increfs on some newly-created quat and matrix
   objects, from calls to Matrix_Identity() and Quaternion_Identity().
2005-12-05 19:02:30 +00:00
Ton Roosendaal
863234481e "Make Local" menu (Lkey) now has as first option to make only Objects
local, keeping all Data stuff (Mesh, Materials) from Library.

The animation stuff on Object becomes local though;
- Ipo
- Action
- NLA
2005-12-05 17:06:58 +00:00
Ton Roosendaal
f98a5a8036 Bugfix #3514
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.
2005-12-05 13:44:22 +00:00
Ton Roosendaal
cd014fd556 Bugfix #3512
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.
2005-12-05 13:22:16 +00:00
Ton Roosendaal
a2d66cbff8 Hrms... setting the undosteps to zero then should also work! :) 2005-12-05 11:52:30 +00:00
Ton Roosendaal
4fb1bcaa15 Bugfix #3507
Global Undo didn't use the 'undo steps' value in the user presets yet...
even whilst button mentioned 'editmode undo' there, an easy fix to add.
2005-12-05 11:46:40 +00:00
Ken Hughes
bf05bbef86 Fix unchecked parameter in M_Ipo_Recalc, and some documentation fixes. 2005-12-05 05:23:35 +00:00
Ken Hughes
00ce7c629f -- remove unused variable "dict" which was giving compiler warnings. 2005-12-05 01:07:24 +00:00
Ton Roosendaal
dd1f6c649a Orange bramch:
New diffuse shader, "Fresnel", which using existing fresnel formula.
Since it hilights edges (away from lamp), nice to fill darker parts with
the new layering system.

Weird stuff though;
http://www.blender.org/bf/0001_0040.avi
(Movie disappears in a couple of days!)

Note; for ray-shadow you need to use the Bias, to prevent 'terminator'
problems. I made that option default now.
2005-12-04 20:43:41 +00:00
Ken Hughes
beb80aa609 -- Fix segfault when callign Blender.Armature.Get() with no parameters 2005-12-04 20:39:56 +00:00
Ton Roosendaal
386ac3877a Dang, another fix in orange tree... I keep spamming commit maillist that
way!

This fixes a sometimes-crash when doing previews for world or lamp.
2005-12-04 18:18:36 +00:00
Ton Roosendaal
bba3cebd4c Orange: two fixes,
- Texture buttons preview didn't show for material layers
- layers now have a 'number of users' button, which allows to make a
  full copy of the material.
2005-12-04 18:07:53 +00:00
Ton Roosendaal
1efe0a7232 Sunday sync of Orange with bf-blender 2005-12-04 17:22:36 +00:00
Ton Roosendaal
409f60d605 Bf-blender commit! :)
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?)
2005-12-04 17:18:58 +00:00
Ton Roosendaal
1b7089a306 Orange 'layer commit' fix: Texture buttons crash when selecting an empty
texture channel
2005-12-04 16:15:04 +00:00
Ton Roosendaal
9633d7a241 Orange fix: previous commit from Brecht called unwrap_lscm_live_end()
without check for correct spacetype in use. :)
2005-12-04 14:37:18 +00:00
Ton Roosendaal
aa939b8599 Orange branch feature; Material Layering
(WIP, don't bugs for this in tracker yet please!)

- New Panel "Layers" in Material buttons, allows to add unlimited amount
  of materials on top of each other.
- Every Layer is actually just another Material, which gets rendered/shaded
  (including texture), and then added on top of previous layer with an
  operation like Mix, Add, Mult, etc.
- Layers render fully independent, so bumpmaps are not passed on to next
  layers.
- Per Layer you can set if it influences Diffuse, Specular or Alpha
- If a Material returns alpha (like from texture), the alpha value is
  used for adding the layers too.
- New texture "Map To" channel allows to have a texture work on a Layer
- Each layer, including basis Material, can be turned on/off individually

Notes:

- at this moment, the full shading pass happens for each layer, including
  shadow, AO and raytraced mirror or transparency...
- I had to remove old hacks from preview render, which corrected reflected
  normals for preview texturing.
- still needs loadsa testing!
2005-12-04 14:32:21 +00:00
Brecht Van Lommel
c2cff1cbcf More work on the new unwrapper code (orange branch):
- There is now a (temporary) dropdown box in the image window header for
  switching between the old an new unwrapper code. So to test the changes
  described below you need to enable the new unwrapper code.
- Pinning is now more predictable, if one uv is pinned, the others belonging
  to the same vertex are pinned also.
- Live LSCM is much faster, since the LU factorization, the most expensive
  part of the computation, is now stored and reused (was Jens' idea).
- Packing multiple uv charts is slightly improved, by doing a binary search
  over the texture width. This fixes the case where all the charts are
  packed at the bottom of the image.
- LSCM now uses an angle based formulation, and the results seem somewhat
  different (maybe slightly better?), didn't find out why yet.
2005-12-03 23:22:31 +00:00
Nils Thuerey
e49998807c - fixed output behaviour (now behaves just like render output,
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)
2005-12-03 17:45:35 +00:00
Ton Roosendaal
8cb14867b0 Added Copy/Paste 'mapping' options for World/Lamp buttons.
Also: moved render defines from scene to render module itself.
2005-12-03 12:55:35 +00:00
Ton Roosendaal
8a84a957f2 Orange tree:
Raytrace mirror crash, due to mixup in skyshade call (for 'glob' texture)
2005-12-03 09:24:21 +00:00
Chris Burt
5b9e85f0a2 Just one more useful commit from Desoto: added a newline to the end
of the file. Hold the applause please.
2005-12-03 00:52:51 +00:00
Kent Mein
4739837377 fix for #3498
(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
2005-12-02 21:46:52 +00:00
Ken Hughes
9588cfdffe Small changes to API docs on curves and space handlers explanations. 2005-12-02 21:25:30 +00:00
Kent Mein
6263390e73 This commit does very little for the number of files touched.
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
2005-12-02 21:13:14 +00:00
Ken Hughes
6ba27d69b0 -- Bugfix #3524: theEditMesh structure was not being initialized correctly. 2005-12-02 18:00:38 +00:00
Ton Roosendaal
066f79cfa4 Friday merge of bf-blender into orange branch. 2005-12-02 13:55:13 +00:00
Ton Roosendaal
d1c5950121 Extra texture channel input for Mist effect; "Global". This feeds the
global coordinate (from faces) to the sky texture color calculus, this to
make textured mist a bit less transparent (was only view coordinate).
2005-12-01 22:16:07 +00:00
Ton Roosendaal
b99e1f6b3c Just copied over changes in engine, from bf-blender. This someohow was
missing in the previous bf-blender sync.
Now engine compiles for orange tree too.
2005-12-01 19:32:54 +00:00
Ton Roosendaal
c4a1d655ae True X-mirror mesh editing!
Set the option in EditMode, in 2nd mesh tools panel. It only works on
transform options now (grab/rot/scale), and of course assumes a near-
perfect symmetrical mesh. Mesh Object itself can be on any location
though (and rotated etc).
2005-12-01 19:04:57 +00:00
Johnny Matthews
a332c7c387 Bugfix #3510
Adding a couple of countall() to update header after using the Vertgroup and Material Group "select" and "deselect" buttons
2005-12-01 16:36:30 +00:00
Ton Roosendaal
64a6fde567 Wee li'll commit in tooltip for "W" button softbodies. 2005-12-01 16:00:39 +00:00
Brecht Van Lommel
a09fbc080d Small addition to stretch minimize: with pad +/- or the wheel mouse
you can now blend between the original and minimized.

Stretch minimizing trades conformality (= perfect squares in checkerboard
texture) for a better sampling of the texture (= often not so well shaped
checkerboard), so it is useful to let the user find a balance between the
two.
2005-12-01 12:45:17 +00:00
Matt Ebb
1a59b16b48 Updated the sconscript for new file parametrizer.c 2005-12-01 11:05:52 +00:00
Ken Hughes
8a7242ff16 -- Bugfix #3139: Blender.Library.Open() was changing current .blend
filename.  We now save and restore file before opening library.
2005-12-01 05:30:15 +00:00
Ken Hughes
95e94b4630 Make curnurb.flagU and curnurb.flagV range check their inputs, plus make
the documentation correctly describe how the attributes and methods work.
2005-12-01 04:50:04 +00:00
Brecht Van Lommel
d6feeb6b22 Orange branch commit.
This commit adds new underlying uv unwrapper code, intended to be
more extensible. At the moment this has a re-implementation of LSCM.
This has not been activated yet, since it doesn't add anything new.

What's new is the stretch minimize tool from tuhopuu. It works by
selecting some some uv's in the uv editor window, and then pressing
ctrl+V. The uv's on the boundary stay fixed.

More stuff will follow as I port it over & fix it.
2005-12-01 02:09:21 +00:00
Ton Roosendaal
d369a44dde Orange bugreport; disabling (with small icon button) a deforming modifier
for EditMode, the CrazySpace correction still worked. Made it check for
the modifier mode flag.
2005-11-30 20:22:27 +00:00
Ken Hughes
22188fba21 -- previous commit was decrefing a borrowed reference; thanks Ascotan for
tracking this down!
2005-11-30 20:18:54 +00:00