Comments (6)
Are we talking CanvasRenderer or WebGLRenderer here?
Both have back-face culling already. Depends of your scene and what the user is supposed to see. But yes, it's always good to remove faces that will never be seen (less computations), it's like having code that does nothing.
from three.js.
I currently use WebGLRenderer.
That they both already have backface-culling is great!
I then however wonder why you (here 52ef987) did remove the bottom faces of the cubes in the Minecraft demo. These faces are always backfaces, so they are already culled, right?
As for the culling of invisible faces, it save computations for the GPU, but it takes extra computations for the CPU every time the camera moves (because then, it should be recalculated what is visible and what is not...). There is a trade-off, I guess?
from three.js.
That was alteredq though... Anyway, it's not that we're -removing- the bottom sides of the cube. It's that we're -not adding- them. Kinda different ;)
Backface culling is useful for faces that may be seen at some point. Like the back of the Walt Disney head which you would be seeing. But, in theory, the bottom of the minecraft cubes shouldn't ever be seen, so you can -not add- them to save memory and CPU/GPU computations.
from three.js.
Ah, I see... Should have thought about that myself :-)
Thanks for the explanation!
How can I contribute back to the project and to you? Is there anything you would like?
from three.js.
You can contribute back by doing amazing stuff with it ;)
from three.js.
Will do ;-)
from three.js.
Related Issues (20)
- FBX mesh breakage morphing MTIs HOT 1
- GLTFLoader addon is missing (import from examples?!) HOT 1
- Distortion of the model due to being too far from the origin HOT 2
- MapControls requires enableRotate=false on IOS HOT 1
- wrong z order when rendering material with alpha mode "BLEND" HOT 7
- It appears that the resources associated with DRACOLoader may not be completely released, leading to memory consumption issues HOT 4
- I wish an example for the outputStruct node HOT 3
- Adding postprocessing support to the three. js editor HOT 1
- WebGLRenderer.setSize cannot set properties of undefined (setting 'width') HOT 2
- Enhance target type for SpotLight and DirectionalLight HOT 1
- Build a grid through custom coordinates HOT 1
- `.equals` in class `Spherical` HOT 6
- FBXLoader loads default Unreal model with wrong rotation HOT 4
- Editor can't import glTF with .ktx2 textures HOT 1
- MRT needs a filter if there are several objects with different shader counts in the scene HOT 3
- File Export Whole Scene feature was removed 😨 HOT 2
- RectAreaLight passes through material HOT 6
- Editor: drop event in UIOutliner of ui.three.js not being call HOT 9
- Editor: Export GLB and GLTF fails to fetch HOT 2
- MeshToonMaterial support for WebGPU
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from three.js.