Tag: unity3d

Unity中的Encog dll?

我想实现Encog到Unity。 当我将dll放入资产时,不会发生错误。 我甚至可以创建没有错误的新神经网络。 当我将XOR示例粘贴到脚本时,我得到如下所示的错误。 我用谷歌搜索它与Encog使用Unity单体行为中未涵盖的部分C#有关。 有人说我应该使用net framework 3.5构建的dll,但是当我尝试在visual basic中加载解决方案文件时,我得到了另一个类似于此的错误: Error 1 The type or namespace name ‘Tasks’ does not exist in the namespace ‘System.Threading’ (are you missing an assembly reference?) C:\Programs\Unity\ncog\encog-dotnet-core-3.2.0\encog-core-cs\Util\Concurrency\Job\ConcurrentJob.cs 24 24 encog-core-cs 我尝试修改encog源中包含的build.bat,以便它使用3.5框架的路径:C:\ Windows \ Microsoft.NET \ Framework64 \ v3.5 \ msbuild(这个编译没有错误/警告)但是当我尝试使用这个dll在统一中,我得到的同样的错误与dll normaly分布在encog网站上。 尝试使用XOR安全示例脚本时出现统一错误 Internal compiler error. See the console log for more […]

我可以在没有Visual Studio的情况下编译DLL吗?

我的目的是使用C ++库 ,使用SWIG ( alt。链接 )将其包装为C#,并将C ++和C#组件编译为Unity 5的DLL。(C#DLL为Unity提供了与C ++ DLL的接口。) 据我所知,编译C ++和C#DLL总是需要Visual Studio(或VS之类的msbuild工具)。 但是,我目前正在努力安装VS,这让我质疑这个假设。 是否还有其他选项可以在Windows上编译Unity-ready DLL? (即使我安装了VS,我仍然很想知道。)

获取Google广告ID并限制广告

我正在构建Unity Android应用程序,并查看一些广告。 我们正在考虑的其中一项服务需要我的Google广告ID并限制广告状态才能进行服务器到服务器转换跟踪。 问题是我不确定如何在Unity中获得这些值中的任何一个。 好像我需要某种forms的插件? 我已经为AdMob和Chartboost实现并使用了谷歌广告服务,但尽管我已经知道这些插件都不能让我访问我需要检索上述值的java调用。 所以我想我不确定如何访问我需要的数据。 我对于在游戏中添加更多插件犹豫不决,因为它们变得越来越难以管理。 如果我理解正确,我认为应该有办法通过Unity的库访问java,但我没有丝毫怎么做。

Unity Disorted Audio

