
Unity
文章平均质量分 50
风流倜傥不嫉妒的Elsa
勒布朗法则:Later equals never. 稍后等于永不。
展开
-
ulua、tolua原理解析
在聊ulua、tolua之前,我们先来看看Unity热更新相关知识。什么是热更新举例来说: 游戏上线后,玩家下载第一个版本(70M左右或者更大),在运营的过程中,如果需要更换UI显示,或者修改游戏的逻辑,这个时候,如果不使用热更新,就需要重新打包,然后让玩家重新下载(浪费流量和时间,体验不好)。 热更新可以在不重新下载客户端的情况下,更新游戏的内容。 热更新一般应用在手机网游上。为什么要用lua做热更新其实C#本身的反射机制可以实现热更新,但是在ios平台上:System.Reflec转载 2020-11-02 18:39:09 · 691 阅读 · 2 评论 -
AnimationCurve
第一部分:介绍第二部分:基本使用第三部分:脚本创建AnimationCurve第四部分:编辑器里的AnimationCurve第一部分:介绍AnimationCurve是Unity3D里一个非常实用的功能。作用是编辑一条任意变化的曲线用在任何你想用在的地方。 如曲线地形,曲线轨迹等。也被用在了模型动画播放时的碰撞盒缩放及重力调节。Animatio转载 2017-06-06 17:44:08 · 663 阅读 · 0 评论 -
静态方法与单例模式的区别
观点一:(单例)单例模式比静态方法有很多优势:首先,单例可以继承类,实现接口,而静态类不能(可以集成类,但不能集成实例成员);其次,单例可以被延迟初始化,静态类一般在第一次加载是初始化;再次,单例类可以被集成,他的方法可以被覆写;最后,或许最重要的是,单例类可以被用于多态而无需强迫用户只假定唯一的实例。举个例子,你可能在开始时只写一个配置,但是以后你可能需要支持超过一个配置集,转载 2017-06-02 15:41:02 · 713 阅读 · 0 评论 -
unity打包iOS,用Xcode打不开xcodeproj文件
问题描述:今天遇到一个问题,在Window平台用unity打包好了iOS包,之后用Xcode打开xcodeproj文件,想进一步打包,但是却始终打不开,一直提示:XXX.xcodeproj cannot be opened because the project file cannot be parsed.尝试解决的办法:因为我的项目之前是unity5.6.5的,我是用unity5.6.0打包的...原创 2018-02-23 19:46:13 · 1319 阅读 · 0 评论 -
Unity与C#的序列化与反序列化
序列化操作在我们的开发中使用的十分普遍,本文记录了公司最近分享会上关于这部分的讲解,希望能帮助大家对序列化有更系统的了解。概念序列化又称串行化,是.NET运行时环境用来支持用户定义类型的流化的机制。其目的是以某种存储形式使自定义对象持久化,或者将这种对象从一个地方传输到另一个地方。简单来说就是将对象保存到文件中。如Unity的场景文件和预制体默认就是以二进制的文件保存在工程目录下。...转载 2018-08-10 19:10:55 · 438 阅读 · 0 评论 -
在Unity中实现相机抖动特效
为了增加游戏的真实感,一般我们会为游戏添加一些屏幕抖动特效。下面简单介绍几种实现方式:1.通过脚本相机抖动实现:using UnityEngine;using System.Collections;public class CameraShake : MonoBehaviour{ public IEnumerator Shake(float duration, float ...原创 2018-08-17 12:42:11 · 4397 阅读 · 0 评论 -
海水插件Suimono 2.1的使用
这两天(其实是去年的事情,2017年的草稿)一直在研究这个插件,把他的英文文档看了一遍,下面是小白的翻译,(英文水平有限,大家就作个参考吧,不对的地方欢迎指正) OVERVIEW & INSTALLATION一、如何加入水模型:1.将预制体“Suimono_Module”加入场景。2.将预制体“Suimono_Surface”加入场景,这个是海面。3.在“Su...原创 2018-08-17 12:43:56 · 2190 阅读 · 2 评论 -
unity中版本问题之视频播放
1.MovieTexture问题当我想打包成移动端的时候出现了这样的bug提示: The type or namespace name `MovieTexture' could not be found. Are you missing a using directive or an assembly reference?意思是在Android上不支持影片纹理。只能全屏幕的流媒体播放。原...原创 2018-08-17 12:47:54 · 814 阅读 · 0 评论 -
Vuforia 7 Model Target使用总结
原本是准备从1月1日开始,恢复博客更新的,anyway,什么时候开始都不晚。 最近刚刚用Vuforia 7的新功能ModelTarget 做了几个Demo,这里做下总结:一、使用首先,需要去vuforia官网下载Model Target Generator 这个插件很好操作,打开压缩包,运行这个exe文件 打开后,登陆自己的vuforia账户 每个账户都有十次导出数据的机会,这...转载 2018-09-03 15:30:37 · 1127 阅读 · 2 评论 -
Unity Android 中的Build System
Internal:Unity内置,仅需要Android SDK支持,不能导出工程,适用于仅使用到Unity开发的项目。Gradle:使用Gradle进行构建,需要Android SDK与Gradle支持,可以导出Android Studio工程,适用于Unity与Android交互的项目。之前的版本还有一个ADT:使用ADT进行构建,需要Android SDK 与ADT支持,可以导出Ecl...原创 2018-10-08 20:35:04 · 1562 阅读 · 0 评论 -
Xcode 错误- Could not launch app 解决办法
Xcode 打包到ipad 上遇到下面的问题:解决办法:1.打开钥匙串 ,找到Apple Worldwide Developer Relations Certification Authority ->双击 并点击信任->选择使用系统默认2.重新打开Xcode重新按照打包流程进行打包即可。...原创 2018-12-07 19:19:46 · 4066 阅读 · 0 评论 -
Hololens 重置系统及安装开发应用
重新安装系统1.下载并安装 Windows Device Recovery ToolWindows设备恢复工具(WDRT): http://go.microsoft.com/fwlink/p/?LinkId=522381连接Hololens,按照提示下载更新系统,下载完成后,开机,重新按照提示设置头显,完成系统重置。遇得到问题及解决方案:在登陆账号的时候,会提示连接不上网络,可以先...原创 2018-12-06 15:26:09 · 4264 阅读 · 0 评论 -
对HoloLens的初步认识及简单开发流程
一:MR与AR区别(Hololens与Vuforia)MR:Mixed Reality,混合现实AR :Augmented Reality,增强现实1.将真实场景与虚拟物体的叠加方式MR:将虚拟物体通过坐标定位在透镜中叠加进去AR:靠摄像头捕捉现实画面作为背景面板放置在虚拟物体后方2.程序内部识别尺寸MR:物体大小和距离,都是真实的尺寸,对大小比较严格AR:大都是以...原创 2018-12-29 19:33:16 · 537 阅读 · 0 评论 -
Unity实现截图并保存的手机相册中(一)
实现只需要一个脚本插件,插件下载地址:链接: https://pan.baidu.com/s/1X97ki1mkoKIrrfqnpL1csw 提取码: 6vgs使用的时候,参考下图:原创 2019-07-03 15:33:33 · 976 阅读 · 4 评论 -
Unity实现截图并保存的手机相册中(二)
1、今天分享一款Unity中的截屏插件给大家,支持Pc、Android、Ios平台。2、插件中有Demo场景。给大家当上截图。3、下面是插件中带的一个PDF。插件下载地址:链接: https://pan.baidu.com/s/1xq9kM0-9DsF4bCCZfhEoGw 提取码: fgbe原文地址:https://blog.youkuaiyun.com/weixin_43109909/art...转载 2019-06-28 14:36:17 · 971 阅读 · 0 评论 -
ARToolKit制作属于自己的Marker
ARToolKit支持两种图片识别,一种是黑白图,一种是普通图片。1.黑白图Marker制作基本要求:1)必须是方形2)必须有连续的边缘,前后景使用差别较大的颜色识别更容易些3)必须具有旋转不对称性在线制作参考下面链接:https://flash.tarotaro.org/blog/2009/07/12/mgo2/注意:你会下载下来一个名字叫做MGO2的swf文件,...原创 2019-10-11 17:24:35 · 902 阅读 · 0 评论 -
unity3d优化总结篇
对项目优化有很多,如:mesh合并 ,减少DrawCall和模型骨骼以及物理计算,合并材质球,优化代码等等,前面发过一篇【整理】unity3d优化总结篇 现在继续补上,该内容为本人经验以及网上收集整理,希望大家有更好的优化方法,能够继续跟帖,一起探讨,共同进步。优化: 1. 更新不透明贴图的压缩格式为ETC 4bit,因为android市场的手机中的GPU有多种,每家的转载 2017-05-31 15:20:20 · 905 阅读 · 0 评论 -
Unity5.x EventSystem事件系统
一、EventSystem对象的说明当我们在场景中创建任一UI对象后,Hierarchy面板中都可以看到系统自动创建了对象EventSystem,可以看到该对象下有三个组件:EventSystem、StandaloneInputModule、TouchInputModule,后面两个组件都继承自BaseInputModule。EventSystem组件主要负责处理输入、射线转载 2017-04-27 23:17:38 · 884 阅读 · 0 评论 -
球形检测
1.Physic.OverlapSphere 重叠球检测一定范围内所有带有碰撞器的游戏对象方法示例:Collider [ ] cols = Physics.OverlapSphere(this.gameObject.transform,5f);for(int = 0; i{ if(cols[i].name=="Enemy") { th原创 2016-09-27 18:56:08 · 3657 阅读 · 0 评论 -
跳跃问题
1.using UnityEngine;using System.Collections;[RequireComponent(typeof(Rigidbody))][RequireComponent(typeof(SphereCollider))]public class test : MonoBehaviour { //表示跳跃初始速度 pr原创 2016-09-27 22:39:27 · 665 阅读 · 0 评论 -
Unity中的LOD技术
名词解释:由于场景变大,就要更加考虑性能的问题。有一种管理方法,取决于摄像机离对象的远近,网格有不同的细节级别,这就是所谓的细节级别( Level of Detail)(LOD的缩写)用法介绍:1.给这个对象添加LODGroup 组件(Component->Rendering->LOD Group)2.把高分辨率网格的对象如Map_LOD0拖到的第一个渲染器框 L0D:0。对话框"Re原创 2016-11-30 16:41:33 · 3101 阅读 · 2 评论 -
cube随机颜色问题
值得注意的是 Color中的范围是从0到1的using UnityEngine;using System.Collections;public class RandomColor : MonoBehaviour { float time; // Use this for initialization void Start () { } //原创 2016-11-29 14:25:56 · 898 阅读 · 0 评论 -
Unity中的抗锯齿方法
有如下的解决方案:1.美工的问题:先去找美工查找模型的问题,看看是不是面和面之间太近,模型有重叠面,磨损的面。2.改变一下shader,改变一下渲染方式。3.在编辑(edit)菜单-找project setting---quality在弹出的面板里找 anti-aliasing 选择 4x或更高。4.使用滤镜Image effect下的抗锯齿。使用说明原创 2016-11-27 14:06:39 · 7315 阅读 · 0 评论 -
itween插件的使用(小案例)
using UnityEngine;using System.Collections;public class SeamewController : MonoBehaviour{ public float speed = 10f; public Transform[] paths; // Use this for initialization原创 2016-11-27 14:19:20 · 773 阅读 · 0 评论 -
unity中用shader实现大海的特效
之前学过一个是做流水效果的但是自我感觉效果不太好,波动太规律了,而且能看到上面的面像是由多个面组合成的,感觉有点假,不过功能是实现了。using UnityEngine;using System.Collections;public class CreateWater : MonoBehaviour { Mesh mesh; public int tier = 1...原创 2018-08-17 12:46:33 · 3946 阅读 · 0 评论 -
unity Android插件使用中的问题
出现错误:Found plugins with same names and architectures 设置一下CPU的选项就可以了原创 2016-12-15 20:25:28 · 944 阅读 · 2 评论 -
unity中异步加载游戏场景与异步加载游戏资源进度条
异步任务相信大家应该不会陌生,那么本章内容MOMO将带领大家学习Unity中的一些异步任务。在同步加载游戏场景的时候通常会使用方法 Application.LoadLevel(“yourScene”); 这句代码执行完毕后程序会干什么呢??如下图所示,这是我随便找了一个游戏场景, 在Hierarchy视图中我们可以看到该场景中“天生”的所有游戏对象。天生的意思就是运行程序前该场景中就已经存在的所转载 2017-04-11 15:01:36 · 1611 阅读 · 0 评论 -
Unity中的坐标与绘制准心
unity3d中的屏幕坐标系 是以屏幕 左下角为(0,0)点 右上角为(Screen.Width,Screen.Height)鼠标位置坐标与屏幕坐标系一致视口坐标是以摄像机为准 以屏幕的左下角为(0,0)点 右上角为(1,1)点绘制GUI界面时使用的坐标是以 屏幕 的左上角为(0,0)点 右下角为(Screen.width,Screen,Height)经常会用到 某个物体...原创 2017-05-04 10:26:42 · 7318 阅读 · 4 评论 -
Unity视频播放的各种实现方式汇总
Unity视频播放有很多种实现方式,可根据要求来选择适当的实现,这里总结一下: 1. MovieTexture Unity标准接口,支持的播放视频格式有.mov、.mpg、.mpeg、.mp4、.avi和.asf。仅支持PC端的本地视频播放。 1. 在游戏对象中播放,就好比在游戏世界中创建一个Plane面对象,摄像机直直的照射在这个面上 在新建转载 2017-04-24 10:06:01 · 3365 阅读 · 0 评论 -
unity中的灯光烘焙问题lightMap
lightmap的优点:在渲染的时候由于pix shader计算量的减小,性能上会有所提升,直接观察到的是帧速的提高。缺点:显示效果不如动态光照精细和真实;另一方面,lightmap的文件大小会提高下载量。下面介绍一下如何使用lightmap1.烘焙后,将lightmap从场景文件夹中移开。(移除是为了不把light map和场景一起打包,这样可以实现,lightmap与场景分开下载。减少原创 2017-05-08 16:21:32 · 3532 阅读 · 0 评论 -
Unity中判断目标在自己的哪个方位
在做rpg类游戏的过程中,经常遇到要判断周围怪物相对自身的方位1.判断目标在自己的前后方位可以使用下面的方法: Vector3.Dot(transform.forward, target.position) 返回值为正时,目标在自己的前方,反之在自己的后方2.判断目标在机子的左右方位可以使用下面的方法: Vecto转载 2017-05-18 16:23:44 · 3457 阅读 · 0 评论 -
RequireComponent需要组件与Quaternion 四元数
1.第一人称人物身上应该有Rigidbody刚体组件和CapsuleCollider胶囊体组件,要判断有没有,如果没有要进行添加,这里就用到了RequireComponent组件,[RequireComponent(typeof(Rigidbody))][RequireComponent(typeof(CapsuleCollider))] Inherits from Attribut原创 2016-09-27 15:55:30 · 476 阅读 · 0 评论