Unity3D
Yu______________
这个作者很懒,什么都没留下…
展开
-
Unity 3D - 闪退修复汇总
Unity 3D - 【AssetBundle 文档翻译】 一、简介相关链接 : 本系列文章总目录官方文档链接正文 : AssetBundles原文 : An AssetBundle is an archive file containing platform specific Assets (Models, Textures, Prefabs, Audio...原创 2018-02-09 09:50:42 · 2626 阅读 · 0 评论 -
C#多线程导致计数错误
最近做多线程解压资源的时候,遇到一个偶现的计数错误。按下面代码测试之后确定了问题。(10条线程,每条都计数1万次,最终结果按理来说是10万次。)但是实际并不是每次运行结果都是10万。这样的情况,需要加锁处理,才可以保证结果确定。...原创 2020-11-25 16:34:03 · 648 阅读 · 0 评论 -
C#反射获取私有变量值
removeFromParent移除以后会自动调用onExit this.listener = cc.eventManager.addCustomListener(“自定义命名”) cc.eventManager.removeListener(this.listener) 进行定点移除this.removeFromParent(true) ;onExit: function(){ cc原创 2016-07-25 09:15:41 · 2910 阅读 · 0 评论 -
Unity 3D - Mask和RectMask2D区别
Unity 3D - Mask和RectMask2D区别 :主要区别:区别1:Mask主要处理不规则图形遮罩效果RectMask2D只能做矩形遮罩. 区别2:Mask需要一个Image来当作遮罩区域,子节点在Image[渲染区域]才会显示RectMask2D以自身RectTransform为裁剪区域,子节点在[RectTransform区域]内显示从效果上看 Mas...原创 2019-10-25 16:14:43 · 11429 阅读 · 0 评论 -
Unity 3D - 图片平铺的正确设置
**Unity 3D - 图片平铺的正确设置 : **如果图片不经过设置,ImageType选择Tiled时,会出现一个警告 !Scene视图下选择线框模式(Wireframe)会发现Unity按照图片尺寸拉伸出,导致三角面数增多数倍.按照警告提示修改图片的设置,把warpMode从Clamp修改成Repeat.然后再看,三角面变为正常情况...原创 2019-10-15 14:57:13 · 7420 阅读 · 2 评论 -
Unity 3D - 游戏开发图片纹理压缩方案
Unity 3D - 游戏开发图片纹理压缩方案 :Unity3D引擎对纹理的处理是智能的:不论你放入的是PNG,PSD还是TGA,它们都会被自动转换成Unity自己的Texture2D格式。在Texture2D的设置选项中,你可以针对不同的平台,设置不同的压缩格式,如IOS设置成PVRTC4,Android平台设置成RGBA16等。嗯,非常的智能。 但是,在一些进阶的使用中,一些情况是难...转载 2016-07-20 11:54:37 · 1002 阅读 · 0 评论 -
Unity 3D - 打包Android 设置 SDK
Unity 3D - 打包Android 设置 SDK :原创 2016-07-20 14:19:23 · 835 阅读 · 0 评论 -
Unity 3D - 可视化变量标注
Unity 3D - 可视化变量标注 :常用 :拖动条 : [Range(0, 100)]大标题 : [HeaderAttribute(“属性”)]停留提示 : [TooltipAttribute (“生命值”)]隐藏 : [HideInInspector]public 和 private 正常情况: public 的变量值会显示在 Inspect原创 2016-08-23 14:49:58 · 2629 阅读 · 0 评论 -
Unity 3D - Random类
Unity 3D - Random类 :Random类可以用来生成随机数。Random成员变量 : 成员变量 说明 seed 随机数生成器种子 value 返回一个0~1之间随机浮点数,包含0到1 insideUnitSphere 返回位于半径为1的球体内的一个随机点(只读) insideUnitCircle 返回位于半原创 2017-05-04 17:02:24 · 14448 阅读 · 0 评论 -
Unity 3D - 特殊文件夹作用
Unity 3D - Camera Play [摄像机渲染特效] :下载地址 :下载地址点这里 (http://download.csdn.net/download/yu__jiaoshou/9991133) 作用 : 非常实用的插件 , 基本都是一行代码搞定一个特效 , 可以多特效混合 .使用方法 :导入插件以后 , 打开实例场景 , 选择需要的摄像机特效 ,原创 2017-09-20 21:10:46 · 5318 阅读 · 2 评论 -
Unity 3D - 编辑器扩展之创建lua文件模版
Unity 3D - 编辑器扩展之创建lua文件模版 :创建方法 : 作用 :利用正则自动生成文件路径 , 类名 等文件信息 .在模版上加一些创建提示 , 方便后面开发 . 自动生成结果 : C# 文件内容 : using UnityEngine;using UnityEditor;using System;using System.IO;using System.Text;usin原创 2017-08-29 20:31:05 · 831 阅读 · 0 评论 -
Unity 3D - 编辑器扩展之导入文件自动设置Packing Tag
转载自 : http://blog.csdn.net/huutu/article/details/45564555Unity 3D - 编辑器扩展之自动设置Packing Tag :注意 :C#代码需要放在Editor文件夹 C#代码 :using System.IO;using UnityEditor;public class AutoSetTextureUISprite : AssetPost转载 2017-09-19 16:59:39 · 2633 阅读 · 0 评论 -
Unity 3D - 常用API
Unity 3D - 常用API :射线:Unity 3D - Ray ( 射线 ) - 链接射线使用domo : if (Input.GetMouseButtonDown (0)) { RaycastHit hit; if (Physics.Raycast (Camera.main.ScreenPointToRay(Input.mousePosition), out hit))原创 2016-07-25 09:20:13 · 1159 阅读 · 0 评论 -
Unity 3D - 编辑器扩展之删除Miss脚本
Unity 3D - 编辑器扩展之删除丢失脚本 :C#代码 :1.显示工具面板 : [MenuItem("Tools/资源/删除所有Prefab上的Miss脚本")] static public void DeleteMissScript() { EditorWindow.GetWindow<DeleteMissScript>("删除所有Prefab上的Mis原创 2017-09-18 21:19:16 · 2205 阅读 · 2 评论 -
Unity 3D - 编辑器扩展之修改PackingTag
Unity 3D - 编辑器扩展之修改PackingTag :C#代码 :注意 : 代码中屏蔽了 SaveAndReimport 方法 , 如果项目中有自动修改PackingTag的脚本 , 可以使用SaveAndReimport方法重新导入.链接 : 导入资源自动设置PackingTag链接using System.Collections.Generic;using UnityEngine;u原创 2017-09-19 17:14:28 · 3707 阅读 · 1 评论 -
Unity 3D - 编辑器扩展之删除未使用资源
Unity 3D - 编辑器扩展之删除未使用资源 :C#代码 :using System.Collections.Generic;using UnityEngine;using UnityEditor;using System.IO;using System.Linq;namespace CZGame{ public class ShowAllNotUseResource : Ed原创 2017-09-18 21:27:15 · 3089 阅读 · 2 评论 -
Unity 3D - 编辑器扩展之列出Prefab使用的资源
Unity 3D - 编辑器扩展之列出Prefab使用的资源 :C#代码 : using System.Collections.Generic;using UnityEngine;using UnityEditor;using System.IO;using System.Linq;namespace CZGame{ public class CheckAllUIPrefabRes原创 2017-09-18 21:24:11 · 1519 阅读 · 0 评论 -
Unity 3D - 鼠标拖动物体Demo
Unity 3D - 鼠标拖动物体Demo :using System.Collections;using System.Collections.Generic;using UnityEngine;public class Drag : MonoBehaviour { private Vector3 _vec3TargetScreenSpace;// 目标物体的屏幕空间坐标原创 2017-05-22 15:08:35 · 607 阅读 · 0 评论 -
Unity 3D - MipMap
Unity 3D - MipMap : 类似LOD的渲染优化技术 .作用 :优化渲染 , 提高游戏流畅度 , 根据摄像机距离模型的远近而调整不同的不同质量的贴图显示 .优点 :减少渲染消耗 , 提高帧数.缺点 :占用内存增大.未开启时 , 贴图占用内存大小为128KB 勾选GenerateMipMaPs后 , 点击一下Apply开启 , 开原创 2016-07-20 09:17:43 · 3277 阅读 · 0 评论 -
Unity 3D - LOD
Unity 3D - LOD:转载自 : http://www.narkii.com/club/thread-321290-1.html说明 :LOD 即 Levels of Detail 的简称 , 意为多细节层次 . LOD技术指根据物体模型的节点在显示环境中所处的位置和重要度 , 可根据距离动态地选择渲染不同细节的模型 , 决定物体渲染的资源分配 , 从而获得高效率的渲染运算 .转载 2016-08-01 20:38:19 · 1507 阅读 · 0 评论 -
Unity 3D - 优化内存
Unity 3D - 优化内存 : 关闭mipmap什么是mipmap? (http://blog.csdn.net/yu__jiaoshou/article/details/51965108)Mipmap旨在有效降低渲染带宽的压力,提升游戏的渲染效率。但是,开启Mipmap会将纹理内存提升1.33倍。对于具有较大纵深感的3D游戏来说,3D场景模型和角色我们一般是建议开启Mipma原创 2016-07-20 10:25:44 · 846 阅读 · 0 评论 -
Unity 3D - 监听Prefab保存事件
this.touchTarget.setLocalZOrder(this.childrenCount)//**or**this.setLocalZOrder(this.childrenCount)//**将目标元素置顶**this.childrenCount : 是该Layer的所有子对象数量原创 2016-07-25 09:02:37 · 1939 阅读 · 0 评论 -
Unity 3D - RenderTexture导致内存泄露
**Unity 3D - renderTexture导致内存泄露 : **Unity2019.1官方文档上写明,renderTexture不会被GC,所以意味着如果创建的renderTexture不去管理的话,内存占用会越来越大。经过多次测试创建和回收,得出结论:1.实例化new出来的对象, 调用Release方法不会立即释放, 切换场景也不会释放。从下面两张图中看得出,创建后内存和o...原创 2019-05-13 16:45:30 · 9738 阅读 · 2 评论 -
Unity 3D - IOS设置分辨率问题汇总
var testEvent= new cc.Event.EventCustom("CustomName", false) testEvent.setUserData("abc") cc.find("UIScript").dispatchEvent(testEvent);cc.find(“UIScript”) 里 UIScript 是节点 var that = this原创 2016-07-25 20:23:41 · 1780 阅读 · 0 评论 -
Unity 3D - 打包APK报Unable to list target platforms解决办法
Unity 3D - 打包APK报Unable to list target platforms解决办法:打包的时候报Unable to list target platforms 解决办法:替换SDK的tools文件 SDK tools下载地址(https://dl.google.com/android/repository/tools_r25.2.3-windows.zip...原创 2018-08-28 10:37:50 · 3989 阅读 · 5 评论 -
Unity 3D - 修改变量名不丢失序列化值
Unity 3D - 修改变量名不丢失序列化值 :申明一个GameObject变量, 命名为monster 然后inspector上拖拽一个GameObject上来. 当然属性名修改的时候. inspector上的引用就会Miss,为解决这种问题,看下面的方法. 解决办法 :在修改命名的同时,加上[FormerlySerializedAs(“monster”)] ...原创 2018-08-20 18:31:03 · 1509 阅读 · 0 评论 -
Unity 3D - Assertion failed on expression错误
在写ConsoleWindow的双击重定向编辑器扩展的时候,出现了这个错误. 最终发现原因是,在inspectors刷新之前,双击跳转会报这个错,解决办法就是用Unity的EditorApplication延迟调用.EditorApplication.delayCall = delegate (){ //do something};...原创 2018-07-30 14:59:02 · 19441 阅读 · 0 评论 -
Unity 3D - 性能优化总结
预先设置talkPanel 为节点 : properties: { talkPanel:cc.Node },通过配置文件设置对象属性 : var that = thiscc.loader.loadRes(&amp;amp;quot;csv/weapon&amp;amp;quot;, function (err, weaponCsv) { var weaponArr = weaponCsv.split(&amp;amp;quot;\n原创 2016-07-20 20:32:26 · 906 阅读 · 0 评论 -
Unity 3D - Text空格自动换行问题
Unity 3D - Text空格自动换行问题:遇到一个Unity自身的小问题,文本前加空格会自动换行问题 从5.6版到2018.1都一直存在(5.6以前版本未测试,应该也存在)这是正常文本内容 加上空格以后,自动换行了 解决办法:将输入法的半角换成全角然后再输入空格就正常了 ...原创 2018-07-02 15:56:41 · 9840 阅读 · 4 评论 -
Unity 3D - UGUI性能优化
Unity 3D - UGUI性能优化:平时开发中常见的操作隐藏/显示(GameObject.SetActive),这样操作会导致Canvas丢弃它的VBO(Vertex Buffer Objects,顶点缓存对象)数据,重新显示的时候Canvas又需要执行重新构建(Rebuild) 以及重新批处理(Rebatch)操作,如果这种情况非常频繁,那么CPU使用率的增加就会导致游戏调帧,感觉卡顿。...原创 2018-04-28 20:34:31 · 1965 阅读 · 0 评论 -
单例类为什么需要锁定和两次判断?
using System;using System.Collections.Generic;// 适用于在多线程的情况下保证只有一个实例化对象的情况public sealed class Singleton{ private static Singleton myInstance; // 这个成员只能在“类初始化”时赋值, 所谓的类初始化,就是直接在类里面初始化 ...原创 2016-09-27 11:52:53 · 3014 阅读 · 0 评论 -
Unity 3D - 屏幕坐标转化
Unity 3D - 【AssetBundle】 官方教程写在前面 : 本系列文章主要计划分为两个部分 : 第一部分是[翻译官方文档]第二部分是[实际使用AssetBundle的基础教程].关于官方文档翻译,主要出于三个目的 : 1.为了熟悉官方完整的AssetBundle知识.2.为了锻炼自己阅读英文文档水平,平时虽然能看懂个大概, 但是仍然有一知半解的地方,...原创 2018-02-08 20:36:31 · 748 阅读 · 0 评论 -
Unity 3D - 常用插件汇总
Camera Play [摄像机渲染效果]链接 : Assets Store 链接实际项目效果 及 使用方法 - 链接作用 : 摄像机镜头渲染效果 , 受击效果 , 冲刺效果等等 , 一行代码就可以搞定 . Camera Path Animator [摄像机移动路径插件] : 链接 : Assets Store 链接作用 : 可视化编辑摄...原创 2016-07-30 08:45:43 · 2070 阅读 · 0 评论 -
Unity 3D - 光照计算中的diffuse的计算公式
创建颜色层 (LayerColor) : var _LayerColor = new cc.LayerColor(cc.winSize.height,cc.winSize.width);获取当前场景 :cc.director.getRunningScene()综合 : var currentScene = cc.director.getRunningScene(); if(curr原创 2016-09-02 16:21:50 · 3894 阅读 · 0 评论 -
Unity 3D - UGUI 和 Spine 遮挡问题
Unity 3D - UGUI 和 Spine 遮挡问题 :出现问题 :正常情况 :拖动超出ScrollView时 , Spine不受Mask遮挡 :解决办法 :修改Spine的设置 , 不用Skeleton , 选择 SkeletonGraphic :结果 :可以正常遮罩了原创 2017-06-17 17:26:09 · 8521 阅读 · 0 评论 -
C# 中的结构体与类的区别
C#中的结构体与类的区别 :转载自 : http://www.cnblogs.com/to-creat/p/5268729.html经常听到有朋友在讨论C#中的结构与类有什么区别.正好这几日闲来无事,自己总结一下,希望大家指点.首先是语法定义上的区别啦,这个就不用多说了.定义类使用关键字class 定义结构使用关键字struct.在语法上其实类和结构有着很多相似的地方.定义类的语法 : 1转载 2017-05-04 13:40:15 · 541 阅读 · 0 评论 -
Unity 3D - 细节部分
Unity 3D - 细节部分 :脚本执行顺序 :有两个相同的方法,放在两个脚本的Awake里,将这两个脚本放在同一个游戏对象上,先执行那个? 跟脚本的添加顺序有关,后添加的先执行。由此可以推断游戏对象添加的组件以“栈”的数据结构保存,后进先出。原创 2017-05-03 21:35:48 · 355 阅读 · 0 评论 -
Unity 3D - AI锁定玩家
Unity 3D - 敌人AI跟踪玩家 : 官方API 描述 :调整朝向代码 ://Zombie.cs 敌人的C#脚本 transform.rotation = Quaternion.Slerp (transform.rotation, Quaternion.LookRotation (player.transform.position - transform.position), 5f);调用原创 2017-03-26 18:16:25 · 1716 阅读 · 0 评论 -
Unity 3D - UGUI 显示道具信息
Unity 3D - UGUI 显示道具信息 : 显示效果 :字符串排版处理 - 链接先在道具脚本上继承接口 IPointerEnterHandler 和 IPointerExitHandler . 在鼠标移动到道具上时 , 通过委派调用 OnEnter 方法 , 传入transform .using System.Collections;using System.Collections.Gen原创 2017-04-22 10:57:04 · 2741 阅读 · 0 评论 -
Unity 3D - 坦克大战游戏收获
Unity 3D - 坦克大战游戏收获 :项目展示 :跟着教学视频做了四五个项目了 , 现在对常用API基本熟悉了 , 做东西也越来越娴熟了 , 这篇博客主要记录一下开发中学到的细节 .脚本职责单一 , 分类明确 :功能很多的脚本 , 通常情况下不能适应特殊情况 , 最好是一个脚本只做一件事情 , 这样复用率会很高 , 一个脚本写完以后很多地方都可以用 .比如说 , 移动的脚本 ( Movement原创 2017-05-01 19:33:42 · 1565 阅读 · 0 评论