我在Unity中播放音频剪辑时遇到问题。 当发现播放器但声音失真时,我希望我的鲨鱼产生“咬”声。 其余代码按预期运行。 我可以提供代码审查和建议吗? 我可能做错了什么(在调用音频源播放时)? using System.Collections; using System.Collections.Generic; using UnityEngine; public class Shark2Controller : MonoBehaviour { public Transform leftPoint; public Transform rightPoint; public float startSpeed; public float swimSpeed; private Rigidbody2D myRigidBody; public bool swimmingRight; public float superSpeed; public Transform puntoA; public Transform puntoB; public LayerMask whatIsPlayer; public bool playerDetected; private Animator myAnim; public AudioSource […]

使用WPF或Unity进行简单的游戏开发

WPF提供了一些与动画一起使用的惊人function。 我想知道它是否适合开发像Istrolid这样的简单游戏。 我相信WPF可以在Istrolid中复制几乎(如果不是全部)动画。 我很擅长WPF,但我还没有开始使用Unity。 WPF在我的情况下更好,还是值得花时间学习Unity来开发这样简单的游戏。

按钮单击无法正常工作

我不知道我做错了什么2D项目有两个对象。一个有RigidBody2D和BoxCollider2D组件。 第二个对象只有BoxCollider2D 。 当按下按钮Object1落在Object2并且再次Destroy和Instantiate Object1时,底部有一个按钮。 但是当Object1 Instantiate然后单击按钮不起作用。 错误就像这样: The object of type Rigidbody2D has been destroyed but you are still trying to access it. Your script should either check if it is null or you should not destroy the object. 对象1: 对象2: 按钮单击: 对象1脚本: public class Object1 : MonoBehaviour { public static Object1 instance; [SerializeField] […]

Unity游戏服务validation失败

我从https://github.com/playgameservices/play-games-plugin-for-unity下载玩游戏统一插件 并在Android设备中运行MainScene 然后单击“validation”按钮,弹出谷歌播放对话框.. 最后,Social.localUser.authenticated始终为false。 然后我在下面的场景中绘制调试信息: Createing platform-specific Play Games client Creating real IPlayGamesClient Entering state:ShutdownState ShutdownState.OnStateEntered:Defaulting to no-op. Starting Auth Transition.Op SIGN_IN status ERROR_NOT_AUTHORIZED PlayGamesHelperObject.OnApplicationPause True PlayGamesHelperObject.OnApplicationPause False PlayGamesHelperObject.OnApplicationPause True PlayGamesHelperObject.OnApplicationPause False Invoking user callback on game thread 我尝试这些方法来修复下面,但我仍然无法成功登录 方法1在google play游戏控制台中,添加测试用户和活动alpha,beta测试。 Method2在统一中,创建android密钥库并签名 密钥库是一个签名文件,用于签署您的apk。 当您创建开发版本时Unity不会签署apk。 您只需要一个项目的Keystore文件。 该文件是您的签名。 创建一个这样做: 在发布设置中,选中“创建新密钥库”框。 单击“浏览”并选择要存储文件的位置。 它应该位于中心位置,因为它与您的项目并不真正相关。 设置文件的保护密码并确认。 从“密钥别名”下拉列表中选择“创建新密钥”。 应打开一个窗口,您必须填写有关您的组织/个人的个人数据。 顶部的别名只是密钥库的名称。 如果您有多个身份,请确保选择有意义的名称。 […]

Unity3D – 获取组件

在Unity3D C#获取组件的最简单方法是什么? 我的情况: GameObject gamemaster. //C# script MainGameLogic.cs(attached to gamemaster). A boolean backfacedisplayed(in MainGameLogic.cs). A function BackfaceDisplay()(in MainGameLogic.cs). 另一个C#脚本FlipMech.cs ,我需要从MainGameLogic.cs检查if(backfacedisplayed == TRUE) ,我将从MainGameLogic.cs调用MainGameLogic.cs BackfaceDisplay() 。 我怎么能在C#中做到这一点? 在js是相当直接的。 在FlipMech.js : //declare gamemaster var gamemaster:GameObject; 然后我需要的地方: if(gamemaster.GetComponent(MainGameLogic).backfacedisplayed==true) { gamemaster.GetComponent(MainGameLogic).BackfaceDisplay(); } 但似乎C#比这更复杂。

始终在播放器前显示对象

我陷入了这个简单的问题,但无法理解为什么我无法控制它。 我有这些代码行在播放器的某个旋转处在我的播放器前面显示我的canvas对象(代码中的camRotationToWatch对象名称)。 if (camRotationToWatch.transform.localEulerAngles.x >= navigationCanvasXMinmumLimit && camRotationToWatch.transform.localEulerAngles.x <= navigationCanvasXMaximumLimit) { if (!navCanvasHasDisplay) { navigationCanvas.SetActive(true); //Debug.Log(camRotationToWatch.transform.forward); Vector3 navCanvas = camRotationToWatch.transform.position + camRotationToWatch.transform.forward * navCanvasDisplayDistanceFromCam; navCanvas = new Vector3(navCanvas.x, 2f, navCanvas.z); navigationCanvas.transform.position = new Vector3(navCanvas.x, navCanvas.y, navCanvas.z); navigationCanvas.transform.rotation = camRotationToWatch.transform.rotation; navCanvasHasDisplay = true; } } else { //navigationCanvas.SetActive(false); if (locationPanel.activeSelf == false && infoPanel.activeSelf == false) […]

Unity中的c#中的属性(Unity5) – 可以避免支持变量

使用Unity5(很难确切知道正在使用的c#/ Mono / .Net的版本),我们的属性完全如下: private int _distance; public int Distance { private set { _distance = value; controls.Blahblah(_distance); } get { Debug.Log(“hah!); return _distance; } } 但考虑一下c#中的新“自动属性” ,它们似乎就像 public int Distance {get; set;} // ? 但我不知道如何在getter / setter中“做点什么”? 或者换句话说,当“手动”制作一个属性时,有没有办法自动生成支持变量(以及方便 – 保持私有)? 要重复,因为这被标记为重复,我怎么能在getter / setter期间在自动Property idiom中“做东西”…… ……或相反…… 如果您编写自己的“手动”属性,如何隐藏,摆脱或自动供应支持者? 请注意,当然您或其他程序员可能会意外触摸_underscore支持变量: 是否有任何方法可以避免这种情况?