Commit Graph

16327 Commits

Author SHA1 Message Date
Nathan Letwory
3469906125 * area split:
- prevent a few more cases of Potential Crash.
- tweak moving stuff.
2008-01-15 14:40:43 +00:00
Daniel Genrich
2d06f79ff9 svn merge -r 13177:13240 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2008-01-15 13:00:29 +00:00
Diego Borghetti
5ed9571ea5 More "data types" for the Operator property system.
Now you can set/get: float, arrays (int and float) and string.

The only special function is OP_get_string, it is special
because return a pointer to the IDProperty data, so you can't
change/resize/free the string.

It's possible "fix" this with:
 1) Return a "const char"
 2) Return a duplicate string

All this new function are not in use yet, but i make a simple test
with the "move areas" operator (add a property of every type and then
print the result in the other size) and work fine, more test are welcome.

Other thing to check is the new OP_free_property function, because this
properties are only local to the operator, i choice free all this in the
"exit callback" of every operator (only move areas have property now), 
so comment about this are welcome too :)

Also add some notes to the WM_api.h file.
2008-01-15 04:49:09 +00:00
Nathan Letwory
8a7558a4fb * fix for crash when mouse cursor changed areas. Not enough was tested, so sometimes we got invalid edges. 2008-01-14 20:57:43 +00:00
Nathan Letwory
c89b96645e Operators: Split Area
This commit adds split area to the window/screen manager.
 - RMB down on area edge activates
 - mouse move interactively moves areas through new edge.
 - RMB up to confirm action
 - ESCKEY or LMB to cancel.

This still crashes in some situations, but I'm on it!
Also will start using new operator property system by bdiego
2008-01-14 20:46:42 +00:00
Diego Borghetti
2a0055401e New API to access Operator properties.
This is a simple API around IDProperty to store properties
in the Operator, it is really simple and this first commit
just add support for IDP_INT data type.

Take care that this "properties" are not save yet and you get
some "Error totblock" more with this.

I add some notes to the WM_api.h file, please check this,
comment and ideas are welcome.
2008-01-14 19:44:20 +00:00
Ton Roosendaal
28667a314e Feature + Fix:
- while sampling color in image window, you now get the sampled color as a line
drawn in the node editor Curve nodes, allowing quicker view of what values you
actually change.

