自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(92)
  • 资源 (3)
  • 收藏
  • 关注

原创 Error: unknown host ‘android.oa.com'.You may need to adjust the proxy setting in Gradle.

今天在做微信登录的时候,导入微信的sdk,保报了个错误;原来是gradle.wapper底下的http找不到把这个distributionUrl换成自己项目的distributionUrl,然后粘贴过来,再编译下就可以了。可以自己新建一个空项目,打开同样的文件,把distributionUrl赋值给报错的这个。。。...

2018-03-18 18:24:49 1166 1

转载 Unity3D研究院之UGUI一个优化效率小技巧

无意间发现了一个小技巧。如下图所示,可以发现UGUI的Image组件的RaycastTarget勾选以后会消耗一些效率,为了节省效率就不要勾选它了,不仅Image组件Text组件也有这样的问题。 一般UI里也就是按钮才需要接收响应事件,那么大部分image和text是是不需要开RaycastTarget的。  但是问题就来了,Unity默认在hierarchy窗口Create->UI-&gt...

2018-02-24 18:03:58 397

转载 如何快速优化手游性能问题?从UGUI优化说起

本文转自:http://www.ceeger.com/forum/read.php?tid=593805组图1WeTest 导读 本文作者从自身多年的Unity项目UI开发及优化的经验出发,从UGUI,CPU,GPU以及unity特有资源等几个维度,介绍了unity手游性能优化的一些方法。 在之前的文章《手游内存占用过高?如何快速定位手游内存问题》中提到,Mono内存和native内存是PSS内存...

2018-02-24 18:00:52 428

转载 Unity GUI(uGUI)使用心得与性能总结

本文转自:https://www.jianshu.com/p/061e67308e5f背景和目的小哈接触Unity3D也有一段时间了,项目组在UI解决方案的选型一直是用的原生的uGUI,因此本人也是使用了一段时间的uGUI,在uGUI的使用方面积累了一些自己的经验,在此进行一个记录与总结。本文接下来将会对uGUI的Runtime性能进行着重讨论,其它的因素也很多而且很重要,但是一篇文章讲清楚一件事...

2018-02-24 17:56:19 2673

转载 Unity3d 导入图片 自动修改Texture Type为Sprite (2D and UI) 及设置 Packing Tag为文件夹名

版权声明:本文转自http://blog.csdn.net/huutu 转载请带上 http://www.liveslives.com/ http://blog.csdn.net/huutu/article/details/45564555Unity3d 的新版 UI 系统在给我们带来很大便利的同时,也添加了一些小麻烦。每次从电脑中导入图片到 Unity3d 中都需要手动设置Texture Typ...

2018-02-24 17:32:28 3027

转载 UGUI性能优化

UGUI会自动检测优化,如果多个材质间没有遮挡或只有小部分不影响的遮挡则会合并DrawCall为一个。如下图:尽可能保证Text在Image的上方。字体的DrawCall就可能自动会优化,而不需要像NGUI那样让字体跟图片pack在一起来减少DrawCall。尽可能保证Image之间不存在不必要的重叠。UI变色:修改材质和修改顶点色两种方式合并DrawCall一定要是相同的材质,修改材质会将本来已...

2018-02-24 17:18:54 218

原创 Unity简单MVC设计模式

