技术·Unity3D
XavierChiang
有一定技术基础,并且具有市场能力,准备创业
展开
-
unity对TXT文本的写入与读取
using System.Collections;using System.Collections.Generic;using UnityEngine;using System.IO; //操作文件夹时需引用该命名空间using System.Text;public class TxtWriteAndRead : MonoBehaviour{ TextAsset m_Txt; void Start() { // AddTxtTextByFileSt.原创 2020-11-01 00:40:07 · 9361 阅读 · 0 评论 -
Unity延时功能的几种实现
我所做过的系统,分单机版系统(2005年)、CS系统(2010年)、实时系统(2015年),各个系统均有“延时”功能:定时调度的; 本博客说的是实时系统中的延时功能(基于Unity3D游戏引擎)。image在Unity3D中,新建的脚本会默认继承MonoBehaviour,其中Update函数会被引擎自动调度,如在我的电脑上,Update函数被调用的周期为0.012s。那么Unity3D中,仅有原创 2017-12-14 11:33:48 · 23006 阅读 · 1 评论 -
Unity SVN 管理(二)
上篇文章讲述了SVN搭建的一个整体过程,不知道是否能对你起到帮助的作用。今天就讲述一下,在Untiy使用SVN做管理时所需要注意的东西吧。。SVN成员的Untiy配置上篇文件说过, 为了配合SVN,需要对Unity工程做一些设置: 菜单:Edit->Project Settings->Editor:Version Control 选择为[Visible Meta Files]; 菜单:Ed原创 2017-12-13 16:15:19 · 604 阅读 · 0 评论 -
Unity SVN 管理(一)
Unity项目SVN管理:因为项目一直都是乱七八糟的,之前在做网站开发的时候,有过一部分SVN的管理经验,之前架设过一个SVN服务器,但是因为项目只有两个人开发,就使用了一段时间之后就不再使用了。现在逐渐的项目变得比较多,而且,安卓和IOS项目的有所不同,我重新开启了SVN服务器。将这段时间所建的项目,模型,音效等等资源放入服务器中以便于统一管理。今天先讲述一下SVN服务器的搭建。SVN服务器的搭建原创 2017-12-13 16:13:50 · 1987 阅读 · 0 评论 -
Unity HTC VIVE 手柄 接入(手柄上的按键都有说明)
一、资源导入从asset store 下载 SteamVR Plugin。然后导入Unity。将上图中的prefab拖入场景,然后在steam上装好steamVR,就可以运行了。二、手柄按键使用说明触控板的坐标如下图直接上代码,哪里不懂看注解就好。controller在刚才拖进场景的prefab里,如下图。using UnityEngin原创 2017-12-04 14:15:45 · 1053 阅读 · 0 评论 -
关于DOTween的一些控制(随时更新)
1、UGUI按键控制正放倒放using UnityEngine;using System.Collections;using DG.Tweening;public class Panel : MonoBehaviour { private DOTweenAnimation tweenAnimation; private bool isShow = false; // Use原创 2017-12-11 16:17:22 · 1399 阅读 · 0 评论 -
HTC Vive手柄圆盘控制角色移动
这篇文章主要写的是通过手柄控制移动在场景中漫游。 在通过手柄控制移动时,我主要写了两个脚本一个ChildTransform.cs、Move.cs; 1、 ChildTransform这个脚本主要是为了获取头部Y轴方向的转动。以及头部在x、z轴方向的移动。将这个信息赋值给这个脚本绑定的对象身上。 2、 Move这个脚本主要是为了控制玩家的移动的,移动的方向是依据绑定ChildTransf原创 2017-12-11 08:49:02 · 7113 阅读 · 7 评论 -
EasyTouch5教程(新手入门)
改版之后的EasyTouch5虽然第一次用无从入手,但是学习之后却有种如鱼得水的感觉,而且还非常容易上手,适合初级开发人员使用。完全不用接触代码层面,直接通过视图面板设置,这最适合初学者不过。但是没有接触过,或者只是使用过旧版的人可能就一头雾水了。首先,导入EasyTouch5的安装包:创建虚拟摇杆: 好了,开始使用EasyTouch5实现角色的转向:原创 2017-11-06 13:53:58 · 5227 阅读 · 0 评论 -
Unity3D问题之简单UI框架设计和实现
目标:编写一个简单通用UI框架用于管理页面和完成导航跳转框架具体实现的功能和需求加载,显示,隐藏,关闭页面,根据标示获得相应界面实例提供界面显示隐藏动画接口单独界面层级,Collider,背景管理根据存储的导航信息完成界面导航界面通用对话框管理(多类型Message Box)便于进行需求和功能扩展(比如,在跳出页面之前添加逻辑处理等)编写UI原创 2017-11-29 00:09:39 · 3110 阅读 · 1 评论 -
轻量级插件ResourceChecker
这个插件是我在国外网站逛论坛发现的,试用了一下非常好用,是一个轻量级的插件就一个类。开发中尤其是和美术合作的时候,可能你会发现Project视图中有很多没有用到的资源,但是你又不敢删除,因为你不知道那些资源是没用到的,那些资源是用到的。这时候ResourceChecker可以帮上大忙。将ResourceChecker放在Project视图中的Editor文件夹中,如果没有该文件夹就创建一个原创 2017-03-08 15:40:43 · 1025 阅读 · 0 评论 -
Unity 游戏帧率优化,设置分辨率
帧率低的奇怪问题在优化游戏的时候遇到了一个奇怪的问题,经过一轮的优化之后,游戏的CUP占用率和内存使用都在正常范围(用腾讯cube 或者UWA),在profile 中也没有毛刺,在部分android手机上能流畅运行。但是在某些大屏幕的手机上FPS特别低,在一部4核心CUP、4G内存的Oppo手机上帧率不到23FPS ,但是在小米2上运行反而特别流畅。进过一系列的排查和试验,原创 2017-11-04 10:45:43 · 3960 阅读 · 0 评论 -
帧率设置 及在游戏运行时显示帧率
在Unity3d 中可以通过代码设置 来限定游戏帧率。[csharp] view plain copyApplication.targetFrameRate=-1; 设置为 -1 表示不限定帧率。 转自http://blog.csdn.net/huutu一般在手机游戏中我们限定帧率为30 就OK了。原创 2017-11-04 10:11:58 · 8765 阅读 · 0 评论 -
Unity3d本地存储
(一)简单数据存储PlayerPrefs这种存储方法比较简单直接上代码public void SimpleLocalStorage() { //存储信息 PlayerPrefs.SetString("TestString", "存储"); PlayerPrefs.SetInt("TestInt", 8);原创 2017-11-26 19:14:21 · 433 阅读 · 0 评论 -
Unity读取本地图片资源
我们以Unity读取本地图片资源为例,总结三种读取方法:1.采用Resource.Load方法读取,读取在Unity中Assets下Resources目录下的资源名,注意不采用后缀名。(意思是Load方法直接在Resources目录下找资源,路径已经指定)。 //加载图片方式1;(图片要放入在Assets/Resources/目录下);原创 2017-11-26 19:01:45 · 12411 阅读 · 0 评论 -
unity3d保存文件到本地and加载本地文件
Unity3D游戏本地存储Unity3D游戏本地存储玩家积分。Unity提供了一个类似配置文件的类,可以非常好的实现信息数据的存储,那就是PlayerPrefs。它可以存储:int、float和string类型。// 存进去PlayerPrefs.SetInt("key1", 10);PlayerPrefs.SetString("key2", aaaaaa);Playe原创 2017-11-26 19:20:07 · 3603 阅读 · 0 评论 -
unity的js转c#
脚本放在 Editor 文件夹中,然后选择我们需要转换的脚本文件,单击菜单中的Tools下面的转换js到c#代码。这样转换就已经完成。我们需要做的就是删掉原有的js脚本。这样是因为项目中不能有重名的脚本文件。using UnityEngine;using UnityEditor;using System;using System.IO;using System.Collections原创 2018-01-12 13:20:29 · 1327 阅读 · 1 评论 -
unity项目去除unity开始动画和发布设置
1:Unity检视面板 Transform:模型的变化,可以动态修改模型的三维坐标。 Position:游戏对象的位置。 rotation:游戏对象的旋转角度。 Scale: 游戏对象的缩放比例。 Mesh Filter :网格过滤的类型,他可以直接确定该模型的物理材质。 Box Collider:立方体碰撞器,它与钢体紧密结合。 Mesh rend原创 2017-12-18 17:21:32 · 5594 阅读 · 2 评论 -
Unity3D多人协作开发环境搭建
多人协作说到多人协作开发,大家都会想到要使用版本控制工具来管理项目,当然最常用的要数SVN和Git了,但是SVN管理Unity3D项目的确有一些不尽人意的地方。比如:两个人修改了同一个场景,SVN更新时就不能合并,还有在Unity Editor 中SVN不可视化,不友好!原创 2017-12-07 13:17:03 · 8553 阅读 · 0 评论 -
HTC Vive Unity 教程
原文:HTC Vive Tutorial for Unity 作者: Eric Van de Kerckhove 译者:kmyhy转载 2017-12-07 12:59:44 · 1792 阅读 · 0 评论 -
Unity开发HTC vive 五、拾取和触碰
Unity开发HTC vive 五、拾取和触碰原创 2017-12-07 12:55:57 · 2389 阅读 · 0 评论 -
Unity开发HTC vive 四、传送
2017年3月24日修改vive的sdk SteamVR在升级,会有些改动。最新的SteamVR1.2.1在Unity5.4.4下狂报错。下面的内容是在以下环境完成的unity5.4.4SteamVR1.2.0(http://download.csdn.net/detail/wuyt2008/9792970)ViveInputUtility1.5.1beta(http://download原创 2017-12-07 12:54:31 · 963 阅读 · 1 评论 -
Unity开发HTC vive 三、远处拖动3D物体
2017年3月24日修改vive的sdk SteamVR在升级,会有些改动。最新的SteamVR1.2.1在Unity5.4.4下狂报错。下面的内容是在以下环境完成的unity5.4.4SteamVR1.2.0ViveInputUtility1.5.1beta原创 2017-12-07 12:53:06 · 1123 阅读 · 0 评论 -
Unity开发HTC vive 二、操作GUI
unity+HTC vive原创 2017-12-07 12:51:08 · 1126 阅读 · 0 评论 -
Unity开发HTC vive 一、手柄按钮
unity+HTC vive原创 2017-12-07 12:46:28 · 4285 阅读 · 0 评论 -
UGUI实现不规则区域点击响应
为什么要这么做大家都知道在UGUI中,响应点击通常是依附在一张图片上的,而图片不管美术怎么给你切,导进Unity之后都是一个矩形,如果要做其他形状,最多只能旋转一下。可能有旁友会说,什么时候会用到这个功能呢?开心农场这个页游,相信大家都玩过。里面的田地是一块一块的菱形。美术提供给我们的每一块地的切片,肯定并且只能是这样的(格子表示背景透明)。原创 2017-12-06 16:57:49 · 1599 阅读 · 0 评论 -
帧动画通用更新代码
using UnityEngine;using System.Collections;public class animUpdate : MonoBehaviour { public float animSpeed = 10;//1秒播放10帧 public float animTimeInteval = 0; public float animTimer原创 2017-10-31 09:18:15 · 296 阅读 · 0 评论 -
unity 分辨率和质量面板参数在脚本里面的设置
void Start() { QualitySettings.SetQualityLevel(3, true); //设置质量的,周免的index是他的质量索引,bool是他是否显示高质量 Screen.SetResolution(1000, 1000, false); //设置导出后unity 的分辨率,是否全屏原创 2017-04-25 17:44:24 · 1191 阅读 · 0 评论 -
Camera的组件
在Unity中创建一个Caaera后,除了默认带一个Transform组件外,还会附带Flare Layer、GUI Layer、Audio Listener等4个组件,如下图。ClearFlags:清除标记;决定屏幕中哪部分被清除。一般用于多台摄像机来描绘不同对象的情况,有一下三种模式。Skybox:天空盒(默认项)。在屏幕空白处显示当前摄像机的天空盒,如果没有指原创 2017-04-21 22:09:06 · 518 阅读 · 0 评论 -
Unity3D for VR 学习(2): 暴风魔镜框架探索
学习一个新技术,有三个法宝:法宝1: 掌握厂家提供的用户API手册法宝2: 掌握厂家提供的demo样例法宝3:《每个研发人员都应树立的一个demo模式》故,学习魔镜4技术,亦如是也。 暴风魔镜4是 硬件 + 暴风VR SDK软件的CardBoard VR解决方案。 硬件魔镜4硬件提供了展示容器工具,主要由2个凸透镜和塑料头盔构成。转载 2017-01-06 17:05:47 · 648 阅读 · 0 评论 -
Unity3D for VR 学习(3): 暴风魔镜PC Input小改造–自己动手、丰衣足食
在做手游的时候,80%时间是在PC调试的,例如业务逻辑、AI算法、核心玩法等。拿到魔镜提供的demo,晕了,必须得安装到Android机器上,才能调试,究其原因,有三:需要用到手机陀螺仪需要用到蓝牙手柄需要用到魔镜的凸透镜 1 模拟手机陀螺仪输入快捷键F: ok键快捷键Alt:按住,鼠标模拟GazePostion位移快捷键Ctrl转载 2017-01-06 17:08:50 · 781 阅读 · 0 评论 -
Unity3D for VR 学习(1): 又一个新玩具 暴风魔镜 4(Android)
2015年下半年的朋友圈中各种VR、AR的新闻层次不穷,搞的我也心痒痒的:好歹咱也是职业的Unity3D程序员,高大上的Oculus rift dk2咱玩不起,搞个廉价的VR产品也玩玩嘛! 故, 暴风魔镜 4刚发布就在网上预订了。 原估计春节前能到货,没有想到元旦前就到货了,高兴 — 业内良心嘛。转载 2017-01-06 16:24:07 · 911 阅读 · 0 评论 -
Unity3D教程之Light光源
Unity3D项目中,灯光摄像机都是一个游戏中十分重要的组件,下面我们就来谈谈Unity3D教程中的Light光源。如果大家对Unity3D感兴趣,就来菜鸟在线观看我们的Unity3D教程。 在Unity项目中,灯光和摄像机是非常重要的游戏组件。灯光可以提升游戏的画面质感,摄像机可以捕捉游戏的场景,并将其输出到屏幕上。如果大家对Unity3D感兴趣,就来菜鸟在线观看Unity3D原创 2016-12-28 13:49:05 · 20822 阅读 · 0 评论 -
Unity下使用暴风魔镜SDK通过头部和手柄控制字体拼凑
最近在做一个模块,要求使用暴风魔镜SDK通过头部和手柄控制字体拼凑,注意不是笔划的书写哦,以为用头来控制写字实在是太奇怪了......以“鸟”字为例,其他的字也可以,只需设置好模板上笔划应到的位置,以及按顺序给笔划编号如1,2,3....即可。效果如下,肯定不完美,但还是要记录下来,希望能与大家多交流啊,哈哈哈哈通过按下魔镜C键来选择下方的笔划,通过头部移动来控制笔划的移动C键转载 2016-12-29 14:14:20 · 1174 阅读 · 3 评论 -
unity开发android游戏(一)搭建Unity安卓开发环境
1,下载安装Java的JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html (JDK中,包含JRE)如果是64位的系统,推荐安装64位的java。2,下载Android的SDK:注意,Android 有两种方式:一种是Android studio的原创 2016-12-16 08:59:34 · 5239 阅读 · 0 评论 -
Unity开发Android游戏(二)Hello world!
在设置好开发环境后,我们开始编写一个最简单的程序,也就是hello world,并让它在手机上跑起来。注:环境的搭建,可以看我的上一篇文章:《unity开发android游戏(一)搭建Unity安卓开发环境》1,建立项目(1),新建一个空项目。【File】-->【New Project】(2),新建一个2D背景,用于衬托UI。【GameObj原创 2016-12-16 09:32:14 · 1630 阅读 · 0 评论 -
Unity3d + UGUI 的多分辨率适配
原文地址:http://blog.csdn.net/dingkun520wy/article/details/494717891、Canvas的属性配置2、Canvas Scaler的属性配置3、根据不同的屏幕的比例动态修改缩放基准[csharp] view plain copyvoid S转载 2016-12-09 15:16:28 · 2665 阅读 · 0 评论 -
U3D,鼠标控制摄像头和游戏对象
1.鼠标右键控制摄像头右键按住鼠标使摄像头围绕目标物体旋转,鼠标滑轮控制拉远拉近,有阻尼效果。2.鼠标左键拖拽游戏对象,实现旋转游戏对象的功能,原创 2016-12-13 11:15:48 · 953 阅读 · 0 评论 -
Unity3D中三种调用其他脚本函数的方法
第一种,被调用脚本函数为static类型,调用时直接用 脚本名.函数名()。很不实用……第二种,GameObject.Find("脚本所在物体名").SendMessage("函数名"); 此种方法可以调用public和private类型函数第三种,GameObject.Find("脚本所在物体名").GetComponent().函数名();此种方法只可以调用public类型转载 2016-11-22 19:48:57 · 10703 阅读 · 0 评论 -
Unity3D for VR 学习(4): 自绘摄像机的视口区域锥体
在Unity Editor下,当选择Camera组件后,可呈现出Camera视口区域锥体,非常方便。但是当选择其他物体,如Cube后,就无法得知是否在Camera市口区内了,这里我找到了雨松MOMO的一篇博客《Unity3D研究院之获取摄像机的视口区域》,他用Camera.fieldOfView和Camera.aspect算出屏幕比例,然后再得出width、height(摄像机)绘制了四边形,非常酷,可以解决这个痛点。转载 2017-01-06 17:12:23 · 733 阅读 · 0 评论 -
unity基础开发----延迟等待执行代码
在unity中很多时候需要用到延迟执行或者等待执行。原创 2016-12-21 08:46:45 · 11767 阅读 · 0 评论