工作之余做一点小练习,想写一个简单的2D graphic engine,不过碰上一点问题如下。
A和B的构造如下图,A包含了A1和A2,A2盖在A1上。
然后我想做的效果是 A * 0.5(alpha)之后盖到B上面。
![]()
这边如果只是简单地把A1 * 0.5(alpha)、 A2 * 0.5(alpha),贴到B上面,
会出现不想出现的效果如左图,但实际上我想呈现的是右边的效果。
![]()
右边当初我是使用RTT(render to texture)的方式完成,
不过只要有一个这类的物件就要多一次这样的步骤,使用到大量的draw call,
物件一多之后速度变慢得蛮严重的。
想请问一下各位先进,类似的问题有没有效能比较好的方式可以解决呢?
(如果可以的话,给个关键字也会对我帮助很大,
因为这个问题不知道该怎么描述,连google都很难找orz)
感谢:)