Commit Graph

17952 Commits

Author SHA1 Message Date
Campbell Barton
b6084d56c9 BMesh: remove double faces when triangulating 2015-11-25 11:55:46 +11:00
Antony Riakiotakis
697acebeb7 Sculpting optimization: Avoid iterating the PBVH for intersection during
the paint cursor drawing when a stroke is underway; this information is
already available from the stroke itself.

Should improve performance when "show brush" is enabled (which is
always, for sane people). Finding an intersection is not always cheap,
especially on heavy meshes.

Cudos to the dyntopo test thread for the report and the sculpt love :)
2015-11-24 21:40:52 +01:00
Sergey Sharybin
f7c987b0ab Fix outliner crash after recent no-functional-changes cleanup commits 2015-11-24 14:25:09 +05:00
Mike Erwin
ef5fff4adc OpenGL: when checking GL version, assume >= 2.1
Mostly glBlendFunc related.
2015-11-24 02:34:54 -05:00
Mike Erwin
291afea8cc OpenGL: clean up use of old extensions 2015-11-24 02:21:07 -05:00
Campbell Barton
4ebede5d1f fix error in last commit 2015-11-24 17:57:47 +11:00
Campbell Barton
6ba9d1094a Fix T46805: Scale along axis fails w/ Python
't->value' no longer has constraint matrix applied for translate,
fix for T46003 is no longer needed.
2015-11-24 16:50:21 +11:00
Campbell Barton
c3e7dfa82d Fix T46816: Vert/Edge snap fails at edge of bounds 2015-11-24 12:16:14 +11:00
Campbell Barton
68922e4660 View3D: move snapping functions out of ruler 2015-11-24 11:48:34 +11:00
Campbell Barton
940f7a6d53 Cleanup: shadowing (unwrap) 2015-11-23 22:12:29 +11:00
Campbell Barton
47dd7d7133 Fix T46841: Thick lines w/ graph visible 2015-11-23 21:55:35 +11:00
Campbell Barton
64ab452131 Cleanup: shadowing (interface) 2015-11-23 17:40:55 +11:00
Campbell Barton
48b1656a6c Cleanup: shadowing (editors) 2015-11-23 17:40:50 +11:00
Campbell Barton
676d790d29 Cleanup: use rna_enum_ prefix for RNA enums
Definitions could shadow local vars.
2015-11-23 17:40:09 +11:00
Brecht Van Lommel
d28431a648 OpenNL: make the API thread safe by always passing context.
Previously two laplacian smooth or deform modifiers executing
simultaneously could crash.
2015-11-22 22:49:43 +01:00
Brecht Van Lommel
47ce2d7bef OpenNL: significantly simplify code using Eigen / STL. 2015-11-22 22:49:03 +01:00
Antony Riakiotakis
c402a379a2 Remove vertex array support from GPUBuffers. Remove USER_DISABLE_VBO. All
GPUBuffer rendering is now done using vertex buffers.

Vertex arrays are completely removed from GL 3.2 core profile, so we'll
have to do this change at some point anyway.

This commit, though big, is not modifying blender in any way. Use should
be exactly as if the vetex buffer option is constantly on.
2015-11-22 19:47:54 +01:00
Kévin Dietrich
3e1a9ee386 Smoke drawing code cleanups (and little refactor)
This patch contains the following changes:

- the vertices and edges arrays would be assigned default values, and
then reassigned new ones right away. It appears that those arrays were
once global and then made local
(rB06a2ee4afed4237398b69ddf253e29a730b2f9f0), so it makes sense now to
initialize them with the right values.
- the flame spectrum texture was created whether it was needed or not,
so now it's only created if there's flame to be drawn, also split the
code in a separate function.
 - reduce the number of parameters to the main draw function, as most of
them are member of SmokeDomainSettings.
- some other minor cleanups: fold multiple operations into one to get
rid of one local variable, mark variables as `const` when necessary,
unecessary gl draw calls, reorder the code a bit...

Reviewers: campbellbarton, psy-fi

Differential Revision: https://developer.blender.org/D1368
2015-11-22 18:18:43 +01:00
Bastien Montagne
307f1e7d23 Fix T46678: Extending left handle of a VSE multicam effect strip with snap creates frame stills.
Also fixes cache handling for those strips, they need more radical flushing...
2015-11-22 15:33:45 +01:00
Joshua Leung
48f298f09d Fix/Request T46798: Alt+I removes keyframes from all bones, not only selected in Pose Mode
Technically this was more of a feature request, but now the Alt-I operator will
only remove keyframes related to selected bones in Pose Mode. In Object Mode,
it will continue to operate on all keyframes of the object.

This change makes this operator more meaningful when animating in the 3D view.
2015-11-21 16:38:11 +13:00
Bastien Montagne
70cf77e1ce Fix new UI align code behavior with very small buttons.
In case two neighbor buttons are very small, their total width (or height) can remain below
max authorized delta, and hence wrong side could be detected as 'common side' for the pair.

This is now fixed by checking both opposite sides at once.

Also, we expect buttons to have some width and height to be considered alignable now!

