Comments (4)
Good issue. I believe this would also happen with leaf blocks.
Also your solution makes sense. A flag like "isOpaque" could be added, allowing the meshbuilding to code to add faces when it is set to false.
from open-builder.
It might be necessary to specify which faces have to be rendered. Not only because of optimization reasons (1 extra face vs all 6 faces), but because the faces inside water shouldn't be rendered, only the faces that contact with other blocks.
I'll be working on implementing this, if that's not a problem of course.
from open-builder.
That is fine :)
It might be necessary to specify which faces have to be rendered.
This is true, for now though (to keep things nice and simple, and the face I don't have anything like stairs or slabs in the game for now), it could just be all faces.
but because the faces inside water shouldn't be rendered,
IIRC, the chunk meshing code will not add block faces if the neighbour block is the same (This is what allows the terrain faces to render underwater, while "underwater faces" are not rendered)
from open-builder.
Good news:
Bad news (but hey, the trees are visible underwater :D):
This happens inside the water, where the back-faces appear, because isOpaque afects all faces.
It gets spaghetti to hardcode the water not to render its sides when isOpaque == false
, so fluids will always render their top face for now.
Until the stair update comes around, I'll be preparing a fix/faces-not-rendering-through-gaps
branch with a (hopefully) proper solution.
from open-builder.
Related Issues (20)
- Discussion: Big client refactor HOT 2
- Cleanup the Cmake
- Document Scripting API
- GUI: Checkbox widget HOT 6
- Allow GitHub actions to recognize std::filesystem, std::optional etc HOT 5
- Doc building on Windows with Visual Studio HOT 1
- Add function to GUI textbox API to limit which characters can be added to it
- Pressing ` or Caps-Lock causes the error screen to pop up HOT 2
- [Feature] Move buttons to the texture_packs/ folder instead of res/
- World generation not working on macOS
- Building HOT 2
- Lag and block error HOT 2
- Something like redstone
- Ability for custom player models, custom block models and custom player animations
- Shader compilation error on Ubuntu 20.04 LTS HOT 9
- Client-side prediction
- Compile error HOT 1
- Big Rewrite HOT 1
- Shader compilation fails depending on drivers HOT 8
- Lower Water Level HOT 1
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 open-builder.