
Unity3D
poda_
这个作者很懒,什么都没留下…
展开
-
【Unity实用小方法】生成随机颜色
Color RandomColor() {//随机颜色的RGB值。即刻得到一个随机的颜色 float r = Random.Range(0f, 1f); float g = Random.Range(0f, 1f); float b = Random.Range(0f, 1f); Color color =原创 2015-11-11 13:37:25 · 12336 阅读 · 1 评论 -
【Unity开发】UNITY实现断点续传
using UnityEngine;using System.Collections;using System.IO;using System.Threading;using System.Net;public class wishDownload : MonoBehaviour{ /// /// URL下载路径 /// private stri原创 2016-01-05 20:48:23 · 3921 阅读 · 3 评论 -
【Unity实用小方法】判断shader使用贴图数
using UnityEngine;using System.Collections;using UnityEditor;public class Test : MonoBehaviour {private int showShaderTexNum(Shader shader) { int propertynum = ShaderUtil原创 2016-01-05 21:12:21 · 1510 阅读 · 0 评论 -
【Unity开发】获取文件的MD5
文件的MD5值是独一无二的,所以当MD5值改变时说明文件改变了近期做移动端的断点续传正是运用到这一特性。using UnityEngine;using System.Collections;using System.Net.NetworkInformation;using System.IO;using System;using System.Text;public class原创 2016-01-07 14:10:17 · 3415 阅读 · 0 评论 -
【Unity开发】实现简易时钟效果
先创建一个新的Unity工程。默认场景包含一个基于 (0, 1, -10) 、俯视Z轴的相机。为了获得和场景视图相机相似的视角,选择相机,然后从菜单中选择GameObject / Align View to Selected。我们需要一个对象结构来代表时钟,从GameObject / Create Empty创建一个空游戏对象,命名为Clock。为它创建三个子对象,分别命名为Hours,原创 2016-01-25 11:14:41 · 3231 阅读 · 0 评论 -
【Unity开发】通过C#读取CSV表,创建并存储到LUA table中
这样做的目的有助于策划改需求时。可以直接热更新修改游戏数值。using UnityEngine;using System.Collections;using System.IO;using System.Collections.Generic;using System.Text;using UnityEditor;public class test : MonoBehaviour {原创 2016-03-03 11:11:54 · 2141 阅读 · 0 评论 -
【Unity开发】Unity获取设备屏幕分辨率
using UnityEngine;using System.Collections;public class ExampleClass : MonoBehaviour { void Start() { Resolution[] resolutions = Screen.resolutions; foreach (Resolution res in r原创 2016-04-01 10:52:29 · 29065 阅读 · 2 评论 -
【Unity开发】NGUI动态刷新ScrollView
使用NGUI开发ScrollView时,当动态添加Prefab时无法重新排序,此时可以通过调用UIGrid组件的Reposition()函数来刷新ScrollView或者通过属性repositionNow = true来刷新具体代码如下:using UnityEngine;using System.Collections;public class test原创 2016-03-09 17:20:20 · 4188 阅读 · 1 评论 -
【Unity开发】Unity中触摸和鼠标操作的几个问题
关键点1:在unity中touch事件同时也会触发GetMouseButton事件,有时候可能会给你带来方便,但是如果没有意识到这个问题的话,也很可能给你带来很大的麻烦。关键点2:触摸操作也可以使用Input.GetAxis("Mouse X")(或"Mouse Y",下同,略去不写)来判断指尖移动的距离,虽然这点很方便,但是这样就带来了另外两个问题,见关键点3和4;关键点3:转载 2016-05-06 19:28:43 · 12525 阅读 · 4 评论 -
【Unity开发】粒子效果穿透最上层UI的解决办法
只需将下面的脚本动态或者静态加载到NGUI的粒子上。并设置一下粒子显示在某个UI上,就可以解决穿透的问题了using UnityEngine;using System.Collections;public class EffectDepth : MonoBehaviour { //粒子放置的UI位置 public UIWidget target; //记录渲染深度原创 2016-08-03 16:30:47 · 7796 阅读 · 1 评论 -
【Unity开发】获取Unity Stats面板
讲脚本挂在场景内即可查看Stats数据using UnityEngine;using System.Text;using UnityEditor;public class ShowFps : MonoBehaviour{ public bool m_isShow = true; private int m_FrameCounter; private flo转载 2017-02-16 15:35:13 · 4418 阅读 · 0 评论 -
【Unity开发】简单的对象池实现
using UnityEngine;using System.Collections;using System.Collections.Generic;public class ObjectPool : MonoBehaviour{ //定义一个池子,里面存的是对象名字,以及游戏对象 Dictionary> pool = new Dictionary>(); /原创 2015-12-03 21:10:25 · 949 阅读 · 0 评论 -
【Unity开发】Unity实现英雄联盟选择皮肤效果
using UnityEngine;using System.Collections;/// /// 脚本位置:Card预制体身上/// 脚本功能:保存Card所有数据信息,用于更换图片/// public class CardInfo : MonoBehaviour { // 保存3张图片的深度信息 // 背景图片-》toggle激活图片-》人物图片 public UIWidg转载 2015-11-28 20:16:23 · 4474 阅读 · 2 评论 -
【Unity实用小方法】鼠标双击的判断
using UnityEngine;using System.Collections;public class DoubleClick : MonoBehaviour { //计时器,在一定的时间内双击有效 private float time = 0f; //计数器 private int count = 0; // Use this for ini原创 2015-11-11 16:06:51 · 8940 阅读 · 2 评论 -
【Unity实用小方法】随机生成不重复的数字
public int[] GetRandomSequence2(int total, int n) { //随机总数组 int[] sequence = new int[total]; //取到的不重复数字的数组长度 int[] output = new int[n]; for (int i = 0; i <原创 2015-11-12 09:09:02 · 13576 阅读 · 3 评论 -
【Unity实用小方法】开启游戏时播放一段动画
// 不显示任何视频控件,当点击屏幕发生输入之后会跳过动画的播放 // 一般游戏中的开场动画使用这种播放方式 Handheld.PlayFullScreenMovie("test.mp4", Color.black, FullScreenMovieControlMode.CancelOnInput); //视频文件放置在StreamingAssets 文件夹中原创 2015-11-13 21:28:53 · 2869 阅读 · 1 评论 -
【Unity开发】A星算法(怪物终点反复改变的解决办法)
//定义格子的枚举类型public enum GridType{ Normal, Obstacle, Start, End}定义格子类public class Grid : IComparable{ public int x; public int y; public int f;//总消耗 G+H public int g;//到起点消原创 2015-11-14 11:04:15 · 2519 阅读 · 1 评论 -
【Unity常识】游戏对象及脚本的状态与Start等函数的调用关系
通常调用关系有以下4种:1.game object 为active 但是脚本为disabled此时当对象被创建时只有Awake函数会被立刻调用,OnEnable和 Start 会在Enabled脚本后调用。2.game object 为deactive但是脚本为enabled此时当对象被创建时不会有函数被调用,当active物体之后会按照Awake OnEnable Start 顺原创 2015-11-22 23:43:49 · 3729 阅读 · 0 评论 -
【Unity开发】Unity2D多分辨率屏幕适配方案(IOS露出天空盒解决办法)
此文将阐述一种简单有效的Unity2D多分辨率屏幕适配方案,该方案适用于基于原生开发的Unity2D游戏,即没有使用第三方2D插件,如Uni2D,2D toolkit等开发的游戏,NGUI插件不受这个方案影响,可以完美和此方案配合使用。---------------------------------------正式开始的分割线-------------------------------转载 2015-11-17 15:57:13 · 3445 阅读 · 0 评论 -
【Unity开发】NGUI,UGUI按钮监听的动态添加与移除
Ugui:using UnityEngine;using System.Collections;using UnityEngine.UI;/// /// 脚本位置:UGUI的按钮身上/// 脚本功能:动态的添加按钮的点击事件/// public class ListenerTest : MonoBehaviour { private Button button ; void原创 2015-11-18 17:57:57 · 5859 阅读 · 3 评论 -
【Unity开发】Unity5.x版本的AssetBundle打包
using UnityEngine;using System.Collections;using UnityEditor;/// /// 脚本位置:Editor文件夹下/// 脚本功能:打包/// public class CreateAssetBundle:Editor{ //打包预制体 [MenuItem ("Assets/Build AssetBundle poda")]原创 2015-11-25 15:43:26 · 3353 阅读 · 0 评论 -
【Unity实用小方法】判断贴图是否为透明贴图
private bool JudgeTransparentPic(TextureFormat format) { //所有贴图格式带alpha通道的格式,带alpha通道的贴图才为透明贴图 string[] transparentFormat = { TextureFormat.Alpha8.ToString(),T原创 2015-12-27 23:28:20 · 5738 阅读 · 0 评论 -
【Unity开发】简单的Wav文件压缩
using UnityEngine;using System.Collections;using System.Text;using System.IO;using System;using System.Collections.Generic;public class audioTest : MonoBehaviour { void Start () {原创 2016-01-15 21:49:03 · 1870 阅读 · 0 评论 -
【Lua】Table根据value排序
使用lua开发需要把有用的数据全部存进Table里,lua也提供了一个sort接口来给table排序,但是sort的实现也是基于冒泡排序,他默认table的key是从1开始的,这样就会造成当我们的key是一些特殊的标志位,比如游戏中背包数据的GUID,就会无法正常排序。所以我们需要单独封一个接口来实现通过value来排序的功能下面就以装备列表中,Key为GUID 通过装备部位来排序原创 2017-03-06 15:47:20 · 4405 阅读 · 1 评论