自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(174)
  • 资源 (9)
  • 收藏
  • 关注

转载 【unity实用技能】Unity3D之OnGUI知识总结

http://blog.csdn.net/u011480667/article/details/77542226一、Label  #region 四个角定位        GUI.Label(new Rect(30, 10, 100, 200), "zzzzzz");        GUI.Label(new Rect(30, Screen.heig

2017-12-12 16:00:08 3520

原创 【小松教你手游开发】【unity实用技能】角色头部跟随镜头旋转

这个在端游上比较场景,在角色展示的时候,当摄像头在角色身边上下左右旋转时,角色头部跟随镜头旋转。如天涯明月刀等。这个在手游上比较少见,不过实现也没什么区别。首先一般情况下,找到模型的头部节点,直接用lookAt指向camera就可以了,不过一般需求不会这么简单。比如说,超过头部扭动极限,头部需要插值回到原始点;当镜头从外部回到极限内,需要插值回来。这时候lookat就没法使用。

2017-12-06 15:14:29 3761

原创 【unity实用技能】unity3d 陀螺仪控制camera移动旋转

https://docs.unity3d.com/ScriptReference/Gyroscope.htmlunity 官方文档就很清楚,只有一点要注意:所有教程都教你怎么用input.gyro.attitude但是这个表示的是空间中的位置,首先你是想做像王者荣耀开头晃动摄像机的效果,需要把上个位置记录下来,每次相减获得偏移值。而更大的问题是,这个空间值可能会有突然转成负

2017-11-30 16:41:19 6015 1

原创 【unity实用技能】性能优化经验分享

1.问题:Log输出频繁导致卡顿。解决方法:Log上封装一层,用宏定义或者一个变量作控制输出开关2.问题:在Update函数的for、while循环中反复定义变量 建议:把定义放在循环外面3.问题:Update函数或者Update里调用的其他的函数,里面包涵了数组的定义 建议:放在函数外面定义 4.问题:L

2017-09-30 11:03:12 534

原创 【unity实用技能】Unity Mesh更新的时候增加内存

