Questions tagged «2d»

2D是指二维空间,其中的坐标用X和Y值表示。

2
为动态障碍物和玩家造成的障碍寻找路径?
嗨,我正在Unity 5中创建TD,并且在寻路方面需要一些帮助。 我将为我的AI 使用Arons A *寻路,这使我能够使用动态对象并在运行时更新路径。但是,在我的游戏中,我希望玩家能够使用特殊的炮塔来阻挡小兵,这将迫使小兵攻击“障碍塔”而不是到达目的地。 我怎样才能完成这样的事情? 图片更清晰:
11 unity  c#  2d  ai  path-finding 

1
如何在多层2d tilemap中实现光影?
我正在从头开始编写等距游戏,我想知道如何/是否可以添加灯光和阴影。 我到目前为止的代码可以在这里找到,但它应该是不够了解,现在,地图是真/假值的简单3D阵列。这是环境的快照: 如果是单层tilemap,那将是直接的。我可以理解所需的2d中简单的光线投射。 但是,考虑到我的地图具有多个高度级别以及类似洞穴的区域,我真的不知道该如何为它创建令人信服的阴影。也许逐块解决方案是唯一现实的方法?


1
如何使用GLSL片段着色器实现这种波动?
所以我已经实现了反射部分: uniform sampler2D texture; uniform vec2 resolution; uniform vec3 overlayColor; void main() { vec2 uv = gl_FragCoord.xy / resolution.xy; if (uv.y > 0.3)// is air - no reflection or effect { gl_FragColor = texture2D(texture, vec2(uv.x, uv.y)); } else { // Compute the mirror effect. vec4 color = texture2D(texture, vec2(uv.x, 0.6 …


3
如何在基于块的2D游戏中实现遮挡照明?
我想要2D照明可以被游戏中的物体阻挡。我的游戏具有自顶向下的视图,所有游戏对象均由矩形描述。 假设我有一个10x10的世界,我在1x1处放置了一个灯光,并在该灯光周围放置了墙壁。我希望能够看到1x1的光源,但看不到其他任何地方,因为它被墙壁挡住了。 我听说过投射光线有效,但实际上如何运作?


2
将OpenGL原点更改为屏幕左上方时,我应该担心什么?
对于自我教育,我正在使用SDL / OpenGL用C ++编写2D平台引擎。我最初使用sdltutorials.com和lazyfoo.net上的教程从纯SDL开始,但是现在我使用SDL创建OpenGL渲染上下文,然后使用OpenGL函数进行渲染(特别是即时模式,但是我正在学习VAO / VBO) )。我仅将SDL用于接口,音频等。 SDL使用坐标系,其原点位于屏幕的左上角,而y轴的正指向下。在OpenGL中设置正投影可以很容易地做到这一点。 我知道纹理坐标是一个从0到1的右手系统-在渲染之前垂直翻转纹理(好吧,在加载之前翻转文件)会产生可以正确渲染的纹理...如果我正在绘制,这很好整个纹理,但最终我将使用tileset并可以想象问题。 执行此操作时,我应该在渲染方面关注什么? 如果有人提出任何建议,或者他们自己做了建议并指出未来的陷阱,那将是不错的选择,但实际上任何想法都会受到赞赏。
11 c++  opengl  2d  sdl 

3
如何用粒子模拟压力?
我正在尝试在要构建的Unity游戏中使用一组球形粒子来模拟压力。关于此问题的几个注意事项: 目标是用无摩擦的小球填充不断变化的2d空间/空隙。游戏正在尝试模拟将更多物体推入该空间的压力不断增加。 关卡本身一直在从左向右滚动,这意味着如果用户未更改该空间的尺寸,它将自动变小(该空间的最左侧部分将不断在屏幕外滚动)。 我想知道我可以采取什么方法来解决这些问题... 知道何时检测何时有空间要填充,然后将球体添加到该空间。 缩小时,从空间中移除球体。 模拟球体上压力的策略,以便在创建更多空间时它们“向外爆炸”。 我正在考虑的当前方法是使用不断移动的墙,该墙不在屏幕上并随屏幕移动,如下图所示: 。 这个移动的壁会将球体推入并捕获到空间中。至于添加新球体,我将要么(1)在检测到自由空间时复制球体,要么(2)在空间的左侧(壁所在的位置)生成它们-将其余球体推向填补空间。我预见了想法1的问题,因为这可能不会真正产生/模拟压力。想法2似乎更有希望,但是提出了一个问题,即如何为这些新的球形粒子提供生成位置(以及在没有空间的情况下生成它们的后果)。 非常感谢您的智慧!
11 2d  unity  physics 

