Give nodes that are "Cycles only" or "EEVEE only" warning labels...
Ok the Map UV node exists but I'm using EEVEE and there is no "uv pass". So why should it exist if it does nothing here. Maybe I can plug in the position pass or vector pass (cause they're also tinted purple), oh wait those do nothing.
Give the node a warning saying something like "cycles only, will not work without the uv pass"
4 Comments
This would be great for shader nodes (Toon BSDF, ray portal, etc.), but it wouldn't work especially well in the compositor because there's nothing to say that the uv pass has to be used for the map uv node, it could be an aov or external image. This would also be annoying because if someone renders an image and uv pass in cycles (or some other render engine) and then opens a new file for compositing, since the default render engine is EEVEE the node would be alerting the user to a non-issue.
but the socket says "UV" and I might be wrong but thats the only socket that mentions such thing and the only corresponding thing to plug in zed socket is the uv pass which only appears in cycles. And if you switch back to eevee the uv pass would be gone and the connection to the node would be gone so wouldn't that be an issue?
If someone outputs an AOV of the uvs of an object in EEVEE, that person would probably be confused if the node told them 'no, actually you can't have uvs in the compositor in EEVEE'. Perhaps a better solution would be to have a warning on top of the render layers node (like it does if you try to use a render pass in Cycles in the viewport compositor) if you try to access a render pass that doesn't exist in the current render. That way it covers all the bases: EEVEE passes in Cycles, Cycles passes in EEVEE, disabled passes in either engine, external images, or rendering two different images from two different render passes into two different view layers.
The node is still useful for both Cycles and EEVEE when creating procedural images, e.g. when remapping image coordinates from the "Image Coordinates" node.
I'm closing this request since nodes do not make any assumption about the render engine (except Render Layers node). For shading nodes this makes sense, but that's not what this request is about