总结自己在学习中遇到的问题。

记录问题,帮助他人,有什么不正确的地方欢迎指正


没有发生碰撞

两个物体(Plane和Cube)都加入了collider,当中一个加入了rigidbody,应该会产生碰撞,但是当执行时,cube总是掉下去.非常纳闷,
经过细致研究。发现 Plane和Cube的Transform.position Y 同样,也就是两个物体的Y坐标一样,两个物体是相接触的,所以没有发生碰撞

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU3VuMTQwNA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

==================================================================================================================

Plane与rigidbody

Compute mesh inertia tensor failed for one of the actor's mesh shapes! Please change mesh geometry or supply a tensor manually!

在Plane上加入了rigidbody,于是弹出这个错误。

解决的方法。给mesh collider 的Convex 參数打上勾.或者改变collider,用薄的box来取代plane




==================================================================================================================

Screen.showCursor = false没用

在Game视图下不起作用了,刚開始还起作用的。
解决方法:公布游戏。在游戏里就看不到鼠标了(可能是视图的原因。也可能unity存在bug)

==================================================================================================================

在摄像机里找不到物体

观察相机的XYZ坐标,与物体的XYZ坐标。

是不是重合.看Y看是不是在同一个高度。看Z。看是不是距离太远,或者物体在相机的背面,看X,看物体是不是在相机左側或右側太偏了

一般相机的默认position(0,1,-10)
==================================================================================================================

Object reference not set to an instance of an object

报错显示在这行: Ray ray1 = Camera.main.ScreenPointToRay(Input.mousePosition);
经检查 Input.mousePosition 不为null ,我并没有引用null 对象啊。非常奇怪。
原因(引用了NULL对象):我之前把默认的MainCamera删掉了,自己加入了Camera,而这行代码是找主相机,所以没有找到
解决的方法:把camera属性右側Tag改为MainCamera

==================================================================================================================

"SetDestination" can only be called on an active agent that has been placed on a NavMesh.

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU3VuMTQwNA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

原因:没有bake,或者bake的不正确
解决方法:让对象自己主动寻找路径,使用Navigation烘焙地图中不可移动的对象
1.打开主菜单Windows->Navigation.  在Hierarchy中选上全部障碍物,在Navigation窗体,将Navigation
Static打上勾
Navigation Layer设置为not
walkable
注意:烘培时不要选择地形Terrain
2.Component->Navigation->NavMeshAgent给角色加入NavMeshAgent组件
3.在Navigation窗体中点击 Bake 烘培
4.改动Update.
NavMeshAgent nAgent=gameObject.GetComponent<NavMeshAgent>();

Debug.Log(nAgent);//观察是否获取到了对象

nAgent.SetDestination(hit.point);

注意:bake地图会非常慢。假设不是必须,不要使用这样的方式

