Age | Commit message (Collapse) | Author |
|
A cavity shader based on SSAO. Works on all workbench deferred passes.
Per 3d viewport the cavity shader options can be set as different
shading needed different options. Some global options are in the
Viewport Display of the scene like num samples and distance.
Experimental: Naming of Ridges and Valleys
|
|
The mutex was shared between CoW copies of the CacheFile datablock, and
as a result also freed multiple times. It is now only freed when the
original datablock is freed; the CoW copies share the same mutex.
|
|
This causes a temporary spike in memory usage when creating a copy; the
entire copy will be removed anyway when DerivedMesh is removed.
|
|
Depsgraph is not available on file load yet.
|
|
|
|
Particles in EMITTER mode needs to have cache.
|
|
Need to flush the changes through DEG CoW, otherwise drawing code would
not see them in some cases...
|
|
Were caused by depsgraph trying to create relations between objects
which are coming from restricted collection.
|
|
Drivers can reference object data datablock directly, and if there
was no object in the scene with that datablock, blender will crash.
|
|
|
|
|
|
|
|
|
|
|
|
This is a beginning of series of commits which will clearly separate
building IDs which are used as object data from object building.
The goal is to be able to always build whatever ID. Required to make
driver targets to work reliably with copy-on-write concept.
|
|
DATA datablock must evaluation must never depend on object it is
used for. If there is something what depends on an object, it must
be done on object level.
At least the actual callback was empty.
|
|
|
|
When the source mesh doesn't have the primary layers (CD_VERT for vdata,
etc.) the returned mesh also didn't have those layers, even when non-zero
elements were requested (for example requesting 4 vertices would still
result in mvert = NULL).
|
|
Code shared between BKE_mesh_new_nomain() and
BKE_mesh_new_nomain_from_template() is now in separate functions, instead
of copy-pasted.
|
|
The totxxx fields should match the number of elements in their respective
custom data layers.
|
|
|
|
|
|
Apparently Blender 2.79 could save temporary screens; those should not be
converted to workspaces.
|
|
This maintains the `BKE_mesh_` prefix for the mesh-related BKE functions.
|
|
Those functions were using DerivedMesh but are not called from anywhere.
As a result, they cannot be tested after porting DerivedMesh to Mesh.
|
|
Functions that are no longer in use can be marked as such, so that later
we can easily remove them.
|
|
Mesh
The function still returns a DerivedMesh, but internally it uses Mesh
now.
|
|
|
|
|
|
Regression in 481cdb08ed6f3
|
|
|
|
Otherwise there is no quick way to see where this comes from.
|
|
|
|
The ObjectID pass was generating per material per dupli a specific
number for the outline what results in a GPU context switch. In spring scene
01-050 a scene with many trees (duplis) generated 28000 GPU materials.
Now only new materials are created when objectid pass is enabled. Also
added a hard limit to the number of objects for the objectid pass (255)
Basically the outline between objects will not be drawn, but it will be
very hard to detect them also.
Also fixed for XRay mode.
|
|
Test this since the popup feels disruptive/flashing when its too large
when set smaller it looks closer to a menu w/ key-accelerators which is
the intention in this case.
It's also more likely the active tool can be placed under the cursor.
|
|
|
|
|
|
Only generate shadow store shaders on demand and create a simpler shader
for small blur radius.
|
|
|
|
The default behaviour is to show the same amount of edges as 2.7.
The slider makes it possible to show all edges or even less.
|
|
Conflicts:
source/blender/windowmanager/intern/wm_files.c
|
|
|
|
Conflicts:
source/blender/blenkernel/intern/blendfile.c
source/blender/blenloader/intern/readfile.h
source/blender/blenloader/intern/versioning_250.c
source/blender/blenloader/intern/versioning_260.c
source/blender/blenloader/intern/versioning_270.c
source/blender/blenloader/intern/versioning_legacy.c
source/blender/editors/render/render_shading.c
source/blender/makesrna/intern/rna_movieclip.c
source/blender/render/intern/source/pipeline.c
source/blender/render/intern/source/voxeldata.c
|
|
The function definitions still reside in DerivedMesh.c. Once we're done
porting all the DerivedMesh use to Mesh, we'll move the still-relevant
functions to mesh_runtime.c. This move is now cumbersome due to shared
statically-declared utility functions in DerivedMesh.c
|
|
|
|
|
|
|
|
This helps making things clearer and cleaner. Func returning filepath of
G.main is separate, so that we can easily track its usages, and
hopefully deprecate it at some point. Though that usage of G.main is
likely the less evil one, you nearly always want current blendfile path
in those cases anyway.
|
|
|
|
|