Blender Git Loki

Blenderin Git "master"-kehityshaaran kommitit.

Page: 587 / 5574

September 8, 2020, 11:23 (GMT)
GPU: Extract GPU Base Test case

The draw manager test case initialized ghost, gpu and draw manager. This
change splits the base test case to GPU specific and draw manager
specific test case.

The GPU test base test case will be used for low level GPU tests.
September 8, 2020, 11:23 (GMT)
DrawManager: Fixed memory leak in test cases

Memory leak is introduced as test cases reinitializes the GPU stack.
Added a call to GPU_backend_exit to fix this.

In GPU_backend_exit the GPU backend was destroyed but the pointer wasn't
reset for reuse. This patch also clears the pointer to be reused.
September 8, 2020, 11:23 (GMT)
DrawManager: Move tests in namespace

Using blender::draw::tests as namespaces.
September 8, 2020, 09:45 (GMT)
Cleanup: Refactor USD Exporter, make parameter const

Follow-up of 63dc72c3521, make parameter `const`.

No functional changes.
September 8, 2020, 09:33 (GMT)
Cleanup: USD export, refactor mesh instancing

Extract the mesh instancing code from the mesh writing function into a
generic 'mark as instance' function on the abstract USD writer. This will
help in supporting non-mesh instances.

No functional changes.
September 8, 2020, 09:33 (GMT)
Cleanup: Refactor `ED_object_parent_set`

Refactor `ED_object_parent_set`:
- Mark parameters `ob` and `par` as `const` so that it's clear the
function doesn't assign any other value to them.
- Rename `pararm` to `is_armature_parent`; I mis-read it as `param` all
the time, and it was very confusing.
- Replace repeated `if-else` statements with `switch` statements.
- Reorder preconditions to have some simple checks first.
- Flip condition on a huge `if`-statement to return early and unindent
the remainder of the function.

This function still requires splitting up into smaller functions, but at
least this is a step forward.

No functional changes.
September 8, 2020, 08:09 (GMT)
Fix T80238: Crash adding properties to material node-trees

The localized node-tree was freeing the materials ID properties twice.

This matches how animation data behaves, setting to NULL after freeing.
September 8, 2020, 07:16 (GMT)
Docs: comment values for DispList.type
September 8, 2020, 06:49 (GMT)
Cleanup: rename group to collection for internal instancing flag

Also update old comment.
September 8, 2020, 06:41 (GMT)
Cleanup: naming for library link enum

Use 'e' prefix, update comments.
September 8, 2020, 06:14 (GMT)
Link/Append: support instancing object data

This patch supports instantiating object data on append/link,
reported as a bug T58304.

This is an option, available when linking/appending,
similar to the existing "Instance Collections" option.

Reviewed by @sybren

Ref D8792
September 8, 2020, 06:14 (GMT)
Refactor: move library linking arguments into a parameter struct

Move arguments to BLO_library_link_{begin/named_part/end} into
a single parameter struct, to ensure arguments always match.

This allows is to skip tagging ID's LIB_TAG_DOIT when it's not needed,
previously it was always cleared just in case it was needed.

This also makes it possible to remove BLO_library_link_named_part_ex
which was only used when tagging was needed.
September 8, 2020, 02:15 (GMT)
GPUContext: Move GPUContext to gpu::Context for more consistency

This makes the GPUContext follow the same naming convention as the rest
of the module.

Also add a static getter for extra bonus style (no need for casts):
- Context::get()
- GLContext::get()
September 8, 2020, 02:15 (GMT)
GPU: Cleanup implementation casts

- Use the syntactic wrap/unwrap method to make code more readable.
- Update comment about hidden struct behind opaque types.
- Cleanup GPUDrawList type.
September 8, 2020, 02:15 (GMT)
GPUTexture: Remove unused functions and avoid GPU_texture_opengl_bindcode

This is a cleanup.
September 8, 2020, 02:15 (GMT)
Cleanup: DRW: Replace 0 by NULL in GPU_context_create calls

This was left from a previous refactor.
September 8, 2020, 02:15 (GMT)
GPUImmediate: Make activation / deactivation implicit

This avoids unecessary complexity.

Also makes the GPUImmediate threadsafe by using a threadlocal imm variable.
September 8, 2020, 02:15 (GMT)
fix flush
September 8, 2020, 02:15 (GMT)
GPUState: Encapsulate glPixelStorei inside the GLStateManager

Part of the Vulkan task T68990

Isolate the last remaining gl functions.
September 8, 2020, 02:15 (GMT)
GPUState: Encapsulate glFlush and glFinish inside the GLContext

Part of the Vulkan task T68990

Isolate the few remaining gl functions.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021