- 博客(40)
- 问答 (2)
- 收藏
- 关注
原创 (unity/c#)反射为类赋值小工具
string参数为需要修改的变量,dynamic需要一个int/float数值,将从playvalue类中检索对应变量修改数值。
2023-08-26 15:25:45
1184
原创 Unity背包系统与存档(附下载链接)
优化方案拓展:当道具数量众多时,在增删物品时可以将物品分类存储到不同的道具池表格,根据Type检索对应表格的数据。拖动物品在背包中自由移动,当物品拖动到其他物品上时,和其交换位置.基于EPPlus的背包数据与位置保存。当增删道具时,从道具池表格中检索对应的道具写入背包表格。背包表格负责存储将玩家背包的档案储存。给定一个道具池表格与一个背包表格。道具池表格负责存储所有道具的信息。
2023-08-08 05:31:49
620
原创 关于Unity在Xlua调用Lua脚本函数时报错This type must add to CSharpCallLua 解决办法
使用委托来获取xlua中的function是不行的报错脚本示范即使全部接口打好标签并且在编辑器中把兼容等级改为4.X 打包出去还是会出问题建议在lua脚本中建立一个空的table再把方法塞进去比如然后在c#端就可以正常运作这个方法了
2022-12-03 21:34:17
1357
原创 Unity软件可以简单支持lua脚本mod的demo
如果大规模软件/游戏可能需要建立多个接口分类一下层层嵌套。然后在lua部分直接调用这个接口来达到扩展的效果。首先在unity建立一个遍历mod文件夹的脚本。把开放给玩家自由修改的部分建立一个脚本归纳。这个只是个人琢磨出来的一种mod加载方法。如果有先进的方法欢迎交流。
2022-11-23 15:21:32
1167
原创 Unity使用Lua联动场景物体完成业务逻辑
在绑定Unityengine后就可以调用Unity场景的物体了。每隔一段时间播放一段动画,播放的动画做外置配置文件。
2022-10-02 00:19:04
684
原创 Unity中Lua的热重载(动态更新脚本)
那么 package.loaded.Config=nil。require哪个包时,在包管理器把对应包卸载即可。操作方法,比如我require ”Config“之后再require就可以重载了。
2022-09-19 12:52:46
1132
原创 LeapMotion联动Unity实现体感识别
安装完驱动程序后在右下角出现的新图标中打开这个驱动,摄像头已经能识别到骨骼(没有骨骼的话旋转一下摄像头)两个关键脚本:Leap Service Provider(联动Leap Motion的脚本)创建一个空物体给绑上Capsule Hand会自动生成一个手模型,可以直接控制。这个是摄像头模式,如果你手的动作和预想不匹配(如手背手心反了)调整这个试试。把插件导入Unity中,打开实例场景可以看下整个SDK是如何运作的。关键方法为Direction,这个方法可以直接传坐标给变量。这里简单介绍下关键方法。
2022-09-08 10:50:39
2164
原创 Unity使用mesh绘制模型
首先要知道模型是如何产生的?比如说我们在一个3*3的空间创建这样9个点(vector3)这9个点构成了我们模型的范围三点成三角,三角呈面然后由面绘制出体用这种方法可以绘制我们想要的图形。
2022-08-30 15:27:42
3063
原创 Unity使用Xlua做配置文件
Lua由于简单的语法与高可扩展性比C#读txt的方法高效与灵活太多(甚至可以直接修改lua文件无需再次编译就添加全新功能)也是作为第一次Lua编程的测试,先写一个配置文件方法首先,在Github下载Xlua框架并导入(Asset) 在项目的StreamingAssets文件夹创建一个lua.txt文件 将需要修改的参数贴[CsharpCallLua标签]创建一个Luaenv准备读取Lua文件贴了标签的参数直接使用Global.Get(key:lua的变量名)为变量赋值 为luaenv使用Addl......
2022-08-26 10:22:53
527
原创 unity报错:UnityException: Build path contains project built with “Create Visual Studio Solution“
解决办法:在你的D盘新建个文件夹专门用来打包这个程序就行= =原因:你当前的目录包含Visual Studio文件目录。考虑将文件打包到空的文件夹。
2022-08-20 23:31:17
3118
原创 部署Mysql环境部署时每步容易遇到的问题与解决方法
如果没有生成 检查my.ini的datadir目录是否正确?然后重新执行上一步的方法。②确认你的环境变量配置正确。(将mysql的bin目录添加到path中)“mysqld”不是内部或外部命令,也不是批处理文件。①看看mysql根目录是否生成了data文件夹?datadir要在根目录后面加\data、服务器启动失败:服务器没有返回任何错误信息。①你的密码错误、使用下面的方法重新设置密码。①检查你的my.ini目录是否配置正确。至此,mysql的环境部署结束。②把单斜杠改为双斜杠。......
2022-08-11 16:12:59
393
原创 Unity Xchart3.0基本用法快速上手
所有表格基本都是AddData增加数据,AddXaxisData增加类名。这里拿折线图距离(继承自barchart)更多需求可以查阅API。
2022-07-28 14:31:42
1466
原创 《UnityShader入门精要》总结(2):初级篇
这次vert返回了一个v2f结构而非float4了.并且最后frag也成功引用了v2f完成着色。比如创建了一个float4变量vertex,其来自于POSITION(模型空间顶点坐标)vertex为顶点,fragment为片元(shader使用的是CG语法)其中的Fixed4,float4等都代表了什么?如果觉得比较绕.可以暂时将冒号当做"来自于"理解。一个包含了顶点着色器和片元着色器的基本代码。看一个进阶版的将顶点和片元着色器联动的代码。#pragma定义了着色器类型。............
2022-07-25 17:14:05
391
原创 Unity Animator动画与状态机
如果要更改布尔值,在脚本中getanimator并setbool(stringBoolName,boolBool)就OK了。点击关系线进行条件判断设置直观地看到,当back值为true时动画流从a到b。比如这里,我设置了一个Back布尔值.B的speed是-1(倒放)这样,当Back值为true时,就执行倒放动画(菜单栏的收缩)制造关联.当动画结束,或者满足条件时,进入下个动画。比如放了技能进入技能动画.死亡时进入死亡动画。双击后会有这个界面.这里就是k动画的。右上角为目标帧数.上方为录制和播放。.....
2022-07-15 15:24:22
839
原创 Unity NavMesh基础自动寻路
首先构建地形(地板)加入Cube作为障碍物。记得挂载NavMeshObstacle 障碍物要设置静态这个障碍物将在游戏过程中被动态烘焙(动态障碍物) 如果不勾选的话,这个障碍物移动到空旷位置,AI就会撞障碍物当场景构建好之后,就可以进行烘焙了 顺便看下烘焙后的路径(蓝色为可行走部分) Carve与普通障碍在移动后的区别可明显发现,Carve即使被移动了,他附近依然不可通过。而普通障碍物移动之后会挡在行进路径上。开发过程中动态障碍一定要注意 路径烘焙好了,为Player增加NavMeshAgent组件然后可以
2022-07-05 18:01:47
1046
1
原创 Unity屏幕坐标和世界坐标的转化
Unity已经集成了转化坐标API了做寻路时还想着射线检测探点。这个更方便Camera.main.WorldToScreenPoint(targetPos.transform.position);Camera.main.ScreenToWorldPoint(mousePositionOnScreen);Input.mousePosition
2022-07-05 17:19:18
765
原创 《UnityShader入门精要》总结(1)理论篇
应用阶段(开发者控制阶段)由开发者全权进行管理,控制场景内摄像机位置,需要用到的模型以及他们的位置.在布置结束后DrawCall进入下一阶段(由CPU发布渲染指令被称为DrawCall)几何阶段(3D转2D阶段)由GPU进行管理,将所有3D物体坐标进行变换,输出2D坐标并传输到下一阶段光栅化阶段(将图像渲染到屏幕上)由GPU进行管理,根据坐标决定要如何渲染,并将处理好的图像绘制在屏幕上顶点着色器:将顶点进行空间变换并着色曲面细分着色器:用于细分图元几何着色器:产生更多图元或对图元依次着色裁剪:将不在摄像机范
2022-07-01 16:13:01
386
原创 猴子都会用的Unity路径移动工具
本工具支持:锚点移动,行动动画,路径循环使用本工具前,需要先引用DoTween插件Flag文件夹本身也是有坐标的,使用时记得不要把position弄飞0701增加了循环功能
2022-07-01 15:05:19
1072
1
原创 自用工具 猴子都会用的UNITY文件浏览器(浏览文件夹)
获取插件效果图: 支持按名称排序,按类别排序 关键词搜索提供的接口:Vector3 最后UI位置(方便定做滑动菜单定位首尾)Bool 是否开启类别排序 可以重写该布尔值来达成切换排序方式的功能Bool 刷新 调用这个布尔值可以刷新本插件 提供的可修改项: 其中阅读器可以修改为您想要的样式,可自由添加或修改组件,但不要重命名或删除原本关键组件...
2022-06-15 14:25:35
1006
原创 记录自己LitJson解析Json的方法
在这个网站转类JSON转C#实体类,JSON转对象JSON格式数据在线转换成C#实体类的工具,JSON对象在线转换为相对应的C#实体类,转换C#实体后高亮显示,并且可以复制结果。https://www.sojson.com/json2csharp.html删除不被引用的类的大括号在类里面添加 public static 类名 命名名称;记录一个方便引用的自己类的数组 if (GetMsg.Contains("Grade")) {
2022-04-09 21:15:12
232
原创 unity 使用paint in 3d实现画板效果
签名或者玩你画我猜啥的会用到网络上的教程少之又少.今天整理一下自己摸索的经验弄个傻瓜式教程建立一个Cube.p3d插件有一个默认的画板模型.引用上去(如果画板是黑的就加一个打光.刚开始研究这个插件没打光看上去黑乎乎还以为没画上去.其实是画上去了的.因为没光照看不出来)建立一个画笔要弄按钮更改笔刷的大小和颜色直接引用画笔即可using System.Collections;using System.Collections.Generic;using UnityEngin.
2022-03-01 11:29:53
5090
原创 unity使用TCP与服务器对接
服务端代码(控制台,接收消息):using System;using System.Net;using System.Net.Sockets;namespace ConsoleApp1{ class Program { static void Main(string[] args) { Socket server = new Socket(AddressFamily.InterNetwork, So
2022-02-21 16:59:16
4386
原创 unity内置播放器的进度条/音量/暂停功能集成
先创建两个滚动条,分别控制进度条和音量创建一个按钮,控制播放与暂停给视频播放器挂这个代码:using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;using UnityEngine.Video;public class Videos : MonoBehaviour{ public GameObject videoplayer;//视频播
2022-02-15 14:30:32
3975
5
原创 Book - Page Curl Pro 2.0简单入门
首先,导入Book - Page Curl Pro 2.0插件在assets->Book-Page Curl Pro->prefab文件夹中应该看见一个默认的预制体把预制体引入到场景中这里可以增加更多书页书页的图片在这个预制体下面的Page开头的实例中修改目标精灵的图片比如像这样修改第四页的图片:要实现手动翻页效果。创建按钮,按钮事件绑定BookPro预制体的AutoFilp脚本(记得关掉预制体中AutoFilp脚本的AutoStartFilp来关闭自动播
2022-02-14 11:53:48
1588
3
c语言的switch只能识别字符类型吗?
2021-06-04
unity donot found exception问题
2021-05-31
TA创建的收藏夹 TA关注的收藏夹
TA关注的人