unity
文章平均质量分 59
Shadowrabbit
与其解决bug不如先解决发现bug的人
展开
-
unity性能优化方向
如果资源没有加载完成,Instantiate实例化之前会先加载资源,就会拖慢速度,所以我们需要根据配置在加载关卡时预加载这些资源。一个节点更新会导致整个canvas重建,虽然每个canvas占用了一个drawcall,但也要注意不要堆积太多不相关的模块在同一个canvas导致重建频繁。Mono虚拟机在我们释放内存后不会降低内存消耗,即只增不减,避免提高Mono中内存的峰值。一般用于场景和角色,内存会增加1.33倍,注意对UI无效,UI不要开启。太远的物体不渲染,也适用于计算,比如MC的区块机制。...原创 2022-07-18 16:33:24 · 1073 阅读 · 4 评论 -
unity不识别rider的其中一种解决方法
检查unity插件是否因未知原因被禁用了原创 2022-07-03 13:09:51 · 1588 阅读 · 0 评论 -
Unity SDK相关总结
1 安卓相关1.0 Android打包需要jdk,sdk,大概是1.7~1.8的jdk太高的版本可能不行。1.1 Unity Android打包原理Unity大概是构建了一个只有一个MainActivity的原生安卓,然后将C#的代码跨平台转换成java的UnityPlayer类,在Unity工程Plugins/Android下的库文件则会成为安卓工程的库文件。1.2 注意事项/// 1 AndroidManifest.xml,Unity的Bundle Identifier,SDK开发者申请的推原创 2021-11-19 19:23:13 · 5729 阅读 · 0 评论 -
同向法判断某个点是否在三角形内
原理假设有三角形ABC与任意点P, 则如果点P在三角形ABC内时, 满足点P在向量AB,BC,CA的相同侧,即在三个向量的左侧或者右侧。对于向量AB,C点永远在AB的左侧或右侧,所以只要P点与C点同侧,P点就在向量AB的左侧或右侧。对向量AB,AP和向量AB,AC做叉乘运行,可以得到两条垂直向量,若这两条向量同向,则可以证明P,C相对AB同侧对三条边分别计算即可证明P在ABC内。该原理对多边形也适用代码// ******************************************原创 2021-05-12 15:37:07 · 569 阅读 · 0 评论 -
ugui事件传递
问题设想当前有A,B两个同级UI,按钮A在布局B上面,A有点击效果,B有滑动效果,现在需要在A上进行滑动操作时B滑动,并且A仍然支持点击。思路由于ugui默认只有一个UI接受射线并分发事件,导致在A上滑动时,滑动的事件和参数一定会终止于A,我们需要一个机制让事件传递下去,直到我们想要的目标B。实现实现原理也比较简单,我们编写一个组件用于传递事件,在触发ugui的事件时,重新发射一次射线,然后把挂载了这个组件的物体和当前的物体过滤掉,就可以找到我们想要的底层UI物体,把相关的事件再发给这个物体就好原创 2020-09-09 11:25:33 · 709 阅读 · 0 评论 -
unity ugui剧情文本渐隐弹出实现
效果galgame中很常见的文字弹出加渐隐出现的动效,这个动效没办法交给美术做。思路Text作为一个整体,没有办法获取到其中的任意一个字符,成了最难突破的地方,只能把Text组件作为整体来控制,当然N个Text组件,每个控制一个字符倒是也能实现,稍加一些优化简直是活字印刷术。但这种方法效率实在太差了,没办法采用。放一张图,看一眼大概就知道核心思路是什么了。![在这里插入图片描述](https://img-blog.csdnimg.cn/20200821141612400.png#pic_cen原创 2020-08-21 14:24:07 · 1011 阅读 · 0 评论 -
转盘游戏实现
效果思路1.轮盘的移动方法1:3行的转盘上最多同时出现3+1=4行元素一开始我使每一列4个元素同时向下移动,某个元素移动小于下方界限时,将其移动到最上方看不见的地方,这样实现循环移动。这个方法可行,但遇到大小不同的元素时,渲染层级出现问题。故采用方法2:使整列的节点向下移动,移动1个元素的标准高度后还原,并将其子元素中的sprite向下传递,最上方的元素传入新数据2.停止转动...原创 2019-09-17 20:43:42 · 507 阅读 · 1 评论 -
Unity VR中实现播放3D电影
3D电影的原理今天要在unity中借用steamVR观赏3D电影,之前没有留意过3D电影相关,完全没有思路,于是先百度了一下3D电影的原理.很久之前看过几次3D电影,那时候比较新奇,当时中途摘下过红蓝色的3D眼镜,屏幕大概是这个效果,发虚的感觉.现在我们知道,实际上有两台放映机以一定的偏差,模仿人的双眼,把同一片源播放了两次,而3D眼镜的作用就是让左眼看其中一个影像,右眼看另外一个影像,最...原创 2019-08-15 16:08:39 · 6879 阅读 · 3 评论 -
Unity打包编译后材质丢失
今天项目在编辑器模式正常,编译后丢失了材质.我们设置编译后输入日志.在编译后的日志里发现是Shader.Find方法报空指针异常.经过一顿面向百度编程,发现Unity打包时发现这个shader没有被引用,自动就给删了.所以这玩意在编辑器模式下Van♂全正常API文档里也有说明,并且给了解决方法:1.想办法在场景中引用这个shader2.将shader放入Resources文件夹内,...原创 2019-07-29 18:06:49 · 4239 阅读 · 0 评论 -
自动适配大小的布局
介绍两个控件Vertical Layout Group这个控件用于垂直自动布局.padding子控件距离边界的间距spacing子控件之间的间距child alignment子控件排列规则child controls size子控件大小改变时,是否改变这个子控件在父控件内所占的sizechild force expand是否强制分配所有空间给子控件Content Size Fitt...原创 2019-06-25 16:42:39 · 281 阅读 · 0 评论 -
unity动画倒播与动态设置循环
动画倒播之前都是使用混合动画的方法实现无缝衔接倒播的动作,这次的动画混合因为两段动画不一致,丢失了一部分动画.我哪里敢麻烦美工爸爸重做一个,另一方面觉得只要把动画倒播就能轻松搞定这个问题,然后我就踩了下坑.大部分的方法都是使用旧动画系统,年代久远已经失效了,官方api里也没翻到有用的信息,百度了很多都不是想要的结果.只有一个方法离想要的效果还差一点点.定义一个speed变量注意mult...原创 2019-06-11 11:19:26 · 6471 阅读 · 2 评论 -
数据持久化Xml与Json
Unity中常用的序列化方式有三种,二进制序列化,xml,json二进制序列化因为不能维护字段,通常用于图片,音频,视频等文件的传输Xml相比Json有阅读直白的优势,通常用于配置表Json效率比Xml高,常用于网络传输Unity还提供了PlayerPrefs类进行数据持久化,只适用于一些小游戏.Xml序列化与反序列化using System;using System.IO;usi...原创 2019-06-19 11:13:07 · 324 阅读 · 0 评论