小编Pro*_*mer的帖子

在Chrome中打开Unity脚本API参考,而不是在Visual Studio浏览器中内置。

我希望Visual Studio 2015 Unity在Google chrome中打开Scripting API,因为内置的Visual Studio浏览器非常慢,并且每次单击时,Visual Studio都会冻结10秒。

如何在Chrome中打开Unity脚本API参考?

c# google-chrome editor unity-game-engine

1
推荐指数
1
解决办法
1465
查看次数

使用 Android Studio 构建共享 *.so 库的发布版本

我正在为 Android 制作一个 C++ 共享库。我使用 Android Studio 创建了新项目并启用了 C++。

在此处输入图片说明

我还启用了 C++ 11 ans 异常支持。

在此处输入图片说明

新项目已创建,build.gradle并且CMakeLists.text文件。问题是 Adnroid Studio 只生成 *.so 库的调试版本。我也需要生成发布版本。

调试库正在生成

\app\build\intermediates\cmake\debug\obj\\libnative-lib.so

我注意到还有另一个目录在

\app\build\intermediates\cmake\debug\obj\

但它是空的。它没有库的发布版本。

如何强制 Android Studio 构建/编译 *.so 库的发布版本。我把这些图片放在一起,以确保我不会错过任何一步。

使用Android Studio 2.3

c++ java-native-interface c++11 android-studio android-gradle-plugin

1
推荐指数
1
解决办法
2060
查看次数

如何在Unity iTween插件中使用oncompleteparams?

我有代码:

iTween.MoveTo(
gameObject,
iTween.Hash("x",_x,"z",_y, "time", 2.0f, "easetype",
iTween.EaseType.easeInExpo,
"oncomplete", "afterPlayerMove",
"oncompleteparams", iTween.Hash("value", _fieldIndex)
));
Run Code Online (Sandbox Code Playgroud)

但我不知道如何使用oncompleteparams官方手册中没有示例。

如何使用 oncompleteparams ?

c# animation callback unity-game-engine itween

1
推荐指数
1
解决办法
3889
查看次数

如何在Unity3D中完全销毁或完成场景

我正在使用OnGUI函数并在场景中创建按钮.并且一个按钮使用以下代码触发打开的旧场景:

SceneManager.LoadScene (3);
Run Code Online (Sandbox Code Playgroud)

但是当新场景打开时,仍会显示按钮.我怎么能阻止它?

c# unity-game-engine

1
推荐指数
1
解决办法
473
查看次数

如何在Unity中为游戏添加重启功能?

我已经关注并完成了Unity 教程,但是一旦完成教程,就没有提到重启游戏的功能.

除了关闭应用程序并重新打开之外,我将如何添加这样的内容?

c# unity-game-engine

1
推荐指数
1
解决办法
6593
查看次数

如何使光线投射忽略触发器对撞机?

我有一个函数,检查游戏对象是否可以看到另一个游戏对象,而不会阻止其视图:

public bool CheckVision(GameObject target)
{
    RaycastHit2D ray = (Physics2D.Raycast(transform.position, target.transform.position - transform.position, m_VisionRange));
    if(ray.collider.name == target.name)
    {
        Debug.DrawRay(transform.position, target.transform.position - transform.position);
        return true;               
    }
    else
    {
        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

唯一的问题是我不希望它与设置了"isTrigger"标志的碰撞器碰撞; 我希望raycast能够忽略它们.有任何想法吗?

c# unity-game-engine raycasting unity2d

1
推荐指数
2
解决办法
3249
查看次数

从C++本机插件更新float数组

在尝试将数组从C++传递给C#时,我看到了一个非常奇怪的问题.我正在使用Marshal.Copy(具体来说:https://msdn.microsoft.com/en-us/library/a53bd6cz(v = vs1010 ).aspx ).

问题:从C++到C#的float数组NaN在结果数组中产生了一些. (注意:我在Unity游戏引擎的上下文中工作)


示例C++代码:

extern "C" bool UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API getSomeFloats(float** points, int* count) {
        std::vector<float> results;
        std::vector<SOME_TYPE> key_points = <SOME_POINTS>

        for (auto iter = key_points.begin(); iter < key_points.end(); iter++) {
            results.push_back(static_cast<float>(iter->pt.x));
            results.push_back(static_cast<float>(iter->pt.y));
        }

        *points = results.data();
        *count = results.size();

        //<Print results to csv here>

        return true;
}
Run Code Online (Sandbox Code Playgroud)

示例C#代码:

[DllImport("NativePlugin")]
private static extern bool getSomeFloats (ref IntPtr ptrResultItems, ref int resultItemsLength);

private static float[] getFloatArrayFromNative() {
        IntPtr ptrResultItems = IntPtr.Zero;
        int …
Run Code Online (Sandbox Code Playgroud)

c# c++ interop unity-game-engine

1
推荐指数
1
解决办法
2010
查看次数

减慢刚体速度

我添加了基于 的前向力GetAxis ("Vertical")和高达 的速度调节器normal max speed

我还允许“速度提升”,在正常附加力的基础上增加更多的力,最高可达boosted max speed

我遇到的困难是一旦升压期结束就减慢物体的速度

因此,基本上,如果您将速度提升到比正常最大速度更快的速度,并且您无法再进行速度提升,请将物体减慢回正常最大速度。

这是我到目前为止得到的:

    float velocity;
    float magnitude = myRigidBody.velocity.magnitude;
    float vertical = Input.GetAxis ("Vertical");
    if (Input.GetKeyUp(KeyCode.LeftShift)) {
        boost = false;
    }
    if (Input.GetKeyDown (KeyCode.LeftShift)) {
        boost = true;
    }
    if (!boost) {
        velocity = vertical * speed;
        Vector3 force = myRigidBody.transform.forward * velocity;
        if (magnitude + force.sqrMagnitude < normalMaxSpeed) { 
            myRigidBody.drag = 0f;
            myRigidBody.AddForce (force, ForceMode.Impulse);
        } else if (magnitude + force.sqrMagnitude >= maxTrust + …
Run Code Online (Sandbox Code Playgroud)

c# unity-game-engine

1
推荐指数
1
解决办法
2441
查看次数

更改启动屏幕/启动画面颜色和图像

该应用程序本身完全正常.我的问题是,在启动应用程序本身时,屏幕是Unity默认蓝色,大约一小时左右才变为我的第一个场景的黑色.

如何在启动时将此颜色更改为黑色?

c# unity-game-engine

1
推荐指数
1
解决办法
2433
查看次数

附着在GameObject上的粒子系统为粉红色

我正在研究统一粒子系统。

我创建了一个新项目,然后创建了一个空对象,然后向其中添加了粒子系统。由于某种原因,它无法正常工作,您可以看到附件中的图像,以查看发生了什么...

在此处输入图片说明

c# 3d game-development unity-game-engine

1
推荐指数
2
解决办法
1580
查看次数