自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(266)
  • 资源 (1)
  • 收藏
  • 关注

原创 角色控制器 (Character Controller)

角色控制器 (Character Controller)一、简介角色控制器(Character Controller)主要用于对第三人称或第一人称游戏主角的控制。如果要创建类人角色,可使用角色控制器 (Character Controller)。这可以是第三人称游戏 (Third Person Platformer) 中的主角色、FPS 射击者或任何敌人角色。二、基本概念第三人称游戏中的这...

2019-05-24 07:53:04 6899

原创 静态方法与实例方法的区别

静态方法与实例方法的区别对静态方法与实例方法新理解:1、静态方法常驻内存,实例方法则不是,所以静态方法效率高但占内存?事实上,他们都是一样的,在加载时机和占用内存上,静态方法和实例方法是一样的,在类型第一次被使用时加载。调用的速度基本上没有差别。2、静态方法在堆上分配内存,实例方法在堆栈上?事实上所有的方法都不可能在堆或者堆栈上分配内存,方法作为代码是被加载到特殊的代码内存区域,这个内存...

2019-05-22 09:52:55 349

原创 左手坐标系和右手坐标系以及Unity中的世界坐标系和本地坐标系

一.左手坐标系和右手坐标系左手坐标系: 伸开我们的左手, 掌心向外, 大拇指与食指成90度, 中指、无名指和小指弯曲, 大拇指指向的方向就是X轴正方向, 食指指向的方向就是Y轴正方向, 中指、无名指和小指指向的方向就是Z轴正方向。右手坐标系: 伸开我们的右手, 掌心向内, 大拇指与食指成90度, 中指、无名指和小指弯曲, 大拇指指向的方向就是X轴正方向,食指指向的方向就是Y轴正方向, 中指...

2019-03-10 22:33:29 1349

原创 unity 3D 第一个shader脚本

