Commit Graph

9333 Commits

Author SHA1 Message Date
b2a7619fe8 Bugfix: particle add brush in perspective mode would sometimes
not add particles, view ray was wrong.
2007-12-17 11:20:51 +00:00
317ad91349 == Fill Bones - Bugfixes ==
* Some joints were identified multiple times, which caused a "too many joints" error when only 2 joints were selected
* When no joints were selected, "too many joints" error was displayed. This has been changed to "no joints selected"
* Fixed a memory leak that occurred when "too many joints selected"
2007-12-17 10:34:49 +00:00
793d7b1eb9 More BPyAPI compiling fixes again.
* Added missing stubs so that blenderplayer can be linked.
2007-12-17 08:32:14 +00:00
de073e74d1 Bugfix #7918: Particles (svn) Crashing when adding particles in EditMode
This commit should fix the error. dm was used before being check if it was NULL.
2007-12-17 06:32:53 +00:00
ca689313d2 More BPyApi (New/2_5x) compiling fixes for mingw.
* Mostly fixed a few more of the tp_base errors, in the manner that Ken did...
* There's still a weird warning in draw.c about some function being used but not defined
* I've included the source splitting hack here too, as I was getting problems getting it to link the files...
2007-12-17 06:12:01 +00:00
efb2d5fc97 == Sculpt Mode ==
Improved some memory allocation; it doesn't actually use less memory now, just avoids reallocating the same block of memory over and over again.
2007-12-17 04:52:46 +00:00
bda2c40763 == Sculpt Mode ==
Minor refactoring of the overgrown sculpt() function.
2007-12-17 04:10:38 +00:00
4431e7d441 Applied Ian Calvert's patch (#7801) to add a "rake" setting to sculpt mode; when used with a 2D brush texture, the texture is automatically rotated to follow the direction of the brush stroke. 2007-12-17 03:21:25 +00:00
afb869fbe0 Python API Merged from branch,
http://wiki.blender.org/index.php/Rewriting_the_2.4x_BPython_API

Some areas are not yet finished, the 2.4 api can remain "import Blender" and the bpy api "import bpy" gives access to the new api.

Todo
* event, link, etc are not assigned to Blender.*
* Scripts need to be tested and updated.
* Scripts cannot mix bpy and Blender modules anymore.
* Makefiles need to be updated (only works with scons now)
* Make the 2.4 api optional with IFDEF's
* Lots of testing and small fixes
2007-12-16 03:42:41 +00:00
1fe2c51966 == AutoIK - Fixes for MouseScroll Setting ==
* Added display of current chain-length setting to the header, when transforming with Auto-IK on

* Removed debug print accidentally left in 

* Fixed compiler warning in buttons_object.c
2007-12-16 00:59:06 +00:00
2b9de725e3 == Text Window ==
Patch [#7849] by Jetze van Beijma, strike 2.

The first patch fixed the size of the scroll bar, this one fixes drawing of selected text area (the redish area in the scrollbar).
2007-12-15 21:40:23 +00:00
460dd7a7bb Render Instancing
=================

Big commit, but little user visible changes.

- Dupliverts and duplifaces are now rendered as instances, instead
  of storing all of the geometry for each dupli, now an instance is
  created with a matrix transform refering to the source object.
  This should allow us to render tree leaves more memory efficient.

- Radiosity and to some degree raytracing of such objects is not
  really efficient still. For radiosity this is fundamentally hard
  to solve, but raytracing an octree could be created for each object,
  but the current octree code with it's fixed size doesn't allow this
  efficiently.

- The regression tests survived, but with I expect that some bugs will
  pop up .. hopefully not too many :).

Implementation Notes
====================

- Dupligroups and linked meshes are not rendered as instances yet,
  since they can in fact be different due to various reasons,
  instancing of these types of duplis that are the same can be added
  for them at a later point.

- Each ObjectRen now stores it's own database, instead of there being
  one big databases of faces, verts, .. . Which objects that are actually
  rendered are defined by the list of ObjectRenInstances, which all refer
  to an ObjectRen.

- Homogeneous coordinatess and clipping is now not stored in vertices
  anymore, but instead computed on the fly. This couldn't work for
  instances. That does mean some extra computation has to be done, but
  memory lookups can be slow too, and this saves some memory. Overall
  I didn't find a significant speed impact.

- OSA rendering for solid and ztransp now is different. Instead of e.g.
  going 8 times over the databases times and rendering the z-buffer, it
  now goes over the database once and renders each polygon 8 times. That
  was necessary to keep instances efficient, and can also give some
  performance improvement without instances.

