Commit Graph

12744 Commits

Author SHA1 Message Date
Antony Riakiotakis
d0beabb642 Add function to query maximum texture size. Also, make texture upload
functions aware of this limit.
2013-04-12 17:56:07 +00:00
Antony Riakiotakis
a305452275 Paint refactoring commit, non-disruptive (in theory :p)
* Fix precision overflow issue with overlay previews,
* Expose alpha mask mapping to UI (still not functional but coming soon).
* More overlay refactoring:

Overlay now does minimal checking for texture refresh.
Instead, we now have invalidation flags to set an aspect of the brush
overlay as invalid. This is necessary because this way we will be able to
separate and preview different brush attributes on the overlays, using
different textures:

These attributes/aspects are:

Primary texture (main texture for sculpt, vertex, imapaint)
Secondary texture (mask/alpha texture for imapaint)
Cursor texture (cursor texture. It involves brush strength and curves)

Modified the relevant RNA property update functions and C update callback
functions to call the relevant cursor invalidation functions instead
of checking every frame for multiple properties.

Properties that affect this are:

Image changes, if image is used by current brush,
Texture slot changes, similarly
Curve changes,
Object mode change invalidates the cursor
Paint tool change invalidates the cursor.

These changes give slightly more invalidation cases than simply
comparing the relevant properties each frame, but these do not occur in
performance critical moments and it's a much more elegant system than
adding more variables to check per frame each time we add something on
the system.
2013-04-12 17:21:31 +00:00
Lukas Toenne
58d211acdd Fix for user count when adding a new library node tree. This needs to decrease user count by 1 to compensate for increment in RNA_property_pointer_set. 2013-04-12 15:42:16 +00:00
Brecht Van Lommel
22230ced41 Fix #34961: camera fly mode would reset camera scale. 2013-04-12 14:25:08 +00:00
Ton Roosendaal
adb96478a7 Adding scrollbar default to Python console and Python Info log. 2013-04-12 12:30:05 +00:00
Sergey Sharybin
0d86c3f84c Image draw method option
This option replaces previously added GPU limit
option, which became tricky to follow after GLSL
display space conversion.

