自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 UE5.2.1插件《DigitalCityControl》细节说明

《DigitalCityControl》插件使用说明

2023-10-30 16:30:23 108

原创 第 03 章 线性表-01

1.线性表的定义0个或多个数据元素的有限队列若将线性表记为(a1,…ai-1,ai,ai+1…an),则表中ai-1领先于ai,ai领先于ai+1,称ai-1是ai的直接前驱元素,ai+1是ai的直接后继元素。线性表元素的个数n(n>=0)定义为线性表的长度,当n=0时,成为空表。在较复杂的线性表中,一个数据元素可以由若干个数据项组成。2.线性表的抽象数据类型初始化 。判断是否为空表。清空。得到线性表中的第i个元素。查找线性表中的与给定值e相等的元素,如果查找成功,返回该元素

2020-05-31 17:45:07 279

原创 第 02 章 算法

1.算法的特性算法具有5个基本特性:输入、输出、有穷性、确定性和可行性。1.1 输入输出算法具有零个或多个输入。算法至少有一个或多个输出。1.2 有穷性指算法在执行有限的步骤之后,自动结束而不会出现无限循环,并且每一个步骤在可接受的时间内完成。1.3 确定性算法的每一步骤都具有确定的含义,不会出现二义性。1.4可行性算法的每一步必须是可行的,也就是说,每一步都能够通过执行有限次数完成。2.算法设计的要求好的算法,应该具有:正确性、可读性、健壮性、高

2020-05-30 18:19:24 343

原创 第 01 章 数据结构绪论

数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。数据结构:是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科。1.基本概念和术语1.1数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。它不仅包括整型、实数等数值类型,还包括字符及声音、图像、视频等非数值类型。1.2 数据元素是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理。也被称为记录。1.3 数据项一个数据元素可以由若干个数据项

2020-05-28 14:58:58 243

原创 U3D Rigidbody_2_属性篇_04_collisionDelectionMode

collisionDelectionMode刚体的碰撞检测模式。用于设置刚体以进行连续碰撞检测,可避免快速移动的对象在未检测到碰撞的情况下穿过其他对象。为获得最佳效果,对于快速移动的对象,请将该值设置为 CollisionDetectionMode.ContinuousDynamic ;对于需要与之碰撞的其他对象,将该值设置为 CollisionDetectionMode.Continuous...

2020-01-07 13:30:31 233

原创 U3D Rigidbody_2_属性篇_04_collisionDelectionMode

collisionDelectionMode刚体的碰撞检测模式。用于设置刚体以进行连续碰撞检测,可避免快速移动的对象在未检测到碰撞的情况下穿过其他对象。为获得最佳效果,对于快速移动的对象,请将该值设置为 CollisionDetectionMode.ContinuousDynamic ;对于需要与之碰撞的其他对象,将该值设置为 CollisionDetectionMode.Continuous...

2020-01-07 13:25:50 305

转载 U3D Rigidbody_2_属性篇_03_centerOfMass

2020-01-07 12:16:44 994 1

原创 U3D Rigidbody_2_属性篇_02_angularVelocity

