本文介绍: 然后函数遍历所有相邻的点对,计算每个线段顶点坐标,并使用parent.DrawRGBAVertices方法绘制线段。这行代码里,就是批量把顶点坐标vertices进行绘制绘制方式是按PrimitiveType.TriangleList方式。不过隐藏这个函数后面,会有更加复杂内容。上面语句可以使用三个坐标来画线,还有线宽度颜色最后的那个参数连接在一起的意思。如果线段闭合,则需要计算与前一个顶点相交的点,以便正确绘制闭合的线段。函数首先检查输入的点的数量,如果少于2个,则不进行绘制。

C#开发的OpenRA游戏属性SelectionDecorations(11)

前面分析选择一个物品属性,当玩家选择时,就会在物品周边画出四个指示符号。而这四个指示符号,是通过下面的语句

cr.DrawLine(new float3[] { tl + u, tl, tl + v }, 1, color, true);

不过隐藏这个函数后面,会有更加复杂内容。上面语句可以使用三个坐标来画线,还有线宽度颜色最后的那个参数是连接在一起的意思。

这个函数就会调用类RgbaColorRenderer的函数DrawLine:

public void DrawLine(IEnumerable<float3> points, float width, Color color, bool connectSegments = false, BlendMode blendMode = BlendMode.Alpha)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注