Tag: 2d

如何将2D点投影到3D?

我在屏幕空间中有4个2D点,​​我需要将它们反向投影到3D空间。 我知道4个点中的每一个都是3D旋转的刚性矩形的一个angular,我知道矩形的大小。 我怎样才能从这个3D坐标? 我没有使用任何特定的API,也没有现有的投影matrix。 我只是寻找基本的math来做到这一点。 当然,没有足够的数据将单个2D点转换为3D,而没有其他参考,但是我想如果你有4个点,你就知道它们在同一个平面上彼此成直angular,你知道他们之间的距离,你应该能够从那里弄清楚。 不幸的是我不能很好的解决问题。 这可能属于摄影测量的范围之内,但谷歌search没有让我得到任何有用的信息。

二维引擎的Javascript

我正在尝试使用HTML5canvas在JavaScript中构build基于图块的游戏。 有许多可供select的引擎,例如: JawsJS GameJS 的Cocos2D MelonJS CraftyJS ImpactJS (商业) … 这样的例子不胜枚举。 然而,在所有这些不同的实现中似乎并没有一个事实上的标准。 基本上我正在寻找JavaScript游戏引擎的“jQuery”。 一个由(更大的)社区支持的,具有优秀的文档并得到积极维护。 其中大部分对我来说似乎是一个人的项目。 把这个成为一个真正的问题; JavaScript中2D游戏引擎的事实标准是什么? 此外,我会非常感兴趣的实际实施(演示pong / pacman游戏除外)的经验。

二维游戏物理资源

我正在寻找一些很好的参考资料来学习如何在游戏中模拟2D物理。 我不是在找一个图书馆来为我做 – 我想思考和学习,不要盲目地使用别人的作品。 我做了一些Googlesearch,当我在GameDev等上find一些教程时,我发现他们的教程很难理解,因为它们要么写得不好,要么假设一定程度的math理解,还没有。 具体来说,我正在寻找如何build模一个自上而下的二维游戏,有点像坦克战斗游戏 – 我想准确地build模(除其他外)加速度和速度,“组件”的热积累,模型和水平边界,以及导弹式武器。 网站,推荐的书籍,博客,代码示例 – 如果能帮助理解的话,都是值得欢迎的。 我正在考虑使用C#和F#来构build我的游戏,所以使用这两种语言中的代码示例都很好,但是不要让语言停止发布一个好的链接。 =) 编辑 :我不是说我不懂math – 我不知道我需要知道什么,以了解所涉及的系统,并不真正知道如何find资源会以一种可以理解的方式教给我。

平行四边形内的随机点

我有一个由4个点在2D中定义的4边凸多边形,我希望能够在里面生成随机点。 如果真的能够简化问题,我可以将多边形限制为平行四边形,但更一般的答案是首选。 生成随机点,直到一个在多边形内部将不起作用,因为它真的是不可预测的时间。

将纬度/经度点转换为墨卡托投影上的像素(x,y)

我试图将一个纬度/长点转换成一个2d点,以便我可以将其显示在世界的图像 – 这是一个墨卡托投影。 我已经看到了这样做的几种方式,以及关于堆栈溢出的几个问题 – 我已经尝试了不同的代码片段,虽然我得到了像素的正确经度,但纬度总是偏离 – 似乎越来越合理。 我需要的公式考虑到图像的大小,宽度等 我试过这段代码: double minLat = -85.05112878; double minLong = -180; double maxLat = 85.05112878; double maxLong = 180; // Map image size (in points) Double mapHeight = 768.0; Double mapWidth = 991.0; // Determine the map scale (points per degree) double xScale = mapWidth/ (maxLong – minLong); […]

更改LibGDX中的坐标系统(Java)

LibGDX有一个坐标系,其中(0,0)在左下angular。 (像这个图片: http : ../jVrJ0.png ) 这使我在墙上撞我的头,主要是因为我正在移植我已经用通常的坐标系统(其中0,0在左上angular)进行的游戏。 我的问题: 有没有简单的方法来改变这个坐标系?

计算2Dvector的交叉产品

