《普通家庭》项目遇到的问题和心得总结

2024-03-15 04:08

本文主要是介绍《普通家庭》项目遇到的问题和心得总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这游戏是我自己正在制作的独立游戏,希望到时候能上架…
特意记录一下遇到的问题,以后多半还会遇到,到时候翻看一下本文就好了。

1、3D对话框的实现
解决办法:用插件。

2、单例报空
原因:这个单例继承了MonoBehaviour,不能用NEW去创建实例。

3、animator窗口中点击就报错
解决办法:这个百度搜了半天也不知道错在哪儿,最后重启unity就好了…

4、单例和静态类的取舍
结果:管理类用单例,因为需要引用其他脚本。只存数据的类设为静态类,本来应该读EXCEL或JSON之类的文件,因为项目小,人又懒,所以用静态类来存。

5、反复激活的脚本要注意
Start,Awake方法都只在第一次激活时执行,多次反复激活,并且需要脚本里方法自动执行的,需要用OnEnable方法。

6、第一关做到一半发现现在的结构扩展性不好
解决办法:打算暂停,先研究下结构。

7、MONO没有智能提示了
解决办法:重启无效,关机重启都无效,最后下载了VS。

8、能用VS就别用MONO
原因:在MONO里,写了using,PlayableDirector关键字无效。在VS里,写了using,PlayableDirector关键字也无效,但给了可能原因,仔细一看,using写错了。
我写的using UnityEditor.Playables ,实际上要写 using UnityEngine.Playables。

9、一个未激活脚本A,可以先在别的脚本里修改A里的值,然后再激活A
总结:以前没这么做过,这次实践才知道可以这么做。

10、timeline播放时,人物动画控制器的动画没起效。
总结:所以最好让timeline里的人物动画填满整个轨道,否则空白处就是保持某个姿势不动。

11、发版本时遇到DLL相关问题:But the dll is not allowed to be included or could not be found.
解决办法:选中这个DLL,按图片设置
在这里插入图片描述
12、perfab右下角有个小白块是啥意思?
结论:带小白块的其实是模型文件。好久没考虑过这个问题,给忘了…
今天不但就这个问题在群里问了人,而且还分别右键打开资源所在文件夹,看到系统标注的类型了。
这是预制体
这是模型文件

13、断点调试时显示无法直接启动带有“类库输出类型”的项目。
经历:查了百度,显示要选择单启动项目。然后发现不对劲,带了unity关键字再查,发现一种说法是VStool没装好,我记得我安装时装了的。然后发现在调试菜单下面有一个“附加unity调试程序”…
结论:要先附加到unity,再从unity启动。之前在公司看程序员直接从UE4蓝图编辑窗口启动游戏,以为这里也可以直接启动。但其实VS不是unity内置的编辑器,是不能这么干的。

14、SuperTextMesh插件报错:Coroutine couldn’t be started because the the game object ‘*****’ is inactive!
结论:1、要更改它的text内容,要先确保这个脚本所在物体是激活的 2、在对话框文字显示过程中切换出去,会导致协程出问题,也会报错。
第一个问题要避免很简单,先激活就行了。第二个问题就麻烦了,我不会协程,而且不想也没有那个水平去更改插件的源代码,所以只能搁置。
最后说一句:这个插件真的很好!!

补充:不是任何情况下切换出去都会报错。我是因为有多个对话框,有的激活了,有的没激活,切换时报错。现在试验的结果是,都激活,再切换就不会了…
我是用timeline控制某些对话框的激活与反激活的,结果timeline播放完自动反激活了。于是只好在timeline中把对话框移走,在播完的事件里再激活一次。

再补充:我又试了下在不移走的情况下,反激活物体前先把脚本组件反激活,结果还是不行。最终还是得移走。

15、一个在声明时赋值了的变量,修改初始值后,为什么运行结果没变?
结论:这是一个公共变量,虽然在VS里修改了初始值,但是在unity的inspector面板上初始值并没有改变,运行时是读的这个值。不知道为什么会这样,也许关闭再打开就会改变了吧。

16、timeline中的激活轨道相关
结论:当你要用这个激活轨道反复激活和隐藏某个物体的时候,首先物体脚本里应该是OnEnable才起效。然后注意如果这个物体在激活轨道的末尾,那么最后timeline播完,这个物体还处于激活中。
如果需要播完时隐藏这个物体,可以拖一个空物体到末尾占位置。

17、timeline中的激活轨道相关续
结论:我怀疑timeline不是非常精准,我拖了不少物体到激活轨道,每个只持续一两帧,然后很容易出问题。当我延长他们的持续时间,就没有问题了。

