Image not available

720x691

nenito.jpg

๐Ÿงต Untitled Thread

Anonymous No. 939893

I made this with paint 3D :3

Anonymous No. 939894

>>939893
Have u considered to stop existing?

Anonymous No. 939903

If you look at the specular reflections, at least the normals point the right way. Unlike in Blender where, well... You need to spend days to hand craft the most perfect of topologies and even then...

Anonymous No. 939921

>>939903
>... Unlike in Blender ...
Are you memeing, or is there some serious fundamental flaw with how Blender draws geometry that I'm unaware of?

Image not available

516x878

retard.png

Anonymous No. 939923

>

Anonymous No. 939927

>>939893
Kids with down syndrome can be cute if you don't have to deal with them.

Anonymous No. 939929

>>939921
Here >>939903 I was kinda joking but it's kind of a complex topic. I've had an opportunity to read (some of) the normal handling code (in version 2.76 but I doubt it has changed).
I was disappointed to see that all that Blender does (unless you manually override it with a Split Normals blocks) is accumulate averaged face normals on vertices, normalize and call it good.
I haven't seen any attempt at, say, have some sort of weighted average by polygon area or something else a little smarter.
I don't know if all subdivision modeling 3D software does this but clearly, it's causes the underlying topology to become very important and in my opinion more important than it should be. Maybe I'll make a thread someday about this.

Image not available

645x310

blender_normals.jpg

Anonymous No. 939931

There is a way to observe the problem.
Open Blender. Create a Metaball Capsule. Duplicate (and rename) it. Convert only one of the two to mesh.
As it is in Blender, real metaballs derive their normals from the metaball function. But when you convert them to mesh, they lose this special property and the normals revert to the same kind of averaging that's used for subdivision modeling. I hope you can see that there's a difference in quality.

Anonymous No. 939932

Basically, the underlying topology almost doesn't show up in the real metaball, but it suddenly becomes visible if you let Blender re-calculate the normals as it normally does for meshes and I think that's a problem.

Image not available

557x257

blender_normals_02.jpg

Anonymous No. 939933

I've read many times around here something along the lines of "your model looks like shit because your topology is shit". Maybe they're right, or maybe this is just another item on the long list of 20+ years old bugs/missing features in Blender.

Not sure if Blender 3.4.1 has the same problem or some other problem. I'll check eventually. It's less visible because the default lighting is less harsh, but you can still see some suspicious banding.

Anonymous No. 939934

>>939921
both cycles and eevee have two completely different way of handling normal maps past a certain angle (they get clamped iirc) and both are completely broken

Anonymous No. 939940

>>939931
>>939933
if you check the blender developer portal there's actually a bug regarding metaball normals that might be causing this

Anonymous No. 939941

>>939940
It's a lot more complicated than that.
In the Metaballs module there's some code which is disabled with a #define. If you enable it, then by default the metaballs normals are calculated like it was a regular mesh and the issue seems to disappear but it does so in favor of lower quality normals.
https://docs.blender.org/manual/en/2.79/modeling/meshes/editing/normals.html
Scroll to the bottom and read about Split Normals. Be careful because if you realize what the manual itself implies, you may be upset.

Anonymous No. 939943

>>939941
there's nothing particularly upsetting there unless i'm missing something
it just essentially says "bad topology means blender generates bad normals"
not to say that blender couldn't be improved in this area, but it's not new information to anyone that uses it

Anonymous No. 939945

What they themselves are telling you there is that if you were to make your model in, say, another software and then import it into Blender, then you get good normals from the other software.
If instead you were to make your model directly in Blender, then you get the bad linearly interpolated normals.
I'll let you draw the conclusions.

Anonymous No. 939946

I'll shut up after this but I just wanted to point out that it doesn't just work with FBX imports, it also works with OBJ imports the same way. That's how I discovered that functionality.

Anonymous No. 939947

>>939945
it's not technically blender's fault that CAD generates fucked-up geometry
if you modeled the same shape inside blender you'd probably end up with completely different geometry (and better normals) because of how CAD works
it's not that blender's normal generation couldn't be improved (we all know the issues with pinching on UV spheres, for example), but this just isn't new information to anybody

Anonymous No. 939948

>>939947
That's an apology and a half, my friend.

Anonymous No. 940163

>>939893
:3

Anonymous No. 940365

