
Unity学习札记
文章平均质量分 55
BigoSprite
这个作者很懒,什么都没留下…
展开
-
Space Shooter之随机生成敌人及其优化
准备工作在Space Shooter之子弹和敌人碰撞检测、爆炸特效以及敌人的运动这篇文章中,创建好了具有碰撞检测、爆炸特效以及敌人从上往下的运动。下面创建敌人(陨石)的随机生成,一波一波的生成。注意:具有上述性质的陨石已被设置为Prefab,下面直接使用陨石的Prefab。随机生成敌人1. 在Hierarchy中新建GameObject,并命名为GameController,它的作用是原创 2016-04-25 20:50:55 · 5819 阅读 · 0 评论 -
Space Shooter之控制陨石随机旋转
思路:如何让陨石随机旋转,这里陨石是3D模型。在Update ()函数中调用GetComponent().transform.rotation = Random.rotation;得到的效果是,陨石快速随机飞速的运动,这不是我们想要的。我们可以在Start方法中调用Vector3 GetComponentRigidbody>().angularVelocity; //通过刚体获原创 2016-04-24 12:10:26 · 1945 阅读 · 0 评论 -
Space Shooter之子弹和敌人碰撞检测、爆炸特效以及敌人的运动
原始状态飞船现在能够发射子弹,以及移动等,但是可以看到子弹碰撞到陨石时,并没有发生爆炸或者销毁等等现象。下面进行设置:原创 2016-04-24 12:39:54 · 9008 阅读 · 0 评论 -
制作:图片数字--->数字字体
需求分析在开发游戏时,有时候需要把数字型图片转换为数字字体,以方便的在脚本中直接使用数字就可以完成数字以“图片”的形式显示在游戏画面中。制作流程1. 准备好游戏需要的数字资源,有十个数字,0, 1, ...., 9,它们的格式是png,并带有透明度。如下图所示:2. 把这些图片转化为某种格式的文件,以支持数字字体;需要的软件是:bitmapfont.exe;软件界面如下:原创 2016-06-02 22:45:41 · 3631 阅读 · 0 评论 -
制作:数字字体Prefab
需求分析把上篇博文《制作:图片数字--->数字字体》中的两个文件制作为字体的Prefab。使得该Prefab就是一个字体文件,它像常规的字体文件(比如Arial字体)一样。制作流程1. 把上面两个文件导入到Unity中,右键其中任何一个文件,打开NGUI,具体设置如下图所示:进入Bitmap Font Maker,具体设置如下:2. 使用该字体原创 2016-06-02 23:36:31 · 712 阅读 · 0 评论 -
NGUI--->制作血条UI
需求分析本篇博文拟实现类似英雄联盟中英雄头上的血条,但由于图片资源有限,仅制作像这样渣效果。该血条有前景图片(红色),背景图片(黑色)。注意:先利用NGUI把前景和背景图片资源创建到图集中,以方便使用。原创 2016-06-03 20:09:36 · 1443 阅读 · 0 评论 -
血条HpBar跟随敌人
需求分析在上节NGI--->制作血条UI中,已经制作好了血条UI即HpBar, 那么本节实现HpBar跟随敌人进行移动。具体实现1. 首先导入NGUI_HUD_Text_v1.11.unitypackage2. 在UI Root下创建一个空的GameObject,并命名为HpPoint原创 2016-06-03 21:05:29 · 2319 阅读 · 0 评论 -
主角受伤处理:动画Animator & 血量减少的显示
主角受伤:动画Animator & 血量减少的显示原创 2016-06-04 16:44:14 · 2009 阅读 · 0 评论 -
主角受伤处理:屏幕上显示血红效果
主角受伤处理:屏幕上显示血红效果原创 2016-06-04 16:45:15 · 7843 阅读 · 0 评论 -
敌人受伤处理:受伤时伤害的显示---HUDText
需求分析敌人受到攻击时,需要显示受到的伤害的数值,这和LOL类似。本节处理敌人受伤时的伤害显示。由于敌人受伤时,会触发主角连击的显示,因此敌人受伤时的伤害显示的代码和显示连击的代码是在同一区域。具体实现1. 创建一个空的GameObject,并命名为HudText,它用于管理敌人受伤时的伤害显示。为HudText添加脚本,注意它的脚本是运用NGUI中的Csharp文件:,其中脚本HUD原创 2016-06-03 23:37:43 · 3289 阅读 · 0 评论 -
主角连击敌人处理:连击特效的显示---2
需求分析在上篇文章中,实现了当主角连击敌人时,显示连击提示以及连击的次数。但是,只是单纯的在敌人受到攻击时(主角攻击时)直接显示出连击的提示,为增加游戏的可玩性,本篇博文拟实现:主角攻击敌人时,显示连击,并添加一些效果,比如:震动,变大变小等。可以用PPT中的动画来理解。实现流程原创 2016-06-03 12:43:15 · 932 阅读 · 0 评论 -
主角连击敌人处理:连击次数的显示(图片数字字体)---1
using UnityEngine;using System.Collections;/** Noted by @BigoSprite 20160603 * 需求分析:当主角连续攻击敌人时会出现“连击的提示”。 * 实现方案:当敌人受到攻击时,需要调用ComboPlus()以显示连击数的提示 * 敌人受到伤害是原创 2016-06-03 00:43:10 · 2240 阅读 · 0 评论 -
敌人AI:行走
实现的功能在游戏过程中,有敌人和主角两种形态的GameObject。假设主角的行动和攻击已经设置完毕,现在设计敌人的AI,在本节中只开发敌人的行走---总是朝向主角进行行走。注意:下面的脚本挂在敌人身上。原创 2016-06-02 14:39:35 · 1295 阅读 · 0 评论 -
敌人AI:攻击
在上篇敌人AI---控制行走的基础上,本篇博文实现敌人攻击主角。下图的敌人的Inspector面板展示了敌人身上挂的东西。using UnityEngine;using System.Collections;public class Enemy : MonoBehaviour { public int hp = 200;// 敌人默认的血量 public float spe原创 2016-06-02 15:59:56 · 871 阅读 · 0 评论 -
敌人死亡
当敌人受到主角的攻击时,血量会减少,直至死亡。像LOL英雄或者小兵死亡后会倒在地上,一段时间后尸体不见(被销毁),本节实现类似的功能:敌人死亡,几秒后移入地下,几秒后敌人尸体被销毁。原创 2016-06-02 16:27:07 · 1460 阅读 · 0 评论 -
Space Shooter之飞船的运动、边界控制和运动旋转
代码清单如下:using UnityEngine;using System.Collections;public class PlayerController : MonoBehaviour { public float speed; public float xMin, xMax, zMin, zMax; public float tilt;// 旋转因子原创 2016-04-23 23:58:30 · 1154 阅读 · 0 评论 -
Space Shooter之子弹的运动
控制子弹运动的C#脚本为:using UnityEngine;using System.Collections;public class Mover : MonoBehaviour { public float speed;// 公有变量,在inspector中赋值;设置为20,因为非常速度是10,子弹要比飞船快点嘛 // Update is called once per原创 2016-04-24 01:05:17 · 1147 阅读 · 0 评论 -
学习Unity官方教程-Survival Shooter tutorialの声明
Survival Shooter tutorial1. 该教程的所有资源来源于Unity官网;2. 在下面的博客中直接引用,不再赘述,详情见连接http://unity3d.com/cn/learn/tutorials/projects/survival-shooter-project原创 2016-04-26 09:33:53 · 1668 阅读 · 0 评论 -
SURVIVAL SHOOTER TUTORIAL之Environment setup [1]
Environment setup原创 2016-04-26 09:35:44 · 529 阅读 · 0 评论 -
SURVIVAL SHOOTER TUTORIAL之Player Character [2]
Player Character1. Player准备具体步骤如下:效果如下:原创 2016-04-26 10:27:39 · 472 阅读 · 0 评论 -
SURVIVAL SHOOTER TUTORIAL之为Player添加控制角色运动的脚本 [3]
基于上一篇文章的准备工作,在这篇文章中,为Player Character添加移动的脚本。在脚本中,分别写了控制角色移动的函数、控制角色旋转以及设置角色启用动画的函数。原创 2016-04-26 11:30:26 · 1310 阅读 · 0 评论 -
SURVIVAL SHOOTER TUTORIAL之Camera跟随角色移动 [4]
在上篇文章中,角色能够运动,包括:移动、转身以及动画动作。但是MainCamera是静止的;所以在本文章中设置Camera跟随角色移动。原创 2016-04-26 14:35:43 · 946 阅读 · 0 评论 -
SURVIVAL SHOOTER TUTORIAL之EnemyOne及其NavgitionMeshAgent [5]
本文探讨的拟实现的功能:生成第一个敌人,并设置导航网格代理NavgitionMeshAgent,使enemy具有简单的 AI,能够追着角色。思路:1. enemy是起始点;2. 角色是目标点。因此,给enemy添加NavgitionMeshAgent组件,获取角色的Transform组件以此来访问position信息,并调用NavgitionMeshAgent的静态函数SetDes原创 2016-04-28 21:35:59 · 675 阅读 · 1 评论 -
SURVIVAL SHOOTER TUTORIAL之Player Health & UI & Enemy Attack [6]
你将学到------------------------------------------------------------------------------1. 如何设置角色的(血量)UI;2. 如何为UI添加脚本,以控制角色的受伤、死亡;2. 如何实现敌人攻击角色?设置角色Health UI-----------------------------------原创 2016-04-29 09:38:32 · 787 阅读 · 0 评论 -
SURVIVAL SHOOTER TUTORIAL之Harming Enemies [8]
SURVIVAL SHOOTER TUTORIAL之Harming Enemies [8]原创 2016-04-29 14:21:38 · 462 阅读 · 0 评论 -
SURVIVAL SHOOTER TUTORIAL之EnemyHealth & Harming Enemies [7]
SURVIVAL SHOOTER TUTORIAL之EnemyHealth [7]原创 2016-04-29 14:21:01 · 453 阅读 · 0 评论 -
Unity Official Tutorial OF PICKING UP COLLECTABLES --- Player Movement & Collision Detection
Script of PlayerController.cs ATTENTION PLEASE:1. We donot use OnTrigger in 2D world, which is a 3D world function, just using OnTrigger2Dof 2D world instead, attenion please - so doesthe原创 2016-04-30 23:17:14 · 616 阅读 · 0 评论 -
Unity Official Tutorial OF PICKING UP COLLECTABLES --- Camera Follows Player
The following script is added to MainCamera, and in this Camera Follows Player C# script, we obtain the following mathmatical expression:1. offSet equals to MainCamera position( transform.position原创 2016-04-30 23:56:47 · 454 阅读 · 0 评论 -
Unity Official Tutorial --- CREATING A BREAKOUT GAME FOR BEGINNERS
CREATING A BREAKOUT GAME FOR BEGINNERSIn this live training session we look at creating a Breakout style game including basic game mechanics, user interface and a game manager script.Paddleusing UnityE翻译 2016-05-01 14:58:02 · 611 阅读 · 0 评论 -
通过委托与事件监听状态改变来更新UI
该博文涵盖的知识点1. C# 委托2. 如何利用委托监听事件以此更新显示所要完成目标我们刚开始做好的部分UI界面如下图所示:观察左边的红色方框,我们先做了实例的姓名,头像,slider,和Label等,在运行游戏时候需要更新相应的属性。在下面的脚本中,我们分别更新:左边方框中的nameLabel(黄晓明),energyLabel(50/100),toughenLab原创 2016-05-14 00:24:25 · 3422 阅读 · 0 评论 -
通过打印日志的方式检查BUG & 单例模式类使用前要保证被初始化
解决方案: 调整脚本执行顺序,让Transcript类(脚本)的执行顺序先于SkillButton类(脚本)。Unity>Edit>原创 2016-05-16 23:14:10 · 390 阅读 · 0 评论 -
Unity3d 基于NGUI的虚拟摇杆实现
实现效果预览C#代码实现: 使用NGUI添加虚拟摇杆背景和其子物体按钮,为按钮Attach boxcollider和ButtionScript。为按钮添加如下脚本:注意:其中的静态属性可以在控制物体移动的代码中访问用于控制。using UnityEngine;using System.Collections;public class joyStickControl : MonoBehaviou转载 2016-11-07 15:43:04 · 3367 阅读 · 1 评论