Age | Commit message (Collapse) | Author |
|
Gives over 50% faster scope update (from 4.5ms to 2.2ms here with SD shot)!
Probably mostly due to more clever usage of thread-local data (which avoids any lock,
when OMP code had a rather stupid critical section for minmax)...
|
|
|
|
|
|
|
|
Algorithm is slow but high quality
Added backface buffer to compute per pixel thickness
Sampling quality is passed via uniforms and not via constants : this is a little slower but it does not need to recompile shader every time
Moved some code for organisation.
|
|
Bevel had assumed that when rebuilding a face that touches
a vertex with beveled edges, the edges of the face at that vertex
would be adjacent in internal order. That is not necessarily true
if there are edges with more than two faces attached.
We could just prohibit beveling any edges that touch a vertex
where this happens (we already don't bevel non-manifold edges)
but the use case in the model of T47257 seems reasonable.
Also had to fix the edge-ordering code, and the face reconstruction
code to take care of cases where the face normal may not be as expected.
|
|
|
|
This is a weak concept, but nice t support it for now, so we can enable
new depsgraph by default earlier.
|
|
|
|
|
|
Shading mode
|
|
|
|
New code using loop/finalize model is about 45% faster (from 4.4ms tp 2.4ms per frame,
overall playback of single shot in sequencer in this preview mode goes from 40 to 45fps).
|
|
Only Linux needs a lib linked in (libspnav).
ghostndof3dconnexion refers to an obsolete Mac driver shim.
|
|
For now, just validate new pointcache names as if they were filnames.
Ideal solution would be rather to validate names in `ptcache_filename()`, but it would
likely break some existing caches - and we'd also have to ensure we still have
uniqueness of name after it has been cleaned up, wich would not be trivial at this stage.
So let's go for simple solution for now, especially since this part of code is to be
fully rewritten in 2.8...
|
|
See T48453 for details and test scenes
Reviewers: a.romanov, sergey
Reviewed By: a.romanov, sergey
Projects: #opengl_gfx, #nodes
Differential Revision: https://developer.blender.org/D2011
|
|
It's not really clear at this moment how we can detect cases
when attribute needs linearization. For now added a comment
so we don't forget about this, hopefully.
|
|
viewport
|
|
The issue was caused by recent normalization added to the GLSL attributes.
|
|
This changes the bezier handles b-bones to fit to a circle more closely.
|
|
|
|
Enabled state
Was a regression since e1b8a5d.
Probably not very optimal fix, but better than a regression anyway.
|
|
|
|
|
|
The title says it all actually.
Added special custom data type, because we don't know in advance
whether we're referencing UV or Color layer. Also made it so vertex
attributes are normalized.
TODO: Border render in viewport ignores the normalization of the
attribute array for some reason, will be looked into still.
Reviewers: mont29, brecht, campbellbarton
Reviewed By: brecht, campbellbarton
Differential Revision: https://developer.blender.org/D2022
|
|
Only for non-OSX viewport!
|
|
non-parallelized case.
|
|
|
|
This way we can have border rendered part in the viewport and have
everything else material/texture shaded.
|
|
This way it is now possible to toggle between material and rendered shading
while previously rendered viewport will always go back to solid shading.
|
|
This commit implements Bump node in GLSL, making it possible to
see previews of bump mapping in viewport without need to render.
Nothing really fancy going on here, just uses internal dFdx/dFdy
functions to get derivatives of the surface and map itself.
Quite basic but seems to behave correct-ish.
This commit also makes Displacement material output to affect
viewport shading by re-linking unconnected Normal input to a
node which was used for displacement output (via Bump node).
Intention of all this is to make it really easy to do bump map
painting with Cycles as an active render engine.
Reviewers: campbellbarton, mont29, brecht, psy-fi
Reviewed By: brecht
Subscribers: Blendify, eyecandy
Differential Revision: https://developer.blender.org/D2014
|
|
|
|
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D1457
|
|
|
|
Nothing was shown in UI during pre-bake step, while it can take several minutes
to complete with heavy geometry.
|
|
other optimizations.
This commit makes Dynamicpaint modifier evaluation (during playback) a few percents quicker.
However, it makes dynapaint's 'image sequence' baking about 33% quicker (from 119 to 77 seconds
in own heavy test), partly due to switch to BLI_task itself (about 20%), and partly due to
optimizations (remaining ~13%).
As usual, did a lot of tests here to ensure nothing is broken, but a lot more users' testing would definitively
be welcome too! ;)
Note that some quite meaningless omp forloops have been removed (parallelizing thousands of vec copy does
make it two or three times quicker, but the few hundreds of microseconds gained do not make any difference
in a hundreds millisecond process).
Also, this code could still use a lot more cleanup (naming etc.), the way it (tries to) handle malloc faults
is also totally flacky and makes the code horribly verbose and convoluted in some places - without actually
catching all possible faults (memarena could make it more easy to handle here), etc.
|
|
|
|
Improved Sun disk equations.
Adde Tried Ray aligned disk intersection to match cycles
but it's not working on microfacet bsdf for now.
|
|
Usage:
* D+X - Works anytime, anywhere
* Shift-X - Works in EditMode only
* Via Delete Menu - EditMode only
Often doing video tutorials or perhaps during dailies/shot review you want to
quickly get rid of a quick scribble you made for making a point, without having
to undo (i.e. maybe you edited some objects in between) and/or without having
to use the eraser (i.e. it'd take too long to cover the entire area).
|
|
On light coloured backgrounds (especially on white), it was impossible to see
where the cursor was. This commit adds a second ring (black) to the cursor so
that on light backgrounds, even if the light ring isn't visible the black one
will be.
|
|
|
|
(mostly).
Gives 3-4% speedup in pre-bake step (from 112 to 108 seconds with own heavy test file).
Note that here we have a huge potential performance boost if we replace the flat
`Bounds2D *faceBB` array of UV tris bounding boxes by a real 2D AABB tree (right now,
we can loop over all UV triangles times the number of pixels of the surface times 5...).
|
|
Bit operations are not supported on legacy profile of OSX.
|
|
|
|
|
|
Was giving an issues in the past, will avoid it for now.
|
|
It gives some slight differences on the plane corners, but can't
really figure out source of the issue here yet.
It's still better than fully white texture for the previews anyway.
At this point we should perhaps ifdef chunks of the code in order
to have faster GLSL compilation and probably even faster compiled
code. Will look into this shortly.
|
|
|
|
|
|
|