-
-
Notifications
You must be signed in to change notification settings - Fork 35.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Documentation: State of WebGPURenderer
and Nodes
#28957
Comments
This isn't a complete answer but at least a start.
That really depends on the use case but in general no. We need a couple of more releases to add missing features of
No. It will never be a 100% match since WebGL/GLSL specific classes like
In
Not yet. IMO, |
Thank you so much for taking a stab at it! I have some follow-up questions:
Thanks again |
This isn't possible. TSL and nodes only work with
This task has not been started yet. |
This is not really clear to me. It was possible up until r163. What has changed? I understand that some nodes can't be supported, but it was definitely possible to construct node graphs, use MaterialXLoader, ... from |
Well, with "isn't possible" I mean that the effort is just too high to integrate and maintain the node material in its current state into |
I have some follow-up questions regarding documentation that I think can live in this issue as well.
Here are a few examples where I would welcome some insights on how this will conceptually work (or how it works today?):
|
I, too, would like to see a working code snippet showing how to assign a custom |
It is not possible to do that. There is no In the meanwhile, custom tone mapping can be achieved via post processing like so: https://jsfiddle.net/tw1kr7ox/ The fiddle duplicates the Uncharted 2 tone mapping from postProcessing = new THREE.PostProcessing( renderer );
postProcessing.outputColorTransform = false; // disable default output tone mapping and color space conversion
const scenePass = pass( scene, camera );
postProcessing.outputNode = vec4( CustomToneMappingNode( scenePass.rgb, renderer.toneMappingExposure ), scenePass.a ).toOutputColorSpace(); |
@Mugen87 an understanding question, do I get it right that the WebGL fallback renderer does not have any Nodes support anymore? That was also removed? |
@hybridherbst WebGL fallback renderer does have node support. Example: |
Description
I'm trying to understand what the current state is, where examples went, and how things in regards to nodes are done now. This is a documentation issue :)
From what I can see:
All WebGL examples regarding node materials have been removed in NodeMaterial: Remove
WebGLNodeBuilder
#28167.New features and bug fixes to the nodes system are only added to the WebGPURenderer. No nodes-related features are officially available for WebGLRenderer anymore.
WebGPURenderer is currently inWebGPURenderer is now in a separate bundle.examples
. It's not part of core three.js.There is no documentation (that I could find) on how to switch from
WebGLRenderer
toWebGPURenderer
. I was wondering if switching with{ forceWebGL: true }
is a safe step, for example.Documentation Questions
Is
WebGPURenderer
mature enough to start switching to it?Is
WebGPURenderer
with{ forceWebGL: true }
currently 100% matchingWebGLRenderer
?Are there specific things to keep in mind when using
GLTFLoader
withWebGPURenderer
? Is there anything extra that a developer needs to do? Does it use nodes when doing that, or the previous materials?Will WebGPURenderer move to core at some point, or will it stay an example?
Is there documentation for switching? For example, it's not clear to me if all classes
WebGL*
need to be swapped, or if it's fine to useWebGLRenderTarget
withWebGPURenderer
.Solution
Documentation for how to start using
WebGPURenderer
.Alternatives
Waiting until a further point and not starting to use/test
WebGPURenderer
.Additional context
No response
The text was updated successfully, but these errors were encountered: