You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add simple section backfaces culling on CPU(store faces as 7 arrays of faces by their direction: up, down, east, north, west, south, none. "None" will not culled).This will avoid useless vertex shader and other pre-rasterization stages execution.
Make post-processing optional and render to fbo. This will enable Pixel Ownership Test.
Refactor world rendering. Split to opaque and transperent passes.
Use static uniform location for projection matrix and day time
Store chunk in single VBO
Also can be useful:
Indirect texturing
Store entire chunk in single vao for batching
GLX_INTEL_swap_event with GLX_OML_sync_control. Useful when GPU is bottleneck
The text was updated successfully, but these errors were encountered:
So, most of it should be fixed in #78. Other ones need to be discussed. Also, I will keep consistent numeration for more convenient sub-issues referencing.
Is it really necessary? Windows already gives lower (or even lowest) priority for non-focused windows, so it uses fewer resources. And sometimes high framerate for minimized windows can be useful.
I didn't get it. Do you mean something like Occlusion culling #20? Please better explain your algorithm.
Pixel Ownership Test does not sound like something important, but anyway, this feature is implemented in a12779b
Opaque/masked faces could be split but its performance effort is doubtful. Blended/non-blended faces (AFAIK, in MC1.12.2 only water does need blending) must be split into two passes.
It will decrease section (16x16x16 blocks) remeshing performance. We will need then spare space for removed/created new blocks.
I cannot google directly "Indirect texturing". Did you mean Bindless Texture? Even if you don't, it (Bindless Textures) looks promising. Direct State Access sounds good too.
As noted in 6., it will ruin remeshing performance and will make CPU-culling (or GPGPU) almost impossible. Right now bottleneck is (as states Nvidia's NSight) VAF (vertex attribute fetch). In other words, there are too many vertices to process (which ones will be z-culled later anyway, so why do we have to send them to draw?).
Is it only Intel&Linux specific? If so, then better to find a more common subset of such functionality (if applicable, of course).
Also can be useful:
The text was updated successfully, but these errors were encountered: