mmf2 has this in an extension I think, parallaxer object I think.
How well does it work in that? Hmm just checked it out on youtube, works fast, and shows it can be done, well something similar to meshes anyways.
The shader request just distorts the image depending on brightness (height map) and distance from a point.
Also, a shader makes it VERY slow.
Really. It's slow, even in modern hardware. For that performance, I'd rather go full 3D.
I think that's just the case for the parallax occlusion shaders. This one would basically do what the distort shader does, only differently. Meshes would work great if the tools were there, but currently for what I need, they're not practical (they'd work fine in a shoot-em-up or top down game tho). I can't create something that converts height maps to .mesh files. I wouldn't even know where to begin. Each one would be different shapes.
Though saying that, even meshes would have issues, as it would be effectively making displacement mapping for everything, and anyone in 3D could tell you that's a killer for real time, hence the creation of shaders to approximate the effect of there being more polygons than there is. A mesh wouldn't have the polygon resolution to capture the difference in height between stones in a wall or the knarly shapes found in the bark of a tree like the shader could. Even though using meshes would allow for better looking depth, and even interesting effects such as overhanging objects, arches and so on (from the side) that change position convincingly.
Bleah, it's not fair, lol!
Doing them by hand would be out of the question for a few reasons
1 ) too many of them (talking well over a thousand or more - no not on screen all at once, hehe)
2 ) matching the edges of each sprite up using the mesh tool, can't be done by hand, would result in lots of gaps and constant refining to the point it would never be done. While #1 isn't too bad, #2 would ruin all the hard work and effort.
I do agree that meshes WOULD work better, and ultimately look better. But unless someone can come up with a way to convert height maps to mesh files (which would IMO be the best method of "modeling" mesh files in construct), then for what I need, a shader like requested is still probably the only way to go.
There is one other option, that would be to create each level of object movement as a separate layer, but yeah, ouch ouch ouch, lol! There's going to be enough real parallax layers going on without adding 20+ per sprite, so that's like a worst case scenario hehe.