Articles of 侧卷轴

SDL文本或其他图像未加载

我有一个基本的侧面卷轴,允许用户跑步和跳转。 我已经使用了各种教程来得到这个,但我似乎无法得到任何文字渲染,不管是什么方法。 我也无法得到任何图像渲染我draw()函数,这是在运行时渲染,我认为是我的问题。 (是否有可能再次调用该函数来加载另一个图像?) 因为整个程序是交织在一起的,所以我不能给出一行代码来显示这个问题: http://pastebin.com/d1CNiVf5 我并不是要求某个人通过代码来解决所有问题,只要你能指引我正确的方向,或者至less知道是什么原因导致了这个问题就会变得很好! (对不起,把所有的代码放在一个文件中,我不好意思把它们模块化,并且因为这个问题而不断地在项目中发现错误,所以为了学习的目的,现在将会在一个文件中)。 编辑:目前的优先事项是让射弹工作。 我试过SDL_UpdateRect和类似的,但没有任何帮助到目前为止。 编辑#2:所以我创建了一个新的函数,并在地图上调用它,就像它应该做的那样。 但是现在我得到一个奇怪的输出:http: //youtu.be/8piWyjfDgbI

通过种子程序sidescroller世界genalgorithm

我试图通过使用种子重新创建一个程序侧滚动世界genalgorithm,我发现我自己试图解决一个特定的问题。 种子生成适用于体素类游戏,但似乎稍微不适合生成随机放置的不同宽度的精灵 这是一张解释问题的图片: 假设我在screen-2加载游戏,我会在例如坐标100和0之间,种子函数会告诉我在坐标100和0之间有一大块山的精灵要渲染,其中心在于坐标区间[0,100](精灵的中心是图片中的粉色点) 假设我正在从坐标300加载游戏,就像在屏幕1中那样,种子function将不能识别那里的山形精灵的存在,尽管其中的一部分在两者之间的间隔中仍然可见例如[250,350] 一个简单的解决scheme是从种子函数中抽取包括游戏中最大尺寸的对象在内的间隔,由于许多对象只覆盖了屏幕的一小部分,这当然是非常低效的。 这类问题一般如何解决? 基于种子的algorithm是否不适合这个特定的项目? 如果是这样的话,那么可能是一个合理的select?

带有3D对象/环境的Unity sidescroller。 我应该创建一个2D或3D项目?

我正在寻找一个侧面卷轴,其中相机和所有的物体只能在x和y方向移动。 但是,我将把所有的对象和环境作为实际的3D模型。 创建2D项目并使用3D模型更好吗?还是应该创建3D项目并混淆脚本以允许物体和摄像机的x / y移动? 还是不重要?

处理2D游戏中的玩家/背景移动

假设你有你的animation角色由玩家和2D世界(如旧的2D横向滚动游戏)控制。 当用户在键盘上按右时,背景被移到右边。 如果path总是水平的,这很容易做(x坐标的增加/减less)。 但是,假设path是一个多边形链。 我的问题是: 你如何移动背景? 如果使用box2D等物理引擎管理游戏对象,如何移动背景? 注意。 我想问的是,如何在侧卷轴上移动2D角色? 例如,请考虑以下path: A———B C'——–D' \ \C__________D 从A开始,水平移动到B,然后对角移动到C,然后水平移动到D OR,从B跳到C'并继续到D'等等。

使用照明方法在2D游戏中创建雾的视图

我正在用Unity创建2D侧面滚动游戏,我想添加玩家进入山洞的function,然后全部变暗,玩家打开闪光灯,这样玩家可以看到四周(有限范围) 我已经通过将所有对象颜色设置为黑色来创建该对象,并且如果光线正在接触对象,则对象颜色将变为白色,但问题是,如果只有一点光线触摸对象,则整个对象颜色将变为白色(没有渐变或类似的阴影) 所以我的问题是 有没有任何建议或其他方法来解决这个问题?

在Sega Genesis硬件上为Side Scroller生成2D地形?

我正在研发具有8Mhz摩托罗拉68000 CPU的世嘉Genesis。 任何想法如何生成一个侧滚轮实时快速和体面的二维瓷砖地形? 游戏将根据玩家滚动的方向产生新的列或行。代必须是确定性的。 相同的种子价值将产生相同的地形。 游戏的风格将像刺猬索尼克一样的平台。 最大的大小应该是1024 x 1024大小,但小一些也可以。 不必每一帧都要计算一个列或一行,只需要一个新的。 如果玩家每帧移动1个像素,则每8帧只需要一个新的列。 我正在寻找能够满足硬件的内存和CPU限制的algorithm。

创建侧滚动级别的最佳方法? – Cocos2D

我正在寻找使用Cocos2D开始我的第一面滚动项目,但我很好奇。 什么是创建你的水平的首选/最好的方法? 对于大的水平来说,我看到手很费力,是否有一种更直观的方式来做这件事,因为猜测所有事情的坐标似乎都是错误的。 这就是为什么我在这里向你们学习。 所以任何帮助将不胜感激,谢谢。

碰撞检测/响应在基于向量的水平

我有一个2D侧滚动器的级别存储为向量(即一堆线),看起来像这样: 我如何检测到我正在与其中一条线发生碰撞,并作出相应的反应(例如,滑下斜坡,或者静止在平台上)? 我们可以假设玩家使用AABB。

我可以从A跳到B吗?

我正在为我的侧面卷轴做一些基本的AI,我需要知道一个AI单元是否可以通过跳转来从A点到达B点。 我的角色的飞行轨迹是有点不寻常的,因为他们可以在半空中施加力量(例如爵士Jackrabbit 2),所以不同于经典的弹丸轨迹 投掷或发射的射弹将无需推进的path(…)。 …我想我的问题更多的是关于推进弹丸(如火箭)的问题。 为了说明这一点,如果我跳跃并不断按下“左键”(在左端看起来不同,这就是我在空中做一些操纵的地方),这就是我的角色的飞行曲线的样子: 在飞行中施加的力总是平行于X轴,所以如果我保持“左”, F =(-f,0),如果我保持“右”则F =(f,0) 。 他可以像滑雪跳台一样移动: 所以它与简单的抛物线(来源: 维基百科 )的经典轨迹有很大的不同: 为了使它更难,我模拟简单的空气阻力,所以我的角色只能加速到某个最大速度值。 这是通过在相反的行进方向施加一个小的力来完成的: b2Vec2 vel = body->GetLinearVelocity(); float speed = vel.Normalize(); //normalizes vector and returns length body->ApplyForce( AIR_RESISTANCE_MULT * speed * speed * -vel, body->GetWorldCenter() ); AIR_RESISTANCE_MULT是一个常数,在我的情况下等于0.1。 假设我的角色是一个无限小的点。 我不考虑障碍,所以我的问题是这样的… 如何确定(至less是可靠的猜测),给定初始速度V,我应用于跳跃的人物的冲量J =(0,-j) ,重力G =(0,g) ,力F =(+ -f ,0)如果我们真的决定考虑空气阻力 (这是可选的) , 那么在飞行过程中AIR_RESISTANCE_MULT会持续应用,而 这个 […]