
I've successfully figured out how to edit the otl with python to interactively make nodes when the user wants them as well as updating the UI to reflect the changes within the nodes. Now I'm working on how to make the actual texture look like something. I've done the height map as a displacement map here in the picture but unfortunately it does not capture the information to create a full hovering sphere. This could be bypassed by just not making any holes or we could have fun and try to project an opacity map from one camera and the displacement from another and see if that will work. Alternatively I could export a point cloud but I'm not sure how that would work, nor do I think it would be particularly efficient for rendering.
The way to apply different images is in fact using UV layers. Imagine that, using layers is a way to layer textures on top of each other. Now I need to figure out the order of how the ROP is accessing the shader. It seems to be displacement, color, opacity. I would like to add opacity onto an object that is already displaced, thereby creating a floating sphere, or at least the illusion of one. I don't think the rounded underside would matter much on a sprite, but the holes letting the light through would be. Possibly I could UV the already displaced object.
After many shenanigans I've found a way to subvert the UVs on the grid. There must be an easier way to do this. My way is to displace along the normals, as you would normally do, then grab the rest position from there and pipe that into a UV project node and translate the position of these new UVs through a UV position node, then going along with the normal texture node going into the surface output. This way is extremely clunky because I could not find a mathematically relevant way to scale and offset the new UVs. I arbitrarily changed them to suit my needs.
The end result is not that satisfying either. The shadow doesn't change unless the opacity takes off half the object, plus I did not get the sweeping bottom curvature of the sphere that I took my projected alpha from.
The end result is not that satisfying either. The shadow doesn't change unless the opacity takes off half the object, plus I did not get the sweeping bottom curvature of the sphere that I took my projected alpha from.