PropertiesangularVelocity: 刚体的角速度矢量(以弧度/秒为单位)在大多数情况下,不应该直接修改它,因为这可能导致行为失真[1]创建4个爆炸点,按下 R 键触发爆炸效果,将处于4个爆炸点中间的胶囊体弹起。在它们身上挂载好爆炸脚本。using UnityEngine;public class ExplosionPoint : MonoBehaviour{ ...

2020-01-07 12:04:58 2853

原创 U3D Rigidbody_2_属性篇_01_angularDrag

Properties1.angularDrag : 对象的角阻力对象的角阻力。角阻力可用于减慢对象的旋转。阻力越大,旋转越慢。[1].创建爆炸点(4个),当按下“R”键时,产生爆炸力。using UnityEngine;public class ExplosionPoint : MonoBehaviour{ private float radius; private ...

2020-01-07 11:16:21 1216

原创 U3D Rigidbody_1_基础篇

Rigidbody 学习笔记Rigidbody: 通过物理模拟控制对象的位置向对象添加 Rigidbody 组件后,其运动将受到 Unity 物理引擎的控制。即使不添加任何代码,Rigidbody 对象也受到向下的重力,并在与其他对象碰撞时作出反应(如果也存在适当的 Collider 组件)Rigidbody 还有一个脚本API,让您能够向对象施加力,并以逼真的物理效果进行控制。例如,可以根...

2020-01-07 10:27:20 285

原创 U3D Physics.Raycast

前言:Physics.Raycast有多大15+的重载,本篇博文将比较常用的用法做一下分析。一、Physics.Raycast(ray, out hit, 600, layerMask, QueryTriggerInteraction.Collide)

2019-07-25 19:54:03 351

原创 U3D 关于Lerp

前言:实际项目开发过程中过,我们经常会使用到:Vector3.Lerp ()、Mathf.Lerp() …等方法。而此类方法返回的值其实是线性增长。但很多朋友却做成了弹性增长,甚至不曾知晓。一、创建相应的对象。1.创建两个Cube,分别命名为Cube_One、Cube_Two.2.创建地面Plane。3.图示二、创建脚本 “LerpStudy.cs”1.脚本示例:using Syst...

2019-07-24 21:57:12 344

原创 U3D Physics_gravity

本章讲解全局物理属性:Physics.gravity一、创建相应的GameObject:1.创建Plane(地面)2.创建Cube(立方体)图示:二、创建脚本1.创建脚本 Gravity.cs,并挂载到Cube中,脚本如下:using System.Collections;using System.Collections.Generic;using UnityEngine;...

2019-07-24 20:08:02 1421

原创 U3D 自定义宏 1

前言:自定义宏的功能开发是必要的。例如,当我们在编辑器模式下,进行调试的时候会打应很多日志,而当发布了客户端,发布模式的时候,就不能打印这些日志。1.创建"Menu.cs"脚本,脚本存储在Editor文件夹using UnityEditor;using UnityEngine;public class Menu{ [MenuItem("Dean27Tools/Settings"...

2019-07-16 11:59:55 322

原创 U3D 获取玩家设备标识符和设备型号

前言:一般在MMORPG游戏的开发过程中,会在新注册或者登陆的时候,获取玩家设置标识符和设备型号。一、直接给出脚本using UnityEngine;public class DeviceUtil{ /// <summary> /// 获取设备标识符 /// </summary> public static string Devic...

2019-07-16 10:42:06 1453

原创 U3D 拓展编辑器 Project视图 3.拓展布局

本篇博客内容说明在Project视图中,当用鼠标选择了一个资源后,右下角会出现扩展后的Click按钮,点击这个按钮则会在Console窗口中打印该资源的名字。1.完成示例截图:2.脚本示例:[InitializeOnLoadMethod]//表示此方法会在C#代码每次编译完成之后首先调用 private static void CreateLayout() { ...

2019-06-11 12:10:46 267

原创 U3D 拓展编辑器 Project视图 2.创建菜单

本篇博客内容说明在Project视图下,点击了Create按钮后,会弹出资源创建菜单。若我们进行了创建的扩展,比如扩展了My Create菜单,里面拥有Cube和Sphere选项。则我们点击的时候,会在Hierachy视图创建对应的资源。脚本如下:[MenuItem("Assets/Create/My Create/Cube", false, 1)] private static...

2019-06-10 11:56:12 246

原创 U3D 拓展编辑器 Project视图 1.右键菜单扩展

本篇博客内容说明在Project视图下,若我们选择了某个物体,就可以右键进行相应的操作。例如删除、打开位置等等。而这个右键出来的菜单,我们可以进行功能扩展。另外,需要注意到的是,我们必须将此类编辑器脚本放在“Editor”文件夹下。因为编辑器的脚本仅限于编辑模式下发生作用,而不在正式的游戏包中运行。并且,"Editor"文件夹的存放位置十分灵活,它可以作为多个目录的子文件夹存在。例如,按照功...

2019-06-07 10:16:15 578

原创 U3D 角色控制器(Character Controller)

一、角色控制器主要用于第三人称或者第一人称的控制,不使用Rigidbody。二、属性1.Slope Limit(坡度限制):限制角色控制器可以攀爬的坡度的值。2.Step Offset (步偏移):只有当台阶的高度小于该值时,角色才可以上楼。该值不应该大于角色控制器的高度(Height),否则会产生错误。3.Skin Width(皮肤宽度):两个碰撞器相触碰时,可以互相穿透彼此的值。如...

2019-05-03 10:43:43 1163

原创 MMO_3_观察者设计模式_3_底层脚本和实例应用

前言:“在对象间定义一种一对多的依赖关系,以便当某对象的状态改变时,与它存在依赖关系的所有对象都能够接收到通知并自动进行更新。”----------摘自《游戏编程模式》。图示观察者模式:一、创建Singleton.cs脚本。因为我们的观察者模式将会用到单例,所以创建Singleton.cs脚本,实现单例泛型。因为Unity是单线程,所以不必加锁,代码如下:public class Si...

2019-04-05 19:15:52 302

原创 MMO_3_观察者设计模式_2_委托的引入

前言:这章我们将修改一下脚本,加入委托的使用。然后在下一篇文章中,我们将真正的去学习观察者设计模式。一、创建“SceneController.cs”脚本1.创建一个空物体,修改名字为:“SceneController”,并创建脚本“SceneController.cs”,将我们的角色初始化放在这个脚本中。2.脚本如下:using UnityEngine;public class Sce...

2019-04-05 17:19:12 393

原创 MMO_3_观察者设计模式_1_为何使用此模式

前言:在我们进行项目开发中,经常会涉及到消息的传递。例如,玩家受到攻击,从而引发:1.屏幕左上角的血条减少,2.存储角色信息的脚本做相应处理,3.角色头上的血条减少,4.如果还是网络游戏的话,组队窗口里血条也会有变化。图示:那么根据设计思路,我们来写一个《没有》《观察者设计模式》的实现方式。一、创建相应的对象和脚本。1.创建空物体,将其命名为:UI_Root_01,这个是屏幕左上角的血量信...

2019-04-05 16:15:12 310

原创 MMO_2_功能开发阶段_2_相机的控制(版本_V1.0)

前言:相机的控制是一个比较复杂的过程,尤其是在3D游戏中。Unity的资源商店里有很多摄像机插件,我也使用过。但是因为大部分都封装了代码,看不到里面的内容,那么有时候想修改功能却不是很方便。这里我将逐步的完成摄像机的控制,这个是初始版本,我会在将来逐步完成相机的功能。一、摄像机的结构1.相机的移动2.相机的旋转3.相机的缩放4.真正相机的位置a.首先创建一个空物体,并且命名为:“C...

2019-03-29 19:29:10 346

原创 MMO_2_功能开发阶段_1_角色的控制(版本_V2.0)

**前言:目前我自己的项目做得有点混乱。以前在公司工作的时候,因为开发任务都是由上级派发下来的,派发什么任务就去做什么。所以当我一个人尝试着做独立项目的时候,竟然有一点毫无头绪。这篇文章我将会总结一下简单的角色控制的代码,在实际的项目中,还应该引入FSM角色状态机去进一步的完善角色的控制。那么,接下来的开发任务就是:简单角色控制->摄像机控制->引入FSM。这三个功能完成后,我将进行...

2019-03-29 17:51:07 423

原创 MMO_1_准备阶段_6_委托

关于灵活运用委托是非常重要的,并且在游戏开发的过程中,游戏的底层框架或者是逻辑层都会大量的用到委托,并且需要去封装它。关于委托的图示:一、多个发布者,一个监听者其实关于这个例子,我们再之前的箱子的章节中有用到。未完待续。...

2019-02-24 19:54:25 246

原创 MMO_1_准备阶段_5_协程的使用

代码示例:using System.Collections;using System.Collections.Generic;using UnityEngine;public class SceneCtrl : MonoBehaviour { private void Start() { //开启协程 StartCoroutine(Tes...

2019-02-24 16:07:36 178

原创 MMO_1_准备阶段_4_三种单例的写法和使用

前言:之前我总结过很多次的单例的写法,并且在另外一个论坛上些发表过文章,这里我就把之前写的重新总结一下(其实就是搬运)单例有很多种写法,有比较粗暴的,也有稍许复杂一点的,在我开发和学习的过程中,我总结了3种情况下的单例的写法和用法。一、不继承Monobehaviour的单例这种单例是不挂载到GameObject上的,下面是详细的代码:public abstract class Single...

2019-02-24 14:38:44 238

原创 MMO_1_准备阶段_3_预设、射线的搜索

一、创建箱子1.首先创建脚本:ScenesCtrl.cs,并且将脚本挂载到主摄像机上。2.ScenesCtrl.cs脚本的内容如下:public class SceneCtrl : MonoBehaviour { /// &amp;lt;summary&amp;gt; /// 箱子的预设 /// &amp;lt;/summary&amp;gt; [SerializeField] ...

2019-02-22 18:50:27 193

原创 MMO_1_准备阶段_2_层和Tag

接下来梳理一下层和Tag的知识点。一、层在我们还是初学者的时候,会比较少的关注什么是“层”。假如我们实现一个功能:1.物体A 能够和 地面Ground 发生碰撞。2.物体B 能够和 地面Ground 发生碰撞。3.物体A 与 物体B 之间不能发生碰撞。...

2019-02-22 14:53:59 288

原创 MMO_1_准备阶段_1_角色的控制(简单版_V1.0)

标题前言:这个阶段准备写一个角色状态机,而在写角色状态机的时候,我准备从最简单的操作物体的移动旋转开始。紧接着梳理一下层、Tag和碰撞的知识点,进而再实现角色状态机。...

2019-02-21 11:00:20 363

空空如也

空空如也

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

TA关注的人

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