Commit Graph

19136 Commits

Author SHA1 Message Date
Brecht Van Lommel
b1bbfda8a5 2.5: small text tweak for empty object buttons. 2009-09-09 19:43:42 +00:00
William Reynish
a3a414a631 Keyboard shortcuts
Made Mac-specific keys only appear on the Mac. This has the added benefit that it shows the Mac key shortcuts in menus.
2009-09-09 19:43:05 +00:00
Brecht Van Lommel
ceaae73d5e 2.5: fix compilation of smoke commit for Makesfiles as well. 2009-09-09 19:42:53 +00:00
Brecht Van Lommel
297a53ebf8 RNA: multidimensional & dyanmic array changes
* Disable setting array length of dynamic array for now, this was not
  implemented correct, and it's not really needed now.
* Allow all dimensions to be dynamic size, not just the first.
* Change storage of multidimensional to be simpler.
* Rename API functions to be more compact.
* Fix some bugs in the implementation.
* RenderLayer.rect and RenderPass.rect use a multidimensional
  dynamic array now.
2009-09-09 19:40:46 +00:00
Thomas Dinges
939b72247d 2.5:
* Scons compile fix for recent smoke commit.
2009-09-09 19:31:43 +00:00
Daniel Genrich
8e2d861695 Smoke:
* Enable cache for high res + new preview
* Bugfix for smoke banding (in cooperation with N_T)

Hint: Work-in-progress regarding collision objects so can be broken, didn't test

Hint2: jahka enabled a general particle panel but 
* bake button doesn't work
* step is not supported for cloth
* several other things there ;)
2009-09-09 18:39:40 +00:00
Andrea Weikert
ace94617c7 2.5 MSVC projectfiles
* small maintenance for split files in editors/object
2009-09-09 18:18:09 +00:00
Brecht Van Lommel
9e7c4ce806 2.5: Layer Buttons
* Added RNA subtype for layers.
* Shift-click works again.
* uiItemR can now also handle armature/bone layers.
* Also makes Move to Layer popup work as expected.
2009-09-09 17:39:19 +00:00
Brecht Van Lommel
d4a69283a6 2.5: fix for recent file operator opening wrong item. 2009-09-09 17:34:14 +00:00
William Reynish
11c5cb452c Keyboard shortcuts
Moved to modern OS standards for opening, saving, copying, pasting, cutting (text), new document, undo and redo.
For Mac users, Cmd is used in addition to the Ctrl-based shortcuts.

These changes are made according to an agreement among developers on IRC.
2009-09-09 15:45:12 +00:00
Brecht Van Lommel
3daa283604 2.5: Object module
* Split object_edit.c into multiple files:
  object_add.c, object_edit.c, object_hook.c, object_relations.c,
  object_select.c, object_transform.c.
* Rename files to have consistent object_ and mball_ prefix:
  object_shapekey.c, object_lattice.c, object_vgroup.c, mball_edit.c.
* Added operators:
  * vertex group menu and set active
  * apply location, rotation, scale, visual transform (location is new)
  * make local
  * make vertex parent
  * move to layer
  * convert to curve/mesh (not finished yet)
* Many small fixes for marked issues, but still much code to be cleaned
  up here...
2009-09-09 11:52:56 +00:00
Brecht Van Lommel
8878c30b9b 2.5: WM_menu_invoke now uses the first enum property it can find,
if no enum property named "type" is available.
2009-09-09 11:10:28 +00:00
Brecht Van Lommel
b9f1117336 2.5: use bone groups icon in UI. 2009-09-09 11:05:10 +00:00
Matt Ebb
c29780c12a * Temporary fix to get fluid sim (and fluid control) working properly (without animated parameters). This just fills the fluid sim animation channels with default values for now, but will need to be updated to new animation system. 2009-09-09 07:52:44 +00:00
Martin Poirier
2e851fdc67 frame range restrictions for dependencies, so slaves only receive point cache files for the frames that they need to render (supports step > 1, of course) 2009-09-09 02:25:14 +00:00
Campbell Barton
850abb3580 curve.textboxes collection access for the UI + minor UI tweaks for poly curves 2009-09-09 00:10:12 +00:00
Campbell Barton
e6965c46fc patch from Maurice & Patsoko on blenderartist for win32 registry support,
moved "import winreg" inline, (so other OS's don't import it), untested but should be ok.

