XM

不玩游戏的游戏开发者

Unity3D相关知识点笔记汇总

这篇文章将作为一些平时的小知识点笔记来记录,如果有错误望指出来,也欢迎大家在评论底下分享你们的笔记。 1.检测点击或者触摸到UI。 public static bool CheckClickUI() { bool isClickUI = false; ...

2018-09-19 17:02:09

阅读数 550

评论数 3

Unity2017新功能Tilemap地图编辑器的数据拓展和动态生成

在我来4399之前的上一家公司,我做了一个2D的对战游戏,地图编辑器的做法是用格子图片的预设一个个拼接成一张地图,每个格子上可以设置该格子的数据,比如图片名字,tile坐标,是否可通过,是否可销毁,是否是陷阱等等,具体做法就是把所有图片的预设都编一个id,然后在当前tile上填上对应的id,最后保...

2018-05-21 15:59:26

阅读数 6061

评论数 15

Unity3D游戏框架之dll反编译和混淆

随着Visual Studio 2019正式版的发布,加上Unity2018.3.x版本的更新迭代,我又有了尝新的欲望了,哈哈哈! 借着这个契机,我有了重新整理框架的想法了,就是把框架编译成动态链接库dll,并且我把电脑系统还原了,所有的环境都将是最新的。 安装所有最新的环境 Visua...

2019-04-17 02:29:18

阅读数 56

评论数 1

Unity3D UGUI Toggle的onValueChanged拦截拓展

Toggle真的是让人又爱又恨,它既有和ToggleGroup组合搭配的方便,又有一些不可控的情况,我就在项目中遇到了一个棘手的问题。 我们常常用到Toggle的onValueChanged改变事件,它很方便,即可改变自己状态,又可以通知同一个分组内的Toggle改变对应的状态,但是有时候我们需...

2019-04-11 11:50:38

阅读数 45

评论数 0

Unity性能优化之对象池管理器PoolManager

简介 什么是对象池?顾名思义,就是存放实例对象的池子,即缓冲区。一般对象池在初始化时会包含着若干个实例对象,当我们需要时便从池子里取出来,当不需要时便放回对象池里面。使用对象池不需要频繁的产生和销毁实例对象,当对象池中的实例对象不够用时才会继续产生实例对象,这大大的节省了性能。所以在很多频繁使用...

2019-04-09 15:40:09

阅读数 58

评论数 0

Unity2018新功能之Packages介绍

博主怀着激动的心情更新了一下Unity2018.2.0版本,听说这个版本很牛逼,更新了很多新的功能。 安装完后,打开Unity首先发现和之前版本有所不同的是,Project窗口多了一个Packages的目录,里面有好几个熟悉的名字,像ads,TextMesh。我一开始表示不懂为什么会有个东西:这...

2019-04-02 09:33:29

阅读数 8914

评论数 1

Unity2018新功能之Tiny Mode介绍

目录 介绍 安装 使用 创建实体组 创建实体 创建自定义组件 创建预设 项目资源的生成报告 和常规的Unity开发模式的差别 脚本 介绍 Unity 2018.3.0发布之后我便迫不及待的体验了一把Tiny Mode。那什么是Tiny Mode呢? Unity的Tiny ...

2018-12-15 23:30:45

阅读数 3912

评论数 2

优质代码编程

这篇文章是 夏桑老中医(巨人网络的帧同步大佬) 整理分享给我的,我觉得有必要分享一下,都是经验,大学的课本根本没有的。   1. 保持松散耦合 1.1 耦合度 表示类与类之间或者子程序与子程序之间的紧密程度。 1.2 松散耦合设计 创建出小的,直接的,清晰的类或者子程序,使它们与其他类...

2018-11-23 11:59:18

阅读数 215

评论数 0

Unity3D游戏框架之概述

概述 自己做了有一段时间的游戏开发了,也总结和积累出自己的一套游戏通用基础框架。 金钱不是万能的,但没有框架是万万不能的!所谓经济基础决定上层建筑,打好基础就能轻松造轮子,而基础就是框架,框架就是基础。 管理器中心 游戏管理器 事件管理器 资源管理器 对象池管理器 网络管理器 场...

2018-09-26 10:05:28

阅读数 1383

评论数 4

Unity2018新功能之Entity Component System(ECS)二

在上一篇文章里,我们简单的介绍了ECS的概念和Entities的使用方法,我将在这篇文章中继续深入讲解ECS的框架。 Unity2018新功能之Entity Component System(ECS)一 首先我们先来看下面这一张图。这是我通过ECS框架创建出来的5万个Cube,FPS基本稳定在...

2018-09-21 18:13:21

阅读数 2432

评论数 4

Unity2018新功能之Entity Component System(ECS)一

Entities介绍 Entities是Unity2018新引入的一个全新游戏设计框架,我们称之为实体组件系统(Entity Component System,简称ECS),它的出现使我们能够集中精力解决实际问题:构成游戏的数据和行为。它利用了C# Job System和Burst,使我们能够充...

2018-08-30 14:21:32

阅读数 3555

评论数 0

Unity2018新功能之2D Pixel Perfect 2D完美像素

2D Pixel Perfect介绍 2D Pixel Perfect(2D完美像素),包含一个Pixel Perfect Camera(完美像素相机),可以确保像素图片在不同的分辨率下都能保持清晰的像素效果。 2D Pixel Perfect的安装 点击菜单Window &...

2018-07-25 20:23:43

阅读数 2522

评论数 4

Unity2018新功能之2D Animation2D动画

新版本中引入不少2D的新功能,我们打开资源包管理器,可以看到2D Animation,2D IK,2D Pixel Perfect,2D SpriteShape等等。 我们先来讲讲2D Animation的功能。 2D Animation的安装 点击菜单Window >...

2018-07-21 15:21:49

阅读数 5905

评论数 2

Unity2018新功能之Preset预设

Preset(预设) 我们都知道,Unity里面的预设叫Prefab,它保存了一个对象所有的属性,包括所有子对象的属性。新版本中添加了一个叫做Preset的预设,Preset保存了该属性的信息,包括Component,Asset Importer和Scriptable objects。 创...

2018-07-20 17:37:53

阅读数 1945

评论数 0

Unity3D UGUI Button同时监听点击事件和长按事件

有些游戏都会有这样一个需求,比如一个按钮点击可以进行攻击,长按又可以释放技能的需求。我们做一个类似Button的组件,只需要挂载到相应的按钮上面,即可像Button一样注册长按事件。1.我们新建一个脚本RepeatButton,继承接口IPointerDownHandler, IPointerUp...

2018-06-28 16:25:50

阅读数 1217

评论数 0

Unity3D简单的帧同步方案

公司的游戏准备上线了,我呢也在准备新项目,这几天看了一下策划文档,写了整体流程和需求接口的代码,终于有一点点时间来写自己的博客了。今天我们就来讲讲帧同步吧。...

2018-06-04 11:05:44

阅读数 2130

评论数 0

Unity3D基于事件机制的消息系统

又到了周末时间,今天没有去公司赚加班费,在家里好好休息一下?不存在的,这辈子不写代码是不存在的!今天我们来讲讲消息系统。很多刚入行的小白同学在处理类与类之间的关系时,总是比较简单除暴的处理,直接把那个类引用到这个类,把这个类引用到那个类,最后造成很多类相互引用,形成一个复杂的蜘蛛网式的引用关系,这...

2018-05-26 22:37:05

阅读数 1744

评论数 2

Unity3D简单的UI系统

Unity3d的ugui如果用得不好,非常的影响性能,可能很多人都不知道,其实ugui是基于网格模型渲染的,一个ugui组件就是一个Mesh,ui组件的Material为空,其实他是用了默认的Material,我们在运行游戏的时候Canvas回把所有ui的Mesh合并成一个大的ShareMesh,...

2018-05-24 21:47:52

阅读数 2094

评论数 0

Unity3D用状态机制作角色控制系统

为了让读者对本文知识点有一个比较清晰的了解,我制作了一张图结构图,如下图,图中以移动为例子简单的描述了状态机的基本结构,本文不对角色控制系统做全面的讲解,只对状态机的在角色控制系统中是如何运用的。1.我们先从Actor讲起。Actor作为角色脚本的基类,承载着角色的基本属性,包括角色id,移动速度...

2018-05-24 11:42:41

阅读数 2901

评论数 0

设置JDK和SDK的环境变量

===================================JDK=======================================1.系统变量→新建 JAVA_HOME 变量 。变量值填写jdk的安装目录(本人是 E:\Java\jdk1.7.0)2.系统变量→寻找 Pat...

2018-05-24 10:16:36

阅读数 383

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