2010-08-29 78 views
1

给定2个函数Translate(x,y)和Scale(x),我希望摄像机的位置始终是屏幕的中心。还有一个比例因子变量,通过修改它可以放大或缩小屏幕中心。鉴于我知道像素的屏幕尺寸,我怎么能做到这一点?由于确保摄像头位置始终是屏幕的中心?

+0

这取决于如果你真的想将图像缩放与否。您可以始终不缩放图像,并使用图像的大小将其转换为应该的位置。 – 2010-08-29 14:41:51

回答

0

事情是这样的:

screen_coords = (world_coords - camera_world_coords) * camera_zoom + 0.5 * screen_dimension 
+0

这对Translate()和Scale()是如何工作的? – jmasterx 2010-08-29 14:07:20

+1

@Milo:你不会在这里得到完美的代码。这不是一个“发送我的代码,这样做的X”网站。阅读公式tdammers发布并实现它的翻译和规模。 – 2010-08-29 14:42:55

+0

提示:在我的例子中*操作符是一个尺度,+和 - 操作符是翻译的。如果你无法弄清楚这些信息,请回到磨刀石。 – tdammers 2010-08-30 11:22:10