--- From the thread
It's the version of r23036 + winreg patch from Maurice.

About the registry keys:
 - I have povray 3.6 and 3.7b34 installed on vista32.
 - In the registry, I have 3 choices : ' CurrentVersion ', ' v3.6 ', and ' v3.7'.
 - I've modified Maurice's patch by replacing CurrentVersion by v3.6. We have the benefit to have the keys for each version so I prefer use them rather than the 'floating-key-about-which-is-the current-version'. I found more secure like that.
2009-09-08 22:46:14 +00:00
William Reynish
ee78c63bee Text UI
*Added Text Boxes panel, currently only shows the first textbox. Needs operators for adding/removing
*Added Bold/Italic/Underline items
*Cleaned up some font UI layout.
2009-09-08 11:31:15 +00:00
Benoit Bolsee
31fec003a1 Fix row/column order in matrix printout function. 2009-09-08 11:14:36 +00:00
Joshua Leung
5ce8b1f704 2.5 - FollowPath Constraint + File Loading Bugfix
* Added a new option ('Fixed Position') for Follow Path constraint which allows you to constrain an object/bone to some fixed position along the curve. Unlike the default mode of operation, this doesn't depend on time unless you explicitly animate the offset percentage parameter associated with this.

* Made old (pre 2.5) files saved with armatures in pose mode load in pose mode again.
2009-09-08 09:41:15 +00:00
Matt Ebb
b9816c98bc * Volume render weaks/fixes/etc from Alfredo, after code review
- General correctness tweaks
- Light cache is enabled for all objects now
- Metaballs now give density info, for smooth falloff
2009-09-08 08:15:56 +00:00
Campbell Barton
1d0a567023 Curve/Surface Editing
- rename "Nurb" to "Spline" in RNA, eg. bpy.data.curves[0].splines[2].type == 'NURBS'
  from a user perspective spline is a more generic term while Nurb is misleading when used for beziers and poly lines.

- added curve.active_spline property so the python UI can display the last selected curve.
  
- set the active spline when entering editmode (uses first selected spline)
  
- added back Hide Handles as a curve property (removed the global flag), access from the view panel in editmode.
  
- added hide normal option for curve, normal size access for curve and mesh display.

- changing orderU/V, endpoints, cyclic, bezierU/V now work in editmode and calls update functions.

- entering editmode was crashing with text objects

- curve.switch_direction() crashed (own fault from last commit)

- Tkey for tilt was overridden by Toolbar, made Tilt Ctrl+T.

- OBJECT_OT_mode_set check for compatible modes before running - so curves dont try go into paint mode with V key for eg.
2009-09-08 07:35:07 +00:00
Matt Ebb
fab4bf0816 Re-commit previous brush ui changes.
Strangely seemed to get reverted in jahka's rev. 22861
2009-09-08 03:29:28 +00:00
Dalai Felinto
f7deb2046e manual merge trunk -r 23037
strangely vector.c was skipped in last merge from trunk.

-----------------------------------
Mathutils fix: Vector.reflect
* correct function for reflection and moving it to arithb.c
2009-09-08 03:25:00 +00:00
Joshua Leung
6808e15c8d 2.5 - Mode Switching Bugfixes
This commit some of the many bugs here (it's still not perfect now, but much better than it was):
* Moving in/out of Object, Edit, and Pose Modes for Armatures should now work smoothly. Operators should work nicely in the appropriate modes now (select linked might be a bit tempermental still, since it uses mouse-position).

* Fixed the 'mysterious' memory leaks when changing modes. These were only caused when using the mode switching menu in the 3D-View.

* Went through bullet-proofing some of the operator calling functions against NULL operator id-name strings.
2009-09-08 02:09:14 +00:00
Martin Poirier
00838f05d2 use pure py classes instead of a mix of rna stuff for ui. fix a couple of bugs 2009-09-08 01:18:06 +00:00
Campbell Barton
8b6b31b41f Made Nurb->type only store the type rather then mixing the type with flags.
moved CU_2D to Nurb->flag in do_versions
This made simple type checks confusing to read.

many... if( (nu->type & 7)==CU_BEZIER)
replaced with ... if(nu->type == CU_BEZIER)

made setting rna curve_2d clamp the Z values. still more RNA/UI changes to do.
2009-09-08 00:23:33 +00:00
Benoit Bolsee
0ab2f675c3 Fix bug in Mathutil with matrix/matrix and matrix/vector multiplication order.
MathUtil matrix type follows Blender convention of column
major storage.  This means that the elements on one column
are contiguous in memory. Vectors are one dimensional
arrays that can be considered in row or in column but
the Blender convention is column so vector should only
be considered as row. This means that the only logical
multiplication operation between matrix and vector is
matrix * vector.

This convention is respected in all parts of MathUtil
except in matrix/matrix and matrix/vector multiplication
where the row major convention is assumed, which in the
and is equivalent to reversing the order of multiplication.

This is clearly a bug and must be corrected but the side
effect is that it will break all scripts using these
operations. Script writers who care about the correctness
of the matrix operations have already implemented work around:

1) change order of matrix/vector multiplication.
vec2 = vec1 * mat1

