Project

General

Profile

Statistics
| Branch: | Revision:

library @ 15ed35e6

# Date Author Comment
15ed35e6 12/10/2018 10:33 PM Leszek Koltunski

MeshCubes: Correct texturing of side walls. Everything should be correct now.

2d203318 12/10/2018 03:42 PM Leszek Koltunski

MeshCubes: Correct texturing of side walls. (still not everything is right there)

a16bf106 12/10/2018 01:39 PM Leszek Koltunski

Make the Effects3D app a bit more user-friendly.

554ce72b 12/10/2018 02:05 AM Leszek Koltunski

Bugfix: make the Inflate distances equal in all 3 dimensions regardless of dimensions of the Mesh. (still MeshFlat's Z dim needs to be corrected)

e49b26ba 12/08/2018 12:16 AM Leszek Koltunski

Bugfix for the situation when we would be BLURring an object, then we remove the BLUR and apply a GLOW, then remove the GLOW and apply BLUR again - the second BLUR would assume the color of the GLOW.

20156af7 12/08/2018 12:03 AM Leszek Koltunski

Important bugfix in MeshCubes for the Inflate vectors.

8e88389e 12/07/2018 11:56 AM Leszek Koltunski

Translate the size of the Halo around postprocessed objects from 'number pixels around the object' (as held in the Effects themselves) to a float suitable for Inflating the underlying Mesh with the per-vertex Inflate vectors.

9d0df4c6 12/02/2018 01:13 AM Leszek Koltunski

Progress with the Inflate vector in MeshCubes.

Pretty much works now - what remains is calibration.

15290f35 12/01/2018 12:14 AM Leszek Koltunski

Progress with the Inflate vector in MeshCubes.

7a5e538a 11/30/2018 02:28 PM Leszek Koltunski

Progress with Inflate (building block of postprocessing effects: the proper way of marking a halo around a Mesh)
'Inflate' app testing the machanism. MeshFlat appears to be working, now we only need to fill up the per-vertex Inflate vector in the MeshCubes.

227b9bca 11/27/2018 12:34 AM Leszek Koltunski

Minor simplifications in Mesh.

6f2d931d 11/26/2018 10:31 PM Leszek Koltunski

Added a new attribute to vertices of a MeshBase object: the vec3 'inflate' vector.
This vector describes the direction where the vertex needs to be moved when we 'inflate' the whole mesh.
If the mesh is locally smooth, this is simply the normal vector; otherwise (for example in the corners of the MeshCubes) - not....

da681e7e 11/26/2018 09:21 PM Leszek Koltunski

Some simplifications in Meshes. Hide stuff inside MeshBase.

9a3607b3 11/26/2018 03:59 PM Leszek Koltunski

Fix the preprocess shader. This makes the 'Postprocess Tree' app look good again.

13981586 11/21/2018 11:46 AM Leszek Koltunski

Small things.

e92785ba 11/21/2018 11:26 AM Leszek Koltunski

Small things.

ed06301f 11/21/2018 11:09 AM Leszek Koltunski

Move EffectMessageSender to the 'message' package (duh!)

715e7726 11/21/2018 11:00 AM Leszek Koltunski

Rename MeshObject to MeshBase.

6c00149d 11/20/2018 10:49 PM Leszek Koltunski

Fully move the Meshes to their own package.

466450b5 11/20/2018 10:00 PM Leszek Koltunski

Beginnings of a separate package only with Meshes.

e6904678 08/06/2018 01:26 PM Leszek Koltunski

Progress with Effects3D app - merge Matrix effects

b1058021 07/31/2018 02:10 PM Leszek Koltunski

Postprocessing: adjust the Projection of the postprocessing buffers to match the Projection of the surface we are supposed to be rendering to.

99730f26 07/31/2018 01:43 PM Leszek Koltunski

Correct the way we display Normals (didn't work in case rendering was of OIT type)

1b840bc4 07/30/2018 02:49 PM Leszek Koltunski

More progress with Effects3D app.

9e771d06 07/26/2018 02:32 PM Leszek Koltunski

Progress with thr Glow effect - moving glow app looks ok now.

247d8225 07/25/2018 11:54 PM Leszek Koltunski

More progress with a more generic 'preprocess' stage of Postprocessing Effects.

a13dde77 07/25/2018 08:43 PM Leszek Koltunski

Progress with a more generic 'preprocess' stage of Postprocessing Effects.

2386a081 07/25/2018 12:54 PM Leszek Koltunski

1. Hide internalQuality inside Postprocess effects.
2. First step to turn markStencilAndDepth into a more generic Postprocessing 'preprocess'.

5f7e4f2c 07/24/2018 03:00 PM Leszek Koltunski

Hide the FBO_QUEUE thing inside the library. The queue is running internally now, without public setAsOutputFBO() thing (simplifies writing postprocess effects)

031fbe7a 07/17/2018 01:14 PM Leszek Koltunski

Partially 'fix' Glow effect for the case when FBO_QUEUE_SIZE > 1 (come back to pre-FBO_QUEUE_SIZE level of functionality).
Still, Glow needs to actually get implemented correctly.

ca4521e3 07/05/2018 10:33 PM Leszek Koltunski

Simplify Main OIT shader.

12f9e4bb 07/05/2018 12:39 PM Leszek Koltunski

a mix of two changes:

1) remove the DistortedInputSurface interface (now every Surface is Input)
2) make the OIT SSBO self-adjustable in size

