我正在使用DirectX在屏幕上绘图。
我想在保持尺寸的同时制作图像,所以我给顶点分配了一些算术:
float boxPosFactorX = (869-3)+(100/100 * (1063 - 869));
float boxPosFactorY = (940-3)+(100/100 * (1038 - 940));
vertexes[0].Position = new Vector4((50 * boxScale) + boxPosFactorX, (50 * boxScale) + boxPosFactorY, 0, 1.0f);
// other vertexes with same structure just different constants (e.g. 50 above is the constant values of that vertex.
现在这里是非常奇怪的部分,上面的代码按预期工作,但只要将比率“100/100”更改为低于“99/100”或更低的任何值,它就会像代码一样:< / p>
float boxPosFactorX = (869-3)
float boxPosFactorY = (940-3)
答案 0 :(得分:4)
99/100
为0
(而101/100
正好是1
)。那是整数运算。如果要进行浮点运算,请使用99F/100
。