unity3D常见问题的更多相关文章

  1. unity3d热更新插件uLua学习整理

    前言 IOS不能热更新,不是因为不能用反射,是因为System.Reflection.Assembly.Load 无法使用System.Reflection.Emit 无法使用System.CodeD ...

  2. Unity3D学习笔记——NGUI使用常见问题

    一:在Scene中右键创建UI组件. 首先要确定NGUI中的红框能看见,我的就是之前无法现实红框,所以右键无法新建UI组件, 原因是:UIPanel没启用. 启用方法: 启用前和启用后NGUI界面对比 ...

  3. KSFramework常见问题:Excel如何进行SVN协作、差异比较?

    Excel如何进行SVN协作.差异比较? 嗯,这是一个令人困惑的问题.游戏开发.程序开发时,使用Excel可以添加文档.注释.图标.批注等等各种辅助信息: 但是Excel是非纯文本格式,在使用SVN. ...

  4. Unity3D占用内存太大的解决方法

    原地址:http://www.cnblogs.com/88999660/archive/2013/03/15/2961663.html 最近网友通过网站搜索Unity3D在手机及其他平台下占用内存太大 ...

  5. Unity3D内存释放

    Unity3D内存释放 最近网友通过网站搜索Unity3D在手机及其他平台下占用内存太大. 这里写下关于Unity3D对于内存的管理与优化. Unity3D 里有两种动态加载机制:一个是Resourc ...

  6. Android项目实战(三十九):Android集成Unity3D项目(图文详解)

    需求: Unity3D 一般用于做游戏 而且是跨平台的.原本设计是Android 应用端A(原生开发)进行一些业务处理,最后由A 打开Android 应用端B(Unity3D 游戏开发)进行游戏操作. ...

  7. 【Unity3D技术文档翻译】第1.8篇 AssetBundles 问题及解决方法

    上一章:[Unity3D技术文档翻译]第1.7篇 AssetBundles 补丁更新 本章原文所在章节:[Unity Manual]→[Working in Unity]→[Advanced Deve ...

  8. Unity3d项目入门之打Apk包

    ②结合Android Studio编译器打安卓包 在安卓官网下载AS,按照步骤正常安装编译器完毕,运行AS,点击右下图的图标打开SDK Manager, 选择下载安装相关的“SDK Platform” ...

  9. Unity3D用户手册

    Unity Manual 用户手册 Welcome to Unity. 欢迎使用Unity. Unity is made to empower users to create the best int ...

随机推荐

  1. C++操作符重载总结operator(小结 更新ing)

    操作符重载一个原则是:被操作的数据类型中 至少有一个是自定义的类型(使用class定义类),如果被操作的变量都是基本类型,那么就不能定义操作符重载. 1.如果重载了new,则必须重载delete,因为 ...

  2. crm 系统项目(二) admin 后台操作表格

    crm 系统项目(二) admin 后台操作表格 1. app下创建 templates  运行的时候 先找全局的templates——> 按照app的注册顺序找templates中的文件 2. ...

  3. POJ 3744

    矩阵快速乘求概率,不难.但有注意的一点是,一定要注意地雷连着的情况,一旦出现两个雷相邻,就必定为0了. #include <iostream> #include <algorithm ...

  4. [Javascript] Delegate JavaScript (ES6) generator iteration control

    We can execute generators from generators, and delegate the iteration control with the yield* keywor ...

  5. 博客迁移到reetsee.com

    正如上一篇博客所言.眼下CSDN的博客已经基本完毕它的使命了.感谢CSDN带给我的全部美好回顾. 如今我想尝试一下自己维护一个博客,所以博客的全部内容都迁移到了reetsee.com. 以后博客更新会 ...

  6. Java多线程之~~~线程安全容器的非堵塞容器

    在并发编程中,会常常遇到使用容器.可是假设一个容器不是线程安全的.那么他在多线程的插入或者删除的过程 中就会出现各种问题.就是不同步的问题.所以JDK提供了线程安全的容器,他能保证容器在多线程的情况下 ...

  7. Creating a Custom Page Layout in SharePoint 2013

    Creating a Custom Page Layout in SharePoint 2013 In my last article, I documented how to create a Ma ...

  8. BAT 解密(四):配置中心、服务中心、异步技术细节

    在系列文章的第二篇文章< BAT解密(二):聊聊业务如何驱动技术发展 >中我们深入分析了互联网业务发展的一个特点:复杂性越来越高.复杂性增加的典型现象就是系统越来越多,当系统的数量增加到一 ...

  9. c#.net 获取时间日期年月日时分秒生成自动文件名格式

    下面是日期和时间的各种方法,转换为字符串. 如果把输出的格式改下就可以做类似的文件名了,例如:2016010110101224356.doc  c#用DateTime.Now.ToString(&qu ...

  10. 数字游戏(string的sort的应用)

    题目描述 牛牛举办了一场数字游戏,有n个玩家参加这个游戏,游戏开始每个玩家选定一个数,然后将这个数写在纸上(十进制数,无前缀零),然后接下来对于每一个数字将其数位按照非递减顺序排列,得到新的数,新数的 ...