acb44099 07/04/2018 10:30 PM Leszek Koltunski

Make the OIT SSBO size independent of screen size.

d5e053a5 07/04/2018 01:02 PM Leszek Koltunski

Remove the redundant DistortedNode.onPause()

6544040f 07/03/2018 12:47 PM Leszek Koltunski

Fix the fact that back-facing surfaces were invisible.

001fb991 07/03/2018 12:06 PM Leszek Koltunski

Largely fix the non-postprocessed OIT. Still, one problem remains: back-facing surfaces seem to disappear (visible in 'Cubes')

86c352e0 07/02/2018 03:02 PM Leszek Koltunski

Some progress with not-postprocessed OIT.

c1a38ba3 07/01/2018 11:21 PM Leszek Koltunski

Progress with non-postprocessed OIT.

Status: compiles, but fails to work on both Adreno and Mali. Crashes the app (Adreno) or the whole system (Mali)

5e331bc8 07/01/2018 10:07 PM Leszek Koltunski

Update the 'main' shaders for OIT.

edea9cf3 06/29/2018 02:51 PM Leszek Koltunski

In Distorted.onCreate(), catch and re-throw exceptions, so that even is some Program fails to compile, others will still compile.

c25273e0 06/29/2018 02:03 PM Leszek Koltunski

Standarize GLSL version across the whole library.

a895b883 06/29/2018 01:36 PM Leszek Koltunski

Merge branch 'order-independent-transparency'

df5f8dd9 06/29/2018 01:31 PM Leszek Koltunski

Correct a recently introduced bug.

406e2f6b 06/29/2018 12:22 PM Leszek Koltunski

Give users API to render OutputSerfaces and attached Nodes in either the 'normal' way of OIT way.

a07e0204 06/29/2018 11:55 AM Leszek Koltunski

Start merging master and OIT.

9e999930 06/29/2018 11:48 AM Leszek Koltunski

Start merging master and OIT.

97020807 06/29/2018 11:25 AM Leszek Koltunski

Start merging master and OIT.

61ce8e90 06/29/2018 11:07 AM Leszek Koltunski

Minor.

9b94626c 06/28/2018 11:54 PM Leszek Koltunski

Port some obvious stuff from OIT branch.

9ea800c6 06/28/2018 11:30 PM Leszek Koltunski

Minor.

8ac0ed3e 06/28/2018 11:21 PM Leszek Koltunski

Correct the way we delay FBOs in DistortedScreen.

b3d1b670 06/27/2018 11:52 PM Leszek Koltunski

Minor.

1f19fba8 06/27/2018 11:51 PM Leszek Koltunski

Port the Mali flash fix to the OIT branch.

6672d895 06/27/2018 01:31 PM Leszek Koltunski

I am pretty sure this time the flashing issues on Mali T880 r12 driver are finally fixed.

The fix: a queue of FBOs render to, just like before, but this time in DistortedScreen we blit not the current FBO, but the one computed several frames ago.

This of course introduces a delay and uses more memory, but it appears to work and does not seem to have any effects on speed.

586b5fa1 06/27/2018 01:30 PM Leszek Koltunski

