有人可以解释为什么我的Unity.reflect不起作用

时间:2018-03-21 03:37:35

标签: c# unity3d

我正在做一个2d自上而下的子弹地狱游戏,并希望得到一些帮助让子弹从墙上反弹。变量运动是子弹矢量2,标签边界是赋予墙壁的标签。我从不同的测试中知道,触发器的工作方式应该如此(因此当它撞到墙壁时它会激活),但是机芯不会反射,它会继续向同一方向移动。

编辑:我将vector3.reflect更改为vector2,但仍无法正常工作。

#include <iostream>
#include <string>
#include <vector>

void getSums(int sum, std::vector<std::string>& results, std::string currSum) {
    if (0 == sum) {
        results.emplace_back(currSum.c_str());
        return;
    } else if (sum < 0) {
        return;
    } else {
        getSums(sum-2, results, currSum+"1");
        getSums(sum-1, results, currSum+"0");
    }
}

std::vector<std::string> getAllSums(int sum) {
    std::vector<std::string> results;
    std::string currSum;
    getSums(sum, results, currSum);
    return results;
}

int main() {
    std::vector<std::string> res = getAllSums(5);
    for (std::string& r : res) {
        std::cout << r << std::endl;
    }

}

1 个答案:

答案 0 :(得分:0)

它可能很简单但是看看使用Vector2.Reflect,因为你正在使用2D来做其他事情。

我发现这篇帖子可能有所帮助。 Unity - how to use Vector2.Reflect()