- reverted temporary the patch [#6779] by Matthew Plough
  He replaced image drawing of backdrop-node-editor with our Texture drawing
  function. That call is extremely slow, and should be by definition slower
  than glDrawPixels (unless you don't upload the image each time to gfx mem).

  Drawing large frames (2k, 4k) in node editor became unacceptable slow, even 
  with the neatest hardware around. (tested nvidia, ati) 

  Probably (Campbell thinks) this is a bypass for Linux ATI cards? 
  Anyhoo, this should be investigated further before applying. It better then
  becomes a user pref, or even much better: part of the OpenGL profiler we need.
2008-01-14 19:03:27 +00:00
Ton Roosendaal
cdcba166f6 Bad bad bug!
Newly added strip->scale was never initialized 1.0f on adding, causing
divide by zero in NLA/Action UI.

Bug since september or so... is nobody using NLA? :)
2008-01-14 15:16:59 +00:00
Campbell Barton
54be577d68 bumped up max recursiveness, was needed for a peach shot 2008-01-14 13:48:43 +00:00
Joshua Leung
65c4a2f9ff == Limit Scale Constraint - Affects Transform ==
Now, the Limit Scale Constraint can be made to work on the Transform values like the Limit Location constraint. Use the "For Transform" button to activate.

For clarity, this means that when scaling with a Limit Scale Constraint with this option on, the relevant values in the Transform Properties will stop changing once the Limit defined in the Limit Constraint is reached.
2008-01-14 11:23:03 +00:00
Brecht Van Lommel
7bd8871e14 Bugfix for rendering of duplis again, this time with multiple
dupligroups containing the same dupliverts.
2008-01-14 11:07:59 +00:00
Campbell Barton
f8ec163076 menu generation read and wrote to the same memory with sprintf(), use INIT_MINMAX in a few more places and centerview didnt take into account some bone tips in editmode. 2008-01-14 10:41:36 +00:00
Brecht Van Lommel
2262d0a45a Strand render shadow now only renders lines for shadow instead
of polygons, to avoid shadow flicker between frames.

Added some code that makes it possible to generate APixbuf's
from strands.
2008-01-14 10:00:20 +00:00
Joshua Leung
442ff2c322 Bugfix for Transform Orientation Panel:
Removed a pair of uiPanelPush()/uiPanelPop() calls from the Transform Orientation panel, which were causing minor redraw/refresh problems for the panel's buttons here.
2008-01-14 02:49:25 +00:00
Martin Poirier
1f3dc315d5 Fix crash in previous commit for objects that don't have a boundbox.
In that case, the object's center is used.
2008-01-13 22:57:36 +00:00
Jens Ole Wund
1b6c8691fd make solver UI more consistent ... that is what parameters are available and what is not 2008-01-13 22:51:48 +00:00
Martin Poirier
e4e66c9aa4 === Transform Snap ===
Snapping for object mode

Changes:
- Transform snap now working in object mode and not just mesh edit mode
- Shift-Tab can be used to toggle snap on/off inside transform too (no more Esc,toggle,restart)
- Object mode snap: Closest uses the bounding box corners of all selected objects, Median uses object center and Center uses transform center (same as edit mode).
- Object mode snap: all visible meshes can be used to get the snapping point (unlike edit mode snap which is limited to selected mesh: this might be adjusted to make edit mode snap use all visible too).

To Do:
- Add "Active" snap target method: use active object (or mesh element) as snap target
- Add snapping capabilities to Scale
- (Maybe) Add "Near pointer" snap target method: use selected element that is closest to mouse pointer as snap target. Active could probably accomplish that already in a less confusing manner, so I might skip this.
2008-01-13 22:20:18 +00:00
Martin Poirier
d660e29365 === Custom Transform Orientation ===
Custom Orientations can be added with Ctrl-Shift-C (hotkey suggestions are welcomed), this adds and select the new alignment. Custom Orientations can also be added, deleted, selected from the Transform Orientations panel (View -> Transform Orientations). Standard orientations (global, local, normal, view) can also be selected from this panel.

If you plan on using only a single custom orientation and don't really need a list, I suggest you use the hotkey as it adds and selects at the same time.

Custom Orientations are save in the scene and are selected per 3D view (like normal orientation).

Adding from an object, the orientation is a normalized version of the object's orientation.
Adding from mesh data, a single element (vertex, edge, face) must be selected in its respective selection mode. Vertex orientation Z-axis is based on the normal, edge Z-axis on the edge itself (X-axis is on the XoY plane when possible, Y-axis is perpendicular to the rest). Face orientation Z-axis is the face normal, X-axis is perpendicular to the first edge, Y-axis is perpendicular to the rest.
(More logical orientations can be suggested).

I plan to add: 2 vertice (connected or not) => edge orientation , 3 vertice = face orientation

Differences from the patch:
- orientations no longer link back to the object they came from, everything is copy on creation.
- orientations are overwritten based on name (if you add an orientation with the same name as one that already exists, it overwrites the old one)
2008-01-13 18:24:09 +00:00
Campbell Barton
67de673496 Bugfix, un-initialized variables for tubemap and spheremap mapping, affected textures 2008-01-13 18:13:39 +00:00
Andrea Weikert
52d283d1ab == MSVC 7.1 projectfiles ==
blenkernel needed opennl include (softbodies)
blenderplayer needed linking opennl too now.
replaces powf with pow in multires - MSVC isn't C99 compatible
2008-01-13 15:10:09 +00:00
Campbell Barton
826ff978cb Bugfix
[#6861] Black dots when using small lamps on Mirror materials in 2.44 and 2.43.
some values were not initialized properly, for example, the window coordinates for reflections, this caused NAN color values for some pixels, (may also fix plumiferos bad pixel problem from last bconf)
2008-01-13 11:15:23 +00:00
Nicholas Bishop
012d196b81 == Sculpt ==
Added undo pushes for the items in the sculpt menu
2008-01-13 01:29:45 +00:00
Nicholas Bishop
49eb7a3eed Applied a couple sculpt/multires fixes from trunk to blender2.5. 2008-01-12 22:06:42 +00:00
Nicholas Bishop
f1ff291ad1 == Sculpt ==
Added undo pushes after changing the brush type using the CTRL+TAB menu and after interactive change of brush size/strength/rotate.
2008-01-12 21:59:18 +00:00
Nicholas Bishop
800d4de5d6 == Sculpt ==
Fix for the initial brush shape; wasn't initialized properly on older files.
2008-01-12 21:51:23 +00:00
Joshua Leung
4830f12680 == AutoKeying - Tidy Up ==
This commit restores the "big red button". When Auto-Keying is enabled (record button toggled on), a menu appears beside it to choose which behaviour for auto-keying should be used. This should be more efficient for quickly turning Auto-Keying on/off.

I've also added the relevant version-patches to fix up old files so that sensible default options are in use.
2008-01-12 11:06:51 +00:00
Campbell Barton
60722bfb1d fix for [#8019] Switching to Image Browser window crashes Blender
http://projects.blender.org/tracker/index.php?func=detail&aid=8019&group_id=9&atid=125
2008-01-12 09:22:02 +00:00
Jens Ole Wund
1610b55f7e nice little thing -> have angular response on 'aero'
made backward compatible for sure
2008-01-12 01:26:40 +00:00
Ken Hughes
e8a200eb04 Python API
----------
Correct error in Mathutils.Rand documentation (pointed out on IRC by masterofbytes).
2008-01-12 00:54:42 +00:00
Campbell Barton
6b0cadd780 removed printf and added back a line removed by mistake 2008-01-11 22:54:02 +00:00
Campbell Barton
22d28f216f removed "Insert Gap" shortcut - alt/shift+mousewheel
It was too easy to Pan (Shift+MMB) but mousewheel without meaning to.
Extend - E-Key also does this in a more useful way.
2008-01-11 18:33:52 +00:00
Campbell Barton
b380e344fd bugfix for cyclic curves 2008-01-11 18:02:28 +00:00
Kent Mein
69f004f90d Reverting changes made yesterday to Makefile... (Its really messed up,
Going to do it over again from scratch)

Kent
2008-01-11 16:56:00 +00:00
Chris Want
6258c0979e The python lib name should be 'bf_python' instead of 'blender_python'
when linking.
2008-01-11 16:48:07 +00:00
Kent Mein
c562fdf095 Fixed typo from merge yesterday.
Kent
2008-01-11 14:15:59 +00:00
Brecht Van Lommel
e83b7bb46c Bugfix: with non-random particle distribution, the first particle could
still end up on a zero weight face.
2008-01-10 23:06:55 +00:00
Brecht Van Lommel
f62477fe27 - Bugfix to make dupli particles for hair respect render amount.
- Allow Random and Even distribution settings to be set after hair
  is made editable, since they also affect children.
2008-01-10 21:44:16 +00:00
Kent Mein
76cc0a4c57 Added extra include dir to get it compling again.
Kent
2008-01-10 21:35:33 +00:00
Kent Mein
6167882776 Cleaned up some things, more work to do here but its a little simpler now.
Kent
2008-01-10 19:53:57 +00:00
Kent Mein
ec4c6154fe Change vector structs from 3 to 4 so things are aligned for 64bit machines.
Kent
2008-01-10 19:22:58 +00:00
Ton Roosendaal
11ab3d7598 Add more memory clearing on file read for WindowManager. 2008-01-10 18:56:24 +00:00
Ton Roosendaal
42e2b4edde Two fixes in 2.5 branch:
- crash on start because of unitialized pointer
- Makefile had the python lib on weird location... I prefer all 
  blender/source/blender/ libs together on 1 place? The Make needs
  cleaning... it assumes publisher stuff. :)
2008-01-10 18:13:34 +00:00
Ton Roosendaal
43cf3af8c0 Blender 2.5 project: added first more complex handler + operator
- on mouse-over edge, you can drag area borders around.
- note it's a handerized system now, so it updates UI while you
  move mouse.

Feedback needed:

- read bottom part of the screen_edit.c file. It's the proposed
  method for adding tools and handlers. I think it's close, but
  might need some tweaks.
2008-01-10 17:38:17 +00:00
Nathan Letwory
7addde207d * convert the nice enums to #defines for two reasons
1)  < kaito> enums are not allowed in dna anyway
  2) linking fails for the yafray api.