Unity在Mesh更新的时候会增加内存,一般的方法是使用数组去填入。 Vector3[] vertices = new Vector3[segmentCount * 4]; Vector3[] normals = new Vector3[segmentCount * 4]; Vector4[] tangents = new Vector4[seg

2017-08-21 17:06:47 1645

原创 【unity实用技能】计算目标物体是否在自己的扇形视野范围

在做游戏开发中经常会需要到计算扇形的视野或者是受击范围的时候。其实这个分为两部分,第一部分是在扇形距离范围内(也就是不考虑角度,其实是圆形范围内)第二部分是扇形角度范围内第一部分很简单,Vector3.Distance(a, b);计算距离下面讲讲第二部分,扇形角度范围内。计算怪物是否在你的视野范围内其实可以这么看Avatar的正方向向量与Avatar到

2017-06-27 20:57:37 8165

原创 【unity实用技能】在GameObject前画一条线

在项目中有时候需要在scene里划线方面检查这里面有两点,划线和人物正前方的计算划线用LineRanderer人物正前方是go.transform.forward + go.transform.position人物的坐标加上人物的正前方方向(我一开始死脑筋的时候想着正前方就go.transform.forward 不就是人物的正前方吗,但是如果不加上自己的坐标,它只是一个方

2017-06-27 16:13:48 1893

原创 【面试必读(编程基础)】网络游戏同步方式(帧同步和状态同步)

在做网络游戏的时候首先要做的是选择一种同步方式来使用,网上的文章都是说帧同步与状态同步的选择,但是又经常讲的模糊不清,我大概整理了一下,并且有一种我们现在项目用的网络同步方式状态同步状态同步就有好几个说法,说是同步状态,同步操作等,又找不到一遍文章能清楚的讲一遍什么是状态同步。所以大概总结一下就是,状态同步是通过每个客户端发送自己的操作给服务器,这时客户端不进行任何动作,服务器

2017-06-23 21:10:23 25880

原创 【unity实用技能】往avatar身边放置一个物体(随机)

在开发中时不时会用到这个需求,比如要放置一个宠物在身边,但是不能在自己身上。一个简单的方法 Vector3 pos = Vector3.zero; int angle = Random.Range(0, 360); Vector3 range = Quaternion.AngleAxis(angle, Vector3.up) * Vector3

2017-06-16 17:30:06 616

原创 【unity实用技能】控制摄像头脚本

测试项目的时候经常用到的控制摄像头运动,简单的移动转向using System.Collections;using System.Collections.Generic;using UnityEngine;public class Controller : MonoBehaviour { private GameObject gameObject; float x1;

2017-05-17 14:04:23 2698 1

转载 【游戏渲染】unity海边波浪效果的实现

http://blog.csdn.net/mobilebbki399/article/details/50493117效果图如下(GIF因为为了把图压小所以删掉了一些帧导致后面速度突然很快,实际效果并不是这样~_~)之前在玩很多游戏的时候,注意到里面的海水和陆地相交接的地方会产生海浪,比如《海岛奇兵》,以及水面会出现一个透明渐隐的过度,而不会在水面和陆地的交界处产生硬切

2017-05-17 11:24:26 8142 1

原创 【unity实用技能】unity在游戏中更换角色的shader,比如加个流光

原本想着这个功能怎么实现,刚好在项目里看到这里记录一下。首先项目的模型里会有一个基本的Material,这个就是美术出给你的模型的材质。可能有的需求是在游戏中触发一个事件,你身上加个流光或者描边等效果。我们知道这些效果如果要表现在身上,用特效是不好看的,要用Shader去表现。这时候就需要你换一个Shader。而其实我们不会直接换Shader的,是换一个Material

2017-05-10 20:49:35 3095

转载 【unity系统模块开发】自动寻路Navmesh

http://blog.csdn.net/janeky/article/details/17457533现在的大部分mmo游戏都有了自动寻路功能。点击场景上的一个位置,角色就会自动寻路过去。中间可能会有很多的障碍物,角色会自动绕过障碍物,最终达到终点。使用Unity来开发手游,自动寻路可以有很多种实现方式。第一种比较传统的是使用A星寻路,它是一种比较传统的人工智能算法,

2017-05-10 16:07:24 666

转载 【面试必读(编程基础)】几种常用的设计模式介绍

http://blog.csdn.net/xsl1990/article/details/163592891.    设计模式的起源最早提出“设计模式”概念的是建筑设计大师亚力山大Alexander。在1970年他的《建筑的永恒之道》里描述了投计模式的发现,因为它已经存在了千百年之久,而现代才被通过大量的研究而被发现。在《建筑的永恒之道》里这样描述:模式是一条由

2017-04-18 20:50:47 1899

转载 【面试必读(编程基础)】几种查找算法

http://www.cnblogs.com/maybe2030/p/4715035.html?utm_source=tuicool&utm_medium=referral查找是在大量的信息中寻找一个特定的信息元素,在计算机应用中,查找是常用的基本运算,例如编译程序中符号表的查找。本文简单概括性的介绍了常见的七种查找算法,说是七种,其实二分查找、插值查找以及斐波那契查找都可以归

2017-04-18 19:51:43 8488

转载 【面试必读(编程基础)】哈希表、Map和字典

主要来自于两篇文章https://www.zhihu.com/question/27581780http://www.oschina.net/translate/hashtable-vs-dictionary?nocache=1492512523856Map和Dictionary(字典)其实是一样东西。只是在不同地方不同称呼。而哈希表和字典有些许不同。

2017-04-18 19:19:04 2546

转载 【面试必读(编程基础)】 转一篇言简意赅的a*算法

http://www.html-js.com/article/Random-A-routing-algorithmA* 算法是一种解决图遍历问题的计算机算法,在电子游戏中最主要的应用是寻找地图上两点间的最佳路线。为了便于理解,本文将以正方形网格地图为例进行讲解。如图,蓝色格子是障碍物,灰色格子是可通过区域,绿色格子是起点(S),红色格子是终点(D)。我们

2017-04-18 18:32:56 613

原创 【unity实用技能】unity编辑器工具之加载预制(Prefab)和场景(Scene)

在unity里做打包或者帮策划美术做工具的时候经常会需要把Prefab拉出来或者场景打开做检验工作其实这个在上一篇在ui打包的文章里有提到,不过重点不同,上篇重点是打包,这篇的重点是把里面的一个小知识点拉出来讲一讲接下来就讲讲两者分别怎么做一、把预制Prefab拉出来就是像我们平时把预制拉到这个地方1.首先是获取你选中的那个Prefab(如果是有其他

2017-04-10 02:12:21 4160 1

原创 【unity实用技能】u3d 获取屏幕的宽高

想搞个全屏Sprite,获取Screen.Width什么的都不对。因为这个跟你的Camera的aspect有关。所以有个很简单的方法首先一般你的项目都会限度是以宽还是高做基准来拉伸我们是横版游戏,所以是宽做基准我们的宽定的标准值为1334.所以是这样public int GetScreenHeight(GameObject go){ Came

2017-03-30 17:29:27 10218 2

原创 【unity系统模块开发】Unity5.5.2UI打包AssetBundle

之前已经有几篇文章写打包AssetBundle,但毕竟没有实际在项目中写过都写的比较浅。刚好最近项目更新Unity5.5.2就顺便由我来更新ui打包流程这里就把这次的经验写一下这里还是稍微解释一下打包的基本目的:打包ui就是把你做的界面打包出来成assetbundle包,讲道理你就把每个界面打成bundle包在游戏中你就可以直接加载来用,但是这样子的话你的每个bundle包

2017-03-03 12:32:31 2401

原创 【unity实用技能】unity ios快捷打包

ios打包是比较麻烦的,配通一次流程后需要做个笔记把各种插件各种配置在每次打包的时候重新配置,作为一个程序员当然不能接受这么笨的事情,写个脚本让代码去实现这些。首先,介绍一个标记[PostProcessBuild]在函数前写上这个标记,unity在打完包后便会调用这个函数。所以我们也将用这个标记让unity在包打成xcode项目以后,去改动xcode里面的配置。

2017-02-27 10:32:13 975

原创 【unity系统模块开发】u3d 层次问题总结

首先的首先,NGUI区分前后层次关系是用Depth值。已经跟z轴值无关首先因为我自己用的是NGUI,所以我的u3d层次问题也就是NGUI的层次问题先确定UI渲染顺序,Camera>UIPanel>Depth(UIWidget)这里的意思是,首先确定前后关系的是不同大块之间的Camera的Depth值,根据Depth大小排列,这个决定了每个大块之前的前后关系。接着根据

2017-02-21 11:18:48 951

原创 【unity系统模块开发】热更

现在的手游项目如果没个热更新迭代根本跟不上, 特别是像我们项目做mmo的更是需要经常改动代码。而现在的项目一般会选择用lua的方式实现热更新不过我们项目由于历史原因没有使用,用的是另外一种方案在项目里的所有GameObject都不挂脚本(NGUI脚本就通过代码的方式挂上),自己写的脚本都不继承Mono并打成dll,然后通过一个启动脚本去打开这些dll。不过这样就有个问题,ios不能

2017-02-20 15:16:29 1180

原创 【unity系统模块开发】unity网络层读写

在unity做强联网游戏的时候一般会选择用tcp来做通信(据说有一种udp的传输具有更高的效率),而接收信息的方法上一般会选择新建一个线程循环读取。今天在我们项目上看到另外的一种方法。这里记录一下。首先建立tcp连接#using System.Net.Sockets;TcpClient tcpClient = new TcpClient();tcpClient .Begi

2017-02-16 14:57:29 935

原创 【unity系统模块开发】Unity Assetbundle打包笔记

在项目里用Assetbundle是再普通不过,虽然一直没有机会由我来负责打包的开发,不过看着项目的代码也总结一下首先打包分为两部分,一部分是打包成Assetbundle包,一部分是从Assetbundle包解包出来成为可用的资源。首先说第一部分 打包所有资源都可以打包,甚至不是资源(一些数据)也可以打包,只要你需要。打包出来的东西都可以直接用,一个字体,一个Texture,

2017-02-13 15:22:21 1500

转载 【unity实用技能】Unity图片变灰的方式

http://www.tuicool.com/articles/VruuqmeNGUI中的Button几乎是最常用到的控件之一,并且可以组合各种组件(比如UIButtonColor,UIButtonOffset,UITweenxx),方便设置Button的各种状态下的属性,几乎可以满足我们的所有需求。但是对于当Button的isEnabled属性设置为false时,根据设置的dis

2017-01-19 14:31:51 5640 1

原创 【unity系统模块开发】跑马灯

游戏中经常会需要一个跑马灯的弹幕效果像这样刚好今天有这个需求就做一个首先还是先讲思路:这个功能比较简单1.首先需要一个UIPanel,UIPanel的Clipping设置为SoftClip,softness的x设置的大一点(大约70)2.每添加一条信息先不着急实例化成Component,而是存放成一个数据类放在一个Queue里3.在upd

2016-12-28 15:29:02 2879 4

原创 【unity实用技能】给每个GameObject的打开关闭加上一个渐变(逐渐打开,逐渐关闭)

在游戏开发中,经常会因为直接将GameObject,setActive的方式打开关闭,这种方式效果太过生硬而给它加上一个Tween可能是AlphaTween或者ScaleTween。再加上一个PlayTween来做控制。这样子需要在每个GameObject上加上这几个Component不说,还很不好用所以结合之前用的一个拓展函数的方法,想到一个非常非常方便的方法

2016-12-10 14:46:27 1557 1

转载 【游戏渲染】【译】Unity3D Shader 新手教程(2/6) —— 积雪Shader

http://gad.qq.com/article/detail/7175491该文章来自用户转载 点击阅读原文  如果你是一个shader编程的新手,并且你想学到下面这些酷炫的技术,我觉得你可以看看这篇教程:  实现一个积雪效果的shader  创建一个具有凹凸纹理的shader  为每个像素修改其对应纹理值  在表面着色器中修

2016-12-05 12:27:32 711

转载 【游戏渲染】法线贴图Nomal mapping 原理

法线贴图多用在CG动画的渲染以及游戏画面的制作上,将具有高细节的模型通过映射烘焙出法线贴图,贴在低端模型的法线贴图通道上,使之拥有法线贴图的渲染效果,却可以大大降低渲染时需要的面数和计算内容,从而达到优化动画渲染和游戏渲染的效果。 现在好多3d网游都没有法线贴图啊,呵呵,《giant》就没有。维基百科:法线贴图法线贴图 什么是法线贴图技术呢?这是一种用来实现3D效果

2016-12-03 15:35:37 1270

原创 【unity实用技能】线性差值计算实现

其实这个unity本身就有的函数Mathf.Lerp(),为什么还要自己实现呢。有一个原因就是这个函数返回的是float型,float型如果数字非常大,转出int时会有精度丢失,也就是转出来的值不对。而且非常简单。看下公式public int Lerp(int a,int b,int v){ return (int)(a - (0 - v) / (0 - 1)

2016-12-01 21:10:46 1184

转载 【游戏渲染】【译】Unity3D Shader 新手教程(1/6)

http://gad.qq.com/article/detail/7175490该文章来自用户转载 点击阅读原文刚开始接触Unity3D Shader编程时,你会发现有关shader的文档相当散,这也造成初学者对Unity3D Shader编程望而却步。该系列教程的第一篇文章(译者注:即本文,后续还有5篇文章)详细介绍了Unity3D中的表面着色器(

2016-11-29 17:34:59 2684

转载 【面试必读(编程基础)】OpenGL ES 2.0渲染管线

http://codingnow.cn/opengles/1504.htmlOpengl es 2.0实现了可编程的图形管线,比起1.x的固定管线要复杂和灵活很多,由两部分规范组成:Opengl es 2.0 API规范和Opengl es着色语言规范。下图是Opengl es 2.0渲染管线,阴影部分是opengl es 2.0的可编程阶段。 1. 顶

2016-11-22 20:39:27 3237

转载 【游戏渲染】Unity&Shader基础篇-Cg语法,数据类型与关键字

转载请注明出处凯尔八阿哥专栏1.2、Cg语法基础  如C++、C#和Java等高级语言一样,Cg语言也有自己的数据类型和关键字。掌握和理解这些关键字是写好Cg程序的基础。1.2.1、Cg的数据类型与关键字基本数据类型:Cg支持7种基本的数据类型1、float,32位浮点数据,一个符号位。浮点数据类型被所有的图形接口支持;2、half,16位浮点数据;

2016-11-22 11:42:26 4565

转载 【小松教你手游开发】【unity实用技能】Unity项目内存优化大全

http://gad.qq.com/article/detail/7173927前言  手游项目开发中,每个项目都会遇到或多或少的内存问题。本文涉及到了Unity项目:启动内存,Mono内存,System 内存这三个方面。对于为什么标题叫《内存优化大全》,主要是在自己职业生涯中,《代码大全》给我带来了很多的启发和帮助。这篇文章希望帮到需要的人。     启动内存

2016-11-19 17:17:02 602

转载 【小松教你手游开发】【unity实用技能】NGUI字体描边

http://gad.qq.com/article/detail/7172155NGUI的UILabel中实现字体的描边是通过以方形的方式对字体网格顶点偏移一定位置后作为其描边网格。以这种方式描边在边角处会生硬,描边不均匀问题,特别是在比较大的字体描边时偏移越大这种生硬,不均匀程度越明显。处理这种描边一可以通过改进shader的方式来做调整,这里我介绍林一种新的方式:以圆形

2016-11-19 17:15:33 2725 2

原创 【小松教你手游开发】【unity实用技能】Unity 代码实现抛体运动

项目最近的一个需求是做掉落,就是打完怪爆装备,不想用碰撞因为要给地板和掉落的物品都加上碰撞体太损耗了,所以决定由代码计算。 不过这里有个前提,因为掉落要掉到地板上这个其实不好计算,因为很难判断哪里是地板我们项目用了寻路,所以我选择的方法是先随机掉落方向,给一定的掉落距离,找出最近的寻路点,这个寻路点作为掉落的终点。 掉落主要分几个状态:1.实例化一个

2016-11-17 20:39:24 1140

原创 【小松教你手游开发】【系统模块开发】根据上一个GameObject坐标生成的tips界面

开发游戏,特别是mmo手游的时候经常需要开发的一个需求是,点击某个装备,在它附近的位置生成一个tips界面,介绍装备功能和各种信息。像上面红色框框里的这个。这个主要的问题是 根据点击的GameObject对应生成这个详情界面时,详情界面位置需要合理摆放(不能显示不到,不能遮挡等)基本的思路是,首先找到GameObject的position,把手机屏幕大概

2016-07-19 21:11:06 1543

原创 【小松教你手游开发】【系统模块开发】unity 数据储存到本地为二进制文件(聊天记录本地储存)

unity游戏开发中有很多需要把数据储存到本地,官方有好几个方式可以使用,下面简单介绍一下。一、Stream::Write,Stream::WriteLine这个方法是打开数据流就开始写字符串,可以指定长度写,也可以一行一行的写。具体参考http://blog.csdn.net/dingxiaowei2013/article/details/19084859和雨松大神的http://www

2016-07-16 12:57:08 7508 1

原创 【小松教你手游开发】【系统模块开发】父节点下的各个子节点居中摆放

有过有需求需要一个item,两个item,三个item不同情况都要居中只需要在uiscrollview上的resetPosition 设为0.5,调一下resetPosition自动居中~

2016-07-13 14:34:08 794

太空中的自转地球(带多重纹理,光照)

太空中的自转地球(带多重纹理,光照)根据android3d游戏开发技术宝典的教程改成ndk版

2014-07-14

带纹理的三角形

带纹理的三角形根据android3d游戏开发技术宝典的教程改成ndk版

2014-07-14

格子纹路的球(带光照效果)

格子纹路的球(带光照效果),根据android3d游戏开发技术宝典的教程改成ndk版

2014-07-14

Matrix CPP类

ndk开发OpenGL的时候需要使用的投影类,根据android源码翻译成c++类

2014-07-03

android ndk调用OpenGL 实现纹理贴图Texture

首先必须说,国内在OpenGL这方面特别是ndk上的分享太太太少 这中间遇到很多问题,而这些问题需要在书上,在网上,在各种资料上找,而且书上是java层调用,网上的缺少各种文件案例,只有在java层研究,在各种案例中找需要的知识点,遇到问题最终只有google搜外国网站才能解决。

2014-06-25

u盘文件后台复制

u盘文件后台复制

2013-03-28

linux,qt,智能家居控制系统

linux,基于qt的智能家居控制系统。界面绝对好看。但是所有按键需要连接数据库,通过更新数据库信息实例化按钮。所以应该现在用不了

2013-03-27

linux基于qt,opencv人脸识别

linux,qt,opencv。写的人脸识别。找出人脸并识别,如果当前人脸不能识别则会弹窗选择是否需要识别人脸。人脸数据写入数据库并从数据库中取得。

2013-03-27

包含3d地球仪的新闻推送

一个带3d地球的新闻推送软件,pc端是服务端,由qt编写

2013-01-01

空空如也

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

TA关注的人

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