Blender Git Loki

Blender Git "soc-2021-adaptive-cloth" branch commits.

Page: 8 / 13

July 19, 2021, 16:25 (GMT)
adaptive_cloth: Mesh elements: get_self_index()
July 18, 2021, 16:09 (GMT)
adaptive_cloth: AdaptiveMesh: set_edge_sizes()

Based on the `Sizing` stored in the `Vert`s of the `Edge`s, store the
"size" of the `Edge` in it's extra data.
July 18, 2021, 16:04 (GMT)
adaptive_cloth: Mesh: change visibility of many utility functions

Make them protected instead of private.

Functions that get some element from the `Mesh` (maybe through other
elements) can be used by derived classes. It might make sense to make
these functions public directly instead of protected but will take
that decision later.
July 18, 2021, 16:02 (GMT)
adaptive_cloth: Vert: get_uv() and get_uv_mut()
July 18, 2021, 15:59 (GMT)
adaptive_cloth: Mesh: get extra data from elements

Simple functions to get extra data from elements.
It is possible make `extra_data` public but this reduces readability
of the code. By having these functions, intent is obvious.
July 16, 2021, 18:10 (GMT)
adaptive_cloth: AdaptiveMesh: set and retrieve `Node`s extra data

From the `Cloth::verts`, set the extra data in the `Mesh::nodes`.

Delete the `Cloth::verts` to not have duplicate data.

Allocate data for `Cloth::verts`, and set from the `Mesh::nodes`.
July 16, 2021, 18:00 (GMT)
adaptive_cloth: Mesh: get elements mutably

Useful to get the elements mutably.

This does make `Mesh` less "safe" since anyone can add or delete
elements without creating/deleting the necessary referencing between
the elements but this shouldn't be too much of a problem because it
would lead to an instant forced crash when the `Mesh` is used for
anything.
July 16, 2021, 16:44 (GMT)
adaptive_cloth: BKE_cloth_remesh: convert to and from AdaptiveMesh
July 16, 2021, 16:36 (GMT)
adaptive_cloth: Sizing: get edge size squared
July 16, 2021, 16:32 (GMT)
adaptive_cloth: VertData: initial implementation

Used to store extra `Vert` data in the `Mesh`.
July 16, 2021, 16:26 (GMT)
adaptive_cloth: NodeData: initial implementation

Used to store extra `Node` data in the `Mesh`.
July 16, 2021, 16:24 (GMT)
adaptive_cloth: BKE_cloth_remesh() add to namespace blender::bke
July 16, 2021, 15:22 (GMT)
bli: float2x2: multiply matrix with float
July 16, 2021, 15:22 (GMT)
bli: float2x2: add 2 matrices
July 16, 2021, 09:28 (GMT)
bli: float2x2: initial implementation
July 15, 2021, 06:01 (GMT)
adaptive_cloth: Mesh: collapse edge: all v1 should point to n1

Sometimes, `n1` will have still have verts attached to it, so it makes
sense to make those verts point to `n2` but keep their UV coordinates
since attempting to merge verts not joined by edges can lead to lot of
issues. So essentially, extra `v1`s becomes `v2`s.
July 15, 2021, 04:08 (GMT)
adaptive_cloth: fix: Mesh: split edge: reference is broken

The reference to the edge is broken because adding or deleting an edge
can realloc memory which means all the references are invalid. So just
need to recreate the references after a addition or deletion of an
element.

Would really appreciate a borrow checker to handle such
instances.
July 14, 2021, 12:39 (GMT)
adaptive_cloth: Mesh: flip_edge: do operation by deleting and adding

Sometimes, the user needs to know which elements have been affected,
for this, delete and add new elements. This shouldn't have any effect
on performance in theory because the arena should add back the
elements in the place where it has been deleted, hasn't been tested.
July 14, 2021, 07:33 (GMT)
adaptive_cloth: Mesh: is_edge_flippable(): works with across_seams

It is useful to know if the "3D edge" is flippable or not. This is
essentially done by going over all the `Edge` formed by the `Node`s of
the `Edge` and working with all those faces as a whole. Here we also
need to ensure that the edge is not on a seam. It actually might be
possible to optimize this and remove the boundary check entirely.
July 14, 2021, 07:00 (GMT)
adaptive_cloth: Mesh: is_edge_on_boundary()

Checks if the given edge lies on the boundary of the mesh.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021