自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 问答 (7)
  • 收藏
  • 关注

原创 Unity编辑器——ExcelToJson工具V2.0

Unity ExcelToJson 实用小工具。

2023-06-13 10:22:54 341 2

原创 Untiy编辑器——Excel转Json工具

资源链接:https://pan.baidu.com/s/1RxgVUR11wj7vF48ofyuwbQ。

2023-03-20 10:53:23 1014 4

原创 Unity常用函数扩展(一)—— GetOrAddComponent()

实现获取Transform或者GameObject上的组件,若获取不到则自动添加该组件

2022-10-27 17:41:03 1773

原创 Unity3D编辑器扩展——统计代码行数

统计代码行数

2022-10-27 17:18:42 1080 1

原创 设计模式总结

设计模式七大原则1、开闭原则:对扩展开放,对修改关闭2、单一职责:每一个类应该实现单一的职责3、里氏代换原则:任何基类可以出现的地方,子类一定可以出现4、依赖倒置原则:面向接口编程,依赖于抽象而不依赖于具体,即不与具体类交互,而与具体类的上层接口交互5、接口隔离原则:每个接口中不存在子类用不到却必须要实现的方法,否则就要拆分接口6、迪米特法则:一个类对自己依赖的类知道的越少越好7、合成复用原则:尽量使用合成聚合的方式,而不是继承————————————————————————————————

2021-09-28 15:49:46 91

原创 消息分发机制的简单实现