There're 4 modes available:
- AUTO which will try to guess which mode is
  best to use.
  Currently It'll try using GLSL and if it fails,
  will fallback to 2D textures.
  Probably it'll make sense checking on whether
  2D textures works well but currently such behavior
  shall be sufficient.
  Later we could make this method smarter (for example
  don't try to use GLSL on certain GPU or so).
- GLSL will currently behave the same way as AUTO,
  but it is intended to always try using GLSL
  (unless it can not be used because of existing
  limitation of dither and RGB curves).
- 2D Textures will use CPU-based color space conversion
  and use OGL 2D Texture to display the image.
  Image will be displayed in tiles, so there shall be
  no big GPU memory consumption.
- DrawPixels will straightly fallback to glDrawPixels
  without trying to use any fancy GPU stuff.

Hopefully this will also fix
#34943: Blender crashes when resizing the Compositing Screen Window
2013-04-12 10:52:47 +00:00
Campbell Barton
ba845f6313 fix for own recent addition of transform indervidual-axis in editmode, not working if the object was rotated. 2013-04-12 02:16:44 +00:00
Campbell Barton
502ddd3128 code cleanup: warnings and style. 2013-04-12 00:50:40 +00:00
Thomas Dinges
38cf856ea9 Compile fix for r55970. 2013-04-11 15:21:03 +00:00
Brecht Van Lommel
120fe74ffe Fix #34817: improve OpenGL preview render speed, it got quite a bit slower since 2.60.
Doing linearization with GLSL was already faster, but even faster is to just read the
bytes instead of floats and convert those to linear, since byte => float is just a quick
256 entry table lookup. Also made it assign the bytes directly to the image buffer so
they do not need to be converted back from float to byte for file saving, and made sky
render write the background color with OpenGL instead of doing it on the CPU.
2013-04-11 15:15:06 +00:00
Antony Riakiotakis
5c4a080021 Fix #34954, due to hardcoded key release it was impossible to change key
for sample color and exit the operator. Also tweaked stencil to behave
similarly, so it is now possible to assign custom keys to stencil
control.
2013-04-11 14:15:25 +00:00
Sergey Sharybin
6569ab813f Fix for material icon rendering with cycles
Materials icons used to miss transparent background
and were using world environment which didn't give
so nice results.

Reviewed by Brecht, thanks!
2013-04-11 12:49:57 +00:00
Campbell Barton
94c9010e24 make scene.ray_cast() behave like object.ray_cast(), add distance arg to snapObjectsRayEx(). 2013-04-11 10:17:06 +00:00
Campbell Barton
bf77ad00b3 py api:
ray cast function, very useful to be able to cast rays into the scene for scripts.

  hit_co, hit_no, success = scene.ray_cast(start_co, end_co)
2013-04-11 09:57:26 +00:00
Campbell Barton
acac5b8402 fix for crash in own recent commit. searchbox's need their own keynav state since they won't always be in a uiPopupBlockHandle. 2013-04-11 08:33:19 +00:00
Campbell Barton
075a655cc6 fix [#34936] Unable to select items using only the arrow keys
ignore small mouse motions for menu/search-box after using the keyboard to navigate.
2013-04-11 02:28:34 +00:00
Campbell Barton
5eb37f9e5c correction to own recent changes to exitmode using axis-matrix, fallback to old behavior for editmodes where the axis-matrix isnt set (curve, surface, lattice) 2013-04-10 23:05:35 +00:00
Jens Verwiebe
cbe9ae244e Add a gui control for setting omp threads in fluids 2013-04-10 18:35:18 +00:00
Brecht Van Lommel
ac224a64f4 Fix #34941: Space.draw_handler_add now supports PRE_VIEW and POST_VIEW callbacks
for more editors: timeline, graph, action, NLA, sequencer, image, clip.
2013-04-10 16:59:55 +00:00
Mitchell Stokes
2f5eaf3fcf BGE: Non-mesh objects (lamps, empties, group instances, etc.) are now "No Collision" by default. 2013-04-09 05:02:10 +00:00
Campbell Barton
28826d22e9 rigidbody operators poll functions were mixing up CTX_data_active_object/ED_object_active_context.
- replace ED_operator_rigidbody_add_poll with ED_operator_object_active_editable_mesh
- replace ED_operator_rigidbody_active_poll with ED_operator_scene_editable for operators that use the entire selection.
- remove rigid-body from objects that are converted from meshes to curves, while this isnt crashing it is confusing to see in the UI.
2013-04-09 01:43:39 +00:00
Campbell Barton
9e5a670b1d code cleanup: abbreviations ob, con - aren't normally used in global identifiers. 2013-04-09 01:36:44 +00:00
Campbell Barton
9eca407a18 Pressing Ctrl+R when blender was built without bullet would crash.
- add checks so rigid-body operators only return FINISHED when they make some changes to the scene.
- remove (scene == NULL) checks, poll already catches these.
2013-04-09 00:57:47 +00:00
Antony Riakiotakis
eaa577dfc9 Compatibility and robustness:
* Make masking depend on texture mode only if there's an actual texture
present
* New stroke system uses diameter to calculate stroke spacing, while old
texture painting brushes and system used radius. So divide spacing of
brushes in old files to half. Since I expect trunk users to have already
adapted this, I do this for an old subversion of blender.
2013-04-08 19:56:38 +00:00
Brecht Van Lommel
2b2099cd51 Fix #34875: 0 digits of precision was not supported for FloatProperty, now
you can specify precision=0 for this, and use -1 for the default 2.
2013-04-08 18:55:08 +00:00
Antony Riakiotakis
32c1314d28 Texture tools robustness:
* Pressing x or y to scale overlay immediately presents visual feedback
instead of requiring mouse motion
* Hide the ovelay icon when stencil is active since you can't deactivate
then.
2013-04-08 15:42:13 +00:00
Bastien Montagne
651167090c A few more UI messages fixes... 2013-04-08 13:19:50 +00:00
Campbell Barton
3fbaece0d6 rewind part of r55893, smooth-view for pan was annoying with mousewheel. 2013-04-08 11:45:20 +00:00
Campbell Barton
97a6965da9 fix for various crashes from incorrect poll functions.
- bevel had incorrect cancel when initialization failed which could crash (own mistake).
- main particle poll function didnt check if the area/region were NULL.
- some uv operators needed space image but didnt check for it. also use uv_ prefix for most operator functions.
2013-04-08 10:03:51 +00:00
Campbell Barton
0e1891648e fix for own mistake in recent adjustments to transform, local without individual-origin wasn't working. 2013-04-08 08:43:16 +00:00
Bastien Montagne
babdd90e2e Fix [#34920] Hit Spacebar, search for freestyle, click Move Freestyle Module - crash
Simply add a poll func to (re)move freestyle module ops, to check whether we actually have an active module in context.
2013-04-08 07:07:10 +00:00
Campbell Barton
a4520320ef fix [#34900] Building blender as a python module is broken in trunk
patch provided by reporter - Martijn Berger (juicyfruit)

also quiet warnings for headless mode.
2013-04-08 05:01:35 +00:00
Campbell Barton
fca2058924 fix [#34903] Lock Camera to View allows Numpad orbit, but not Numpad pan 2013-04-08 04:48:34 +00:00
Campbell Barton
fcf137dbd7 style cleanup 2013-04-08 04:39:09 +00:00
Campbell Barton
45669ebbc6 inset and bevel could both be activated when there was no selection. 2013-04-08 02:14:58 +00:00
Campbell Barton
68239cb098 fix [#34918] Interactive bevel doesn't accept +/- keys to change # of segments, only scrollwheel
Since page-up/down isnt common for this use case, replace with pad+/-
2013-04-08 02:04:26 +00:00
Campbell Barton
594eb6218c fix [#34905] Text editor: replacing matches by empty string not allowed 2013-04-08 01:31:41 +00:00
Campbell Barton
634dfcdecc fix for fix: re-activating buttons to fix [#33466], meant the icon didn't get refreshed immediately. 2013-04-08 00:32:32 +00:00
Thomas Dinges
858ff6b696 Fix for [#34898] Typo in error message of mathutils.Vector
* Also fixed some more cases of "more then" -> "more than".
2013-04-07 15:09:06 +00:00
Sergej Reich
42e8f3e889 rigidbody: Fix/workaround for transforming rigid bodies with parents
Since we use the rigid body transform when transforming rigid bodies
things like parents and constraints add an offset because rigid body
transforms are in global space.

Now we just don't take rigid body transform into account on simulation
start frame so there are no problems when doing the initial setup.

The problem still exists when simulation is running of course.
To properly fix this we'd have to solve parenting and constratins while
taking rigid bodies into account before and after transform.
We'll have to see if it's really needed, would like to avoid it though.
2013-04-07 14:09:29 +00:00
Sergej Reich
fd6a962168 transform: Code cleanup
Reduce scope of a variable.
2013-04-07 14:09:27 +00:00
Campbell Barton
b1ac23c5bd Mesh Tool,
inset interpolation now works for 'inset_region', enabled by default.

Example:
http://www.graphicall.org/ftp/ideasman42/inset_interpolation_new.png
2013-04-07 11:41:37 +00:00
Tamito Kajiyama
fd01e6736a Fix for Unicode literal (causing a compile error in VS 2008). 2013-04-07 10:21:28 +00:00
Bastien Montagne
4a66bf8f4a Usual typo fixes... ;) 2013-04-07 10:21:22 +00:00
Tamito Kajiyama
4e3e52677c Reverted a change accidentally committed. 2013-04-07 07:06:02 +00:00
Tamito Kajiyama
eeb95280be Missing build_files updates in the merger in revision 55847. 2013-04-07 06:44:33 +00:00
Campbell Barton
36cc2fd6da mesh inset tool - option to interpolate UV's vcols etc, on by default since this is almost always what you'd want.
currently only working for inset-individual, inset-region coming next.
2013-04-07 05:13:00 +00:00
Campbell Barton
63d523336f freestyle lineset tag attribute was defined but not used, also some code cleanup. 2013-04-07 01:38:03 +00:00
Gaia Clary
ce12370b79 fix: display weight brush strength widget only in weight paint mode 2013-04-06 22:29:47 +00:00
Dan Eicher
89863f78a9 Whoops, revert r55854 and use r48292 as is
Turns out outliner_search_back() doesn't always return a valid scene...
2013-04-06 21:48:39 +00:00