Tag: unity3d

在Unity中向两个方向旋转门

我在Unity创建了一个开门和关门。 我可以通过调用Interact()打开那扇门。 现在我想创建一个始终远离玩家的门。 就像一个沙龙的门。 如果玩家在房间前面,门会旋转到房间,如果玩家在房间内,则门会旋转出来。 目前我创建了一个bool opensAwayFromPlayer 。 如果这是真的,打开门时应该固定目标旋转。 [SerializeField] private Vector3 targetRotation; // rotation angles [SerializeField] private float duration; // rotation speed [SerializeField] private bool closeAgain; // close the door again? [SerializeField] private float waitInterval; // close the door after x seconds [SerializeField] private Vector3 pivotPosition; // Vector3 of the pivot [SerializeField] private bool […]

Unity的Android插件给出了错误

我正在做一个测试应用程序,以了解我们如何通过插件使用java代码统一使用java代码。 我在eclipse中使用Android 3.2创建了一个简单的Android Activity类。 package com.control.unitycontrol; import com.unity3d.player.UnityPlayerActivity; import android.os.Bundle; import android.util.Log; import android.widget.Toast; public class MainActivity extends UnityPlayerActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.d(“TEST”,”Foo method is called is called 1111″); } public static void foo(){ Log.d(“TEST”,”Foo method is called is called 2222″); // this method is never called }} 这是我的AndroidManifest.xml 根据教程,我将classes.jar复制到我的libs文件夹,然后将其添加到我的类路径中。 […]

Unity3D – 我可以使用.NET 4.5程序集作为外部库吗?

我想使用在.NET Framework v4.5中实现的一组function。 因为Unity3D适用于Mono运行时(相当于.NET 3.5),我认为使用.NET4.5程序集作为外部插件。 可能吗? 如果可能的话,哪个运行时将用于这个库 – Mono或程序集的目标运行时(在我的情况下是.NET 4.5)?

无法让我的相机正确限制其旋转

在我的游戏中,我想要夹住玩家的相机,这样就无法进行前翻或后翻。 我想将x轴夹在-75和50之间,但它不起作用。 每当我在我的代码中添加一个钳位时,相机就不希望将它的旋转距离输入的距离为0,0,0.GetAxisRaw表示鼠标正在移动。 我已尝试将if语句用作手动钳位,但如果我切换极性,它会不断地保持在0,0,0或恒定地保持在-75,0,0。 我已经尝试更换相机,以防它与其设置相关但没有任何变化。 我不想发布这个,因为它不应该这么难,但我已经花了好几天时间而且我没有选择; 任何和所有的想法都非常感激。 我使用Visual Studio作为我的编辑器。 using UnityEngine; public class PlayerMove : MonoBehaviour { Rigidbody rb; public Camera cam; public Transform camTrans; Vector3 movement; Vector3 rotation; public float sensitivityX; public float sensitivityY; public float playerSpeed; public float jumpForce; float forward; float sideways; void Start() { rb = GetComponent(); } void FixedUpdate () […]

Unity3D在Android清单文件中插入多个MAIN活动

我有Unity3D项目,里面有多个插件。 我使用TapJoy,Prime31,Facebook,Native和其他插件。 所有这些都需要在Android清单文件中具有MAIN活动。 那是不可能的,我开始寻找解决方案。 经过长时间的研究,我发现我可以inheritance所需的java活动类并使其成为MAIN,从中,我应该调用super方法来实例化我需要的超类。 (许多论坛都有相同的答案)。 我的问题是:我如何能够通过仅对一个子类化并使其成为MAIN活动来使所有插件“MAIN”? 我怎样才能使所有活动初始化,好像它们是主要的? 也许我可以在C#中做到这一点而不定义我自己的子类? 任何帮助都是极好的。 这个问题几天来一直令人头痛。

GameObject不允许多个孩子

所以基本上我正在尝试将一堆子项添加到GameObject中。 父SnakeHead称为SnakeHead而所有其他SnakeBodyParts称为SnakeBodyParts public class GameController : MonoBehaviour { public GameObject snakeHead; public GameObject snakeBodyPart; public List snakeBodyParts; void Start() { snakeBodyParts = new List(); Instantiate(snakeHead); for (int i = 0; i < 4; i++) { var newObj = Instantiate(snakeBodyPart); newObj.transform.position = new Vector3(snakeHead.transform.position.x, snakeHead.transform.position.y – (i + 1), 0); newObj.transform.SetParent(snakeHead.transform); snakeBodyParts.Add(newObj); } } } 所以它像snakeHead.transform.childCount;一样snakeHead.transform.childCount; […]

IBM Watson会话服务错误:无法从“方法组”转换为“conversation.onMessage”

我试图统一运行IBM Watson 会话服务 ,然后在这里,代码片段 private Conversation m_Conversation = new Conversation(); private string m_WrokspaceID = “xyz”; private string m_input = “help”; // Use this for initialization void Start () { Debug.Log(“user : ” + m_input); m_Conversation.Message(OnMessage, m_WrokspaceID, m_input); } void OnMessage(MessageResponse resp, string customData) { foreach (Intent mi in resp.intents) { Debug.Log(“intent : ” + mi.intent […]

使用C#从REST中的REST Api检索数据而不会出现滞后或抖动

我每隔5秒使用C#脚本调用REST。 但问题是应用程序每10秒钟会停滞一次(InvokeRepeating)并等待服务器响应,然后在滞后后给出结果。 如何克服这个问题? 我需要实时访问特定的行,以便检索更改而不会出现任何延迟。 以下代码片段用于读取REST Api using UnityEngine; using System.Collections; using System.Net; using System.IO; using System.Collections.Generic; using System.Linq; using System; using Newtonsoft.Json; using Newtonsoft.Json.Linq; public class Rows { public string description ; public float Efficiency; public bool IsConnected; public string Lastconnection; public float MTBF; public float MTTR; public string Name; public float Speed; public float […]

统一在最小和最大距离之间旋转

我试图让对象拖动成为可能。 这个对象只能旋转那么多。 (Similair到门口)。 这是编辑的代码,用于旋转有效的对象。 我有2个用于maxrotation和minrotation的载体。 只要用户拖动可交互对象,就会调用此代码。 (比如更新但仅在拖动时) if (GestureManager.Instance.IsNavigating && HandsManager.Instance.FocusedGameObject == gameObject) { //speed and navigiation of rotation float rotationFactor; rotationFactor = ManipulationManager.Instance.ManipulationPosition.y * RotationSensitivity; totransform.Rotate(new Vector3(rotationFactor, 0, 0)); } 如果我能在这里使用if语句会很棒。 我尝试了很多东西,但它仍然没有用。 如上所述,此处的代码粘贴有效。 对象应该是可拖动的,但只能达到某个点。 totransform是将被轮换的变换 任何想法都会很棒,也非常受欢迎。 亲切的问候。

在Unity3D中显示一个对象几毫秒

我正在使用Unity3D来设置一个“实验”(大学相关),我设计了一个迷宫,用户接收潜意识提示(屏幕上显示的可视箭头),它应该只显示14毫秒然后消失。 我已经设计了3D迷宫并且它真的很小(我不需要任何花哨的实验),因此当我用第一人称控制器导航时我可以达到1000fps(帧速率不会有问题)。 我打算用C#编写脚本,以便在触发某些对象时显示这些箭头。 我想知道在Unity中是否可以只用几毫秒(在我的情况下,14ms)显示具有可接受精度的对象……如果是这样,我应该使用哪种方法? 有类似问题的任何想法或以前的经验吗? 先感谢您