18、导入的动作不能用
结论:把模型拖入场景然后挂动画控制器是不行的,得拖和动作一起的那个模型,就是带了bip01和avatar的那个。感觉纯模型只是用来指定贴图的。

这篇关于《普通家庭》项目遇到的问题和心得总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/810741

相关文章

linux生产者,消费者问题

pthread_cond_wait() :用于阻塞当前线程,等待别的线程使用pthread_cond_signal()或pthread_cond_broadcast来唤醒它。 pthread_cond_wait() 必须与pthread_mutex 配套使用。pthread_cond_wait()函数一进入wait状态就会自动release mutex。当其他线程通过pthread

关于C++中的虚拟继承的一些总结(虚拟继承,覆盖,派生,隐藏)

1.为什么要引入虚拟继承 虚拟继承是多重继承中特有的概念。虚拟基类是为解决多重继承而出现的。如:类D继承自类B1、B2,而类B1、B2都继承自类A,因此在类D中两次出现类A中的变量和函数。为了节省内存空间,可以将B1、B2对A的继承定义为虚拟继承,而A就成了虚拟基类。实现的代码如下: class A class B1:public virtual A; class B2:pu

问题:第一次世界大战的起止时间是 #其他#学习方法#微信

问题:第一次世界大战的起止时间是 A.1913 ~1918 年 B.1913 ~1918 年 C.1914 ~1918 年 D.1914 ~1919 年 参考答案如图所示

用Microsoft.Extensions.Hosting 管理WPF项目.

首先引入必要的包: <ItemGroup><PackageReference Include="CommunityToolkit.Mvvm" Version="8.2.2" /><PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.0" /><PackageReference Include="Serilog

2024.6.24 IDEA中文乱码问题(服务器 控制台 TOMcat)实测已解决

1.问题产生原因: 1.文件编码不一致:如果文件的编码方式与IDEA设置的编码方式不一致,就会产生乱码。确保文件和IDEA使用相同的编码,通常是UTF-8。2.IDEA设置问题:检查IDEA的全局编码设置和项目编码设置是否正确。3.终端或控制台编码问题:如果你在终端或控制台看到乱码,可能是终端的编码设置问题。确保终端使用的是支持你的文件的编码方式。 2.解决方案: 1.File -> S

eclipse运行springboot项目,找不到主类

解决办法尝试了很多种,下载sts压缩包行不通。最后解决办法如图: help--->Eclipse Marketplace--->Popular--->找到Spring Tools 3---->Installed。

vcpkg安装opencv中的特殊问题记录(无法找到opencv_corexd.dll)

我是按照网上的vcpkg安装opencv方法进行的(比如这篇:从0开始在visual studio上安装opencv(超详细,针对小白)),但是中间出现了一些别人没有遇到的问题,虽然原因没有找到,但是本人给出一些暂时的解决办法: 问题1: 我在安装库命令行使用的是 .\vcpkg.exe install opencv 我的电脑是x64,vcpkg在这条命令后默认下载的也是opencv2:x6

十五.各设计模式总结与对比

1.各设计模式总结与对比 1.1.课程目标 1、 简要分析GoF 23种设计模式和设计原则,做整体认知。 2、 剖析Spirng的编程思想,启发思维,为之后深入学习Spring做铺垫。 3、 了解各设计模式之间的关联,解决设计模式混淆的问题。 1.2.内容定位 1、 掌握设计模式的"道" ,而不只是"术" 2、 道可道非常道,滴水石穿非一日之功,做好长期修炼的准备。 3、 不要为了

问题-windows-VPN不正确关闭导致网页打不开

为什么会发生这类事情呢? 主要原因是关机之前vpn没有关掉导致的。 至于为什么没关掉vpn会导致网页打不开,我猜测是因为vpn建立的链接没被更改。 正确关掉vpn的时候,会把ip链接断掉,如果你不正确关掉,ip链接没有断掉,此时你vpn又是没启动的,没有域名解析,所以就打不开网站。 你可以在打不开网页的时候,把vpn打开,你会发现网络又可以登录了。 方法一 注意:方法一虽然方便,但是可能会有

vue项目集成CanvasEditor实现Word在线编辑器

CanvasEditor实现Word在线编辑器 官网文档:https://hufe.club/canvas-editor-docs/guide/schema.html 源码地址:https://github.com/Hufe921/canvas-editor 前提声明: 由于CanvasEditor目前不支持vue、react 等框架开箱即用版,所以需要我们去Git下载源码,拿到其中两个主