6
具有2000万个图块的地图会使游戏内存不足,如何避免呢?
在加载额外的巨大地图时,加载方法会在创建新的地图图块实例时抛出内存不足异常。我希望至少在服务器应用程序(如果可能的话,在客户端)上处理整个地图。我应该如何解决这个问题? UPD:这里的问题是,当仍有可用的可用内存时,如何使游戏停止崩溃。至于将地图分成几块,这是一个好方法,但不是我想要的。 UPD2:最初,我去给每个新的tile类实例分配了一个纹理,这就是占用大量内存(也需要加载时间)的原因。现在,它占用的空间减少了大约四倍。多亏了每个人,现在我可以运行巨大的地图,而无需考虑将它们分解成几块。 UPD3:重写代码以查看图块属性的数组是否运行得更快或消耗的内存更少(比相应的图块中的对象属性表示的对象属性要小),我发现不仅花了很多时间去尝试,而且并没有带来任何性能上的改进,并且使游戏难以调试。

4
我应该移动世界还是移动玩家?
我将要开始开发一款侧向滚动游戏,该游戏的目标是在着陆之前在水平轴上尽可能移动。请注意,我不需要再沿水平轴返回。 我正在使用使用OpenGL和Box2d的Android版AndEngine进行开发。 在开始之前,我需要确定一些重要的事情:我应该使用玩家周围的世界来模拟运动还是实际移动玩家并跟随他使用游戏引擎的摄像头功能? 两种方法似乎都有不同的长处和后备,所以我不知道哪种方法最好。例如,什么将使在途中增加电源并具有良好的动画背景变得更容易? 谢谢!

2
如何建立一个世界玩家库存系统?
我遇到了一个尝试在XNA内实施清单系统的问题(这并不重要,可以是任何平台),但是到目前为止。这是我要解决的问题: 我如何才能从世界上获得一件物品(想想当您杀死一个怪物时,它会掉落护甲)并将其放入玩家的库存中吗? 如果库存只是物品清单,从技术上讲,如何在没有上课的情况下将世代钢剑带入玩家的库存中? 我目前有一个项目结构,其中包含一个唯一的十六进制值,一个有多少项目的计数(用于可堆叠对象,如箭头)和一个用于在库存中进行渲染的纹理,以及一些其他不重要的属性(名称,说明等) 。 如果我必须修改现有的项目类以容纳世界位置以及碰撞检测(这不希望该项目掉落到地球上),那将是一个糟糕的设计。 感谢您的考虑!
11 xna  c#  2d 

3
如何实现快速,准确的2D碰撞检测?
我很清楚如何检测两个或多个2D对象是否碰撞,但是我对如何决定是否检查碰撞感兴趣。在以前的项目中,我只是让每个对象都与其他每个对象进行检查(我知道,O(n ^ 2)级的愚蠢程度),并且创建的游戏性不那么流畅。 各种论坛都赞扬四叉树,B树以及您能想到的任何其他种类的树或结构的伟大之处。 确定是否应检查碰撞的最有效结构是什么?


3
自上而下的2d地图:归一化与否?
我是游戏编程的绝对初学者,如果这个问题的表述不当,请注意,这不是我身边的草率行为,而是缺乏游戏编程经验。 我计划编写的游戏将使用自上而下的2D地图作为“世界”。世界可能大于窗口(窗口可以放大或缩小),并且车辆可以位于世界的任何位置(=它不是平铺的地图,空间是“连续的”)。 举例说明:如果世界是1000x1000米的地形,则车辆可能位于(327.31,720.4)米的位置。 我的问题是:内部代表世界的最便捷方法是什么?我可以考虑以下可能性: 什么也不做,像使用物理对象一样使用仪表, 标准化为将世界尺寸定义为代表最大缩放1000米的像素数的像素, 标准化为1,将单词定义为大小为1的正方形 ...但是我敢肯定,可能还会有其他一些/我的一些没有意义。仅仅是我的第一场比赛,我对自己面临的问题并没有清晰的认识,我希望获得一些指导,以做出合理正确的初始选择。 感谢您的时间。
11 2d  maps 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.