Unity3d
ThreePointsHeat
这个作者很懒,什么都没留下…
展开
-
Unity MySql安装部署与Unity连接 下篇
上篇讲到了如何安装与部署本地MySql;本篇主要讲Unity与MySql连接、创建表、删除表,然后就是对表中数据的增、删、改、查等操作。再讲这些之前会说一些安装MySql碰到的一些问题和Unity连接的问题。原创 2024-04-11 14:39:22 · 1371 阅读 · 0 评论 -
Unity AssetBundle批量打包、加载(场景、Prefab)完整流程
LZ4压缩是LZMA和不压缩之间的折中方案,构建的 AssetBundle 资源文件会略大于 LZMA 压缩,但是在加载资源时不需要将所有的资源都加载下来,所以速度会比 LZMA 快。该方法需要传入一个bool类型的参数,如果传入的是true,则会卸载AssetBundle本身及从AssetBundle加载的全部资源。如果传入的是false,则会保留已经加载的资源。一般ToB的小项目会有一些资源迭代的需求,所以场景资源单独放到文件夹中管理,每次有新的迭代时,只对最新版本中的场景资源进行增量打包。原创 2023-11-02 16:20:55 · 5103 阅读 · 0 评论 -
Unity中使用批处理删除文件或文件夹、清空回收站
【代码】Unity中使用批处理删除文件或文件夹、清空回收站。原创 2023-05-26 17:53:11 · 816 阅读 · 0 评论 -
Unity HybridCLR 热更工具学习日记(二)
创建一个程序集用来进行热更,在Assets下面创建一个Hot文件夹,在创建一个Assembly Definition命名为Hot(命名是个人习惯)然后编译成热更需要的dll文件,HybridCLR - CompileDll - Win64(测试使用的PC平台)然后将这个程序集加入到热更设置中HybridCLR - Settings。然后创建一个UI场景,写一个测试脚本,挂载到场景中。原创 2023-05-17 17:00:00 · 238 阅读 · 0 评论 -
Unity HybridCLR 热更工具学习日记(一)
复制包的http地址,打开unity - window - package Manager;点击左上角的 + 选择Add Package form git URL,将刚才复制的地址粘贴进去,点击Add;点击File - Build Setting - Player Setting - Player - Other Setting。Api Compatibility Level 改为 .NET Framework。然后点击Installer - 安装,如果是安装状态显示已安装,证明安装成功。原创 2023-05-16 16:27:50 · 750 阅读 · 0 评论 -
Unity 加载图片的两种方式文件流和UnityWebRequest
unity加载图片的两种方式文件流和unitywebrequest原创 2022-12-09 14:01:39 · 2939 阅读 · 1 评论 -
unity UGUI文本和背景自适应缩放&鼠标移入文字自动循环滚动
unity UGUI文本和背景自适应缩放&鼠标移入文字自动循环滚动。原创 2022-12-08 18:01:09 · 971 阅读 · 0 评论 -
Unity UGUI渲染顺序
代码】UnityUGUI渲染顺序在模型前。原创 2022-07-22 17:43:51 · 382 阅读 · 0 评论 -
Unity UGUI.Text超出文本框范围用省略号显示
/// <summary> /// 文本超出部分省略号 /// </summary> /// <param name="textTemp">目标文本框</param> /// <param name="value">文本</param> private void SetTextWithEllipsis(Text textTemp, stri...原创 2021-12-20 14:37:28 · 3714 阅读 · 1 评论 -
Text文本框根据文字大小、数量自适应缩放
1、先设置text相关参数2、写代码控制text和image背景的宽高;需要换行的自行在代码中控制。 private void AdjustDialogBoxSize() { if (messageText.preferredWidth > maxFrameWidth) { messageText.rectTransform.sizeDelta = new Vector2(maxFrameWidth, messageText原创 2021-04-28 11:01:55 · 798 阅读 · 0 评论 -
地球经纬度转换为unity球面坐标
项目需求:通过服务器发送的现实中地球某地的经纬度信息在unity地球模型上生成对应的模型及模型的精确位置。实现原理就是将谷歌地球经纬度展开为平面坐标,然后将平面坐标转换为三维坐标。上代码: /// <summary> /// 经纬度转球面坐标 /// </summary> /// <param name="log">经度值</param> /// <param name="lat">纬度值<原创 2021-03-03 10:11:55 · 3011 阅读 · 4 评论 -
Unity A*算法实现
原文地址:blog.liujunliang.com.cn简易地图如图所示简易地图,其中绿色方块的是起点(用A表示),中间蓝色的是障碍物,红色的方块(用B表示)是目的地.为了可以用一个二维数组来表示地图,我们将地图划分成一个个的小方块.二维数组在游戏中的应用是很多的,比如贪吃蛇和俄罗斯方块基本原理就是移动方块而已.而大型游戏的地图,则是将各种"地貌"铺在这样的小方块上.寻路步骤1.从起点A开始,把它作为待处理的方格存入一个"开启列表"...转载 2021-01-07 15:00:53 · 278 阅读 · 0 评论 -
unity 贝塞尔曲线实例化应用
项目中常常会用到画曲线的功能,不管是Gizmos.DarwLine还是Debug.DarwLine都满足不了打包之后在exe中显示。虽然Linerenderer可以画,但是自己一点点的填写坐标非常麻烦。所以这里将用到贝塞尔曲线公式计算生成一条曲线以及生成一条曲线在Linerenderer中所需要多少个点位。这里有篇博客将贝塞尔曲线的原理和推导公式都讲解的非常清楚,有兴趣可以了解下:https://blog.csdn.net/cfan927/article/details/104649623/我这原创 2020-12-29 17:43:08 · 348 阅读 · 1 评论 -
unity 鼠标控制相机旋转、缩放
using System.Collections;using System.Collections.Generic;using UnityEngine;/// <summary>/// 鼠标控制相机旋转、缩放/// </summary>public class CameraMove : MonoBehaviour{ enum RotationAxes { MouseXAndY, MouseX, Mous.原创 2020-12-03 14:37:27 · 657 阅读 · 0 评论 -
Unity数字地球
数字地球制作,包含宇宙天空盒、太阳效果、地球自转、大气层空气流动效果、放大可看到地形等等。下载地址:https://download.csdn.net/download/ThreePointsHeat/13116702原创 2020-11-16 10:29:46 · 1794 阅读 · 2 评论 -
unity动态加载FBX模型
导入下载官方Trilib包,导入到unity中。(文末附下载链接)官方包中提供了三个接口分别是AssetLoader:用于加载资源。ErrorDialog:用于显示加载错误信息。FileLoader:用于加载界面。将模型导入之后就新建一个脚本用于动态加载FBX模型:运行结果:Trilib下载链接:https://download.csdn.net/download/ThreePointsHeat/12980629...原创 2020-10-20 13:39:22 · 7181 阅读 · 5 评论 -
Unity文字转语音
仅限于PC端,如果是webgl需要接入讯飞语音SDK。插件链接:调用:using System.Collections;using System.Collections.Generic;using UnityEngine;using SpeechLib;using UnityEngine.UI;public class Test : MonoBehaviour{ public InputField input; public Button button;原创 2020-10-08 17:10:40 · 1504 阅读 · 0 评论 -
Unity打包PC端强制全屏
unity打包PC端强制全屏,并且可以将程序强制置顶到最上层,不会被其他程序覆盖。插件地址:将插件导进去,把Prefabs里的WindowMod预制物放到场景中即可,可以在脚本上选择需要的窗口设置。...原创 2020-09-25 13:33:39 · 2109 阅读 · 0 评论 -
unity读取excel表格数据
unity读取excel表格需要引用excel.dll文件,下载地址:https://download.csdn.net/download/ThreePointsHeat/12859664打包的时候需要把unity安装包里的解析中文字符串的dll文件也放在Plugins中:代码如下: /// <summary> /// 读取xlsx表数据 /// </summary> /// <returns></returns>原创 2020-09-18 17:02:53 · 1245 阅读 · 0 评论 -
unity动态加载外部文件夹中所有图片
一般项目中需要替换一些UI的图片时,每次都要打开源工程修改很麻烦,就想了一个动态加载外部图片资源替换打包好的exe或者webgl应用中图片的方法: /// <summary> /// 加载StreamingAssets下所有的Textures /// </summary> private void LoadTexture() { List<string> filePaths = new List<strin原创 2020-09-18 16:53:26 · 1783 阅读 · 2 评论 -
unity简单的背包制作
背包系统基本功能:添加物品、删除物品、拖拽物品、交换物品位置、排列物品等等。首先在unity将背包的UI界面制作完成,如图:Text是用来显示当前格子物品的数量。然后将需要生成的物品UI制作成预制物,如图所示:接下来上代码1、添加物品添加物品的时候需要注意的是(1)当前格子是否为空(2)当前格子是否有跟需要添加相同的物体(3)格子为空的时候需要按照空格子的顺序添加物体(4)当前格子有需要添加的物体时,只需要数量++ /// <summary>..原创 2020-09-11 18:08:01 · 5054 阅读 · 1 评论 -
unity调用windows系统窗口打开文件
项目中需要用到这个功能,选择MP4视频文件进行上传,在看了多个博主的帖之后,修改成自己所需要的,下面直接贴代码。数据接收类:using System;using System.Runtime.InteropServices;[StructLayout(LayoutKind.Sequential,CharSet = CharSet.Auto)]public class OpenFileName{ public int structSize = 0; public IntPt原创 2020-09-10 17:53:30 · 1227 阅读 · 2 评论 -
Unity读取解析本地txt,xml,json文件
前言本次讲解的解析所有文件均在PC端下执行有效!!!一,读取解析本地txt文件现在桌面新建一个txt文本,内容写自己想要加载的,这边以用户名和密码举例:新建完成后,保存为UTF_8格式:然后再Assets下新建一个StreamingAssets文件,此文件夹打包的时候会一起打包到外部,可用来做外部可配置文件,将创建的txt文本放在该文件夹中:然后在unity中新建一个解析txt文本的脚本: /// <summary> /// 读取TXT..原创 2020-09-08 14:56:21 · 1189 阅读 · 0 评论 -
unity完整的打包,解包AssetBundle
在Editor文件下创建一个打包脚本,如下:using System.IO;using UnityEditor;public class BuildBundlesTest { [MenuItem("Window/BuildBundles")] static void BuildBundles() { string assetBundlesLibrary = "Assets/AssetsBundles"; if(!Directory.Exi原创 2020-09-02 11:16:05 · 4290 阅读 · 0 评论 -
第一人称相机
完整的PC端第一人称相机CharacterController的位移,旋转,跳跃,碰撞功能。public float speed = 12F; public float jumpSpeed = 8F; public float gravity = 20.0F; private Vector3 moveDirection = Vector3.zero; //------------------------------ public float sensitivi原创 2020-09-01 14:24:04 · 535 阅读 · 0 评论 -
生成模型边框
模型边框:using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEditor;public class ShowBoxCollider : MonoBehaviour{ void OnRenderObject() { var colliders = gameObject.GetComponents<Collider>(..转载 2020-08-28 17:28:41 · 240 阅读 · 0 评论 -
FPS第一人称相机,四元数转换360度无光标旋转
FPS第一人称相机360度无死角旋转,ESC按键可以控制光标显示隐藏。using UnityEngine;using System.Collections;using System.Collections.Generic;public class SmoothMouseLook : MonoBehaviour { public float sensitivity = 4.0f; [HideInInspector] public float sensitivityAmt = 4..原创 2020-08-18 11:14:06 · 344 阅读 · 0 评论 -
Unity动态改键,自定义按键
突发奇想,做游戏的时候自定义键位;然后尝试了一下,有点困难~~~~不怕,克服它。上代码:using System;using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class DownAnyKy : MonoBehaviour{ //KeyCode key = KeyCode.A; KeyCode key;.原创 2020-08-15 17:37:01 · 2998 阅读 · 0 评论 -
检测物体点与碰撞地形的实际距离
一般一块unity中的Treeain地形不管怎么拉伸隆起地形的坐标Y轴始终为0,假如有辆车子开到隆起的地形上,需要判断轮子是否紧贴地形或者轮子是否腾空。这个时候可以看到右前轮是紧贴地面的,但是在代码中怎样判断呢?需要用到关键API:Treeain.SampleHeight(vector3 vct);这个api是用来检测当前坐标点的世界坐标与当前点所在的地形世界坐标的Y轴差。经过测试发现稍微有点误差(大概在0 ~ 0.3左右,不影响其结果)...原创 2020-05-27 16:28:06 · 772 阅读 · 0 评论 -
Unity工业机器IK绑定及其运动逻辑控制
声明:本文为原创文章,转载请注明出处。实现效果:IK关节插件:https://download.csdn.net/download/ThreePointsHeat/12465792工业机器油缸绑定,控制其关节运动,使用纯代码来实现不容易搞定,所以在unity商店买了一套IK插件来实现功能。首先需要在外油缸处添加两个组件Rotation Limt Hinge 和 CCDIK。Rotation Limt Hinge:Axis:用来控制油缸旋转方向。Min:油缸旋转最小值范围。原创 2020-05-27 16:11:27 · 3125 阅读 · 3 评论 -
unity中的Mathf类
unity中引用 using UnityEngine;1、Mathf.Abs(float f); 绝对值Returns the absolute value of f. 计算并返回指定参数 f 的绝对值。2、Mathf.Clamp(int value, int min, int max); 限制指定值的区间Clamps value between min and max and returns value. 限制Value值栽min和max之间,如果value小于min,则返回min;如果.原创 2020-05-26 09:31:16 · 1537 阅读 · 0 评论 -
Unity去掉物体光照阴影
去掉之前:去除光照阴影:原创 2020-05-12 15:46:49 · 3461 阅读 · 0 评论 -
Unity获取模型对应的贴图中的像素点,修改颜色
最近项目中,出现一个非常变态的需求:用户使用鼠标点击某个物体,在物体上滑动鼠标,鼠标在物体上所过的地方贴图像素会变成其他贴图。类似于这种效果:首先先准备两个模型或者创建两个Cube,然后创建两个带贴图的材质球分别给物体。注意:贴图可读写要勾上下面开始贴完整的代码:/* 获取模型对应的贴图中的像素点,修改颜色*/using System.Collections;...原创 2019-12-04 11:34:10 · 5466 阅读 · 4 评论 -
Unity画板功能
这里的画板功能通过鼠标射线接触面板使用LineRenderer将画出来的东西显示到面板上,需要注意到LineRenderer与画板之间的距离,线条阴影,线条粗细,线条材质等等,要想制作一个完整的画板功能,需要注意的东西非常复杂,最后在仔细说。首先要制作一个带有LineRenderer的空物体作为画出来的线条;然后把它当做笔芯存到一根管子里(Resources/Prefabs)。最好把材...原创 2019-12-03 14:53:42 · 2942 阅读 · 4 评论 -
Unity学习:对UI移入移出时改变鼠标样式及大小
项目做得差不多,闲来无事,分享一下自己在项目中用到的小技巧。需求:鼠标在Button上移入移出时,改变光标的样式及大小。第一步:将图片导入Unity工程中,并改变图片类型和大小将图片类型改为Cursor(光标)类型,然后将图片的MaxSize改为32,unity中Cursor最小是32 * 32(据我发现是这样的),然后点击Apply。最好是把图片导入到Rescources文件...原创 2018-08-07 16:43:26 · 7039 阅读 · 7 评论