在MonoGame / XNA 4中绘制虚线的最简单方法是什么?
我应该使用3d基元还是用简单的精灵来实现它?
答案 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)沿着该曲线,创建一个带有您想要的虚线纹理的三角形条。