如何在MonoGame / XNA中绘制虚线

时间:2013-03-11 22:51:21

标签: c# xna monogame

在MonoGame / XNA 4中绘制虚线的最简单方法是什么?

我应该使用3d基元还是用简单的精灵来实现它?

3 个答案:

答案 0 :(得分:5)

bitbucket上的用户C3发布了一个很好的实用程序类来创建2D基元。这些将扩展方法添加到SpriteBatch类。存储库位于:https://bitbucket.org/C3/2d-xna-primitives/wiki/Home


<强>欢迎

欢迎来到2D XNA Primitives项目的新家,现在使用Bitbucket上的Mercurial存储库!现在与Windows手机兼容。

功能参考

此库提供的所有公共方法都是扩展方法,这意味着您可以通过自己的SpriteBatch实例直接访问它们,就像这些方法内置于SpriteBatch类一样。如果以这种方式调用方法,则可以忽略以下调用的 all 的第一个参数。

公开方法

DrawArc

画圆

DrawLine

DrawRectangle

FillRectangle

PutPixel

答案 1 :(得分:1)

如果它是一条直线(简单的90度转弯),那么精灵可能是最简单的。

(如果您可以通过HiDef配置文件访问自定义着色器,那么在着色器中实现虚线并不太困难,如果一个人的需求很简单)

如果它以不规则的方式扭曲和转动,那么我建议使用3d原语。

答案 2 :(得分:0)

将问题分成两部分。

1)定义曲线的形状,如果它不是直线。

2)沿着该曲线,创建一个带有您想要的虚线纹理的三角形条。