
Unity3D
哒哒咦哒哒··
我很懒。。。。。。。。。。。。。。
展开
-
Unity 异步加载场景
Unity 异步加载场景原创 2022-11-02 16:14:42 · 289 阅读 · 1 评论 -
Unity发布Apk添加KeyStore
方法一 利用unity添加1.勾选Create New Keystore复选框。2.点击Browse keystore。也就是设置制作的keystore的路径和名字。3.keystore password:设置keystore的密码 。4.Confirm password:确认keystore的密码。5.Key:点击Unsigned(debug)之后会有一个下拉列表选择Create a new Key。并弹出一个二级弹框设置。6.在二级弹框中的Alias:设置别名原创 2021-07-06 09:49:19 · 669 阅读 · 1 评论 -
【Unity编程】欧拉角与万向节死锁(图文版)
万向节死锁(Gimbal Lock)问题 上文中曾经说过,欧拉旋转的顺规和轴向定义,自然造就了“万向节死锁”问题。本文主要来探索它自然形成的原因。 陀螺仪 首先,我们来了解Gimbal 究竟是个什么玩意儿。下面来自维基百科中关于Gimbal的一段引述: 平衡环架(英语:Gimbal)为一具有枢纽的装置,使得一物体能以单一轴旋转。由彼此垂直的枢纽轴所组成的一组三...转载 2018-08-31 13:02:08 · 281 阅读 · 0 评论 -
【游戏设计模式】之三 状态模式、有限状态机 & Unity版本实现
本系列文章由@浅墨_毛星云 出品,转载请注明出处。 文章链接: http://blog.youkuaiyun.com/poem_qianmo/article/details/52824776作者:毛星云(浅墨) 微博:http://weibo.com/u/1723155442 游戏开发过程中,各种游戏状态的切换无处不在。但很多时候,简单粗暴的if else加标志位的方式并不能很地道地解...转载 2018-08-10 15:04:21 · 283 阅读 · 0 评论 -
【游戏设计模式】之四 《游戏编程模式》全书内容提炼总结
本系列文章由@浅墨_毛星云 出品,转载请注明出处。 文章链接: http://blog.youkuaiyun.com/poem_qianmo/article/details/53240330作者:毛星云(浅墨) 微博:http://weibo.com/u/1723155442 本文的Github版本:QianMo/Reading-Notes/《游戏编程模式》读书笔记 这是一篇超过万字...转载 2018-08-10 15:02:33 · 272 阅读 · 0 评论 -
使用Unity3D的50个技巧:Unity3D最佳实践
刚开始学习Unity3D时间不长,在看各种资料。除了官方的手册以外,其他人的经验也是非常有益的。偶尔看到老外这篇文章,觉得还不错,于是翻译过来和大家共享。原文地址:http://devmag.org.za/2012/07/12/50-tips-for-working-with-unity-best-practices/,下面是译文。欢迎转载,请注明出处:燕良@游戏开发。另外,欢迎各路高手加入我...转载 2018-07-27 09:32:54 · 594 阅读 · 0 评论 -
[Unity实战]一个简单的任务系统
1.任务管理类与任务类是一对一的关系,而任务管理类与其他类是一对多的关系。对于一对多,比较容易想到的就是观察者模式了。在观察者模式中,是观察者决定要监视的东西,而不是事件的发生者决定谁观察它。2.对于任务类/任务条件类/任务奖励类来说,有逻辑意义上的,也有界面意义上的,因此要分开处理。这里给出主要的逻辑代码:[csharp] view plain copy print?using System.C...转载 2018-05-30 16:49:54 · 9931 阅读 · 2 评论 -
Unity中实现简单刮刮乐效果
Unity实现刮刮乐效果本文转自:http://www.manew.com/thread-113128-1-1.html,请点击链接查看原文,尊重楼主版权。网上看过了很多刮刮乐的文章,自己参考了一些,也改良了一些方法,比如说改良了画的每个点不连续的情况。具体效果如下:做出这种效果,其实挺简单,主要就是利用unity的render texture加上自己写的遮罩shader。 我们首先设置两个摄像机...转载 2018-05-28 15:55:50 · 3272 阅读 · 1 评论 -
unity 协程原理与线程的区别
说到协程,我们首先回顾以下线程与进程这两个概念。在操作系统(os)级别,有进程(process)和线程(thread)两个我们看不到但又实际存在的“东西”,这两个东西都是用来模拟“并行”的,写操作系统的程序员通过用一定的策略给不同的进程和线程分配CPU计算资源,来让用户“以为”几个不同的事情在“同时”进行“。在单CPU上,是os代码强制把一个进程或者线程挂起,换成另外一个来计算,所以,实际上是串行...原创 2018-05-15 13:16:02 · 5810 阅读 · 0 评论 -
Unity Socket网络编程(TCP) 简单例子-1
开发工具:Visual Studio、Unity开发语言:C#【服务器端】在VS创建一个C#空项目代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threadi...原创 2018-09-11 12:54:17 · 1969 阅读 · 3 评论 -
unity3D中使用Socket进行数据通信(一)
今年3D产品的工作中心主要集中在提高产品深度上,通过对竞争产品的分析,发现我们的缺陷在于多人在线与后台管理部分,多人在线使用unity自带的Network可以搞定,后台部分前段时间主要研究了下Sqlite。由于sqlite本身不带服务器,作为数据库只是一个文件,sqlite放在服务器上与客户端通信的需求其实就是多个客户端访问同一个文件了,查了一些资料,有很多方法,个人感觉socket不错,一来应用...原创 2018-09-11 13:39:25 · 40079 阅读 · 15 评论 -
unity3D中使用Socket进行数据通信(二)
上一篇博客主要介绍了使用socket搭建服务端和客户端程序,这一篇来说说socket的数据传输,我们使用socket的目的是解决点对点之间的数据传输,之前提到了socket中一个重要的概念:端口。而socket传输数据的方式就是端口与端口之间以流(stream)的方式传输数据,socket命名空间中提供了该流的一个功能类(NetworkStream),用起来很方便,因为任何可以转换为二进制的数据都...原创 2018-09-11 13:40:24 · 2184 阅读 · 0 评论 -
unity3D中使用Socket进行数据通信(三)
今天跟大家继续学习下socket,由于最近有个招标参数需要给之前的一款产品做教师端以及后台数据库部分,忙了将近两个礼拜,今天刚发布了,就继续我们的socket通信部分。 之前服务端一直在VS中去做,考虑到后面客户端与服务器一体化,就把服务端也在unity中实现了,需要注意的一点是,由于服务端中包含阻塞方法,而unity所有脚本都只在仅存的一个主线程中运行,所以如果直...原创 2018-09-11 13:41:31 · 2702 阅读 · 0 评论 -
Unity面试题(最新实用)
Unity3D常见面试题目录C#问题 41.在类的构造函数前加上static会报什么错?为什么? 42.C#StringBuilder类型比string类型的优势是什么? 43.C#函数Func(stringa,stringb)用Lambda表达式怎么写? 44.数列1,1,2,3,5,8,13...第n位数是多少?用C#递归算...原创 2018-09-11 13:49:15 · 24072 阅读 · 0 评论 -
Unity Editor 编辑器扩展 (三) 将TortoiseSVN的基础操作内嵌Unity
集成svn同步工具,非常好用 /* * 将TortoiseSVN的基础操作内嵌Unity * 这里只是举了几个简单的例子 * 具体命令可参见TortoiseSVN的help功能 * */ using UnityEngine; using UnityEditor; using System.Diagnostics; public clas...转载 2018-09-13 09:21:09 · 521 阅读 · 0 评论 -
Unity实现基于UGUI的简易UI框架
Unity实现基于UGUI的简易UI框架什么是UI框架?UI框架中的 UIManager 管理场景中所有的面板, 控制面板之间的跳转.本Demo实现以下功能:关闭当前页面 显示新的页面 叠加显示 关闭当前页面并显示 关闭所有页面并显示 安卓返回键响应 返回上一个页面 退出程序 设计UI页面先搭建好所有的UI界面, 并保存为prefab...转载 2018-10-08 09:24:12 · 7439 阅读 · 4 评论 -
常用的正则表达式
只能输入数字: “^[0-9]*$” 。只能输入n位的数字:”^\d{n}$”。只能输入至少n位的数字:”^\d{n,}$”。只能输入m~n位的数字:”^\d{m,n}$”。只能输入零和非零开头的数字:”^(0|[1-9][0-9]*)$”。只能输入有两位小数的正实数:”^[0-9]+(.[0-9]{2})?$”。只能输入有1~3位小数的正实数:”^[0-9]+(.[0-9...转载 2018-09-30 13:41:39 · 437 阅读 · 0 评论 -
深入浅出聊Unity3D项目优化:从Draw Calls到GC
匹夫印象里遇到的童靴,提Unity3D项目优化则必提DrawCall,这自然没错,但也有很不好影响。因为这会给人一个错误的认识:所谓的优化就是把DrawCall弄的比较低就对了。对优化有这种第一印象的人不在少数,drawcall的确是一个很重要的指标,但绝非全部。为了让各位和匹夫能达成尽可能多的共识,匹夫首先介绍一下本文可能会涉及到的几个概念,之后会提出优化所涉及的三大方面:drawcal...原创 2019-05-06 19:50:53 · 337 阅读 · 0 评论 -
Unity 2017Android环境配置(最新鲜的)
版权声明:本文为 哒哒咦哒哒 原创文章,转载请标明出处。如有不足之处欢迎提出意见或建议,联系QQ67591777 VX zhen67591777https://blog.youkuaiyun.com/qq_38112703/article/details/90694523第1步: 安装JDK;第2步: 安装Eclipse(可不安装);第3步: 下载并安装AndroidSDK;第4步: ...原创 2019-05-30 12:40:41 · 4181 阅读 · 0 评论 -
AI学习(二)基础类---------个体操控(2)
个体AI角色的操控行为de实现2.4 Pursuit 追逐[csharp] view plain copy print?using System.Collections; using System.Collections.Generic; using UnityEngine; /*追逐 * 类似于靠近行为,但目标是移动的,要实现的是可以预测目标未来的位置 * 使用简单的预测器,计...转载 2018-05-21 15:05:34 · 363 阅读 · 0 评论 -
AI学习(二)基础类---------个体操控(1)
个体AI角色的操控行为de实现2.1 Seek 靠近[csharp] view plain copy print?using System.Collections; using System.Collections.Generic; using UnityEngine; /*靠近 *指定一个目标位置,根据当前的运动速度向量,返回一个操控AI角色到达该目标位置的“操控力” * 使...转载 2018-05-21 15:03:50 · 329 阅读 · 0 评论 -
AI学习(一)基础类
一、通用的AI架构模型【与游戏世界的接口】战略层:群体行为决策层:个体行为运动层:移动寻路【动画系统、物理仿真系统】二、常用的操纵行为Seek 靠近Flee 离开Arrival 抵达Pursuit 追逐Evade 逃避Wander 随机徘徊Path Following 路径跟随Obstacle Avoidance 避开障碍Group Behavior...转载 2018-05-21 15:00:52 · 578 阅读 · 0 评论 -
Unity常用API(感觉挺实用的)
1、Event Function:事件函数 Reset() :被附加脚本时、在游戏物体的组件上按Reset时会触发该事件函数Start() :在游戏初始化时会执行一次Update() :每一帧都会运行这个方法FixedUpdate(): 会在指定帧调用该方法多少次LateUpdate(): 晚于Update的运行顺序,但是FPS和Update是一样的Awake() Start() : 都是在游戏...转载 2018-03-26 22:55:27 · 27613 阅读 · 9 评论 -
2D游戏的相机跟随 (限定边框的)
Unity版本为5.3.2这篇文章主要是实现一下2d游戏中相机的跟随首先随便创建一个2d游戏场景,然后创建一个空物体,在空物体上加上一个boxcollider2d,调整大小,使它的范围包住背景(不是包住相机),也就是图中的边框上代码:using UnityEngine;using System.Collections;public class CameraController : MonoB...转载 2018-04-08 18:22:41 · 1648 阅读 · 1 评论 -
2D游戏相机跟随
做2D游戏的时候,无非有三种模式,一种是只有竖直向上,一种是只有水平方向,一种是有水平又有竖直方向,我最近做游戏多关卡模式,不同模式就有着不一样的相机控制,按照平时的写法,也许有很多人就一下子写了三个相机脚本,现在我用了一个枚举类型来控制三个不一样的相机,贴代码:using UnityEngine; using System.Collections; public class Came...转载 2018-04-08 18:20:43 · 810 阅读 · 0 评论 -
游戏中的存档
今天想和大家分享的内容是RPG游戏中游戏存档的实现,因为最近在做一个RPG游戏的项目,所以遇到这个问题就随时记录下来,在对知识进行总结的同时可以将这种思路或者想法分享给大家,这是一件快乐而幸运的事情。我讨厌写按部就班的技术教程,因为我觉得学习是一种自我的探索行为,如果一切都告诉你了,探索的过程便会变得没有意义了。游戏存档是一种在单机游戏中特别常见的机制,这种机制是你在玩网络游戏的时候无法体验到的,...转载 2018-03-14 13:18:47 · 6523 阅读 · 0 评论 -
Unity Unet详细介绍
UNet常见概念简介Spawn:简单来说,把服务器上的GameObject,根据上面的NetworkIdentity组件找到对应监视连接,在监视连接里生成相应的GameObject.Command:客户端调用,服务器执行,这样客户端调用的参数必需要UNet可以序列化,这样服务器在执行时才能把参数反序列化。需要注意,在客户端需要有权限的NetworkIdentity组件才能调用Command命令。C...原创 2018-03-09 18:06:57 · 3096 阅读 · 0 评论 -
Unity重点知识
数据结构和算法很重要!图形学也很重要!大的游戏公司很看重个人基础,综合能力小公司看你实际工作能力,看你的Demo。 1.什么是渲染管道?是指在显示器上为了显示出图像而经过的一系列必要操作。 渲染管道中的很多步骤,都要将几何物体从一个坐标系中变换到另一个坐标系中去。主要步骤有:本地坐标->视图坐标->背面裁剪->光照->裁剪->投影->视图变换->光栅化。 ...转载 2018-03-09 18:04:54 · 722 阅读 · 0 评论 -
unity 自制摇杆
虚拟摇杆这种输入方式相信大家在手机游戏平台上已经相当的熟悉了,首先我们来简单了解下虚拟摇杆的设计原理。虚拟摇杆有一张固定的2D贴图(背景层)和一张可拖动的2D贴图(控制层)构成,默认情况下控制层在背景层的中心,我们称这个位置为初始位置,当移动控制层后移动层的位置会发生变化,此时控制层的当前位置和初始位置两点间可以计算出一个2D向量,通过这个向量我们就可以判断虚拟摇杆的移动方向。在经典的八方向摇...转载 2018-03-15 15:32:25 · 1137 阅读 · 1 评论 -
Unity 宠物跟随效果
下面的案例是实现宠物跟随的效果 下面的代码是角色移动的脚本using UnityEngine;using System.Collections;public class PlayerMove : MonoBehaviour { // Update is called once per frame void Update () { //按W键 前进 ...原创 2018-03-15 15:23:29 · 1466 阅读 · 0 评论 -
Unity中实现UGUI中的UI托拽功能
有些时候我们需要将打开的窗口进行托拽,一下脚本就可以实现using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;using UnityEngine.EventSystems;/// <summary>/// 主要用于窗口的拖动、、应用鼠标按下还有拖动...原创 2018-04-10 14:15:54 · 621 阅读 · 0 评论 -
Unity中 噪音算法
主要是利用Unity的 Mathf.PerlinNoise 函数(柏林噪声)的不同寻常的功能。https://docs.unity3d.com/ScriptReference/Mathf.PerlinNoise.html 其中一个实例代码是生成 柏林噪声图片。 第二个实例是动画效果(看似y轴的随机运动,对随机的动画来讲很好啊!)。 这样设置 得到: 1、Ma...转载 2018-04-16 12:55:46 · 3291 阅读 · 0 评论 -
Unity打包Apk的详解
小白的经验之谈,如有不足,欢迎指出第一步:如果想要让Unity可以打包Apk,你需要先下载一个JDK7以上(包括7)的版本。 并且必须是64位。 安装时请记住您的安装路径 下面是分享的JAVA的jdk链接:https://pan.baidu.com/s/1Dw1d12RCp_i8MstGlDMHdQ 密码:llu0下载完成后,进行解压: 一定要放在自己能记住的地方,并且不能有中文路径安装JDK 选...转载 2018-05-07 22:47:12 · 4847 阅读 · 0 评论 -
协程停止的方法
StopCoroutine的几种方法:StopCoroutine(string method):StartCoroutine("Test");StopCoroutine("Test");StartCoroutine("Test2",1);StopCoroutine("Test2");123456StopCoroutine(Coroutine routine)以下这样调用停不掉Corout...原创 2018-04-27 12:44:23 · 3956 阅读 · 0 评论 -
Windows下SVN回滚到旧版本(TortoiseSVN)
当发现新提交的代码有问题,然后想将某个旧的版本作为最新的版本时,可以使用回滚,操作步骤如下:1. 签出(CheckOut)最新版本的代码到电脑中(不能做任何修改)2. 执行TortoiseSVN的Show log操作, 在新签出的文件夹上右键,TortoiseSVN -> Show log, 如下图: 3. 回滚,这里有2种类型的回滚 3.1. 直接回滚...原创 2018-05-10 22:59:35 · 1297 阅读 · 0 评论 -
C# partial 关键字详解
我们新建一个Windows Form时,后台代码都会自动添加如下代码:1public partial class Form1 : Form2 {3 public Form1()4 {5 InitializeComponent();6 }7 }为什么类Form1要用partial修饰?partial主要用在哪些地方? 为什么新建立的Winows Fo...转载 2018-04-25 16:41:54 · 805 阅读 · 0 评论 -
Unity消息发送机制
有童鞋可能会好奇,unity里面不是有自己的一套消息发送, 例如什么SendMessage,这...这个几乎是不能用的。为啥不能用,看看以下是网上给的解释,自己玩玩demo还是可以用,但是实际开发,是几乎不能用的。I:它实现的是一种伪监听者模式,利用的是反射机制。II:SendMessage效率不高,因为每次调用的时候都会去遍历检测自身或者子节点上要调用的方法。III:需要知道响应事件的物件,还需...转载 2018-04-25 12:00:58 · 988 阅读 · 0 评论 -
unity中世界坐标与局部坐标
unity中的坐标系统包括世界坐标(World Space),屏幕坐标(Screen Space),视口坐标(View Space)以及GUI坐标系统。 世界坐标(World Space) 场景中添加的对象,它们是以世界坐标显示在场景中,可以通过代码transform.position获得该对象的世界坐标,那么我们在检视面板(Inspector)中看到的Positio...原创 2018-04-24 11:38:41 · 1885 阅读 · 1 评论 -
Unity中各种路径
关于Unity3D在各平台上的路径问题,网上有好多的资料,如下是比较好的参考资料:1、http://www.manew.com/thread-23491-1-1.html2、http://www.xuanyusong.com/archives/2656 这里我不详细解释和路径的用法,只把各个路径对应的位置和访问方式总结一下。1、Resources路径 Resources文件夹是Unity里自...转载 2018-03-15 15:20:59 · 14056 阅读 · 0 评论