消息分发机制:简单来说就是你触发了某个事件时,会把对应的消息分发下去,这个消息你可以选择接收或者不收,代码也不会报错。而当你在某个代码中注册了这个事件的监听,你就可以收到该事件发来的消息,但使用完要记得移除监听。代码如下:public class MyEventMsg { public delegate void DelHandler(MyMessage a); public static Dictionary<string, DelHandler&g

2021-07-30 10:17:04 528

原创 对象池的实现

对象池:就是一定数量的已经创建好的对象的集合。当需要创建对象时,先在池子中获取,如果池子中没有符合条件的对象,再进行创建新对象,同样,当对象需要销毁时,没有真正的销毁,而是将其Active设置为False,并存入池子中。避免了大量对象的创建,提高游戏性能。对象池代码实现using System.Collections;using System.Collections.Generic;using UnityEditorInternal;using UnityEngine;//对象池的管理代码

2021-07-30 09:50:55 160

原创 Unity简单粗暴式——创建脚本头部注释方法

Unity简单粗暴式——创建脚本头部注释方法在项目中创建名字为 NewScriptTemplates 的新脚本,将如下代码拷贝进去就ok了。然后再去创建新的脚本查看是否有头部注释了。using UnityEngine;using System.Collections;using System.IO;using System;using UnityEditor;public class NewScriptTemplates : UnityEditor.AssetModificationProce

2021-07-12 15:53:52 358

原创 Unity—2D跑酷类游戏(一)

实现思路2D跑酷类游戏是模拟3D场景的效果的一个过程,主要就是怎么样通过一些2D图片来呈现3D游戏的效果。在这里我主要总结了三点。在3D场景中随着障碍物的移动,其相应的坐标和大小也会发生变化。让场景动起来。3D场景中是通过给主角一个速度让游戏场景跟随运动。而在2D游戏中可以选择让场景动起来(因为所谓的动是相对的,场景移动看起来就是主角在移动),因为受到各种因素的影响(比如场景中存在天空,若让主角动不好处理),我们可以选择让相对于主角的物体动起来。场景中物体的随机生成逻辑。为了游戏的趣味性,要让场.

2020-06-15 11:23:03 4225

原创 Laya2.0 3D游戏开发踩坑日记(一)——3D场景资源的导出

从Unity3D导出场景资源到Laya中laya1.x 以及到2.2之前的版本都只支持Unity5.x的版本,其他版本可能会出现问题,目前在LayaAir 2.0最新版本2.3.0beta版本中,已经适配了Unity 2018.4.7版本。下载的Unity插件要和自己所使用Laya的版本匹配,不然也会出现问题。将下载好的Unity插件导入到Unity项目中,点击点击菜单Laya...

2019-10-17 10:20:33 1473

原创 经典算法系列——递归

算法题一:求斐波那契数列的第n项这道题比较常见,是很多书上的经典案例,都比较熟悉,因此能很快写出代码。需要注意的是:案例一般会用递归求解,递归的好处是可以使代码简洁易懂。但是利用递归需要反复调用函数,进行重复的计算,有很严重的效率问题,若是作为面试题的话,显然这种解法是不会得到面试官的满意的。我们可以借用动态规划的思想来解决此问题,若是不理解什么是动态规划也无所谓。为了避免重复的计算,我们把已经...

2019-07-31 18:35:12 254

原创 重新编码字符串(秒懂)

给定一个字符串,请你将字符串重新编码,将连续的字符替换成“连续出现的个数+字符”。比如字符串AAAABCCDAA会被编码成4A1B2C1D2A。输入描述:每个测试输入包含1个测试用例每个测试用例输入只有一行字符串,字符串只包括大写英文字母,长度不超过10000。输出描述:输出编码后的字符串输入例子1:AAAABCCDAA输出例子1:4A1B2C1D2A...

2019-07-20 22:18:03 952

原创 TCP/IP运输层(一)

1.OSI的七层协议7 应用层6 表示层5 会话层4 运输层3 网络层2 数据链路层1 物理层2.TCP/IP的四层协议4 应用层 (各种应用层协议如TELNET,FTP,SMTP等)3 运输层(TCP或UDP)2 网际层 IP1 网络接口层3.五层协议5 应用层4 运输层...

2018-12-18 19:59:01 1756

原创 Unity3D——学习分享(十四)实现自动寻路

为了使游戏增加更多的可玩性,自动寻路功能已经是游戏中不可或缺的功能了。比如绝地求生中的人机自动寻找目标等。今天分享一个简单的自动寻路的实现,通过这节的学习,应该会对寻路有更多的了解,就可以尝试更加深层次的寻路功能的实现啦。1. 先创建一个简单的场景2.将Ground(即创建的地形)设为静态(static) 并为主角添加寻路组件3.烘焙地图,简单来说就是烘焙自动行走的路径(要注意蓝色区域...

2018-12-15 19:52:22 1590

原创 Unity3D——学习分享(十三)鼠标滚轮控制视野拉近拉远效果

通过鼠标的滚轮控制摄像机视野的拉近拉远效果游戏中常常见到视野的拉近拉远效果,比如英雄联盟中就可以通过鼠标滚轮进行视野的拉近与拉远,同时你也会发现在视野进行拉近拉远到一定程度时,在进行操作就不起作用了,因为视野的拉近拉远有一定的限制范围。所以今天分享一个摄像机视野拉近拉远的代码。代码如下:using System.Collections;using System.Collections.Ge...

2018-12-07 12:15:17 7675 6

原创 C++知识总结

1.什么是C++?c++是在c语言的基础上开发的一种面对对象的编程语言,它支持多种编程范式:面对对象编程、泛型编程和过程化编程。 应用十分广泛,常用于系统,引擎等的开发,另外还支持类、封装、重载、多态等特性。2....

2018-12-07 11:42:32 188

原创 Unity3D——学习分享(十二)场景的切换

前期准备首先准备好要切换的场景,这里就拿两个场景作为演示

2018-12-04 23:34:24 1983 1

原创 Unity3D——学习分享(十一)实例化物体

在射击类游戏中,我们每当按下发射键就会在当前位置下实例化出来一颗子弹。今天分享一下实例化的方法 Instantiate。实例化方法实例化方法 用的的参数为实例化的物体、实例化的位置以及旋转。所以预先创建一个预制体小球作为发射的子弹,然后设置实例化的位置,我这里将位置设置为主摄像机的位置,实例化出来之后给预制体添加一个向前的力使其向前运动。代码如下using System.Collec...

2018-12-03 23:14:00 1043

原创 Unity3D——学习分享(十)2D游戏背景循环制作

背景移动平时玩的2D类游戏,有的时候在需要一个动态背景,比如在太空大战的飞行游戏,它们的背景就是移动的背景,但是稍微细心点你会发现,背景虽然时刻在移动,但是背景的内容仿佛一直在循环重复。制作原理这个原理其实很简单,其实背景本身就是一张图片,它是通过不断地循环移动。我们来看一下循环移动的效果。我们可以看到在背景移到底部并回到初始位置的这段时间内,场景就出现了漏洞。我们可以通过两张背景图...

2018-12-02 22:46:12 4415 1

原创 Unity3D——学习分享(九)碰撞检测

在我们游戏开发过程中,碰撞检测函数的使用十分频繁,比如射击游戏检测子弹是否碰撞到敌人触发敌人掉血、受伤等状态,生存类游戏中常见的走到门前,通过碰撞检测来控制自动开关门等。碰撞检测函数在unity的中有两个用于碰撞检测的函数1. OnTriggerEnter(Collider other){ } 2. OnCollisionEnter(Collision collision){...

2018-12-01 20:03:56 2501 1

原创 Unity3D——学习分享(八)简单代码控制主角移动

简单的代码控制主角的移动首先先分享几个概念,方便大家对后面移动代码的理解1. Time.deltaTime它是系统变量,封装在Time类中,含义是距离上一帧所经历的时间(单位为秒)。它不受游戏帧率的影响,我们有时需要主角移动以秒为单位而不是以帧为单位,乘以Time.deltaTime就可以实现。举个简单的例子,要知道不同配置的电脑性能不同,所以每帧执行的速率也不相同,设想我们在玩赛跑游戏,配...

2018-11-29 17:36:57 1421

原创 Unity3D——学习分享(七)太阳环绕地球项目

旋转项目实例开发今天分享一个简单的关于旋转的项目实例,通过这个小项目,可以加深对Transform组件以及公有变量的的理解。 我们要做的就是月球、地球和太阳在自转的同时,月球绕地球旋转,地球绕太阳旋转的实例。1. 首先创建三个球体,分别命名为Sun、Earth、Moon,调整它们在场景中的相对位置,并适当地更改它们的缩放比例,我们都知道太阳的体积大于地球,地球的体积大于月球,所以我们可以根据常...

2018-11-27 21:32:05 7493 8

原创 Unity3D——学习分享(六)游戏的发布

前几节做了一个简单的立方体旋转,就以它为例分享下游戏的发布流程。1. 游戏场景做好后,Ctrl+S保存场景并命名。把场景放在自己创建的Scene文件夹下。2. 点击菜单 File-Bulid Settings 会出现多个发布平台,一般发布在PC平台,当然如果你要想发布在其它平台也是可以的,但是需要相应环境配置和搭建过程 。这里不再详述。3. 点击ADD Open Scenes 添加要发...

2018-11-27 14:50:41 3726

原创 Unity3D——学习分享(五)常用的系统函数

世间万物都有其规律和秩序,同样在Unity3D中调用系统函数也是有它的顺序的。下面是在Unity3D中比较常见的系统函数和一般调用的顺序:调用顺序函数名1void Awake()2void Start()3void Update()4void Fixedupdate()5void Lateupdate()6void OnGUI()...

2018-11-26 18:53:15 722

原创 Unity3D——学习分享(四)代码控制立方体的移动旋转

2018-11-25 15:02:46 7549 3

原创 Unity3D——学习分享(三)代码入门

Unity3D基础代码入门在之前我们已经讲了游戏对象的创建了,那么我们应该怎么控制它们,让它们按照我们所设想的进行一定的操作呢? 那就需要使用代码来控制他们了。先前的版本是支持JS和C#的,而最新版本中已经移除了JS语言。原本那个JS语法的存在,是为了让没接触过静态语言的新手过度用的,但后来官方发现全球只有3.6% 的用户使用了这门语言,而且其中有一部分还是Unity官方的开发人员。因此这门...

2018-11-24 19:27:37 1488 1

原创 Unity3D——学习分享(二) 给游戏对象添加材质和贴图

给游戏对象添加材质和贴图在场景中默认创建的游戏对象是白色的,那该怎样给它们添加颜色以及好看的贴图呢?添加材质首先我们在场景中创建一个游戏对象,点击游戏对象,面板的检视视图会有该游戏对象的参数和属性,在最下面有一个Default-Material,这个就是游戏对象的材质,现在显示的是默认材质。怎样创建一个自定义的材质呢?1. 首先点击在项目视图中的create按钮 添加Material 你的...

2018-11-23 11:53:25 22934 1

原创 Unity3D——学习分享(一) 游戏开发

自学游戏开发也有一段时间了,很早就想把自己所学到的知识做个笔记总结一下,但因为种种的原因一直没能坚持下来,所以现在我打算现在开始把我学到的内容总结下来,主要的目的是:把自己的所学所感记录下来,方便自己日后的查阅,温故而知新嘛通过我总结的笔记,让更多热爱游戏开发的人能够从中获得些许的帮助,从而坚定自己的游戏开发之路。

2018-11-22 20:47:43 4723

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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