- There was already instancing support in the yafray export code, now it
  uses Blender's render instances for export.

- UV and color layer storage in the render was a bit messy before, now
  should be easier to understand.

- convertblender.c was reorganized somewhat. Regular render, speedvector
  and baking now use a single function to create the database, previously
  there was code duplicated for it.

- Some of these changes were done with future multithreading of scene
  and shadow buffer creation in mind, though especially for scene creation
  much work remains to be done to make it threadsafe, since it also involves
  a lot of code from blenkernel, and there is an ugly conflict with the way
  dupli groups work here .. though in the render code itself it's almost there.
2007-12-15 20:41:45 +00:00
dbc8e1e883 fix for own mistake when changing curve flags - Reported as [#7888] Extrude broken for vector handles 2007-12-15 15:30:08 +00:00
3301d046b6 Patch #7916: New Empty Types - Sphere and Cone
Submitted by: David Bryant (digikiller)

This patch adds two new drawtypes for empties in Blender:
* Sphere
* Cone

These draw with wireframes which are slightly more complicated than for other empties. However, this shouldn't really be an issue.
2007-12-15 07:48:30 +00:00
faf638238d == Auto-IK ==
-- Peach request (from wiki feature request list) --

When translating a bone using Auto-IK, you can now use the ScrollWheel on the Mouse or the Page Up/Down keys to adjust the chain length. 

Notes:
* Up decreases the length, while Down increases it.
* The previously used chain-length is stored per scene
* Currently, it might be too sensitive. Also, it would help to have some kind of indication of the current chain-length somewhere...
* The chain length specified this way determines the MAXIMUM chain length possible for all chains (if 0, then the default chain-length is used). Chains are clamped to have a chain length which does not exceed the default chain length. This restriction may be removed following further feedback...
2007-12-15 07:35:16 +00:00
b71d55b055 match solaris 10 x86-64 library name change 2007-12-14 17:47:58 +00:00
f1b78cb4da chenge the default location of mesa/gl header, added to lib path 2007-12-14 13:56:06 +00:00
1aa225e953 == Fill Bones ==
This commit fixes/implements this feature. It is restricted to using 1-2 joints selected joints only.
2007-12-14 00:09:07 +00:00
960ace98db made guessconfig add use bash (not sh) and return a CPU as i386-32 or i386-64 (was just i386)
default python to 2.5
2007-12-13 22:36:10 +00:00
04dcd34883 Correct aweful bug in transform snapping code. How that even work is beyond magic!
Reported by some (crash) and pin pointed by Briggs, thanks a lot!

This should fix the apparently completely random crashes.
2007-12-13 21:10:00 +00:00
f15956356c misc warning fixes and one fix for a big in curve allocation 2007-12-13 15:06:02 +00:00
8e81daa8bc == 2 New Rigging Tools ==
This commit introduces two (currently only one is actually functional) new features for working with armatures.

* Bone Merging (Alt-M)
It is now possible to select a bunch of linked bones and "merge" them together. Currently, there's only one option to merge bones that are selected and linked to each other in a chain.

* Add Bone Between Joints (FKEY)
This allows you to select a few joints, and have a bone created between them. Currently, this is not yet functional (but the code is there)
2007-12-13 10:55:10 +00:00
78b885b9fc own error, sequencer set images - didnt clear error when finished 2007-12-13 08:49:09 +00:00
9a3f3699c3 Added a 'LinkData' struct for use with ListBases.
It is used to store a reference to some data that is already in another ListBase. Sometimes, these are needed for small one-off situations, where a custom struct seems overkill...
2007-12-13 02:08:47 +00:00
e2e8ea9ed1 Fix for bug #7872: setting particles disp to 100 has no effect.
Fix for bug #7878: particle panels do not update properly when
chaning particle types.
2007-12-12 21:49:48 +00:00
de17fd9ee5 Bugfix for particle adding + mirror crash. 2007-12-12 17:01:46 +00:00
bf5cc424a8 Patch from ILdar AKHmetgaleev (akhil) - [#7864] correct scale in sequencer's glow
Added py-api write access to sequencer images.
2007-12-12 14:20:12 +00:00
29054847a7 missing null check in node editor. 2007-12-12 14:07:24 +00:00
4bb0b1c11f incorrectly set the toolbox not to quit on mousemove 2007-12-12 11:00:39 +00:00
f6cb9217d7 == Skeletor ==
Fix crash reported by Brecht in symmetry detection code.
2007-12-11 23:31:55 +00:00
6dc52c893f for button popups, dont close unless you click or press escape, this would often close when dragging a button value (or when using a tablet I am told) 2007-12-11 23:05:10 +00:00
5e3f4c20bb Increment subversion to deal with skeleton generation correctly.
Bug reported by Brecht on IRC.
2007-12-11 21:39:31 +00:00
457057a9e8 Fix for mirroring issues in particle mode, where the particles were
not mirrored exactly, though the problem is not completely solved.
The way local frames are computed for particles is still not fully
symmetric, which shows especially on long hairs...

Also made the shift+o subsurf switch work recursively into
dupli-groups, did only the first level before.
2007-12-11 20:02:21 +00:00
Stephen Swaney
160e6afdb8 fix mixed declarations and code warning that breaks strict compilers 2007-12-11 15:35:39 +00:00
65758a9a20 Bugfixes for:
- Disabled particle modifiers in particle mode.
- Particle col option without material.
2007-12-11 15:03:45 +00:00
d5edeb526c Bugfix for constraint lagging with local ipo's. For some reason
the depsgraph relations for constraints with a local ipo were being
skipped, but I have no idea why this code was added? Uncommenting
it seems to work fine.
2007-12-11 14:58:23 +00:00
60972ad458 Bugfix for SSS crash with nan's. 2007-12-11 14:35:08 +00:00
114ce86167 display real fps in 3d view option
replace 1 with SELECT
edited DVar texture tooltip
2007-12-11 14:19:05 +00:00
Ken Hughes
910ef6ca75 Python API
----------
Bugfix #7898: added access to DISPLACE modifiers, add ARRAY constant to
modifier documentation.
2007-12-11 01:58:22 +00:00
dbb13c07cc Fixing compiler warnings:
* BLI_arithb.h - isnan definition is only needed for MSVC, but gcc/mingw complains about it

* file-selectors - moved BLI_storage_types.h or sys/stat.h includes before BLI_winstuff.h includes,  to silence warnings about S_ISDIR.
2007-12-10 23:25:21 +00:00
be354c3d09 Merge from Harmonic Skeleton branch
This code adds a basic and simple skeleton generator.

Examples and links are in the wiki, docs will come eventually: http://wiki.blender.org/index.php/User:Theeth/skeletor

In a nutshell, select a vertex at the top of the head and press "Generate Skeleton". UI Panel is in the Editing buttons in Edit Mode, tooltips and semi-useful.
2007-12-10 21:14:19 +00:00
23a525c52d == Code sweeping ==
BLI_sortlist simplifications
2007-12-10 21:04:48 +00:00
28e071d08c Preparing for merge:
Support for separate mesh islands
Better error reporting and checking
Panelizing the UI better
2007-12-10 20:48:28 +00:00
9f76c42c00 Typo fix from Tanner Jotblad for testing FREE_WINDOWS
Kent
2007-12-10 16:45:37 +00:00
6e6dccd2ad Fixing compiler warnings, and bad button placement from previous commit for ghosting. Also general code tidying in editaction.c 2007-12-10 08:53:15 +00:00
b3d0478fa2 * fix for compiling in windows with makefiles 2007-12-10 04:50:22 +00:00
354ba2520c [#6779] Fix backdrop draw in nodes
by Matthew Plough

Replaces the glDrawPixel call with glaDrawPixelsTex for faster and interpolated drawing.

Adds autocenter and autozoom instead of the clipping that happened previously.

Fixes the button event for timely redraw.
2007-12-09 22:12:01 +00:00
74191f3ecb == Armature - Ghosting Feature (Cessen request) ==
Added a new option for Armature Ghosting: Only draw ghosts for selected bones. This is activated by toggling the "Sel" button beside the GStep: field. 

Note: this does not give any speed increases, as the whole pose must be recalculated for each ghost. In fact, it might even cause minor performance decreases, due to the need to tag and un-tag bones before/after drawing the set of ghosts.
2007-12-09 11:53:07 +00:00
d033c248d3 == Armature Visualisation - A few additions ==
* Added an option to make frame numbers of keyframes draw on bone-paths even when frame numbers for other points are not shown.

* Added a new ghosting method, which only shows the keyframes within a range.
2007-12-09 08:46:23 +00:00
259c807f70 Fixed bug #6870, Sculpt mode + wireframe = nothing
When sculpt object is in wireframe mode (including if the current view is in wireframe mode) a second copy is drawn only to the depth buffer so that sculpting can take place as normal.
2007-12-08 21:53:17 +00:00