Took me two days to sort that out, grrrr!
2015-11-19 15:13:38 +01:00
Campbell Barton
ae8e4d3718 Cleanup: redundant 'break', minor edits 2015-11-19 22:52:13 +11:00
Campbell Barton
a374ff16b5 Cleanup: editor api naming
- use ED_ prefix for api calls
- use ED_*_select_pick for mouse selection (was already done in parts)
2015-11-18 12:22:00 +11:00
Campbell Barton
eab0063481 Fix mixup w/ wmOperator/BMOperator flag 2015-11-18 11:09:44 +11:00
Sergey Sharybin
d81b9555e5 Fix T46793: VSE OpenGL renderer crashes when using grease pencil
Own regression in recent speedup commit.
2015-11-17 15:31:35 +05:00
Campbell Barton
98931d9e39 Fix T46764: Crash toggling region + fullscreen 2015-11-17 11:32:15 +11:00
Campbell Barton
2ced9326bb Fix crash changing screen + region overlap fade 2015-11-17 11:02:28 +11:00
Sergey Sharybin
57a3163096 Speedup OpenGL sequencer animation rendering
The idea is to avoid having roundtrip from byte to float and back to byte buffer
and use render result's byte buffer to store result of sequencer rendering.
This actually matches to what regular render pipeline is doing and this gives
around 2-3 times speedup of sequencer export on a simple scenes.
2015-11-16 18:20:41 +05:00
Sergey Sharybin
59ed62fb5f Remove unused arguments from RE_WriteRenderViewsMovie() 2015-11-16 16:53:46 +05:00
Campbell Barton
093451e33d Fix own error w/ camera-dof in GL-render commit 2015-11-16 22:20:14 +11:00
Campbell Barton
86154b11ee Cleanup: typos 2015-11-16 21:06:40 +11:00
Campbell Barton
711e3564b8 Keymap: Add delete-key for paint curves 2015-11-16 09:51:37 +11:00
Campbell Barton
603b867588 UI: support cycling for image space menus
also remove arrow buttons.
2015-11-16 07:14:47 +11:00
Campbell Barton
0d267737e2 UI: support cycling callback for non RNA menus 2015-11-16 07:14:46 +11:00
Campbell Barton
a70357104e Cleanup: replace pointer array w/ struct 2015-11-16 07:14:46 +11:00
Antony Riakiotakis
bb6a580756 Fix uninitialized read in previous commit 2015-11-15 20:58:48 +01:00
Campbell Barton
4848d7329e Fix T46763: OpenGL render doesn't show 'Slots' 2015-11-16 05:32:37 +11:00
Antony Riakiotakis
4d33c37c9e Fix T46726 shading issues in sculpt mode.
This fixes two issues:

* Normals were not being recalculated correctly when not using optimized
drawing for CDDerivedMesh (Multires actually handles that correctly).

* Loop normals (autosmooth option) were also not being calculated. Doing
this calculation is not desirable, since it can't be done correctly
without a severe performance hit. This is easy to test by doing a
dependency flush on the mesh after each scuplt stroke step. Instead they
are now disabled during sculpting.
2015-11-13 21:58:30 +01:00
Campbell Barton
a7ac59414b Cleanup: rename line to segments, avoids confusion
Differentiate between lines and segments.
2015-11-13 07:48:05 +11:00
Campbell Barton
930771d0cf Fix T46749: Texture paint & shadeless mode fails
Using shadeless did nothing in texture-paint mode.
(regression in 2.76)
2015-11-13 06:35:42 +11:00
Sergey Sharybin
03e8202b7b Fix T46320: New Depsgraph: Auto-IK doesn't work
The issue is caused by transform tool temporary affecting on the pose
constraints, which actually changes the way how pose is to be evaluated.

This isn't ideal patch from the performance point of view, but only
limited to the new depsgraph, so we've got some time to work on partial
graph updates.
2015-11-12 20:19:30 +05:00
Campbell Barton
46f452e96b Fix error cutting node links
Accessing theme from outside drawing code isn't reliable, pass space-type.
2015-11-13 00:03:12 +11:00
Campbell Barton
833ef0cfdd Transform input: don't change initial cursor value
Store previous coords in cursor data instead.
2015-11-12 22:58:35 +11:00
Campbell Barton
6cbccdd31c Cleanup: unused defines 2015-11-12 18:54:26 +11:00
Bastien Montagne
d75bca1842 Cleanup: replace more direct id->us handling by calls to BKE_library API. 2015-11-11 20:21:37 +01:00
Campbell Barton
9cff20e5c6 Correct assert in own last commit 2015-11-12 05:51:39 +11:00
Campbell Barton
137ca0b241 Fix T46741: Transform ignores constraint space
Calling transform operator from Python didn't apply the constraints space.
2015-11-12 02:21:56 +11:00
Campbell Barton
7b96f02f5b OpenGL Render: Support full-sample Anti-Aliasing
This brings back old (slower), higher quality method.
Useful since graphics cards often use a faster MSAA which only oversamples edges.
2015-11-12 00:25:09 +11:00
Campbell Barton
145298e2d3 Cleanup: GL Render (simplify internal logic)
Reduce code-paths so improvements to 3D view render apply to sequencer too.
2015-11-11 23:07:07 +11:00
Campbell Barton
78836c0211 Fix T46743: Crash w/ limit rotation constraint
Using axis-angle + limit rotations 'Transform' option was crashing.
2015-11-11 04:46:55 +11:00