【发布时间】:2016-05-24 00:12:50
【问题描述】:
我想根据通过切线计算的特定角度绘制一条朝向目标的定向线,这将给出弧度结果。
据我所知,要获得精确的旋转,我必须使用double 值来表示正确的弧度。
但是,Spritebatch.Draw 需要 float 值作为旋转:
public void Draw (
Texture2D texture,
Vector2 position,
Nullable<Rectangle> sourceRectangle,
Color color,
**float rotation,**
Vector2 origin,
float scale,
SpriteEffects effects,
float layerDepth
)
如果我将double 值转换为float,角度不正确,它将错过我期望相交的目标。
如何根据我的double 而不是float 绘制正确的定向线?
最好的情况可能是在 Update() 而不是 Draw() 内跟踪线,但我认为我没有足够的经验来实现像 Vector2.Transform() 这样的东西,因为我无法想象它是什么可以,但我找不到合适的面向新手的解释。
【问题讨论】:
-
我非常怀疑你需要
double。我怀疑您的问题出在代码的其他地方
标签: c# rotation xna double draw