从维基百科: 叉积是在三维欧几里得空间中的两个向量上的二元运算,其导致与包含两个input向量的平面垂直的另一向量。 鉴于定义只定义在三个( 或七个,一个和零 )维度,如何计算两个二维向量的叉积? 我见过两个实现。 一个返回一个新的向量(但只接受一个向量),另一个返回一个标量(但是是两个向量之间的计算)。 实现1(返回一个标量): float CrossProduct(const Vector2D & v1, const Vector2D & v2) const { return (v1.X*v2.Y) – (v1.Y*v2.X); } 实现2(返回一个向量): Vector2D CrossProduct(const Vector2D & v) const { return Vector2D(vY, -vX); } 为什么不同的实现? 我将使用什么标量实现? 我会用什么vector实现? 我问的原因是我自己写了一个Vector2D类,不知道要使用哪种方法。

Quartz Core,Core Graphics和Quartz 2D有什么区别?

我想知道是否有人能够准确地区分这些? 据我了解,Core Graphics只是一个包含Quartz Core和Quartz 2D的“框架包”。 但是我不确定Quartz 2D是否是Quartz Core? 也许有人可以在那里画一些线? 什么弥补了这些差异? 在看文档时,我看到Quartz Core只列出了所有的Core Animation。 那么Quartz Core ==核心animation?

有没有一种有效的algorithm来生成二维凹面船体?

从GIS文件(城市地图)中获取一组(2D)点,我需要生成定义该地图(边界)的“轮廓”的多边形。 其input参数将是设置的点和“最大边缘长度”。 然后它会输出相应的(可能是非凸的)多边形。 我发现迄今为止最好的解决scheme是生成Delaunay三angular形,然后删除比最大边长更长的外边。 在所有的外部边缘比这个更短之后,我只需要移除内部边缘并得到我想要的多边形。 问题是,这是非常耗时的,我想知道是否有更好的方法。

2D跨平台游戏开发引擎

我用Corona SDK工作了一段时间,并且喜欢用Lua创buildfunction强大的应用程序的速度和容易程度。 但它只能编译iOS和Android,现在觉得太less了。 我的主要兴趣是它能够编译到桌面和移动。 至less以下几点: 用于桌面的Windows + Mac,作为独立应用程序。 iOS + Android移动版。 我更喜欢它更倾向于Luatypes的脚本而不是ActionScript,但是请随意发布任何你曾经工作和喜欢的东西。 到目前为止,我find了以下引擎: 果酱快速 – 进一步调查后,果酱快速只能build立移动! IwGame – 在果酱之上工作,并表示可以通过Lua部署到桌面和移动设备上。 任何信息都非常赞赏这一点 sio2 – 说“SIO2是基于OpenGLES的iOS,Android,MacOS和Windows的跨平台2D和3D游戏引擎”和“引擎还允许你在Mac商店和Windows上移植你的游戏”,但是他们的论坛网页标题是“移动设备的游戏引擎”。 无法find任何信息,如果它可以部署到桌面平台,任何信息非常感激再次。 织机引擎 – 织机类似于Haxe + OpenFL(试图吸引Flash开发者),因为它使用类似于ECMAScript的AS3,但是它不能从它构build本地代码。 但是它使用Cocos2D进行渲染,所以理论上应该和Cocos2D一样快。 – 感谢Bojan。 SDL – 我读过SDL可以部署到几乎任何平台或设备的多个位置,并具有Lua绑定。 但是我找不到这是如何工作的,因为它不是一个引擎。 任何人都可以解释它是如何工作的,如果可能的话,再次非常感谢。 SFML – “Windows,Linux,Mac OS X和即将推出的Android和iOS”不使用Lua,但可以使用Java和Python等其他语言。任何人都有关于此的信息? Torgue2D – “Torque 2D是在OS X,Windows和iOS设备的基础上开发的,在所有平台上运行得都非常好。” 使用TorgueScript和没有Android =( Sencha – 似乎编译到所有平台,我也知道使用Javascript。 但即使是V8 JS,与其他选项相比,这样做的performance还是不错的。 GameMaker […]