Coder Social home page Coder Social logo

Comments (4)

prman-pixar avatar prman-pixar commented on July 17, 2024

@erjiang

Can you see if this helps?

  1. Unzip the attached ZIP file
  2. Put rman_socket_utils.py in RenderManForBlender/rfb_utils
  3. Put rman_bl_nodes_sockets.py in RenderManForBlender/rman_bl_nodes

patch.zip

from rendermanforblender.

erjiang avatar erjiang commented on July 17, 2024

With this change, color inputs don't seem to work anymore. As shown in the screenshot in #691, the color inputs have become Blender colors (dark yellow) and I'm not able to do something as simple as create a PxrConstant shader and change the emitColor.

from rendermanforblender.

prman-pixar avatar prman-pixar commented on July 17, 2024

(Just copying what I wrote in #689 regarding this issue)

Unfortunately, this seems to be a limitation of Blender.

We're using a custom class for our node sockets. There doesn't seem to be any way to change the socket's type property when using a custom class. Custom node sockets all get set as 'VALUE' for its type. The group node seems to use this property to figure out what kind of socket it should add for its input/output. If you try to explicitly set the type property, the socket reverts back to the base NodeSocketFloat class, and we lose our custom properties.

We cannot use the base Blender node socket classes, because we want to be able to add our own properties, and override the draw methods for the class. The only thing I can think of that might fix this is to create our own custom group node, but that would be a significant change, and I'm not sure if that will fully solve this.

from rendermanforblender.

prman-pixar avatar prman-pixar commented on July 17, 2024

Gonna close this one. Blender 4.0 has made changes to the way sockets are created for group nodes, and this seems to work now as expected in my testing, after updating our code.

from rendermanforblender.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.