问题标签 [unity2d]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Unity2D:Sprite.Create 不能满足我的需要
我最近遇到了 Sprite.Create 函数的问题。我正在使用 C# 编写一个带有可以拉伸和更改大小的边框的框,但我不希望白色边框拉伸。我尝试创建自己的纹理,当我打印出一些像素的值时,看起来效果很好。但是当我将纹理用于 Sprite.Create 时,它不起作用,只是显示了一个灰色方块。这是代码:
scale 变量是一个 Vector2,我可以在绘制精灵之前更改它,这样它就不会拉伸。谢谢你的帮助。我正在使用 Unity 5,如果这与它有关的话。
c# - 运动有问题
在我的游戏中,我有一个吃豆人风格的竞技场。边缘对撞机放置在每条线上。现在,对于我的播放器的移动(WASD 风格),我最初使用了 transform.Translate。这给了我希望我的球员拥有的最好的流畅运动。你们大多数人都知道,这使得边缘碰撞器无效,因为玩家只会在边缘上变换它的位置。为了解决这个问题,我使用 rb.AddForce(new Vector2(Input.GetAxis("Horizontal") * speed, Input.GetAxis("Vertical") * speed); 代替,但我真的不喜欢玩家如何移动,因为即使您松开 WSAD 键,它仍然会移动,并且会发出更多的加速移动而不是计算移动。
有谁知道解决这个问题的方法?流体 WASD 运动,如 transform.Translate,但不通过边缘对撞机。
我很感激!
c# - Input.GetTouch(0).deltaPosition 在轴上移动得“更快”
我有一个相对于手指位置移动精灵的功能。我的意思是手指可以触摸屏幕的任何部分并移动玩家精灵,而无需将精灵移动到手指位置。
我遇到的问题是它移动精灵的速度比实际手指位置快:
假设我的手指在 (0,0),精灵在 (10,10);我将手指在 X 轴上移动 10 个单位,我希望精灵在 (20,10) 处移动,但实际上它移动的单位比预期的要多。假设它移动到(25,10)。
我认为这与 deltaPosition 值有关。这是函数(参数中的变换是我正在移动的精灵的变换):
c# - 在运行时根据该组件的背景颜色更改文本组件的颜色
我想知道是否可以根据运行时的背景颜色更改文本组件的颜色,例如“健康”。背景颜色并不是指组件创建时的固定背景颜色,而是指位于文本组件本身后面的实际颜色。这样做的目的是让文本在放置在较深或较浅的阴影前面时进行适当的对比 - 理想情况下,我只需要根据背景颜色将文本颜色更改为白色或黑色。
我能想到的唯一方法是将 Collider2D 组件附加到文本上,每当检测到较暗的阴影时,它就会调用 OnTriggerEnter2D 方法。为了实现这一点,我想为那些需要调整以实现更合适的对比度级别的场景图层分配标签。我在下面附上了我提出的解决方案,尽管由于碰撞的性质,我认为它不可行,但我欢迎任何建议。谢谢。
c# - 在 Unity 2D 中将玩家移向点击点
我正在制作一个 2D 指向和点击游戏,我希望玩家向点击的对象移动。这是我将玩家移向门的代码:
}
问题是玩家每次点击只移动一个像素。如果门被点击,我希望玩家一直移动到门。
unity3d - Grid Like Snake 系统
全部。我想要完成的是一个简单的蛇游戏,其中每个尾部位置都遵循前一个尾部位置。但是由于某种原因,瓷砖沿对角线跟随先前的尾部位置,而不是像头部那样在网格系统中移动。这是我的代码
头部运动课
...所有的方向都是一样的,我只是把这个包括在内,这样你就可以看到我的头部运动是如何运作的。
尾巴运动课
也只是为了澄清,我知道我正在使用 Vector3,当我应该将 vector2 用于 2D 时,但它现在运行正常,我稍后会更改它。
c# - 创建一个障碍物,玩家需要在其中做出反应才能继续前进
我对 Unity 2d 很陌生。如何在 Unity 2d 中创建一个问题作为移动角色的障碍?
请注意,问题的数量最多可达 5 个,随着角色的前进而出现,并且还会有玩家选择最多移动的选项。如果他选择了错误的选项,最终的结果可能会算在最后,或者他可能会失去生命。