- User Since
- Sep 20 2004, 11:25 PM (823 w, 6 d)
Sun, Jun 21
Apr 1 2020
So, my initial motivation was a bug with Strip hair. The problem with rendering with billboards like Strip mode does is that it doesn't work if the camera is looking down the hair; you get lots of nasty twisting artifacts. This isn't a big deal for fine hair strands but is for anime style hair where the strands are really thick. Once I realized this was unsolvable I noticed Clement's comments on planned support for cylinder hair, and I figured I'd implement it.
Mar 31 2020
Mar 30 2020
Mar 27 2020
Mar 26 2020
Mar 10 2020
Hi @Dalai Felinto (dfelinto), they do complicate things like dissolve and face splitting. From what I remember from the work I did in AllShape five years ago the hardest part was implementing a decent CDT tessellator, which Blender already has. I remember for subdivision surfaces I literally would triangulate the faces and then run a triangle to quad algorithm; it was "good enough" for a use case that should never happen anyway (why would you use holes in faces with subsurf?).
Woo! I always regretted my decision not to add holes in faces to the bmesh project; if 3d printers had taken off just a bit sooner I would have. At one point I actually started coding support within the core bmesh data structures but removed it later. It seemed like too big of a change for too niche of a use case.
Updated to apply to latest head
It's definitely a bug, here's an example image.
Mar 9 2020
It's a bug.
Mar 8 2020
For anyone who tries the shader, you have to bake in "Combined" with "View Transform" under Color Management set to "Raw."
Here's the normal map osl shader.
Jan 7 2020
Jan 3 2020
Jul 12 2019
I tried something similar, and I still got a hang in inside of glGetQueryObjectuiv(g_query_state.queries[i], GL_QUERY_RESULT, &result). It might be a good idea to check for results with GL_QUERY_RESULT_AVAILABLE first and then call it with GL_QUERY_RESULT.
Jul 11 2019
Jul 10 2019
Jun 17 2019
Jun 16 2019
Okay, looks like the problem is with the undo system; if you manually exit editmode then push the understack, e.g.:
Jun 11 2019
- Added an option to ignore coherency setting in non-bluenoise mode.
- Added a 128x128 blue noise mask.
- Updated defaults. Seems the setting of coherency that leads to quickest convergence differs from scene to scene.
Jun 2 2019
May 27 2019
I can confirm rB27d5d3c2f8b fixed it (I've been testing pretty much the exact same code for the past half hour, and there's been no crashes).
May 18 2019
Jan 16 2017
Jan 24 2016
Sep 18 2015
Sep 15 2015
Layered Weights is now a different normalize mode. It uses method in previous comment.
Sep 14 2015
Hardware has NPOT support, but is being blacklisted (there's a comment in gpu_extensions.c that certain API chipsets have issues, or something like that).
My graphics card has non power of 2 support. It's just being blacklisted (there's a comment in gpu_extensions.c about how certain API chipsets are problematic). I can try disabling the blacklisting and see what happens.
So, from the looks of it we still need to normalize if there are more than one groups affecting a vertex.
Reworked patch. Now, if new option 'layered weights' is enabled, vertices only affected by one deform group will not be normalized.
Remove code that kept verts affected by single weight groups from being normalized, as this breaks existing rigs.