我正在研究LibGDX项目,我希望能够修改精灵的颜色和alpha等内容,特别是在与之前放置的部分重叠的任何部分上。据我所知,这只能通过某种方式比较片段着色器中的两个内部,然后根据需要修改单个片段。
我目前的问题是,我无法弄清楚如何将两个精灵中的数据都放到片段着色器中进行这些比较。因为任何需要这样做的精灵总是会使用相同的纹理,我只需要为我所比较的精灵引入坐标数据,因为另一个加载了“纹理”?
整个过程对我来说有点莫名其妙,因为我之前从未做过任何类似的事情,所以对于尝试什么的任何想法都表示赞赏。在这一点上,我可以通过片段着色器控制各个精灵,它只是比较碎片着色器中的两个单独放置的精灵,以查看它们在我之外的重叠位置。
答案 0 :(得分:0)
我认为你最好在Java代码中计算两个精灵的交集,然后使用相对基本的着色器渲染生成的重叠区域。 (只需在精灵的香草渲染上绘制它。)