unity3d
文章平均质量分 77
即步
博客地址:blog.liujunliang.com.cn
展开
-
IIS服务器搭建与WWW资源加载
本文介绍使用Unity WWW通过HTTP协议实现在自己IIS搭建的网站上加载资源图片,并将图片保存到本地主机上【IIS服务器搭建】打开控制面板,点击卸载程序点击启动或关闭Windows功能按如下图勾选Web管理工具等待安装完成后,搜索Internet InformationServices,点击进入iis管理器右键点击添加网站,按如下图填写原创 2017-01-09 18:14:27 · 2917 阅读 · 0 评论 -
Unity游戏开发实现短信验证(SMSSDK)
在游戏开发中登录、修改密码等情况下往往需要使用短信验证本文介绍在Unity中访问SMSSDK来实现短信验证这一功能实现了在Android平台上运行,我已经上传了本文源码点击打开链接,大家可以下载参考学习(含APK、SMSDK)大家也可以访问其官网来下载最新SMSSDK准备开发环境解压下载下来的SMSSDK,按下图路径将Plugins目录拖到Unity Asset目录下原创 2017-04-22 12:49:35 · 9581 阅读 · 1 评论 -
Unity实现UI渐变效果(UGUI)
在做背包系统时,在提示面板中想实现的更加炫酷点,决定使用渐变效果来提示档次渐变效果实现采用改变该UI的透明度来控制其显示和隐藏在UI对象上添加Canvas Group组件通过控制Alpha改变其透明度来控制显示和隐藏(Alpha=0隐藏;Alpha=1显示)(Blocks Raycasts=true可以交互;Blocks Raycasts=false无法交互)添加一个脚本...原创 2017-04-19 20:50:57 · 23163 阅读 · 4 评论 -
Unity实现众多平台一键社会化分享(ShareSDK)
本文介绍在游戏中向好友分享图片、链接等数据使用ShareSDK可以实现多个平台的分享,比如新浪、支付宝、QQ、QQ空间、领英等几十中常用应用的好友分享并且博主已经打包实现到了安卓,源码我上传了,需要的话可以下载参考!!!点击打开链接开发环境的准备进入ShareSDK官网,下载ShareSDK For Unity(我也上传了一份点击打开链接)按如下图路径把Plugins目...原创 2017-04-21 23:28:43 · 9688 阅读 · 1 评论 -
Unity Avatar换装原理实例
本文向大家介绍Unity换装原理及其简单实现首先附上效果图:本文的源码我将上传提供大家下载实现原理:控制角色SkinMeshRenderer组件的mesh、materials、bones属性来实现角色换装在该Demo素材中,主角是由多个网格拼接完成其中网格对象上添加了SkinMeshRenderer组件,并指定了material、mesh、root bone我们原创 2017-05-13 17:53:52 · 11388 阅读 · 1 评论 -
Unity游戏开发性能优化(Mesh优化)
游戏开发中,有时一个模型离我们的主摄像机很远时,为了提升渲染效率没必要按原来的三角面数和顶点数继续浪费资源这是我们想通过减少模型的三角面数和顶点数来提升运行性能如下图,依次减少三角面数减少三角面数和顶点数可以叫我们的美术师一并提供给我们做好,但是这样非常麻烦,很耗人力这里推荐大家一个插件资源Simple LOD点击打开链接(链接失效联系作者)该插件一键帮助我们创建多个LOD...原创 2017-04-23 19:56:55 · 8188 阅读 · 5 评论 -
Unity游戏开发性能优化(Sprite优化)
本文向大家介绍Unity Sprite优化通过减少Setpass Calls(Draw calls)数来减少性能消耗直接进入正题我随便在网上找到几张图片,将其拖到Hierachry面板此时运行游戏,观察Game试图下的Stats窗口,此时Setpass calls数为4(包括场景的Setpass calls)我们的方法是将图片打包成一张图片,在游戏运行时,unity只会...原创 2017-04-23 20:45:41 · 7238 阅读 · 0 评论 -
Unity摄像机遮挡剔除(Occlusion Cullings)
在之前很多小伙伴在做游戏优化时发现,为了使摄像机没有看到的部分隐藏起来达到但是使用勾选了摄像器的Occlusion Culling属性还是无法实现目标效果这是因为只是赋予了摄像机具有遮挡剔除功能具体怎么实现遮挡剔除还需要自己手动操作,步骤如下在下图我为了测试,在场景中做如下游戏对象将能被遮挡的游戏对象在Inspect属性面板上设置为静态(Occluder一定要勾选,原创 2017-04-23 22:02:04 · 17045 阅读 · 2 评论 -
Unity烘焙动态光照实现光源优化
本文使用Unity5.x版本,由于Unity4.x到Unity5.x更换了光照引擎,所以本文内容只适合于Unity5.x版本本文向大家介绍Unity烘焙动态光照来实现光源优化什么是动态光源?Unity灯光默认是实时光照,也就是说物体在灯光下不同位置产生不同灯光灯光效果什么是烘焙动态光源?由于动态光源在实时光照下会大量的Setpass Calls(Draw Calls)为了减...原创 2017-04-26 13:41:12 · 14463 阅读 · 0 评论 -
Unity实现卷纸浏览效果
首先附上效果图:在网上看到了一个卷纸效果,感觉很有趣,自己实现了一下,这个Demo源码我也将上传先设计每个Image对象的的特定属性及函数创建一个脚本,将其挂载到每个Image对象上using System.Collections;using System.Collections.Generic;using UnityEngine;public clas原创 2017-05-11 19:24:16 · 6941 阅读 · 5 评论 -
Unity3d实现回滚操作(Undo和Redo)
本文实现一个在无需使用Command模式和Momento模式下实现撤销、重做功能源码下载地址:点击打开链接先展示下效果图使用栈方式,将各个操作的撤销/恢复操作存储下来当执行undo和redo操作时,执行栈里面的撤销/恢复操作Demo操作实现using UndoMethods;using UnityEngine;public class MyText : MonoBehaviour{ pr原创 2017-08-30 12:27:46 · 8492 阅读 · 0 评论 -
3D数学基础与三维渲染
博客地址:blog.liujunliang.com.cn本文使用C# Winform开发工具运用3D数学基础实现三维渲染主要有三个步骤:顶点的变换、矩阵的变换、模拟光照三维渲染本文源码地址:下载链接顶点的变换首先实现在一个窗口绘制一个三角形,让其各个顶点自动旋转让其自动旋转需要使用到旋转矩阵矩阵公式:矩阵与顶点的变换代码如下// 单个顶点的矩阵转换 public Vertex4 M原创 2018-01-03 21:26:31 · 2918 阅读 · 1 评论 -
Unity3d使用UGUI开发原生虚拟摇杆
在Unity3d中开发虚拟摇杆方式有比较多,可以使用EasyTouch、FairyGUI等插件来开发。本文给大家介绍使用Unity3d的原生UGUI来开发出自己的虚拟摇杆,这样可以减少游戏资源包的大小。先展示下效果图:现在开发我们的开发创建一个Image1,并且在Image1创建一个子对象Image2在Image1中挂载一个自定义脚本,这里我命名为Joystick脚本代码如下using Syste...原创 2018-04-17 11:22:44 · 6851 阅读 · 6 评论 -
固定渲染管线Shader
固定渲染管线是标准的几何&光照(T&L)管线,功能是固定的,它控制着世界、视、投影变换及固定光照控制和纹理混合T&L管线可以被渲染状态控制,矩阵,光照及采制参数固定渲染管线一般用于Shader在老显卡无法显示时的Fallback(在Shader的SubShader都无法使用的时候调用)变量小括号写法是固定写法大括号写法是变量写法,可以传一个自定义变量进去Shader "Custom/FixFunc原创 2017-12-03 16:38:17 · 1348 阅读 · 0 评论 -
Unity背包系统(一)使用LitJson库创建并解析Json文件
最近在做一个背包系统,搭建一个背包系统框架,方便代码在以后的游戏开发中直接使用该背包系统也很好地扩展为锻造系统、商店系统等等在这篇文章中我介绍下使用LitJson这个库来创建并解析Json文件(在这系列文章结束篇我会把这些子项目串联起来,介绍实现整个背包系统)背包系统系列文章会陆续更新,如果大家感兴趣的话可以关注下的博客,同时提供整个工程源码方便大家下载来学习首先下载LitJson...原创 2017-04-19 18:12:36 · 8883 阅读 · 4 评论 -
Unity背包系统(二)背包UI设计
上篇文章介绍了背包系统开发中需要使用到数据存储本人使用并介绍LitJson进行生成、解析Json文件在本文介绍背包系统的UI设计大家别小瞧这个UI设计,一个好的UI设计方便我们管理,并且对代码扩展性与自适应性起到至关重要作用【背包面板的设计】先来看看UI图(图片自己在网上找到,不太好看)该背包U里面有很多矩形方框,我叫做物品槽,用于存放物品该背包UI目录原创 2017-04-19 19:20:00 · 9167 阅读 · 2 评论 -
Unity实现物体镜像
通过一个模型的MeshFilter和MeshRenderer组件来获取模型的顶点与网格信息按指定轴向、指定距离克隆一个出来【生成镜像顶点】将顶点位置按轴方向取反方向,返回各个顶点信息private Vector3[] GenerateVertices(Vector3[] backVertices) { Vector3[] newVertices ...原创 2017-03-27 13:13:39 · 11965 阅读 · 0 评论 -
基于WWW的get请求Demo
开发先知:点击打开链接开发工具:unity、VS2010打开VS,新建项目选择web-web应用程序右键项目,按如下图添加一般处理程序在Handler.ashx.cs修改代码如下:using System;using System.Collections.Generic;using System.Linq;using System.Web;原创 2017-01-09 23:32:15 · 1266 阅读 · 0 评论 -
Scut游戏服务器引擎搭建
【安装】安装工具:MySQL、SQLyog、IIS、Scut一.搭建IIS服务器,IIS搭建过程我在有一篇文章说到点击打开链接二.下载Scut引擎,在这里我上传了三.安装MySQL、SQLyog【配置】/*Scut与IIS连接*/打开IIS管理器后,新建一个网站将Scut-master(以提供)解压缩,将路径\Scut-master\Source\Tools原创 2017-01-10 22:53:32 · 4074 阅读 · 0 评论 -
连接MySQL Connector(.net)
MySQL Connector封装了MySQL API,通过调用MySQL Connector接口更加方便访问MySQL数据库【安装MySQL Connector】在安装MySQL时可以添加安装MySQL Connector选项在这里我通过VS Nuget程序包下载安装MySQL Connector中的Mysql.Data1、右键项目工程,选择管理Nuget程序包2、搜原创 2017-02-23 22:44:56 · 5010 阅读 · 0 评论 -
Unity数据的加密与解密
好久没有更新博客了在这里分享在Unity中对数据的加密与解密的处理加密与解密一般可以应用到文件配置,但是我主要运用到客户端与服务器端交互时候【加密】using UnityEngine;using System.Collections;using UnityEngine.UI;using System;using System.Text;using System.S原创 2017-03-01 17:36:31 · 5410 阅读 · 1 评论 -
Unity对象池技术
在游戏中,常常需要对有些游戏对象进行反复的创建销毁,比如游戏中的子弹,敌人反复的创建与销毁将浪费一定的系统资源引入对象池技术,可以将暂时不需要用到游戏对象放在对象池(缓冲区),当需要使用到时再从对象池中提取这里我简单学习了下关于对象池,现在分享出来,写下自己的对对象池的理解using UnityEngine;using System.Collections.Generic原创 2017-03-02 14:00:31 · 1415 阅读 · 0 评论 -
Unity制作技能冷却效果
在制作ARPG等游戏时,主角的技能往往需要的到冷却才能释放本文介绍在Unity中如何简单实现技能冷却效果【Mask组件的使用】首先制作技能图标创建一个UI->ImageImage选择Unity自带的圆形图片在Image下添加一个按钮作为子节点,并适当放大按钮选择一张精灵图片作为按钮图案在Image下添加Mask组件Mask中文名叫面具该组件的作用是 只显示I原创 2017-03-04 21:10:08 · 11398 阅读 · 1 评论 -
Lua与.Net互调
Lua是一种很好的扩展性语言,由C语言编写,Lua解释器被设计成一个很容易嵌入到宿主程序的库我们可以使用LuaForWindows或则LuaInterface得到LuaInterfaxe,dll文件在这里我提供LuaInterface包,方便大家下载【开发环境的配置】新建一个C#控制台应用程序解压下载下来的luainterface资源包,根据如下图的路径找到三个.dll原创 2017-03-21 19:02:30 · 4732 阅读 · 1 评论 -
Unity中的AssetBundle
我在以前写过一篇文章关于制作与加载AssetBundle,但是觉得那个有些由于版本过低,有些方法以被弃用了,在这里我从新分享了一篇工具:unity5.5【AssetBundle的制作】以制作一个Cube预制体为例,将Cube打包到AssetBundle文件里点击Cube,在属性面板上底下按如下图操作,可以自行命名在Assets文件夹新建一个Editor文件目录,并创建一原创 2017-03-21 21:32:20 · 2457 阅读 · 0 评论 -
Unity3D自定义资源配置文件
配置资源文件估计大家了解很多,比如XML、JSON、Protobuf、Excel、TXT等等在开发过程中,将游戏数据序列化到配置文件中,项目运行时读取配置文件中的数据本文另外介绍一个Unity的配置文件(.asset)该配置文件的优点:当我们需要将游戏资源里的贴图(Texture)、游戏对象(Gameobject)等预设体保存到配置文件时,这时我们就可以使用该配置文件但是当关联...原创 2017-04-08 16:42:13 · 8011 阅读 · 0 评论 -
Unity3D实现多语言本地化
一款游戏可能有多个语言版本,各个版本的语言不相同,有中文的、英文的等多种版本在开发时,我们一般将关键字翻译到一个文本文件当需要对游戏的关键字翻译后,只需要对文件进行解析做相关处理接下来我做一个简单Demo,介绍创建一个简单语言本地化项目先在Scene视图下创建两个按钮,如下图在Project视图下新建一个Resources文件夹在Resources文件夹下新建两个名为...原创 2017-04-07 15:59:02 · 14383 阅读 · 0 评论 -
StrangeIoc MVCS游戏框架
StrangeIoC框架是MVC框架的扩展采用一种MVCS框架,在Unity3d中得到很好的应用下图是StrangeIoC的框架图:【ROOT模块】开启整个框架启动的模块【MVCS Context模块】为了减小整个框架的耦合性,可以将各个模块之间进行依赖绑定可以实现注入绑定(injectionBinder)、命令绑定(commandBinder)、传递绑定(comm...原创 2017-04-02 12:56:27 · 4941 阅读 · 3 评论 -
ULua热更新
工具:VS、Unity5.2.3f、LuaStudio(方便编写Lua)、SimpleFramework_UGUI-0.3.7.2建议下载我写的一个Demo点击打开链接和本文一起参考!!!Demo介绍如何使用uLua对UI进行热更新【框架结构介绍】Editor:一些编辑器扩展的脚本代码Example:一个热更新例子介绍Lua:实现热更新的核心lua代码Sourc原创 2017-03-24 17:56:52 · 2717 阅读 · 6 评论 -
UI框架(UGUI)
整个游戏的工程源码下载链接:点击打开链接可以参考的写的Demo和本文章来学习毕竟有些细节问题在文章中不能一一说到工具:VS2010、Unity5.2.3f先介绍整个Demo的主面板其中任务、技能、符文等等都是按钮,点击按钮会生成相应面板【Protobuf的生成与解析】要使得框架的可扩展性与自适应性,我把各个面板的名字与路径配置到protobuf文件在VS中...原创 2017-03-27 08:41:30 · 8708 阅读 · 7 评论 -
Shader和3D图形渲染管线(Render Pipeline)
博客地址:blog.liujunliang.com.cn最近在系统学习Shader,发现编写之前需要对渲染绘图管线流程有一个系统的认知才能学的更加深刻网上查了一篇教程发现内容并不是很多,本文将自己学习的内容以尽可能的简单易懂的方式记录下来并分享给大家大家也可以关注我的博客,可以和我一起学习Shader编程和Unity3d游戏开发。开始本文的学习!!!定义渲染管线也称渲染流水线,是显示芯片内部处理图原创 2017-12-01 16:25:10 · 3419 阅读 · 0 评论