This must be changed to the normal order:
vec2 = mat1 * vec1

2) change order of matrix/matrix multiplication
(with matl a local transform in matw reference)
mat3 = matl * matw

This must be changed to the normal order:
mat3 = matw * matl

3) transpose before an after the multiplication
matl.transpose()
matw.transpose()
mat3 = matw * matl
mat3.transpose()

This must be changed to:
mat3 = matw * matl;
2009-09-07 22:26:23 +00:00
Andrea Weikert
01eaf4fd5f 2.5 MSVC 9 projectfiles
* maintenance
2009-09-07 18:44:01 +00:00
Campbell Barton
4c859897f6 - crash fix for setting a curve smooth operator
- added curve attribute use_twist_correction
- added nurb attribute type  - NURBS, POLY, BEZIER
- renamed a number of curve attributes with the use_ prefix.
- UI layout adjustments to only show buttons that are needed and reflect internals for nurbs.
... Note that many of the buttons only apply to NURBS, and all the "V" buttons only apply to surfaces, remove when not needed.
2009-09-07 15:02:43 +00:00
Thomas Dinges
70c4898db8 2.5:
* Fixed a Typo in Particle Effector Panel. Reported by Jack*RED on graphicall. Thanks!
2009-09-07 14:58:08 +00:00
Thomas Dinges
f4f51efa51 2.5:
* Use new Pressure Size Icons, old ones were still defined in the py file.
2009-09-07 11:59:05 +00:00
Thomas Dinges
fcf1040473 2.5:
* New Smoke Modifier icon was missing in the Smoke RNA struct.
2009-09-07 11:51:19 +00:00
Joshua Leung
a83aa92e80 2.5 - Armature/Pose Bugfixes:
* Added missing prototype from arithb 

* Added define for Axis-Angle rotations. This has not yet been hooked up for actual usage yet, since there are some issues regarding evaluation which I'd like to investigate further first.

* Editing numbuttons for posechannel transforms now updates in realtime. Sending ND_POSE|ND_TRANSFORM was causing confusion for the listeners (which only check for either/or)

* Partial fix for axis drawing on bones. Now the axes are drawn at the tips of the bones again, but unfortunately the texts aren't (since they only use the object matrix, they get drawn at the origin).
2009-09-07 11:05:16 +00:00
Matt Ebb
10c18d72f4 * Another handful of brilliant new icons by jendryzch 2009-09-07 09:43:04 +00:00
Campbell Barton
4cc908b676 svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r23023:HEAD 2009-09-07 08:37:28 +00:00
Campbell Barton
d779410600 svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r22935:23022
looks like 2 merges are needed to skip a commit.
2009-09-07 08:31:03 +00:00
Campbell Barton
f5e80e7a80 Operator docstring patch from Ron Walker, added console operator docs too. 2009-09-07 04:52:42 +00:00
Joshua Leung
84448173c3 2.5 - Rotation Order Tweaks
* Copy Rotation constraint should now work ok with this new code again. Previously, it was the only thing that really went beserk when the typos were still uncaught.

* Fixed one other case of a potential case where typos would cause problems.

* Made changing the rotation order setting perform conversions of the current rotation to an equivalent representation in the other orders/forms. This is done at RNA level, so maybe not that great for switching representations while animating?
2009-09-06 23:15:43 +00:00
Guillermo S. Romero
a646688325 SVN maintenance. 2009-09-06 20:59:06 +00:00
Dalai Felinto
7064f6c5d8 Mathutils fix: Vector.reflect
* correct function for reflection and moving it to arithb.c
* note: 2.5 has an already more elegant solution for it (still wrong, but the code is cleaner).
Therefore the merge may need to be manual in that case.