Port another commit from master.

I spoke too soon, the ARM Mali flashing is of course not fixed yet. The previous commit fixed Triblur, but the bug is still reproducible elsewhere (only in the 'postprocessed' apps though).

This commit introduces a circular queue in case of the postprocessing FBOs - with little success though.

8ebbc730 06/27/2018 01:16 PM Leszek Koltunski

Port a commit from the master branch.

Finally properly fix the flashing on ARM Mali T880 GPU.

The flashing is caused by a 'full pipeline flush' (see DarkPhoton, https://www.opengl.org/discussion_boards/showthread.php/200754-Flashes-on-ARM-Mali?p=1291679&viewfull=1#post1291679 ). In order to combat it, first introduce the possibility that a single DistortedOutputSurface is backed up by more than one FBO. Then make DistortedScreen be derived from DistortedFramebuffer (which itself is derived from DistortedOutputSurface) and make it contain 3 FBOs, render to them in a circular queue fashion, and blit from a given FBO to the system FBO. The 'more than 1 intermediate FBO' queue prevents the pipeline flush....

2301cb2f 06/27/2018 11:08 AM Leszek Koltunski

I am pretty sure this time the flashing issues on Mali T880 r12 driver are finally fixed.

The fix: a queue of FBOs render to, just like before, but this time in DistortedScreen we blit not the current FBO, but the one computed several frames ago.

This of course introduces a delay and uses more memory, but it appears to work and does not seem to have any effects on speed.

baa3989b 06/24/2018 12:07 AM Leszek Koltunski

Revert last changes to the postprocessing FBO.

This reverts commit 2dbed690bdbee80d9bfb22c800073855eb5d0946.

f4d6114c 06/23/2018 11:18 PM Leszek Koltunski

I spoke too soon, the ARM Mali flashing is of course not fixed yet. The previous commit fixed Triblur, but the bug is still reproducible elsewhere (only in the 'postprocessed' apps though).

This commit introduces a circular queue in case of the postprocessing FBOs - with little success though.

9d845904 06/22/2018 10:38 PM Leszek Koltunski

Finally properly fix the flashing on ARM Mali T880 GPU.

The flashing is caused by a 'full pipeline flush' (see DarkPhoton, https://www.opengl.org/discussion_boards/showthread.php/200754-Flashes-on-ARM-Mali?p=1291679&viewfull=1#post1291679 ). In order to combat it, first introduce the possibility that a single DistortedOutputSurface is backed up by more than one FBO. Then make DistortedScreen be derived from DistortedFramebuffer (which itself is derived from DistortedOutputSurface) and make it contain 3 FBOs, render to them in a circular queue fashion, and blit from a given FBO to the system FBO. The 'more than 1 intermediate FBO' queue prevents the pipeline flush....

01b9a241 06/19/2018 11:09 PM Leszek Koltunski

Minor.

040cd18c 06/19/2018 11:04 PM Leszek Koltunski

Port all the 'non-controversial' changes from order-independent-transparency branch.

85bfeb7a 06/13/2018 09:33 PM Leszek Koltunski

Try and avoid re-sorting the children by buckets (if we can!). This makes change in rendering order in the 'Transparency' app actually work.

2dbed690 06/08/2018 02:03 PM Leszek Koltunski

In an attempt to contain the flashes on Mali GPU, re-structure the post-processing FBOs from 1 FBO with 2 color attachments + combined depth-stencil to 2 separate FBOs sharing a depth-stencil texture.

Result: this appears to make the flashes slightly worse.

82890e13 06/07/2018 11:47 AM Leszek Koltunski

Minor

2aef1f4d 05/31/2018 12:33 PM Leszek Koltunski

OIT: fixes for Mali: fix a broken loop in the oitRender fragment shader that resulted in flashing.

344ac0e4 05/30/2018 02:22 PM Leszek Koltunski

OIT: fix for 'out of memory' crash on Mali GPUs.

~The thing still does not fully work there - there are still strange flashes in apps that innvolve OIT, for example in 'Triblur'.

5fdae11d 05/23/2018 12:56 PM Leszek Koltunski

OIT: more fixes

c207da02 05/22/2018 03:48 PM Leszek Koltunski

OIT: fixes. Everything looks correct now except for the curious return of the 'dancing lower-left corner' small glitch in the 'Transparency' app.

90eb5f53 05/22/2018 01:26 PM Leszek Koltunski

OIT: correction for blending in Pass4

33f59f22 05/21/2018 05:17 PM Leszek Koltunski

OIT: move towards 4 passes ( clear - build - collapse - render )

bbe3283b 05/18/2018 02:13 PM Leszek Koltunski

correct oitRender again: we need to disable stencil reading and writing and restore after

c8d70463 05/18/2018 01:58 PM Leszek Koltunski

correct oitRenddr again; correct coming to paused state (we could crash)

e92f191a 05/18/2018 12:06 PM Leszek Koltunski

Make sure we don't create a feedback loop in oitRender

c41d046c 05/17/2018 08:16 PM Leszek Koltunski

Make sure we don't create a feedback loop in oitRender

9ab3b712 05/17/2018 04:10 PM Leszek Koltunski

Make us read only the DEPTH part of a DEPTH24_STENCIL8 attachment.

88c7b603 05/17/2018 03:33 PM Leszek Koltunski

Reengineer DistortedScreen

b52f9415 05/11/2018 03:17 PM Leszek Koltunski

OIT: correct depth

6770ef46 05/11/2018 03:11 PM Leszek Koltunski

Postprocessing: dont crash when we fail to compile postprocessing programs

66a0fa17 05/11/2018 12:53 PM Leszek Koltunski

OIT: some progress

7f30ed38 05/10/2018 03:11 PM Leszek Koltunski

OIT: more bugfixes

56c6ca24 05/10/2018 12:30 PM Leszek Koltunski

OIT: lots of progress on all fronts. Still a few bugs to solve though!

27aefee6 05/03/2018 04:19 PM Leszek Koltunski

OIT: clear the postprocessing buffer with transparent white.

78e89fb5 05/03/2018 03:10 PM Leszek Koltunski

Properly recreate the Atomic and LinkedList buffers onPause.
We have to discard all alpha==0.0 pixels during OIT Pass1.

b36613d8 05/03/2018 12:19 AM Leszek Koltunski

small correction for blending OIT colors.

c92d84ec 05/01/2018 11:21 PM Leszek Koltunski

minor.

375b3950 05/01/2018 11:19 PM Leszek Koltunski

OIT: something starts working ('Blur' and 'Multiblur' work, 'Triblur' and 'Transparency' do not)

c731c612 05/01/2018 09:07 PM Leszek Koltunski

Fix the 'OIT' artefacts.

341151fc 04/27/2018 04:53 PM Leszek Koltunski

Fixes ported from the 'OIT' branch:

- remove counting of transparent pixels
- various fixes for the Mali GPU

e029600f 04/27/2018 04:40 PM Leszek Koltunski

still debugging the OIT

2f35828c 04/26/2018 11:22 AM Leszek Koltunski

- remove counting of transparent pixels from main fragment shader
- remove debugs and tidy up
- some fixes for the Mali GPU

cee0369a 04/25/2018 03:26 PM Leszek Koltunski

Order Independent Transparency: debugging

47511918 04/25/2018 02:17 PM Leszek Koltunski

Order Independent Transparency: some progress

f89a986e 04/18/2018 02:37 PM Leszek Koltunski

Order Independent Transparency: some progress

8777ce17 04/17/2018 09:21 PM Leszek Koltunski

Order Independent Transparency. Does not work yet.

96f271e9 04/17/2018 09:19 PM Leszek Koltunski

Minor.

8dccc3c2 04/12/2018 08:42 PM Leszek Koltunski

Disable blending during postprocessing.

9455da17 04/09/2018 12:03 PM Leszek Koltunski

Fix for bug #28: looks of the borders of a blurred object depend on if the object is the first in the postprocessing bucket.

ae2802b1 04/08/2018 09:07 PM Leszek Koltunski

Postprocessing buffers mBuffer[] are now shared among all postprocessing operations. This saves a lot of memory, but also means that when doing each particular postprocessing, the textures backing up the mBuffer might be too large. We need to fix two things here: when outputting to those too large textures, we need to adjust the Viewport, and when binding those too large textures as input - we need to adjust the TexCoords to compensate....

79e354b0 04/06/2018 11:28 PM Leszek Koltunski

Improve the 'PostprocessTree' app. Shows bugs in postprocessing.