
Unity3D.杂项
1024路漫漫
hi,很高兴认识你。
展开
-
Unity MonoBehaviour 和ScriptableObject序列化字典Dictionary
官方文档有个MonoBehaviour的字典序列化,但不能用。UnityEngine.ISerializationCallbackReceiver - Unity 脚本 APIusing UnityEngine;using System;using System.Collections.Generic;public class SerializationCallbackScript : MonoBehaviour, ISerializationCallbackReceiver{原创 2022-03-01 14:37:55 · 5505 阅读 · 0 评论 -
Unity中打开商店评分评价
APIApplication.OpenURL(url);安卓的urlGoogle Play"market://details?id=PackageName"华为"appmarket://details?id=PackageName"vivo"vivoMarket://details?id=PackageName""tmast://appdetails?pname=PackageName";//应用宝直接下载"http://market.android.com/details?id..原创 2021-05-10 16:45:54 · 12376 阅读 · 8 评论 -
批量去掉C#代码去掉注释和空行
使用vs的查找替换功能即可去掉注释第一步:打开vs2010,使用Ctrl+H快捷键,打开查询替换窗口第二步:在‘查找选项’中,勾选‘使用’‘正则表达式’第三步:在‘查找内容’中,填写正则表达式[\t]*//[^\n]*第四步:‘替换为’空,什么都不填写第五步:单击‘全部替换’按钮,完成整个项目或者当前文档等替换去掉多余的空行重复上面的步骤只是把正则表达式改为^\s*\n...原创 2021-02-28 17:00:51 · 1779 阅读 · 1 评论 -
UGUI加载Texture2D
Image imgPhotoimgPhoto.material.mainTexture = texture;这种是错误的方法,因为这样会损坏整个材质,导致其他用到的材质会出问题。推荐两种方式1.还是用Image, 然后用Sprite把Texture2D加载 Image imgPhoto; Sprite sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), n...原创 2020-09-26 18:26:16 · 586 阅读 · 0 评论 -
FingerGestures V3.1 判断点击是否在UI上(UGUI)
bool IsFointOnUI(int fingerIndex, Vector2 position) { if (Input.GetMouseButtonDown(0) || (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Began)) { //屏幕触摸触发#if UNITY_EDITOR...原创 2020-05-31 22:26:16 · 401 阅读 · 0 评论 -
解决FingerGestures V3.1在部分安卓机型上出现异常的bug
FGTouchInputProvider.csUpdateFingerTouchMap 函数替换成如下 void UpdateFingerTouchMap() { for( int i = 0; i < finger2touchMap.Length; ++i ) finger2touchMap[i] = -1; if (Input.touchCount != Input.touches.Length) { string.原创 2020-05-15 10:40:57 · 614 阅读 · 0 评论 -
Unity 屏幕截图C#实现(代码非常少)
由于比较简单,直接上代码。屏幕截图的png图片,最后在项目目录下ScreenShot.png下using System.IO;using UnityEngine;using System.Collections;public class ScreenShot : MonoBehaviour{ void Start() { StartCorout...原创 2019-05-24 10:17:39 · 1234 阅读 · 0 评论 -
Unity Lightmap之Terrain和Lightmap分块切割
上一篇 :Lightmap之动态加载单个物件和其对应的Lightmap本系列前两篇文章,实际上说明了两点:1.Lightmap是可以根据脚本动态切换。适用于同一场景白天,黑夜的变换。2.Lightmap是可以分割,以物件为单位, 每个物件单独保存各自的Lightmap。当然这种分割只是逻辑上的分割,实际并没有分割,而是存储了各自的偏移量和索引。适用于大场景的动态加载物件,能确保物件的L...原创 2019-04-20 12:18:55 · 2338 阅读 · 2 评论 -
Unity Lightmap之动态加载单个物件和其对应的Lightmap
下一篇:Lightmap之Terrain和Lightmap切割 接上一篇,LightMap之动态切换LightMap模拟白天夜晚,介绍了最基本的动态切换。现在问题来了,当场景比较大的时候,我们通常不是一次性把所有的物件都加载,哪怕这个物件是静态的,比如场景中不动的建筑。如果我们仅仅是烘焙后场景物件保存成prefab,那么我们在加载后,prefab是没有烘焙信息的。最后出现的效果...原创 2019-04-20 09:08:23 · 3677 阅读 · 0 评论 -
python+xlrd导出excel格式的配置表对应的lua代码和c#代码(一)
游戏开发中都涉及到配置表,没有一套比较方便的方案,开发起来很不方便。这里介绍一种方案以及实现。1.配置表用excel2.用python把excel的内容导出成lua3.用python生成能读取lua的c#代码 大多数策划都习惯用excel,而把excel 导出成lua而不是其他格式的原因是lua本身也是开发语言,用lua读lua很方便。而生成c#代码的...原创 2019-02-04 07:41:44 · 647 阅读 · 0 评论 -
Unity官方Unity2D教程Platformer范例
从AssetStore下载后的文件保存目录Win7系统:C:\Users\系统用户名\AppData\Roaming\Unity\Asset StoreMAC:"~/Library/Unity/Asset\ Store"这里下载的是2D Platformer范例下载...原创 2019-03-01 09:46:26 · 2676 阅读 · 1 评论 -
Unity中指数函数实现越来越快或者越来越慢的变化控制
有时需要这样的效果:UI的数字从一个值变化到另一个值,是一个不断增大的过程,而且是一种由慢变快的过程。就实现这种效果来说,可以DoTween这类组件实现,也可以用unity的曲线AnimationCurve实现。这里说的是另外一种方式,就是自己实现指数增长变快的过程。 指数曲线和函数,中学就学过。它一条很陡峭的曲线,大白话就是越来愈大,而且变的越来越快。 我...原创 2019-02-28 22:03:49 · 4037 阅读 · 0 评论 -
用Python搭建http文件下载服务器
写这篇主要是为了Assetbundle(二)热更新方案设计 中涉及的下载服务器搭建Python功能能强大,用起来也很方便。我们在做资源更新模块时,需要搭建一个http文件下载服务器,用于模拟从外网下载Assetbundle等。有很多种方法可以实现,python确实比较简单。一共3步骤,也不需要额外的代码和配置,只需要安装好了python。1.创建一个需要做文件下载服务的目录2.进入目...原创 2019-04-16 20:34:50 · 9727 阅读 · 1 评论 -
Unity LightMap之动态切换LightMap模拟白天夜晚
下一篇 :Lightmap之动态加载单个物件和其对应的Lightmap 游戏中通常有这种需求,同一个场景,白天和晚上光照不同。这种情况下就需要通过程序动态切换预先烘焙好的lightmap。先看下效果,分别用红色的灯和绿色的灯烘焙,代表白天和夜晚。在编辑器模式下,分别保存下来。运行时动态加载(分别点击左上角按钮,加载不同的lightmap)。模拟白色和夜晚。以下是...原创 2019-04-20 09:07:50 · 7453 阅读 · 3 评论 -
Unity3D中float的精度和最大值
当在场景中新建一个cube,然后把其position的x设置成2的23次方(8388608),unity的编辑器就会出现下图的警告。。。。原创 2017-03-17 14:28:29 · 9559 阅读 · 7 评论