- 博客(25)
- 收藏
- 关注
原创 Unity场景和UI相机都是正交相机情况下 UI跟随3D物体的坑
前言之前开发遇到过这样一个情况UICanvas的相机是正交相机场景相机也是正交相机 因为是2D游戏出现的问题是:当创建UI血条想让血条跟随 3维场景下的某个物体 出现位置偏差解决方式第一种情况UICanvas的相机是正交相机场景相机也是正交相机把动态创建出来需要跟随3D物体的UI的父级锚点 铆钉在左下角这样再把3D物体的坐标转换到屏幕坐标 Vector2 screenPo...
2020-03-30 14:56:22 881
原创 UniRX网络请求 Http篇 get post
UniRX网络请求 Http篇 get post前言:unity高版本之后UniRX对于ObservableWWW已经弃用在网上搜索了一下 结果一个老外具体叫什么忘记了 自己重新对UnityWebRequest封装了一份ObservableWebRequest具体封装脚本:这个脚本之前只支持Post以字典方式请求,自己又改了一下 支持Post Json格式请求using System...
2019-11-01 09:42:24 1145
原创 UI打包图集优化 安卓和苹果
1.选择要设置的图集,选择高级选项(Advanced)2.取消Generate Mip Maps 的勾选 ,如果是打包安卓选择RGBA Compressed ETC2 8 bits3.如果是苹果选择 RGBA Compressed PVRTC 4 bits
2018-03-18 21:53:01 572
原创 vs提示行尾不一致,解决方法
1: VS的当前文档选择 “文件” “ 高级保存选项” “行尾改为“ Windows(CR LF)” 。2:使用VS 打开Unity的模版文件,也该为相同的设置,则后面新建立的所有文件,则不再报此类警告。...
2018-02-11 10:48:48 17164
原创 利用PhotonServer 搭设自己的服务器(下)
然后做接收服务器端数据 更新服务器列表回到Unity打开ServerController 我们在从新生成一下Common的dll文件改bug 1.服务器端Application类2.Unity PhotonEngine
2017-12-18 15:50:33 1429
原创 利用PhotonServer 搭设自己的服务器(上)
首先VS创建新项目 创建一个类库 添加引用然后添加两个类详细步骤点击打开链接下面给我们自己的服务器端添加输出日志功能我们找到Photonserver 自己提供的源码在下面这个路径 用VS打开选择MasterServer主服务器下的MasterApplication脚本 并且找到里面的SetUp方法我们将这4句代码放在我们继承自Application
2017-12-15 15:26:15 5954
原创 使用FluentNHibernate_NHibernate操作数据库
首先到NuGet程序包中搜索FluentNHibernate 幷安装添加完引用后 我们需要先新建一个Model的模型类 使用Virtual关键字修饰 是固定写法模型类创建好了之后 我们需要创建一个Mapping的映射类把模型中的属性和MySQL里面的对应上映射类创建完之后下面的类很重要 需要提供iP mysql中的表名 还有用户名和密码 以及在哪个dl
2017-12-15 13:32:34 2092
原创 PhotonServer配置
首先引用库dll文件以下是服务器端的操作1.在安装目录下lib文件下下2.创建Server入口的程序类 继承自ApplicationBase (库类型新建项)3.创建服务器端的Peer 这个是用来和客户端进行通信的以下是客户端进行操作第一种 非Unity做客户端的时候首先我们要有一个客户端的peer这个peer
2017-12-14 16:50:02 991
原创 已知两个直角边求夹角以及移动到目标位置
获取角度public float GetAngles() { float y = targetPos.y - transform.position.y; float x = targetPos.x - transform.position.x; Debug.Log(angles); angles = Mathf.Atan(
2017-08-30 17:31:02 2585
原创 视口坐标转世界坐标
[HideInInspector] public float leftBorder; [HideInInspector] public float rightBorder; [HideInInspector] public float topBorder; [HideInInspector] public float downBorder;
2017-08-30 13:17:36 723
转载 动态修改UGUI渲染顺序
//雨松大神的方法using System.Collections;using System.Collections.Generic;using UnityEngine;public class UIDepth : MonoBehaviour { public int order; public bool isUI = true; // Use this for ini
2017-08-25 11:01:31 1623
原创 unity 判断物体是否到达屏幕边界
public float leftBorder; public float rightBorder; public float topBorder; public float downBorder; private float width; private float height; private int count; bool fistT
2017-08-24 14:21:28 7510
转载 DoTween
首先引入命名空间using DG.Tweening;第一种方法不常用 改变一个变量的值public Vector3 myValue = new Vector3(0,0,0);DOTween.To(() => myValue, x => myValue = x, new Vector3(0, 0, 0), 2);第二种方法常用void Start () { Tweener t
2017-08-10 14:59:48 505
原创 EasyTouch
Gesture current = EasyTouch.current; // Cube if (current.type == EasyTouch.EvtType.On_SimpleTap && current.pickedObject !=null && current.pickedObject.name=="Cube"){ ResteColor(); cube = cu
2017-08-09 16:12:29 338
原创 加载场景时调用的函数以及重新加载本场景
//加载下一个关卡 Application.LoadLevel(Application.loadedLevel);//重新加载本关卡 void OnLevelWasLoaded(int scenelevel)//每次加载完场景调用的函数 { level++; InitGame(); }
2017-08-08 16:52:55 4689
原创 2D利用rigidbody移动以及Invoke函数
rigidbody2.MovePosition(Vector2.Lerp(transform.position, targetPos, smoothing * Time.deltaTime));//传一个positionInvoke("HideBlack",1);//多少秒后调用哪个函数,只能给没有参数的函数.无法传参
2017-08-08 16:50:11 533
原创 Unity2D射线检测以及collider的事件发送
RaycastHit2D hit = Physics2D.Linecast(targetPos, targetPos + new Vector2(h, v));//射线检测(起始位置,和目标位置)hit.collider.SendMessage("TakeDamage");//发送消息 相当于事件 直接调用("")里面的方法
2017-08-08 16:47:45 6405
原创 unity AssetBundle打包以及加载
//Build打包设置using UnityEngine;using System.Collections;using UnityEditor;using System.IO;public class CreateAssetBundle { [MenuItem ("Assets/Build AssetBundle")] static void BuildAssetBundle(){
2017-08-06 22:53:36 429
转载 unity UGUI 异步加载进度条
using UnityEngine;using System.Collections;using UnityEngine.UI;using UnityEngine.SceneManagement;public class Loading : MonoBehaviour { public Text loadText; public Slider loadSlider; private
2017-07-25 22:20:23 841
原创 NGUI UIcenterOnChild
首先给UIGrid添加UICenterOnChild脚本在两个锁的点击事件中获取到UICenterOnChild CenterOn()方法进行传参 这样物体就能居中显示了
2017-06-12 16:29:53 1529
原创 NGUI根据点击按钮名字获取想要的值
首先看UI设计, UI把不同的宝石Item单独放在1 2 3 4 5 6……10中 每一个都是一个不同的宝石ItemFulingInfo levelupItemInfo = GmdeCenter 这句代码的GetFulingUpitemInfo()是想要拿到哪个Item的值, 所以我们先在外面定义一个全局的int _curSelectType变量 然后这样做,看下面图片
2017-05-11 17:04:56 978
原创 NGUI点击事件传参
第一步:拿到UIBtn 组件第二步:定义一个EventDelegate 委托事件 (this,“OnBuyItem”) OnBuyItem 是方法名第三步:给委托变量赋值第一个参数用[0]表示 如果没有第二个或更多参数 是写一个[0] new后面是参数类型第四步:给buybtn添加点击事件(eventdelegate);程序运行到这个方法 就会根据你传的参数进行 运算
2017-05-11 16:45:08 1074
原创 工作 宝箱增加提示
根据UI拿到自己想要的组件这里拿到的是三个Btn_1,2,3, 和三个Open_1,2,3 在一个循环中UIfor(int i = 1; i 分别拿到所有按钮注意::EventDelegate onopenbtn = new EventDelegate(this,“OnOpenBtn”);这里this 表示 在这个脚本中,OnOpenBtn表示注册的函数(方法);onop
2017-04-25 17:07:34 304
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人