view层:using UnityEngine;public class BaseView : MonoBehaviour{ BaseController _mController; BaseModel _mModel; protected void Awake() { //new一个Controller,new一个model ...

2018-02-22 11:05:44 1541

转载 Unity Shader-渲染队列,ZTest,ZWrite,Early-Z

原文出处:http://blog.csdn.net/puppet_master/article/details/53900568简介在渲染阶段,引擎所做的工作是把所有场景中的对象按照一定的策略(顺序)进行渲染。最早的是画家算法,顾名思义,就是像画家画画一样,先画后面的物体,如果前面还有物体,那么就用前面的物体把物体覆盖掉,不过这种方式由于排序是针对物体来排序的,而物体之

2018-01-15 15:46:04 479

转载 如何在Unity中分别实现Flat Shading(平面着色)、Gouraud Shading(高洛德着色)、Phong Shading(冯氏着色)

写在前面:  先说一下为什么决定写这篇文章,我也是这两年开始学习3D物体的光照还有着色方式的,对这个特别感兴趣,在Wiki还有NVIDIA官网看了相关资料后,基本掌握了渲染物体时的渲染管道(The rendering pipe-line)流程,以及各种空间坐标系(MVP),但是在用Unity的Shaderlab写shader的时候,对于具体怎么实现各种着色有很大的疑问,决定苦心钻研一下

2018-01-14 13:14:17 2245

转载 猫都能学会的Unity3D Shader入门指南(2)

关于本系列这是Unity3D Shader入门指南系列的第二篇,本系列面向的对象是新接触Shader开发的Unity3D使用者,因为我本身自己也是Shader初学者,因此可能会存在错误或者疏漏,如果您在Shader开发上有所心得,很欢迎并恳请您指出文中纰漏,我会尽快改正。在之前的开篇中介绍了一些Shader的基本知识,包括ShaderLab的基本结构和语法,以及简单逐句地讲解了一个基本的s

2018-01-04 10:40:56 426

转载 猫都能学会的Unity3D Shader入门指南(1)

动机自己使用Unity3D也有一段时间了,但是很多时候是流于表面,更多地是把这个引擎简单地用作脚本控制,而对更深入一些的层次几乎没有了解。虽然说Unity引擎设计的初衷就是创建简单的不需要开发者操心的谁都能用的3D引擎,但是只是肤浅的使用,可能是无法达到随心所欲的境地的,因此,这种状况必须改变!从哪里开始呢,貌似有句话叫做会写Shader的都是高手,于是,想大概看看从Shader开始能不能

2018-01-04 10:39:14 269

原创 简单的有限状态机Unity独家写法(呸~厚颜无耻之人)

博主不是一个会写博客的人,也不会去扫盲什么事有限状态机,但凡会用百度的同学自己搜一下大把大神文章给你们拜读,这里我介绍的是最最最简单的有限状态机写法,当然也是看别人的代码学习来的。 最最最简单的有限状态机就是利用一系列的switch-case语句写的,简单粗暴不容易维护,但是针对只有几个状态的模型就非常实用了。 现在给大家安利的是利用Unity协程的方式实现有限状态机,废话不多说

2017-12-22 14:05:41 868

原创 C#订阅事件的两种写法(貌似没啥用)

今天看到publisher.RaiseCustomEvent += new CustomEventHandler(HandleCustomEvent); 这样的语法有点懵,不知道为啥这样写。翻了翻资料才发现这玩意儿是C# 1.0 语法。以下是在微软文档上看到的。想看更多点连接:微软文档定义一个事件处理程序方法,其签名与该事件的委托签名匹配。 例如,如果事件基于EventHand

2017-11-29 13:55:32 1171

转载 unity ugui图片自适应文字内容大小

本文转摘自博客园: 倾城之叹 1、(UI提示框与文字) Unity Text组件需要与Image组件自适应新建如图的UI物体 如图为Image的RectTransform中设置Pivot(中心点),如果需要向上向左适应,则将中心点设置在Image的右下方,并添加Content Size Fitter 组件(放在父物体上,可以根据子物体的大小来控制父物体的大小),添加Horizonta

2017-11-07 15:12:31 5188

原创 AdvancedInstaller打包工具使用(八)

注册表编辑 可以让你对目标机器Windows环境下的注册表进行编辑,右侧的树状菜单会列出Windows注册表中的经典键位,但第一个键位并非实际注册表中所含键,而是告诉你Advinst会默认在HKEY_CURRENT_USER和HKEY_LOCAL_MACHINE中分别以在Product Details中的Company name和Product name为依据建立两个键,并在会最底层的Prod

2017-11-06 09:42:58 2260

原创 AdvancedInstaller打包工具使用(七)

Builds选项设置Package Type配置栏Single MSI & MSI with resources next to it 这两种打包形式都是以*.msi作为安装包文件后缀名。 单独的MSI安装文件包形式的优势是生成后的文件数量少(只有一个单独的MSI包),易于管理;缺点是容量有限(最高2GB)。 后面的为将资源与MSI分开,msi只负责存放安装信息、安装指令等必要数据,而实际的

2017-11-06 09:36:09 6556

原创 AdvancedInstaller打包工具使用(六)

B/S站点托管容器IIS设置 位于Server(服务器)—— IIS中,如果部署服务器上预装了IIS,则可以在此直接对IIS进行部署操作,Application Pools和Sites分别对应程序池和站点,选定池或站点后可在右侧设置框的上方设置详细参数:

2017-11-04 17:11:19 1244

原创 AdvancedInstaller打包工具使用(五)

数据库操作 位于Server(服务器)—— SQL Databases(数据库)中,可在此定义安装过程中的数据库操作。 在中间的树状菜单中鼠标右键单击Database server,在菜单中依次选择New Connection – Predefined(预定义连接),然后在右边设置详情界面定义连接参数即可: 部分设置参数介绍:  Condition:执行条件  Conn

2017-11-04 17:09:18 2090

原创 AdvancedInstaller打包工具使用(四)

安装包运行环境嗅探与限制 位于Requirements(前提)—— Launch Conditions(启动条件)中,用来对安装包的可运行环境进行设定和约束。 System选项卡设置总体OS环境;Software设置安装环境中需要哪些特定第三方软件;Custom设置一些自定义条件,通常与安装包自身属性有关。

2017-11-04 17:05:55 1716

原创 AdvancedInstaller打包工具使用(三)

AdvancedInstaller打包工具一些可选步骤 & 功能 1. 语言和本地化 位于User Interface(用户界面)—— Translations(翻译)中,可以对安装包进行本地化。 任何一个Advinst的工程(aip)都有其默认语言,在创建工程即可预先指定,如下图: 创建后,在Translations -> Language中便可看到默认选中了该语言项。 在B

2017-11-04 17:04:11 3292

原创 AdvancedInstaller打包工具使用(二)

AdvancedInstaller打包工具使用(一)续~http://blog.csdn.net/qq_20849387/article/details/78444407 6. 指定界面 此步骤所用到的工具模块比较复杂,仅靠文字无法完全描述清楚。在此仅大致描述一下基本原理和一些常见功能,具体细节请自行查找相关资料或教程。 位于User Interface(用户界面)—— Dialogs(对

2017-11-04 16:59:00 3494 4

原创 AdvancedInstaller打包工具使用(一)

前言 本文档针对Advinst 13.1英文破解版制作,其他版本操作大同小异,介绍重点为各种常用易用操作,目的为抛砖引玉,利用个人目前为止对该工具的使用心得和经验引导初次使用者快速上手本工具。 基本流程 1. 新建项目 打开Advinst,在左侧菜单中选择New,Project Type选择Installer,最右侧的工程模板中选择Enterprise: 2. 安装包基本信息设置

2017-11-04 16:43:54 10596 2

转载 UGUI中按Tab切换InputField

本文转自风冻冰痕博客,固定链接: http://icemark.cn/blog/?p=253目前的UGUI在InputField里即使设置了Navigation也是不可以用键盘切换上下,所以自己写了个组件实现这个功能前提条件是要在InputField里设置Navigation,也就是必须能找到上一个控件和下一个控件然后将以下脚本挂在需要切换的InputField上,用Tab和S

2017-11-03 10:28:21 280

原创 AdvancedInstaller打包工具使用(六)

自定义动作(Custom Actions) 如果你需要安装包执行非常特殊的动作,或者需要自行编码并让安装包在目标机器上执行你需要进行的额外安装步骤,则可考虑使用此功能。 它位于Custom Behavior(自定义行为)–》 Custom Actions(自定义动作)中: 建立自定义动作 以Visual Studio为例,你首先需要安装WIX(Windows Installer XML)

2017-11-02 16:08:26 2278 4

原创 AdvancedInstaller设置当用户选择中文路径时弹窗警告

问题需求: 当我们的程序用到一些插件功能,而这些插件又不识别中文,不支持中文路径的话,我们的程序安装路存在中文的话就没办法正常使用插件了。 解决方案: 在制作一键安装包的时候在用户选择安装路径的时候检查路径中的字符。当路径中包含中文,就弹窗提醒:所选路径不能包含中文 1.制作一个用户自定义动作(Custom Actions) 制作方式见我另外一个博客:http://blog.csdn.ne

2017-11-02 14:02:09 3419 3

原创 AdvancedInstaller设置IP地址和端口号

使用情景: 当我们制作的程序有前端也有后台,而且我们的前端、后台程序都是交付给用户的,那么前端和后台的通讯需要设置新的IP地址和端口号,而新的IP地址和端口号只有用户在部署了平台之后才会知道这个地址,那么前端的打包工具就需要用到让用户自己在安装前端(客户端)的时候自己输入新的IP地址和端口号。然后客户端通过读取用户输入的地址来和平台进行通信。 解决方法: 用AdvancedInstal

2017-11-02 11:41:34 1827

原创 AdvancedInstaller用户自定义动作——卸载程序

使用过程中发现问题:用AdvancedInstaller本身自带的卸载程序会出现卸载不干净的问题,有残留日志文件,注册文件等。。。 通过实验得知可以通过用户自定义动作(Custom Actions)可以强制删除所有文件。如何建立自定义动作请看我这篇博客:http://blog.csdn.net/qq_20849387/article/details/78421482 今天直接给出一个用于删除程序

2017-11-02 10:50:04 9738 7

原创 AdvancedInstaller快速制作一键安装包

安装Advanced Installer 13.8.1一键安装制作软件,并破解。设置全局语言默认设置,中文简体。新建项目工程,选择企业版。 直接选择完成。设置产品详细页。 添加exe文件和数据文件内容,并同步。 7. 设置快捷方式 8. 设置Install Tarameters。 9. 设置Builds。 10. 安装协议 11.

2017-11-02 10:31:38 8541 1

转载 在Unity中实现有限状态机

原文链接简介有限状态机,(英语:Finite-state machine, FSM),又称有限状态自动机,简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型 -- 引用百度百科的解释:有限状态机(FSM)是游戏AI的一种常用模型,我做一个简单的记录,在Unity中实现有限状态机模型.FSM的结构和逻辑整体结构分为4个部

2017-10-24 10:38:55 316 1

原创 Unity播放视频3种方式(2旧1新)

今天用unity5.6播视频,尝试了3种方式,查了一些资料,分享一下。注:其中有些属于转载。我只是搬运工。。。前2种方法见宣雨松大神的博客链接:Unity3D研究院之两种方式播放游戏视频(二十五) 。这里还在CSND上找到一个分享视频转换器的博客,其中也有一些播放视频的方法觉得写得也不错,贴出来吧:Unity3D播放视频下面重点介绍第三种方法:Unity5.6自带的VidePlay

2017-10-18 15:26:01 31652 1

转载 在Unity里点击按钮打开一个浏览器页面 点击关闭 关闭这个页面

原文链接:http://blog.csdn.net/chh19941125/article/details/46126467在Unity里点击按钮打开一个浏览器页面  点击关闭 关闭这个页面using System.Collections;using System.Collections.Generic;using UnityEngine;using System.Diagnos

2017-08-18 09:45:07 8836 2

转载 <Unity>鼠标拖动物体、按下鼠标左键旋转观察物体、鼠标滚轮缩放视野

http://blog.csdn.net/sinat_27456831/article/details/49366947

2017-08-16 13:47:11 1004

原创 unity鼠标左键拖拽旋转模型滚轮放大缩小模型

using UnityEngine;public class DragTest : MonoBehaviour{ Vector3 scale; float offset=0.2f; float maxSize=2.0f; float minSize = 0.4f; public float speed = 200f; // Use this for

2017-08-16 13:43:50 3030

原创 unity音频管理类

程序中需要播放的音频文件需要存储在 Resources/Audio 文件夹下面 (文件夹自己创建)。然后调用:AudioClipManager.GetInstance().FindClipByName("你要找的音频文件名");就可以得到想要的音频文件 class AudioClipManager { //音频字典 private Dictionary soundDict

2017-08-02 14:04:35 732

转载 面向对象的设计原则:开放-封闭原则

定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。问题由来:在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会给旧代码中引入错误,也可能会使我们不得不对整个功能进行重构,并且需要原有代码经过重新测试。解决方案:当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。         开闭原则是面

2017-07-27 18:05:57 268

转载 面向对象的设计原则:接口隔离原则

定义:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。问题由来:类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法。解决方案:将臃肿的接口I拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系。也就是采用接口隔离原则。举例来说明接口隔离原则:

2017-07-27 18:03:58 213

转载 面向对象的设计原则:单一职责原则

定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。解决方案:遵循单一职责原则。分别建立两个类T1、T2,使T1完成职责P1功能,T2完成职责P2功能。这样,当修改类T1时,不会使职责P2发生故障风险;同理,当修改T

2017-07-27 17:54:52 233

转载 面向对象的设计原则:依赖倒置

定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。问题由来:类A直接依赖类B,假如要将类A改为依赖类C,则必须通过修改类A的代码来达成。这种场景下,类A一般是高层模块,负责复杂的业务逻辑;类B和类C是低层模块,负责基本的原子操作;假如修改类A,会给程序带来不必要的风险。解决方案:将类A修改为依赖接口I,类B和类C各自实现接口I,类A通过接

2017-07-27 17:37:43 213

转载 面向对象的设计原则:里氏替换原则

里氏替换原则通俗的来讲就是:子类可以扩展父类的功能,但不能改变父类原有的功能。它包含以下4层含义:子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法。子类中可以增加自己特有的方法。当子类的方法重载父类的方法时,方法的前置条件(即方法的形参)要比父类方法的输入参数更宽松。当子类的方法实现父类的抽象方法时,方法的后置条件(即方法的返回值)要比父类更严格。

2017-07-27 17:28:23 238

原创 HANDLE句柄初识和颜色相关

#include //HANDLE(句柄) 和颜色需要用到的头文件int main(){ HANDLE consolehwnd; //创建句柄,详细句柄知识,请百度一下或查MSDN consolehwnd = GetStdHandle(STD_OUTPUT_HANDLE); //实例化句柄 SetConsoleTextAttribute(consolehwnd, FOREGROUND

2017-07-24 17:57:51 763

AndroidStudio 与 Unity3d 交互

网上教程多坑,又有很多讲不清的地方,自己亲手实践来得真知。 (Android SDK的接入一般分为两种) 1)一种是把Unity的工程导出google project的形式进行接入 2)另一种是通过把Android的工程做成Plugins的形式进行接入 本次讲解第一种

2018-03-17

AndroidStudio 3.0 与 Unity3d 2017交互

(Android SDK的接入一般分为两种) 1)一种是把Unity的工程导出google project的形式进行接入 2)另一种是通过把Android的工程做成Plugins的形式进行接入

2018-03-17

新闻发布系统

新闻发布系统

2014-12-18

空空如也

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

TA关注的人

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