>>939929
>>939931
>>939941
>>939945
Blender has a way to average normals based on polygon area. While in edit mode, got to the "Mesh" menu and in the "Normals" section, there are a few averaging options.
This seems to work with somewhat simple meshes, but testing with your example or the Suzanne monkey head doesn't improve much. It makes me wonder if it's a flaw of Blender or if it's the topology that's unsalvageable. Could you import the converted metaball into another software and recalculate the normals?

As for the custom split normals export, I don't know why the documentation says what it does. Testing with the latest LTS of Blender shows custom normals are preserved from export to import, even when using Blender's legacy OBJ export as well as when importing that OBJ into a game engine.

Anonymous No. 940368

>>940365
I've just finished reading the code. I thought it was simple average but in reality Blender uses this:
https://computergraphics.stackexchange.com/questions/9702/calculate-normals-from-vertices
It's (supposed to be) an improvement over weighted average by polygon area.
It kinda does the same thing except the weight is derived by the angle of the two edges that share the vertex and the polygon.
If you want to read it it's in "math_geom.c" and one of the functions is "accumulate_vertex_normals()".
Unfortunately that functions at least as of 2.76 has been "manually inlined" in several places, so it's kinda hard to try to change it.

Image not available

831x318

normals_average.jpg

Anonymous No. 940369

Thank you for pointing that out. I'm really glad they've added that option because I was about to implement it myself. By default it's still Corner Angle.

The thing is that Corner Angle is usually better except when it's not. I suspect it makes some people think their topology is broken when in reality it's just that Corner Angle is prone to breakage.

For my SDF patch I've solved the issue by modifying the mesh conversion function such that it adds a custom Split Normals data block by default and in that I write in my custom normals.

Image not available

663x759

split_normals.jpg

Anonymous No. 940377

>Could you import the converted metaball into another software and recalculate the normals?
Yes and if the other software uses a better normals generation algorithm, you're going to have better normals when you re-import it. This, unlike what the manual says, impacts all models. Not just CAD models.

If you've imported custom normals you get into the condition shown in pic related. To toggle between custom normals and Blender normals, toggle the Auto Smooth check box. That's how you know,

Image not available

641x436

xna_blender_normals.jpg

Anonymous No. 940379

This is perhaps a little hard to see but even the XNAlara import plugin gives you custom normals. The left is with custom normals on and the right with custom normals off. There isn't a world of difference, but it's there.
To be honest, I have no idea how [insert other software] calculates the normals for meshes.
I just know that both Face Area and Cornar Angle are both old methods and I would like to see something better. If it exists.

Anonymous No. 940403

>>940377
>Yes
That was more of a request than a question. I don't really have access to Maya or the like, but I'm really curious to see how they'll tackle shading a converted metaball.

>>940379
>... I have no idea how ... calculates the normals for meshes ...
So for all we know, something like Maya could very well choke just as much?
This is the problem I'm having, I see a slight difference in your pic, but I don't know which one is better or why. The metaball example was great for me because I saw a theoretical perfect standard that the mesh doesn't live up to, but what about more practical, organically modeled objects (e.g. Blender's Suzanne monkey head, a low-poly human model etc.)? I guess you could subdivide the model to have a perfectly shaded basis for comparison, but if any amount of normal tweaking could give you the same shading as a subdivided mesh, then why model anything that isn't low-poly? Go the game-dev route; collapse away anything that doesn't affect the silhouette, use textures and shading tricks to fake detail, and add render-time micro-subdivision+displacement for offline renders.
Unless the underlying topology does matter a great deal.

Anonymous No. 940412

>>940403
>I'm really curious to see how they'll tackle shading a converted metaball.
Metaball meshes have just about any possible topological problem so some degradation is expected. The point is how much it degrades and how gracefully it degrades.
For Metaballs/SDFs I have access to mathematically correct normals generated by differentiating the implicit field as opposed to averaging neighboring faces, so that's the comparison I'm making.

There's also a very legitimate use case is which is re-meshing algorithms in general. Some of those use Naive Surface Nets as opposed to Marching Cubes, but they're not very different. They're both difficult to generate normals for by averaging.

>So for all we know, something like Maya could very well choke just as much?
Yes. To some extent any software is going to choke on automatically generated meshes.

Image not available

576x317

eevee_normals.jpg

Anonymous No. 940417

But to be fair, considering it used to be all hard-coded and considering they've added an option to change the averaging method, that tells me at least they are aware of the issue.

I don't have access to Maya or any other commercial software, so I can't tell you for sure if Maya uses some better/proprietary method.

And then there's Eevee...