Age | Commit message (Collapse) | Author |
|
Conflicts:
source/blender/blenloader/intern/readfile.c
source/blender/windowmanager/intern/wm_window.c
|
|
That one was:
* Resetting non-ID pointers (lib_link_xxx funcs should only affect ID
pointers, everything else shall be done in direct_link_xxx func).
* Even worse, always calling lib_link_animdata, even when
LIB_TAG_NEED_LINK tag was unset...
|
|
We do not need any special handling anymore for usercount of images used
by faces/polygons (tpage stuff), since we have the 'real_user' handling,
which will gracefully cope with all possible situations.
So better not keep that ugly confusing useless special case.
|
|
Mainly:
* Add missing `IDP_LibLinkProperty()` calls for many ID types
(harmless currently, but better be consistent here!).
* Bring lib_link_xxx functions more in line with each other.
* Replace some long if/else by switch.
|
|
|
|
I added srgb tonemapping for previewing purpose. Also since the color buffer is still not HDR, there is ugly artifacts (fixed in part2)
|
|
|
|
|
|
|
|
|
|
|
|
Since 2.5x we should try to avoid such abreviations in the UI, except for common terms like Min / Max as much as possible.
|
|
Previously it was beneath the Performance UI label, which was incorrect. It's better suited next to Ray Visibility.
|
|
|
|
|
|
|
|
Fix wrong coord picked when display only one axis.
Small optimizations here and there.
|
|
This makes viewport cache construction independant from each others and will allow multithread down the road.
|
|
Both CPU time and GPU time are printed to spot bottlenecks.
GPU Timers works only if cache is enabled.
|
|
|
|
|
|
|
|
Solves majority of speed regression on AMD OpenCL.
|
|
The title says it all actually.
|
|
Simplifies code quite a bit, making it shorter and easier to extend.
Currently no functional changes for users, but is required for the
upcoming work of shadow catcher support with OpenCL.
|
|
It uses an idea of accumulating all possible light reachable across the
light path (without taking shadow blocked into account) and accumulating
total shaded light across the path. Dividing second figure by first one
seems to be giving good estimate of the shadow.
In fact, to my knowledge, it's something really similar to what is
happening in the denoising branch, so we are aligned here which is good.
The workflow is following:
- Create an object which matches real-life object on which shadow is
to be catched.
- Create approximate similar material on that object.
This is needed to make indirect light properly affecting CG objects
in the scene.
- Mark object as Shadow Catcher in the Object properties.
Ideally, after doing that it will be possible to render the image and
simply alpha-over it on top of real footage.
|
|
It helped during the transition, but we don't need this anymore. Evolution of T49450
|
|
Client vertex array state is deprecated, and these are the default values anyway.
No need to bind any basic shader. Let drawing code decide which shader it wants to use.
Part of T49165 (general OpenGL upgrade)
|
|
|
|
It doesn't really belong here... Any code using framebuffers will set up its own matrices.
Part of T49450
|
|
- use in/out instead of attribute/varying
- use named output instead of gl_FragColor
- use texture() instead of the multitude of older texture sampling functions
The #if __VERSION__ == 120 paths (needed on Mac) will be removed after we switch to 3.3 core profile.
Part of T49165 (general OpenGL upgrade)
|
|
My bad again! Failed to test this part of 4c08c5b192415190ab8b11637d8dc4f2a66c2ddf
|
|
My bad! Messed up the conversion from ftransform -- 4c08c5b192415190ab8b11637d8dc4f2a66c2ddf
|
|
noninteractive rendering
Before, Cycles would first sync the shader exactly as shown in the UI, then determine and sync the used attributes and later optimize the shader.
Therefore, even completely unconnected nodes would cause unneccessary attributes to be synced.
The reason for this is to avoid frequent resyncs when editing shaders interactively, but it can still be avoided for noninteractive renders - which is what this commit does.
Reviewed by: sergey
Differential Revision: https://developer.blender.org/D2285
|
|
Allow auto-execution to be enabled,
also move this to user-prefs versioning code.
|
|
This change looks small, but it switches the entire 3D viewport from legacy OpenGL functions to our own code.
Kept non-modern viewport on legacy path so we can compare easily (via the Modern Viewport checkbox).
Part of T49450
|
|
Builtin names staring with gl_ will not be available in core profile. Same with the ftransform function. New matrix API provides the same names minus the gl_ prefix.
Part of T49450
|
|
- init projection matrices with identity
- fix copy/paste mistake in GetProjectionMatrix3D
- add extra matrices needed by material GLSL
Working toward T49450
|
|
Whether used from Gawain or from traditional OpenGL draw methods.
TODO: make sure we bind matrices only once per shader change.
Part of T49450
|
|
New matrix API does not support texture matrices. Not sure what the final code will look like, but this at least avoids interference with new ModelView matrix.
Marked each line with TEXTURE so they can be disregarded during searches.
Related to T49450
|
|
A few of these were redundant, others could be converted to new matrix API.
Part of T49450
|
|
|
|
|
|
|
|
|
|
|
|
|
|
It was removed here rBd52191616b5f
|
|
|
|
|