Hi! I have a rather complicated case, but I would like to get help with it. I have 2 (or more) instances of one 3dObject, both use a texture with an alpha channel (in screenshot No. 3), but only one of all instances correctly displays the inner part (reverse side) of 3dObject (in screenshot No. 1), the other does not display it, it happens only on some faces the object (in screenshot #2). Is there any way to fix this or is it a mistake? Thanks!
Viewing post in Construct 3 3DObject Plugin comments
Ah, this is tough one. I presently don't do anything special with sorting faces based on average depth before rendering, so objects with transparency / alpha are hard to deal with, because they may render out of the order needed by transparency (canonical 3d / transparency issue.)
If you are just rendering a cube though, depending on the orientation, you may just want to try 3DShape w/ the textures you want, if I remember correctly, for the simple cube case, C3 does sort as best as it can.
Unfortunately, in my case it will not be possible to use 3D Shape, at this stage of development the models are very different (in screenshot 1 and 2 with triangulation).
In addition, I want to use bone animation to get the result as in my other projects on PlayCanvas.
video 1:
video 2:
I think solving this problem will really help in developing interesting and beautiful games on C3.
May I ask if this area of 3d Object development is a priority?
I am ready to help with the work on the plugin, but unfortunately I do not have sufficient programming skills.
Thanks!
I might be able to work on this in a couple weeks, the sort would only be for one mesh, not between meshes and it would happen on the CPU. It would also require all rotate, scale, transform operations be done on the CPU too (normally they are done on the GPU). This can put a heavy load on CPU. It is a difficult problem with how we can render using C3.
If we could get at the pre-draw shade we could do screen door.
I am open to other ideas on it, also since it is open source other PRs (other people submitting code/changes).