游戏
文章平均质量分 61
Nice_66
这个作者很懒,什么都没留下…
展开
-
自己写的BMFont导入工具,快速把图片转换为美术字体
配合BMFont工具使用可以快速把图片转换为美术字,在项目中使用美术字体,需要准备一个材质球 一个空白字体,然后自己改一下路径,这两个脚本是分开的 ,先点art。using System;using System.Collections;using System.Collections.Generic;using System.IO;using UnityEngine;using UnityEngine.UI;using UnityEditor;public class ArtFont原创 2021-05-18 15:56:59 · 475 阅读 · 0 评论 -
Lua实现简单的A*寻路
--[[A*寻路算法,目前只适用于01图,0可通行,1不可通行--]]--行走的4个方向localfour_dir={{1,0},{0,1},{0,-1},{-1,0},}--行走的8个方向localeight_dir={{1,1},{1,0},{1,-1},{0,1},{0,-1},{-1,...原创 2021-05-18 15:47:48 · 1305 阅读 · 0 评论 -
优化一个Image遮罩,去除掉颜色组件只保留点击响应,透明的且让鼠标点不下去。
using System;using System.Collections.Generic;using UnityEngine;using XLua;namespace UnityEngine.UI{ public class Empty4Raycast : MaskableGraphic { protected Empty4Raycast() { useLegacyMeshGeneration = false; ...原创 2021-05-13 11:18:18 · 333 阅读 · 0 评论 -
U3D滑块中添加粒子特效,出现挡不住的情况,自己写个Mask来挡住
usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;usingUnityEngine.Rendering;usingUnityEngine.UI;publicclassUIParticle:MonoBehaviour{privatestaticCamerauiCamera;privateclassMatEntry{...原创 2021-03-17 23:00:47 · 560 阅读 · 0 评论 -
Unity3D计算Text组件渲染全部文字所需要的宽高
我们在项目研发中经常会遇到实时改变文字框大小的需求,大面积使用自适应组件对游戏是一个负担,如果优化这个需求呢,其实Text中有一个preferred属性,可以让开发者知道Text渲染这些文字需要的宽度或者高度。以下贴出一个封装函数,是lua写的。--传入一个Text组件,type是获取高或者宽,自己决定设置什么。--这里是直接把Text组件设置为刚好渲染出框内文字的宽或者高。localfunctionSetTextSize(text,type)localRT=UIU...原创 2021-01-21 17:13:51 · 1628 阅读 · 0 评论 -
游戏开发中道具一键合成思路,多级别道具合成,采用递归方法,简单高效。
在游戏开发中我们往往会遇到道具合成的需求,如果玩家自己一级一级的合成太过繁琐,何不直接一键合成他需要的材料,通过递归来完成计算,从初级材料一级一级的完成合成。以下是LUA开发的递归合成思路。--itemId是需要计算的道具ID--need_num 是需要itemId这个道具的数量localfunctionItemfunc(self,itemId,need_num)--这一步是去道具表去道具信息,如果没有就退出localcfg=assemble_cfg[itemId...原创 2021-01-07 09:56:17 · 1501 阅读 · 0 评论 -
DOTween插件动画播放的曲线设置,取消缓动采用匀速的方式。
主要采用的是SetEase方法transform.DOMoveX(4, 1).SetEase(Ease.Linear);参考缓动的枚举来设置自己的缓动数据DOTWeen缓动枚举 public enum Ease { Unset =0, Linear =1, InSine =2, OutSine =3, InOutSi...原创 2019-08-28 14:56:29 · 5026 阅读 · 0 评论 -
lua生成随机数,设置随机数种子
lua需要生成随机数的需求也是很常见的,为了生成看起来更随机的数字,我们需要注意以下几点我们也需要给随机数设置随机数种子:math.randomseed(xx) lua对随机数种子也是有一定要求的:不能太相近 lua中的os.time()是基于秒的,不太满足lua对随机数种子的要求(如果设置随机数种子的频率太高的话)那怎么做?把 os.time()返回的数值字串倒过来再取高位7位。 这...转载 2019-09-12 15:10:41 · 2850 阅读 · 0 评论