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

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


没有发生碰撞

两个物体(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. 读取bin文件,并且按结构体赋值打印

    目标:读取一个bin文件,并且将bin文件中的数据,按字节对齐赋值给结构体,并且打印出结构体的内容 目前思路是简单的先将bin文件数据一次性读到一个数组中,再将数组强制转换为结构体 ] FILE *f ...

  2. thinkPHP的Excel插件

    原文地址 http://www.thinkphp.cn/topic/14005.html 总结的注意事项 1实例化第三方类,要在类名前加\ ,不然引用地址不对. 实现步骤:一:在http://phpe ...

  3. 【【henuacm2016级暑期训练】动态规划专题 L】Civilization

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 给一个森林. 就是由很多棵树组成.. 然后会询问你其中一棵树的最长链. 初始状态的最长链可以用两遍dfs分别找最长路得到. 然后要求 ...

  4. angular-代码段

    重复代码 <div ng-app="" ng-init="names=['Jani','Hege','Kai']"> <p>使用 ng- ...

  5. ValidForm的使用

    1.引入css 请查看下载文件中的style.css,把里面Validform必须部分拷贝到你的css中(文件中这个凝视 "/*==========下面部分是Validform必须的==== ...

  6. 用了一天的时间,linux下expect实现ssh自己主动登录server记,歧视下网上各种抄来抄去残段子

    由于要对客户方的快30个项目进行特别有顺序的重新启动,所以不得不想办法写个脚本,网上看了不少段子.真是残缺的能够. 没有一段是能够正常运行的.我来按顺序记录一下 脚本的本身 使用expect实现自己主 ...

  7. [iOS]字符串转字典

    有点时候,我们json中有post请求的网址,这个时候我们须要把网址字符串转换成body体 字典   放在post请求中 NSString *body = [self.url_C_ component ...

  8. ThinkPHP5.0最最最最最简单实例

    ThinkPHP5.0最最最最最简单实例 一.效果图 二.操作步骤 1.用mysql数据库建立数据库 2.按照ThinkPHP官网的指示装好ThinkPHP5.0 tp5里面的目录结构如下: 3.配置 ...

  9. (四)Hystrix容错保护

    Feign默认是整合了Ribbon和Hystrix这两个框架,所以代码我们在上一篇的基础上进行修改,启动Eureka,service-hello,Feign 所谓的熔断机制和日常生活中见到电路保险丝是 ...

  10. 正则表达式匹配 C++实现 java实现 leetcode系列(十一)

    给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 '.' 和 '*' 的正则表达式匹配. '.' 匹配任意单个字符 '*' 匹配零个或多个前面的那一个元素 所谓匹配,是要涵盖 整个 字符串  ...