我一直在我正在编写的粉丝复制游戏中取得进展,但我遇到了这个问题。 现在我在曲线路径上逐个像素地绘制纹理,但是这会在长度较长的曲线上将每秒帧数从4000减少到50。 我需要逐个像素地存储Vector2 +长度数据,所以我可以沿着它产生静态速度运动,循环通过它来绘制曲线。
我需要能够绘制的曲线是Bezier,Circular和Catmull。
如何提高效率?
答案 0 :(得分:1)
也许我误解了这个问题,但我做了一次:
创建曲线并在其上采样x点。 (红点) 通过计算每个点的交叉向量,从中创建网格。 (绿线) 在所有这些之间构建一个四边形。所以我的照片中基本上有5个。
答案 1 :(得分:0)
如何提高效率?
假设纹理需要是动态的,请使用着色器在GPU侧绘制纹理。在CPU端绘制它不仅速度慢,而且当您需要每帧将其发送回GPU时,会使CPU和GPU陷入困境。将GPU绘制得更好。
我需要逐像素地存储Vector2 +长度数据
着色器可以将其他信息存储到纹理中。例如即使你可以分配一个RGBA纹理,但这并不意味着它需要存储颜色信息,因为它是你的着色器将解释数据。