Commit Graph

36917 Commits

Author SHA1 Message Date
Brecht Van Lommel
378765650d Fix makesdna error due to poor comment parsing, should be fixed in makesdna
ideally but for now just tweak code in case it causes issues.

ERROR: still 1 structs unknown
*** Unknown structs: bSound
2012-03-09 19:01:30 +00:00
Campbell Barton
89a963fb7f style cleanup: comment blocks 2012-03-09 18:28:30 +00:00
Sergey Sharybin
de4bd55e01 DO not increment image user counter on view3d duplicate and not decrement
it's user count on free. That's how other spaces handles ID block (like
image editor, space clip).

This fixes issue when loading file without loading UI when current layout
has got background images set.
Also this hopefully will fix issue #30429: Background Images Lost on Save/Close/Reload
2012-03-09 13:43:37 +00:00
Sergey Sharybin
0c68f0eee8 Previous fix for stabilization autoscale actually broke stabilizaiton itself
(median point was sliding a bit from it's original position)

This happens because of how transformation for stabilization calculates:
image is scaling around it's center, so image translation should be recalculated
after scale was changed, but scale also depends on translation. That's where
tricky things happens. It's still not ideal for case of rotation, but before
fixing this issue better to figure out usecase and see if it's indeed
so needed to scale around image center (it might only be helpful to use
stabilization parameters in compositor nodes).
2012-03-09 13:37:42 +00:00
Joshua Leung
15ec2a90c9 Markers Tweak for Sequencer
Applied the keymaps hack which is used for other animation editors to allow
markers to be added and renamed anywhere from within the sequencer strips
region, instead of just when the cursor is over the scrollbar.

Other operations where the hotkeys conflict though (delete, move) can still be
done only from the scrollbar, or better still, from the Timeline.
2012-03-09 13:31:20 +00:00
Joshua Leung
48f284d544 Tweaks for typos in the Keying Set descriptions commit 2012-03-09 10:24:53 +00:00
Lukas Toenne
455d1be696 Node socket selection feature reimplemented from 2.49. Sockets can be selected as a sub-selection of nodes and are then preferred by the auto-connect operator. This makes it easier to create precise links over long distances as an alternative to the click & hold operator.
Socket selection is indicated by a simple white highlight circle.

Multiple inputs can be selected by holding SHIFTKEY (just like regular node select). Only one output socket can be selected at a time for each node, but several outputs in different nodes are allowed.

The auto-connect operator will prefer selected sockets on nodes for creating links. If either the output or input side have no selected sockets it will fall back to the previous behavior of chosing 'best' sockets first (colors, then vectors, then values). This could be improved in the future, but is out of scope here.
2012-03-09 10:16:41 +00:00
Sergey Sharybin
eb1b38f31a Some fixes for 2D stabilization:
- Ron aspect ratio correction after applying location
  There're still some annoynments with rotation stabilization with
  pixel aspect != 1, will be fixed later.
- Joining tracks will update track used for rotation stabilization/
2012-03-09 10:01:29 +00:00
Nicholas Bishop
0641f1723b Optimize index buffers for multires drawing in sculpt mode.
All multires grids have exactly the same ordering, so rather than
allocate a new index buffer for each PBVH node, just allocate one that
can be reused for every grid.

This requires more draw calls (one per grid rather than one per PBVH
node), but less graphics memory.
2012-03-09 09:30:03 +00:00
Campbell Barton
dfdfa3d51b code cleanup: replace macros VECCOPY, VECADD, VECSUB, INPR - with BLI_math funcs.
added copy float/double funcs: copy_v3fl_v3db(), copy_v3db_v3fl(). 2d & 4d too.
2012-03-09 06:04:17 +00:00
Campbell Barton
4251746382 some code cleanup for rip tool. 2012-03-09 04:10:19 +00:00
Campbell Barton
78d73eb155 BMesh: rewrite edge split code (used by edge split modifier and rip tool)
this fixes but [#30461] where the same vertex was added to some faces twice.

Previous code rebuilt all faces around the split edges, replace this with much simpler code that uses existing bmesh API for splitting.

This also gives a performance boost to the modifier (over 30x faster in the bug-report file).
2012-03-09 03:16:39 +00:00
Campbell Barton
4f7bdc59d3 style cleanup: spelling.
also remove large, duplicate comments from sunsky.h
2012-03-09 00:41:09 +00:00
Campbell Barton
27d43f3fd3 added API function to C and python
* C:  BM_vert_separate(...)
* py: bmesh.utils.vert_separate(vert, edges)

This splits off regions around the vertex, splitting on connected edges passed in a sequence.

also made minor changes
- rename python api functions _rip to _separate
- fixed bmesh iterator being iterable its self (some parts of python expect this)
- fix memory leak in bmesh python api.
2012-03-09 00:01:38 +00:00
Nicholas Bishop
06b2343b50 Use sqrtf rather than sqrt in CCGSubSurf.c 2012-03-08 22:33:34 +00:00
Sergey Sharybin
3a3c5db82b - MSVC doesn't have log2f function
- Fix misusage of new [] and delete in BGE.
2012-03-08 21:14:54 +00:00
Brecht Van Lommel
077deb1453 Cycles: improve F/Stop number tooltip description. 2012-03-08 20:13:33 +00:00
Campbell Barton
c82c456247 bmesh py api, new functions:
* bmesh.utils.face_vert_rip(f, v)
* bmesh.utils.loop_rip(l)
2012-03-08 20:00:37 +00:00
Brecht Van Lommel
284fcd2df2 Cycles: fix UI when material has nodes but use nodes option is disabled, it
didn't show this option then.
2012-03-08 19:53:01 +00:00
Brecht Van Lommel
9b8dae71a5 Cycles: support for environment texture "Mirror Ball" projection mode, next to
existing "Equirectangular". This projection is useful to create light probes
from a chrome ball placed in a real scene. It expects as input a photograph of
the chrome ball, cropped so the ball just fits inside the image boundaries.

Example setup with panorama camera and mixing two (poor quality) photographs
from different viewpoints to avoid stretching and hide the photographer:
http://www.pasteall.org/pic/28036
2012-03-08 19:52:58 +00:00
Sergey Sharybin
0f3e1821ea Fix #30435: 2.62 Torus Batch building "Bug" or A Experimental Feature?
Python-defined primitives used to be added to all visible layers instead of
adding to active scene layer as it happens with C-defined primitives.
2012-03-08 18:50:42 +00:00
Luca Bonavita
e4253fa2b8 == Python API docs ==
- Enhanced the -T option:

  - we can now choose among custom themes (now 'blender-org' and later 'naiad')
    and Sphinx internal themes (use -h option to see which ones)

  - choosing a custom theme will copy the theme dir to the output dir

- Added two new command line options:

  -N: Add the theme name to the html dir name
      For example, if we choose the theme 'haiku'
      with using -N will create html files in sphinx-out_haiku/
      Useful to test separate themes without overwriting the smae folder each time
      
  -B: Builds the html docs running sphinx-build
      This is useful to avoid runing sphinx with a separate shell command

- Fixed the URL in undocumented_message()
2012-03-08 18:36:23 +00:00
Ton Roosendaal
a8d65a3708 Fix for Francesco Siddi: ALT+A should always start with the scene start frame! 2012-03-08 17:40:55 +00:00
Sergey Sharybin
fe131db70b New operators for clip editor's curve view:
- Select All operator for selecting markers
- Disable selected markers operator
2012-03-08 17:06:40 +00:00
Campbell Barton
a71936196a bmesh: fix for edge split allowing marked boundry edges for splitting. 2012-03-08 16:46:14 +00:00
Sergey Sharybin
895b99715b - Clip draw as scene strip background works fine again
- Path cleanup performed from curve view now clears only active track
  instead of all selected tracks.
2012-03-08 16:27:53 +00:00
Sergey Sharybin
3675fab31d Fix #30485: TRANSFORM / STABILIZE 2D: First row / column blackness.
Clamp source coordinates to boundaries so it'll be kind of correct weight
calculated for the pixel.
2012-03-08 14:23:34 +00:00
Bastien Montagne
a80b7d6129 Fixing several issues with keyingsets:
*Add a new idname to keyingsets, keeping name as label-only (using same string for both made lookup fail when using i18n other than english, as it tried to compare an untranslated static string id against a translated RNA name). Also adding a description string (can be helpful with custom keyingsets, imho).
*Fixed a few other bugs related to that area (namely, you can’t deselect current keyingset from the shift-ctrl-alt-I popup menu, and insert/delete key ops were using a rather strange way to get chosen custom keyingset…).
*Fixed UI code so that it always uses (RNA) enum, and simplified menu-creation code.
2012-03-08 14:04:06 +00:00
Sergey Sharybin
a5f2db9992 Fix #30489: Loop Cut by Typing Numbers Is Limited to 32?
Increase numbering input of number of loop cuts to 130 as it was in 2.49.
Also display count of cuts in a header.
2012-03-08 13:20:06 +00:00
Lukas Toenne
085c94e09d Modified behaviour of the link-insertion operator (drag on link, request by Sebastian Koenig). This would previously attempt to find a socket with exactly matching type to the from/to sockets of the cut link, but this is annoying because it often links to the "secondary" sockets, such as Factor input in the Mix node. New behaviour is to choose the input/output for reconnection based on the "highest" (= most important) socket types (in order color, vector, value), like the autoconnect operator (FKEY) also does. It is far from ideal and will probably not work in all situations either, but until we have a detailed design for "best sockets to auto-link" this will have to do. 2012-03-08 12:04:06 +00:00
Sergey Sharybin
c6d80d1db1 Fix ##30455: Orthographic grid alignment jumps/shifts when zooming
Issue was caused by precision errors with floats.
Made internal grid drawing stuff using doubles and also added some
functions to multiply double vector by float matrix which also makes
all intermediate calculation in doubles.
2012-03-08 11:57:51 +00:00
Howard Trickey
fc170e6a4e Knifetool: change ESC to mean cancel, not confirm.
This corresponds to the more usual convention.
There was no key connected to Cancel, and we already
have Return, Numpad-Return, and Right-click for confirm.
2012-03-08 11:56:11 +00:00
Joshua Leung
f839e2d41a Partial Bugfix [#30097] : Current frame indicator on Motion Paths drawn
incorrectly

When the current frame occurs outside the current visible range a given motion
path, the point lookup was seeking past the ends of the path's point cache,
causing sporadic flickering of current frame indicator at 0,0,0.
2012-03-08 10:53:40 +00:00
Nathan Letwory
41bed8e04c Add missing include. 2012-03-08 10:52:30 +00:00
Sergey Sharybin
1e173fefd6 Fix #30464: Confusing lack of label for Fluid "use"
It was indeed not clear at all what that label-less check box does.
Move it to next row (to prevent fluid type menu be too narrow) and
use label default for it.

Also don't create second column which is empty for outflow fluid type.
2012-03-08 10:13:31 +00:00
Sergey Sharybin
50b6c903ff Fix #30467: UV/Image Editor: Scope: Opacity Values maybe wrong
Internally vector and waveform opacities are stored as float in 0..1 range
and the same range is exposed to the UI.
From file compatibility POV decided to change prop's type from percentage
to factor so it'll be nice slider with 0..1 range without confusing percentage
symbols (which should be quite easy to follow) and both forward and backwards
compatibilities are here.
2012-03-08 10:01:03 +00:00
Bastien Montagne
4a02307236 Another fix due to recent DM refactoring, for compilation of navmesh... 2012-03-08 09:14:10 +00:00
Sergey Sharybin
2413523d69 Compilation error fix for game engine caused by recent DM refactoring. 2012-03-08 08:57:38 +00:00
Nicholas Bishop
640b0adb98 Code cleanup: use named values for options in DerivedMesh drawing.
The DMSetDrawOptions[Tex] callbacks return 0 (skip), 1 (draw), or 2
(either stipple or skip mcols.) In the CDDM, EDDM, and CCGDM draw
functions, as well as the callbacks in drawmesh/drawobject, replace
these numbers with values from an enum, DMDrawOptions.
2012-03-08 06:47:05 +00:00
Campbell Barton
ee84084f99 style cleanup: pep8 + picky edits 2012-03-08 05:36:05 +00:00
Campbell Barton
e61339a76f code cleanup: duplicate checks and double assignments. 2012-03-08 04:38:35 +00:00
Campbell Barton
79d97ca509 style cleanup - spelling. 2012-03-08 04:12:11 +00:00
Campbell Barton
17786b3b3e building without python works again, cleanup bmesh include paths (cmake and scons). 2012-03-08 03:25:53 +00:00
Campbell Barton
640d766370 style cleanup - remove unneeded ';'s 2012-03-08 03:05:57 +00:00
Campbell Barton
1c91d62c7e use BLI_path_cmp() rather then strcmp() 2012-03-08 02:19:41 +00:00
Campbell Barton
6029640bca Many vertex group functions assumed mesh object when lattices could be operated on too. 2012-03-08 01:49:25 +00:00
Campbell Barton
081aa382ed fix
- access to a meshs editmesh before the pointer was checked to be a mesh.
- uninitialized memory use in transform (not a problem practically but nice to quiet the error in valgrind).
2012-03-08 01:22:49 +00:00
Campbell Barton
52db32bb53 fix for 2 crashes from missing NULL checks. 2012-03-08 00:23:28 +00:00
Campbell Barton
6bed106ed4 the length of mesh.tessface_vertex_colors was reported incorrect. (fix needed for FBX export) 2012-03-07 22:21:28 +00:00
Campbell Barton
db4a85162d edits to rna/tessface UV layer needed to get OBJ import/export functional.
add the function to create new UV layers, this only works when there are no polygon layers already created (to prevent confusion since scripts with polygon layers should be adding MTexPoly and MLoopUV layers)
2012-03-07 21:58:58 +00:00