Is it possible for the internal function renderObjects in the Three.js source code to be exposed for developers to override via prototype chaining? For example, WebGLRenderer.prototype.renderObjects = (renderList, scene, camera)

For example, when I use the scene.overrideMaterial feature, there are certain models in the scene that I don’t want to be affected by overrideMaterial. In this case, I have to modify the renderObjects source code. But after running npm i, the source code gets reset, which is really annoying…, I think WebGLRenderer.js have too many internal function…

npm patch should be helpful - a bit risky, since three changes source quite often, so just make sure you’re not updating three version too much.

1 Like

In this case, I have to modify the renderObjects source code.

Can you use object.layers to control which groups of stuff you want to render?
https://threejs.org/docs/#api/en/core/Layers
(You set a layer index on the object, and on the camera and only where the group bits overlap, will it render that object)

1 Like