2008-01-10 12:31:40 +00:00
Ton Roosendaal
cd02005fe4 Adding the colorband Hue, Saturation, Value, Color blending modes
to the Material Texture blending as well.
2008-01-10 11:26:17 +00:00
Joseph Eagar
8aee3ae449 =Wire render fix=
Fix for urgent problem found in wire render.

Hopefully it compiles and everything.
2008-01-10 05:30:55 +00:00
Joshua Leung
38a33eb7da == Auto-Keyframing Refactor (Peach Request) ==
Refactored Auto-Keyframing to make it easier to add more options. There are now three "states" for auto-keying: off, add/replace keys, replace keys.

Description of modes:
1) No auto-keying is done
2) Add new keyframes or replace existing ones if possible (old behaviour)
3) Only modify existing keys, but not insert new ones. 

Internally, I've moved the auto-keying settings out of G.flag and U.uiflag and moved them into their own variables in Userdef, and provided some macros to access those easily. As a result, old auto-keying settings are currently lost.

Also, removed the manual calls to insertkey done in pose-relax. The reason auto-keying didn't work before was because the bones didn't have the BONE_TRANSFORM flag applied. Now, these are set temporarily.


Todo(s):
* Make icons for the TimeLine header menu (currently just a text menu)
* Add version-patches for old files
* Double-check code for all places that use auto-keying (i.e. PoseLib)
2008-01-10 01:36:22 +00:00
Jens Ole Wund
5b0b214407 resolving back compatibility issues 2008-01-10 00:07:31 +00:00
Nathan Letwory
b81b6be184 * fix linking order for bf_python 2008-01-09 23:07:34 +00:00
Matt Ebb
0aa6888758 * Updated makefile for OpenNL, used in new softbody.c 2008-01-09 22:32:36 +00:00