Specifically in 2.5 we are doing:
if(!BaseMath_ReadCallback(self) || !BaseMath_ReadCallback(value)) return NULL;
And there we don't need to create a VectorObject *mirrvec; only to get the values.

Code used to test it:
http://www.pasteall.org/7654/python

* YoFrankie script probably needs to be fixed too.
2009-09-06 19:51:57 +00:00
Campbell Barton
6a301de3eb users on blenderartist reported uncompressed TGA loading worked for them where compressed didnt. 2009-09-06 19:18:12 +00:00
Nicholas Bishop
952fa6d1c1 2.5/Paint:
* Fixed some bad UI pointed out by letterrip. People had made some quite bad changes (duplicating buttons, adding UI for non-existent features, even deleting UI for existing features!)
2009-09-06 16:58:14 +00:00
Arystanbek Dyussenov
62138aaa5a Python part of multidim. array support for RNA complete.
Multidim. arrays can now be modified at any level, for example:

struc.arrayprop = x
struc.arrayprop[i] = x
struc.arrayprop[i][j] = x
struc.arrayprop[i][j][k] = x
etc...

Approriate rvalue type/length checking is done. 

To ensure all works correctly, I wrote automated tests in release/test/rna_array.py.

These tests cover: array/item access, assignment on different levels, tests that proper exceptions are thrown on invalid item access/assignment.

The tests use properties of the RNA Test struct defined in rna_test.c. This struct is only compiled when building with BF_UNIT_TEST=1 scons arg.

Currently unit tests are run manually by loading the script in the Text Editor.
Here's the output I have: http://www.pasteall.org/7644

Things to improve here:
- better exception messages when multidim. array assignment fails. Those we have currently are not very useful for multidim.
- add tests for slice assignment
2009-09-06 15:13:57 +00:00
Nathan Letwory
3d64d65ad9 * clean out some warnings (unrefenced vars mainly) 2009-09-06 14:32:02 +00:00
Nathan Letwory
fb649d5824 * cleaning up warnings (mostly windows). A collection of other warning fixes too (undefined function, assuming int, etc.)
This compiled fine with scons/msvc and scons/mingw (gcc 4.4.0). Please test and report any problems.
2009-09-06 13:20:05 +00:00
Joshua Leung
51aa207d20 2.5 Anim Bugfixes:
* Rotation order code should be more correct now. Previously was only shuffling axes, and was also doing some evil things to provided that that it shouldn't have been doing, which was causing some flipping issues.

* Built-in keyingsets for 'visual' options should now be more correct. The old code had typos, giving wrong array indices to start from.
2009-09-06 07:22:32 +00:00
Campbell Barton
0a3694cd6e white space commit. (2 spaces -> tab).
Was annoying to use a different editor for cmake only.
theeth says this should be ok with gsoc and merges from branches.
2009-09-06 01:51:23 +00:00
Martin Poirier
a46beac3f8 Rename Vec3ToTangent VecBisect3, since that's what it does. 2009-09-06 01:11:47 +00:00
Campbell Barton
d1c90f4bef easier to re-apply the replacement table then merge from 2.4x, same as 23023
replacements...
 MTC_cross3Float -> Crossf
 MTC_diff3Float -> VecSubf
 MTC_dot3Float -> Inpf
 MTC_Mat3CpyMat4 -> Mat3CpyMat4
 MTC_Mat3MulVecd -> Mat3MulVecd
 MTC_Mat3MulVecfl -> Mat3MulVecfl
 MTC_Mat4CpyMat4 -> Mat4CpyMat4
 MTC_Mat4Invert -> Mat4Invert
 MTC_Mat4Mul3Vecfl -> Mat4Mul3Vecfl
 MTC_Mat4MulMat4 -> Mat4MulMat4
 MTC_Mat4MulSerie -> Mat4MulSerie
 MTC_Mat4MulVec4fl -> Mat4MulVec4fl
 MTC_Mat4MulVecfl -> Mat4MulVecfl
 MTC_Mat4One -> Mat4One
 MTC_Mat4Ortho -> Mat4Ortho
 MTC_Mat4SwapMat4 -> Mat4SwapMat4
2009-09-06 00:36:26 +00:00