Page MenuHome

Adaptive subdiv stuck in "Simple" mode
Closed, InvalidPublic

Description

System Information
Operating system and graphics card
Gentoo Linux
AMD 290x

Blender Version
Broken: (example: 2.69.7 4b206af, see splash screen)
2.79 (master branch) 0ed3a72012

Worked: (optional)
Latest 2.79 release

Short description of error
Adaptive subdiv seems to be now stuck in simple mode. Before it would work with catmull-clark also

Exact steps for others to reproduce the error
Based on a (as simple as possible) attached .blend file with minimum amount of steps

  1. Open attached .blend file
  2. Render the image and notice that the cube doesn't turn into a ball
  3. See attached pictures on the difference between master branch and 2.79


Master:

2.79:

Event Timeline

This comment was removed by Dalai Felinto (dfelinto).
This comment was removed by Dalai Felinto (dfelinto).
This comment was removed by Dalai Felinto (dfelinto).
This comment was removed by Dalai Felinto (dfelinto).
This comment was removed by Dalai Felinto (dfelinto).
This comment was removed by Dalai Felinto (dfelinto).
This comment was removed by Dalai Felinto (dfelinto).

I can't verify that here.
2.79 Master and 2.79 buildbot render a ball for me.

macOs 10.13.2

Hmm, If you guys can reproduce then I don't know what I should do to figure out what is wrong.
I'm using gentoo portage to build blender from git. So the build directory is clean. I haven't made any changes to the blender code either. So I don't know what it could be.

It is really weird as adaptive subdiv still seems to work as I can plug displacements into the disp. output node and the surface gets tessellated. But as I said it seems to be stuck in "Simple" subdiv mode...

I tested it with latest master on elementaryOS 0.4.1. and it renders a nice and round ball.

I've tried to compile the "2.79" tag and it still is broken for me. However if I download the official 2.79 build, it works like expected :S

So I'm guessing this is a library bug or perhaps this is a problem only noticalbe with newer gcc versions?

I've attached my system-info.txt file.

It looks like you are using more recent versions of libraries than Blender developers.

To avoïd that, use the install_deps script.

https://wiki.blender.org/index.php/Dev:Doc/Building_Blender/Linux/Gentoo/CMake#2._Install.2FUpdate_the_dependencies

Brecht Van Lommel (brecht) changed the task status from Unknown Status to Unknown Status.Dec 24 2017, 3:49 PM
Brecht Van Lommel (brecht) claimed this task.

The issue is that you are not building with WITH_OPENSUBDIV=ON and WITH_CYCLES_OPENSUBDIV=ON.

If the Gentoo package is not configured to build that way you can consider reporting a bug to them.

@Brecht Van Lommel (brecht) Yes that was it! Thank you.

I have just one question.
Why do you split up opensubdiv support like this? I think that reason for the confusion (at least for me) is that one would think that WITH_OPENSUBDIV=ON would enable opensubdiv for all parts of blender and that there would be no additional switches needed for say cycles.

I think this is what happened with the Gentoo package as WITH_OPENSUBDIV=ON were correctly turned on/off depending on if you wanted opensubdiv or not. However WITH_CYCLES_OPENSUBDIV=ON was missing.

It has to do with OpenSubdiv not working in Blender due to OpenGL limitations on macOS, while it does work in Cycles. We'll unify the cmake option in Blender 2.8.