Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

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!

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.

(1 edit)

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).

(1 edit)

This is great news! I will be looking forward to new updates of 3d objects and continue working on the project. Thanks!

It works fine for me? I dont get this problem. 

The problem is displaying the back face of an object when there is an alpha channel in the texture. I added a few screenshots, the difference should be better visible there

I see it now, I thought your alpha/transparency wasn't working in your original picture with the black background.

yikes, i'm already optimizing as much as I can to keep cpu low. this scares me lol. i wish we could use gpu more

The possible fix I am talking about above would be optional to help with the transparency case. It would be enabled per node/mesh.

Try putting it on the topmost layer, and 3D distance for the Draw Order.

I have tried this, in this case only one instance of the object will be displayed correctly

Check out the new screendoor dither in the frag light effect. it definitely has its own artifacts, but might be interesting for this case.


Frag light is a separate itch project.