第一个shader脚本 一个真笨的开始,一个大的向往。记录一下写的第一个shader:首先建立一个项目,然后新建一个shader ,shader内容如下:Shader "Custom/Simple"{ Properties { _Color("Base Color",Color)=(1,1,1,1) _MainTex("Base(RGB)",2D)= "white" {}...

2019-03-09 23:57:29 873

原创 unity shader编程语言 HLSL/GLSL/Cg

unity shader编程语言 HLSL/GLSL/CgShader LanguageShader Language的发展方向是设计出在便携性方面可以和C++、Java等相比的高级语言,“赋予程序员灵活而方便的编程方式”,并“尽可能的控制渲染过程”同时“利用图形硬件的并行性,提高算法效率”。Shader Language目前主要有3种语言:基于OpenGL的OpenGL Shadi...

2019-03-09 14:01:32 3357

原创 unity 3d shader初接触shader和渲染管线

shader和渲染管线shader:shader中文意思着色器,是一种较为短小的程序片段,用于告诉图形硬件如何计算和输出图像,过去用汇编语言来编写,现在也可以用高级语言来编写。Shader开发语言HLSL: 主要用于Direct3D。平台:windows。GLSL: 主要用于OpenGL。 平台:移动平台(iOS,安卓),mac(only use when you target Mac...

2019-03-09 13:56:25 322

原创 数据库原理之函数范式

关系数据库理论基础-函数范式关系模式关系模式由五部分组成,即它是一个五元组:R(U,D,DOM,F)R:关系名U:组成该关系的属性名集合D:属性组U中属性所来自的域DOM:属性向域的映像集合F:属性间数据的依赖关系集合关系模式简化表示数据依赖完整性约束的表现形式数据依赖: 函数依赖(Functional Dependency,简称FD) 多值依赖(Mul...

2018-12-12 20:28:53 254

原创 数据库原理之完整性约束AND触发器

完整性约束命名子句—CONSTRAINT例如:修改表中的完整性限制使用ALTER TABLE语句修改表中的完整性限制例如:触发器触发器是对表进行插入,更新或删除操作时自动执行的 储存过程触发器通常用于强制业务规则触发器是一种高级约束,可以定义比用CHECK约束更为复杂的约束:可执行复杂的SQL语句,可引用其他表中的列触发性特点:触发器定义在特定的表上,与表相关,自动触...

2018-12-11 13:15:53 1614 3

原创 数据库原理之数据更新AND视图

数据更新 插入数据 修改数据 删除数据插入数据插入元组例如插入子查询结果修改数据修改数据修改某一个元组的值修改多个元组的值带子查询的修改语句删除数据删除数据删除某一个元组的值删除多个元组的值删除子查询的删除语句视图虚表是一个或几个基本表(或视图)导出的表只存放视图的定义,不存放视图对应的数据基本表中的数据发生变化,从...

2018-12-10 20:38:51 943

原创 数据库原理之嵌套查询and集合查询

嵌套查询嵌套查询概述: 将一个查询块嵌套在另一个查询的WHERE子句或HAVONG短句的`条件中的查询称为嵌套查询。什么是查询块? 一个SELECT-FORM-WHERE短句称为一个查询块...

2018-12-10 19:38:26 1581

原创 数据库原理之SQL查询

什么是查询?查询产生一个虚拟表,看到的是表形式显示的结果,但结果并不真正存储,每次执行查询只是现从数据表中提取数据,并按照表的形式显示出来单表查询使用列别名改变查询结果的列标题消除取值重复的行查询条件元组IN<值表>NOT IN<值表>[NOT]LINK’<匹配串>’匹配串含通配符的字符串使

2018-12-06 20:15:34 475

原创 数据库原理之SQL概述

SQL概述SQL的特点SQL的基本概念模式定义数据表定义索引定义SQL(Structured Query Lanaguage)结构化查询语言,是关系数据库的标准语言SQL是一个通用的,功能及其强大的关系数据库语言SQL特点综合统一高度非过程化面向集合的操作方式以同一种语法结构提供多种使用方式语言简洁,易学易用SQL基本概念SQL支持关系数据库三级模型结...

2018-12-06 11:12:16 903

原创 数据库原理之关系数据库关系运算

关系数据库关系运算选择投影链接除运算选择运算选择运算是从关系R中选取使逻辑表达式F为 真的元组,是从行的角度进行的运算投影运算投影操作主要是从列的角度进行运算,但投影之后不仅取消可原关系中的某些列,而且还可能取消某些元组(避免重复行)连接运算连接运算又有等值连接,自然连接,半连接,左外连接,右外连接,全外连接。等值连接自然连接半连接R和S自...

2018-12-06 10:10:31 18615

原创 数据库原理之关系数据库

关系单一的数据库结构-关系现实世界的实体以及实体间的各种联系均用关系来表示逻辑结构-二维表从用户角度,关系模型中的数据的逻辑结构是一张二维表建立在集合代数的基础上域丶笛卡尔积丶关系域域是一组具有相同数据类型的值的集合。例如:整数,实体,介于某个范围的整数,{’男‘,’女‘}等笛卡尔积给定一组域D1,D2,D3,…,Dn,这些域中可以有相同的D1,D2,D3,…,D...

2018-12-05 20:54:20 177

原创 数据库原理之数据库常用数据模型

在正题之前先来看一下实体型之间的联系对于两个实体型之间的联系一对一联系(1:1)实例: 一个班级只有一个正班长 —一个班长只有一个班中任职定义: 如果对于实体集A中的每一个实体,实体集B中至多有一个(也可能没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1一对多联系(1:n)定义:如果对于实体集A中的每一个实体,实体集B中有n个实体(n>...

2018-12-05 19:58:15 676

原创 数据库原理之数据库的基本概念

数据库相关概念数据(Data)数据库(Database)数据库管理系统(DBMS)数据库系统(DBS)数据库管理员数据数据(Data)是数据库中存储的基本对象数据的定义:描述事物的符号记录数据的类型:文本,图像,图形,音频,视频,学生档案记录,货物的运输情况等数据的特点:数据与其语义是不可分的数据库数据库的定义:数据库(Database,简称DB)是长期存储在计...

2018-12-01 10:53:45 1463

原创 Unity之序列化字段[SerializeField] [HideInInspector]

[HideInInspector]表示将原本显示在面板上的序列化值隐藏起来。[SerializeField]表示将原本不会被序列化的私有变量和保护变量变成可以被序列化的,那么它们在下次读取的值就是你上次赋值的值。注释:如果a是公有的序列化变量。 (1)如果你想要在面板中看到变量a,那么用: public int a; (2)如果你不想在面...

2018-11-15 19:40:29 610

原创 Unity3D的Time类(UnityEngine.Time)详解

Time.time:(只读)表示从游戏开发到现在的时间,会随着游戏的暂停而停止计算。Time.timeSinceLevelLoad:(只读)表示从当前Scene开始到目前为止的时间,也会随着暂停操作而停止。Time.deltaTime:(只读)表示从上一帧到当前帧时间,以秒为单位。Time.fixedTime:(只读)表示以秒计游戏开始的时间,固定时间以定期间隔更新(相当于f...

2018-09-20 19:13:18 2048

原创 unity3D OnTriggerEnter和OnCollisionEnter区别

OnTriggerEnter和OnCollisionEnter的区别测试:如果两个物体A,B 两者都有碰撞体collider(Box Collider,Sphere Collider,Capsule Collider等)A,B都有刚体(Rigidbody)A或者B中有一个勾选isTrigger或者两者都勾选isTrigger A和B都可以进入OnTriggerEnter方法,但是...

2018-08-12 20:06:51 2945

原创 unity3D中如何分别获取pc端鼠标的滑动方向和andriod移动平台上手指的滑动方向

unity3D中获取pc端鼠标的滑动方向//枚举方向public enum SlideDir{ right, left, top, bottom, nullpoint}public class GameManager : MonoBehaviour{ public SlideDir dir = SlideDir.nullpoin...

2018-08-11 17:29:26 1134 1

原创 Unity3D第三人称Camera视角旋转实现

Unity3D第三人称Camera视角旋转,实现对player观察的实现,效果图如下(player and Scene 有点lou):内容知识总结:Input.GetAxis():该方法用于在Unity3D中根据坐标轴名称返回虚拟坐标系中的值,通常情况下,使用控制器和键盘输入时此值范围在-1到1之间。脚本如下:using UnityEngine;using System....

2018-08-11 10:43:57 10909 1

原创 unity延时方法Invoke和InvokeRepeating

MonoBehaviour里面有两个内置的延时方法InvokeInvoke(methodName: string, time: float): void; methodName:方法名 time:多少秒后执行 Invoke() 方法是 Unity3D 的一种委托机制如: Invoke("SendMsg", 5); 它的意思是:5 秒之后调用 SendMsg() 方法;...

2018-08-07 08:34:23 1335

原创 C#继承的执行顺序以及override关键字

例1:public class A { public A() { Console.WriteLine('A'); } public virtual void Fun() { Console.WriteLine("A.Fun()"); ...

2018-08-06 09:14:21 1650 1

原创 Unity 3D Random类

Unity 3D - Random类 Random类可以用来生成随机数。Random成员变量 : seed : 随机数生成器种子 value 返回一个0~1之间随机浮点数,包含0到1 insideUnitSphere: 返回位于半径为1的球体内的一个随机点(只读) insideUnitCircle: 返回位于半径为1...

2018-08-03 14:06:31 1246

原创 Unity 3D 序列化(Serialize)

什么叫序列化?序列化可以用于跨平台。我们都知道对象是暂时保存在内存中的,不能用U盘考走了,有时为了使用介质转移对象,并且把对象的状态保持下来,就需要把对象保存下来,这个过程就叫做序列化.什么叫反序列化?就是再把介质中的东西还原成对象,把石子还原成人的过程。在进行这些操作的时候都需要这个可以被序列化,要能被序列化,就得给类头加[Serializable]特性。通常网络程序为了传输...

2018-08-02 16:44:54 1740

原创 Unity3d 设计模式之单例模式

什么是单例模式?单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。 通过单例模式可以保证系统中,应用该模式的类一个类只有一个实例。即一个类只有一个对象实例什么时候能用到单例模式?比如说存在一些个模块我们需要在整个游戏中随时随地的访问他,就可以用到单例模式了。实际开发中比如做为管理UI的脚本UIManager,管理玩家信息的脚本PlayerManag...

2018-08-02 16:16:02 540

原创 unity3D Collider 碰撞器

unity3D Collider 碰撞器碰撞器的种类:1、盒碰撞器(Box Collider)2、椭圆碰撞器(Sphere Collider)3、胶囊碰撞器(Capsule Collider)4、车轮碰撞器(Wheel Collider)专用于车辆5、网格碰撞器(Mesh Collider)6、地形碰撞器(Terrain Collider)盒碰撞器(Box Co...

2018-08-02 09:34:54 9016

原创 unity3D 初识 IEnumerator and yield

Unity 3D IEnumerator(协程)什么是协程? 在主线程运行时同时开启另一段逻辑处理,来协助当前程序的执行。可以用来控制运动、序列以及对象的行为。 简单来说,协程就是:你可以写一段顺序的代码,然后标明哪里需要暂停,然后在下一帧或者一段时间后,系统会继续执行这段代码。为什么需要协程? 在游戏中有许多过程(Process)需要花费多个逻辑帧去计算。...

2018-08-01 16:51:46 661

原创 Unity 物体移动的三种方式

在unity3d中,有多种方式可以改变物体的坐标,实现移动的目的,其本质是每帧修改物体的position。通过Transform组件移动物体Transform 组件用于描述物体在空间中的状态,它包括 位置(position), 旋转(rotation)和 缩放(scale)。 其实所有的移动都会导致position的改变,这里所说的通过Transform组件来移动物体,指的是直接操作Tr...

2018-07-28 16:43:46 7071

原创 Unity3D预设Prefab与实例Instantiate的基本使用

Unity3D预设Prefab与实例Instantiate的基本使用在Unity3D的工程建设中,Prefabs(预设)是最非常用的一种资源类型,是一种可被重复使用的游戏对象。特点1:它可以被置入多个场景中,也可以在一个场景中多次置入。特点2:当你在一个场景中增加一个Prefabs,你就实例化了一个Prefabs。特点3:所有Prefabs实例都是Prefab的克隆,所以如果实在...

2018-07-28 15:41:10 4254

原创 Unity3D之Input输入事件总结

一、Unity的基本输入事件(最常用):鼠标点击:Input.GetMouseButtonDown(0) //鼠标左键按下 Input.GetMouseButtonDown(1) //鼠标右键按下 Input.GetMouseButtonUp(0) //鼠标左键抬起 Input.GetMouseButtonUp(1) ...

2018-07-28 15:24:36 1425

原创 unity 3D 入门--SiKi学院课程之打砖块

- **GetMouseButtonDown(int button)** 方法类型:静态。 参数:`button`—表示鼠标上的键,0:表示鼠标左键,1:表示鼠标右键,2表示鼠标中键,3:表示鼠标上键,4:表示鼠标下键(其中3和4件不经常用,因为有的鼠标上没有这两个键)。 返回值:bool—当鼠标上某个键被按下之后

2018-07-28 14:24:14 2273

原创 Cocos creator入门------声音的加载以及音量的控制

Cocos creator入门声音的加载以及音量的控制声音的控制以及Silder(滑动条)的创建: Silder(滑动条)创建:在层级管理器中 ->右键创建节点 ->点击创建UI节点 ->点击Silder(滑动条) 在属性检查器中将slider EVents 数值有0设为1,并将cc.node设置为加载了相应组件的物体,并将setvolum()设置为slider组件,从...

2018-07-06 21:22:06 9058

原创 Cocos creator入门------UI节点复选按钮

Cocos creator入门UI节点复选按钮首个复选按钮建立:在层级管理器中 ->右键创建节点 ->点击创建UI节点 ->点击Toggle(复选按钮) 怎么实现多个复选按钮的排列问题呢? 在层级管理器中 ->右键创建空节点,在空节点的属性检查器中点击添加组件->点击添加UI组件Layout,并选择type,设置SpacingX(x轴间距 )为10。

2018-07-06 21:08:31 3688

原创 Cocos creator入门------按钮事件

编码测试按钮的点击事件,点击按钮目标图片旋转找到组件挂在的物体 拖动代码文件到物体的属性检查器,即将组件挂在物体上。找到物体上的组件组件如下: 将物体(精灵)拖拽到mynode后面的None中,将文字Label拖拽到mylabel后面的none中,将按钮button拖拽到mytoggle后面的None中。找到组件中的方法 如具体代码中的 th...

2018-07-06 20:44:30 5687

原创 Cocos creator入门------预制体以及计时器

直接贴代码吧// 预(提前)制体 @property(cc.Prefab)//预制体类型 myPrefab:cc.Prefab=null;//需要被克隆的对象 //程序运行后加载对象 start(){ var loadobj =cc.instantiate(this.myPrefab);//将预制体克隆到...

2018-07-06 20:25:41 5027

原创 Cocos creator入门------鼠标触摸和键盘事件

鼠标事件代码如下: @property(cc.Node) myNode:cc.Node=null;//需要拖拽赋值 //检测鼠标点击 //初始化后监听鼠标事件 start() { this.myNode.on(cc.Node.EventType.MOUSE_DOWN, ...

2018-07-06 20:12:52 3883

原创 Cocos Creator入门------生命周期函数

Cocos Creator 为组件脚本提供了生命周期的回调函数。用户通过定义特定的函数回调在特定的时期编写相关 脚本。目前提供给用户的声明周期回调函数有:onLoadstartupdatelateUpdateonDestroyonEnableonDisableonLoad onLoad组件脚本的初始化阶段,我们提供了 onLoad 回调函数。onLoad 回调会...

2018-07-06 20:04:49 3315

原创 cocos2d-x getVisibleSize、getContentSize、getWinSize函数

在cocos2d-x里CCNode对象有缩放的方法setScaleX和setScaleY。所以在获取对象大小的时候必须根据情况明确指定获取对象原始大小,还是缩放后的大小。cocos2d::Size size1 = cocos2d::CCDirector::getInstance()->getWinSize();float scaleX=size1.width/768;float ...

2018-05-05 09:33:10 2169

原创 cocos2d-x 3.0 ref类分析

ref类是cocos2dx引擎的基类 许多类都继承于它 那么为什么呢? 我们先看看源码class CC_DLL Ref{public://计数加1 void retain();//计数减1,如果为0,删除对象 void release();//添加到对象池中,别忘了PoolManager(对象池管理器) 管理AutoreleasePool(对象池),Au...

2018-04-29 18:05:56 448

新手简单酷跑游戏模型

刚学习unity3d,写了一个简单的酷跑游戏练习一下碰撞检测以及摄像机的移动等。仅仅练习,很low。

2018-08-12

空空如也

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

TA关注的人

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