我在Box2D中有一个简单的问题:
如果要获取鼠标的世界坐标,则可以在Java中使用以下功能:
void update(int x, int y)
{
if(mousejoint !=0)
{
// Always convert to world coordinates!
Vec2 mouseWorld = box2d.coordPixelsToWorld(x,y);
mousejoint.setTarget(mouseWorld);
}
}
什么是c++的coordPixelsToWorld等效项?
最佳答案
像素和Box2D位置之间的任何关联都取决于使用该库的图形程序。
因此,例如在Testbed程序(一个附带并使用C++ Box2D库的图形程序)中,等效box2d.coordPixelsToWorld
就是Camera::ConvertScreenToWorld
方法。而在HelloWorld程序(它不是图形程序,也随C++ Box2D代码提供)中,像素和Box2D位置之间没有任何关联,也没有等效的方法。
如果您正在使用Box2D库编写使用C++编写的图形程序,则可以查看Camera::ConvertScreenToWorld
方法的Testbed程序源代码,以查看如何自己编写该方法的示例。您可以在 DebugDraw.cpp
文件中找到此方法。
关于c++ - mouseWorld坐标Box2D,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28260204/