- 博客(43)
- 资源 (1)
- 收藏
- 关注
原创 Unity 粒子在UI中使用时需要注意的地方
最近项目中要在UI中挂载粒子特效,美术给过来的粒子直接放到UI中会有一些问题,查询一些资料后,总结了一下在预制件编辑模式下,大小正常实际使用的时候特别大或者特别小经过检查,发现预制件编辑模式下,默认画布的RenderMode是ScreenSpace-Overlay,而项目中是ScreenSpace-Camera,或者其他模式,它们的模式是不同的,就会导致粒子大小与实际的粒子大小不同解决方法有2个,1:在相同的画布模式设置下设计,但这个方式不通用,换一个渲染模式就不行了2:(推荐)在设计的时候,将粒子的Sca
2024-03-21 20:38:53
860
原创 游戏工作中用到的一些第3方软件和作用
图形图像开\分析和捕捉时要用到的强大工具,可以捕捉图形帧并分析和调试.涵盖Vulkan,D3D11,D3D12.OpenGL,OpenGL ES以及windows 7/10,Linux,安卓等系统。最好用的功能就是可以将截的图留在屏幕上,用来做提醒或者对比.可以在电脑上显示和控制安卓设备的工具。
2023-11-17 11:18:32
426
原创 Unity官方文档中关于内存管理的翻译(2021.3)
托管堆是您的Unity项目选择的脚本运行时(Mono或IL2CPP)自动管理的内存部分。在上面的图表中,蓝色框表示Unity分配给托管堆的一定数量的内存。其中的白色框代表Unity在托管堆的内存空间内存储的数据值。当需要额外的数据值时,Unity会从托管堆(标有A的地方)分配它们的空间。内存碎片和堆扩展上图显示了内存碎片的示例。当Unity释放一个对象时,该对象占用的内存会被释放。然而,空闲空间不会成为一个“自由内存”的单一大池。已释放对象的两侧可能仍在使用。
2023-10-09 11:23:04
403
1
原创 Unity中安卓崩溃日志处理记录
得到:GfxDeviceWorker::RunExt(ThreadedStreamBuffer&)代表这个地址的函数为GfxDeviceWorker::RunExt函数,然后可以一条一条的查询堆栈,如:arm-linux-androideabi-addr2line -f -C -e .\symbol\armeabi-v7a\libunity.so 0x9a6953。如:adb logcat -t "2023-6-30 09:10:00.001" >E:/logs/aa.txt。可以将日志输出到电脑中。
2023-07-01 14:31:25
2504
原创 记录下新安装AndroidStudio关于SDK,gradle即GradlePlugin的安装
修改下载地址到国内镜像 当前阿里云的镜像还有效。前面的IP地址可能失效,但可以在。
2022-10-01 10:21:24
742
原创 一些Unity游戏开发比较好的教程推荐Unity
Build a Foot IK System from Scratch for Unity (C#)Unity的Foot IK 系统,讲的比较好的视频https://www.youtube.com/watch?v=MonxKdgxi2w&t=1555s
2022-04-17 00:52:03
2708
原创 使用Tortoise Git将主干上某一个commit合并到分支的操作
当我们使用git管理一个程序的源码时,总是会新建很多分支。不同的分支可以直接使用merge来合并代码。但我们有时候会有这种需求,比如说我们有n个分支分别开发不同版本的程序,其基础功能是一样的,但是不同分支上有不同的需求开发,这时我们的基础功能上有一个bug的修复想同步到其他分支上就不能使用merge了,因为merge会合并所有改动代码。这种情况下,我们需要使用的是git的cherry pick功能。在命令行中使用这个功能比较简单,网上有很多,但是我们使用tortoisegit工具使用这个功能没看到介绍这种操
2021-11-15 14:40:16
1686
原创 Unity编辑器扩展功能实现 回忆录
记忆力不好了,在这里记下很少用到的Unity的功能打开某个类的代码:var aL = UnityEditor.AssetDatabase.FindAssets("类名");if (aL.Length <= 0) return;var assetPath = AssetDatabase.GUIDToAssetPath(aL[0]);var obj = AssetImporter.GetAtPath(assetPath);AssetDatabase.OpenAsset(obj);增加某
2021-10-26 12:13:58
204
原创 记录一下 Unity 中部分物理模拟公式
重力加速度模拟:y=重力*Time.deltaTime;标准重力=-9.8;起跳初速度 y=Mathf.Sqrt(跳跃高度*-2*重力)
2021-08-05 11:43:54
859
原创 Unity的一些少用的功能,自己记录下,不然老忘记名字
ScriptableObject:可以用来存储序列化的数据,以后不用json或者text保存运行数据了,创建方式:1:代码中创建ScriptableObject.CreateInstance<MyScriptableObject >();2:Editor目录按钮中创建using UnityEngine;[CreateAssetMenu(menuName="MySubMenue/Create MyScriptableObject ")]public class MyS
2021-07-08 10:09:26
262
1
转载 变换矩阵_平移 缩放 旋转及统一变换
1. 位移(translation)对于一个三维坐标(x, y, z),我们想让它往x轴正方向移动1个单位,往y轴正方向移动1个单位,往z轴正方向移动1个单位,则可以让它加上一个向量(1, 1, 1)2. 旋转(Rotation)对于一个三维坐标(x, y, z),让其绕x, y, z轴旋转θ角的方法是在其左边乘上一个旋转矩阵。绕x轴,绕y轴,绕z轴的旋转矩阵分别是:PS:如果我们想更加通用一点,即点(x, y, z)绕轴(u, v, w)旋转θ的矩阵是什么?如果u, v, w
2021-06-29 14:44:54
6167
转载 【U3D】Behavior Designer中的复合节点(Composites Node)
【U3D】BehaviorDesigner中的复合节点(CompositesNode)本文转载自http://blog.sina.com.cn/s/blog_c0e6ab9b0102wxkj.html只是做个记录,一:Behavior Designer中的Composites Node复合(Composites )是行为树中的重要概念,一个复合节点下面必须有至少一个的子节点,它的返回状态取决于它子节点的状态。下面是一个简单的AI例子,实现了敌人看到玩家并进行追击的功能:...
2021-03-24 17:38:31
805
转载 2020-12-30
想必用Unity开发的朋友们都知道一个知识点,Time.timeScale 用于控制整个游戏运行时的时间缩放,使用它可以调整时间的流动速度,设置为0时间静默,设置为1时间按照我们真实世界的时间速度流逝。问题往往没有这么简单,我们在实际的开发过程中会遇到各种需求。最容易想到的一个需求就是战斗中的譬如大招技能的静默问题,描述起来就是,对于特定目标时间正常流动,而对于其他物体时间静止。难点就在于Time.scale 是一个全局的状态变量,它对游戏世界里面的所有物体的时间都有效,设置 Time.timeScale
2020-12-30 16:44:38
106
原创 警告:winForm跨线程调用UI控件使用Invoke可能造成线程卡死的特殊情况,请使用BeginInvoke异步调用
最近在做一个简单点的winform项目的时候,因为要在子线程中控制主线程UI显示日志,在停止线程的时候竟然出现所有线程卡死的情况,这下疯了,难道我做游戏久了,竟然连简单的winform跨线程都不会了么?请看代码,大家看看能否找出原因using System;using System.Threading;using System.Windows.Forms;namespace Game...
2019-04-26 10:05:12
3298
原创 unity实现应用内更新
最新公司项目需要实现游戏内更新,减少玩家跳转步数,研究了下,可以如下实现:1.设置2个版本号,一个为建议版本,一个为强制版本,玩家客户端必须大于等于强制版本,否则更新,玩家小于建议版本的时候可以跳过不更新.2.IOS平台无法实现应用内更新,那么就点击跳转到APPStore的本应用页面.3.安卓下载更新的安装包,并显示下载进度.下载完成后实现自动安装覆盖!这里我就记录下安卓部分,IO...
2018-11-06 12:13:03
3483
原创 通过shareSDK分享链接,通过scheme传参到IOS和安卓.棋牌游戏只需要这些,丢掉魔窗吧
通过shareSDK分享链接,通过scheme传参到IOS和安卓.棋牌游戏只需要这些,丢掉魔窗吧!
2017-12-30 22:10:32
1364
转载 unity几个重要的文件夹!
• Resources(只读)• StreamingAssets(只读)• Application.dataPath(只读)• Application.persistentDataPath(可读写)重要路径之 之Resources• Resources文件夹下的资源无论使用与否都会被打包• 资源会被压缩,转化成二进制• 打包后文件夹下的资源只读• 无法动态更改,无法
2017-10-25 01:36:42
1877
转载 Unity3D protobuf-net使用方式 (源码方式)
1、下载protobuf-net 2、创建Unity工程,创建一个Plugins文件夹,将protobuf-net解压把里面得protobuf-net放到Plugins 3、创建一个名为mcs的文本文件,里面写上-unsafe 4、重启Unity 5、编译自动生成cs代码工具 protogen.exe就是刚才生成的 6、编写.p
2017-10-15 14:12:48
1846
1
翻译 将TYPE作为函数的参数传进泛型
public class Test{ public void method() { } public void ExportByClassName(string typename1,string typename2) { Type t1 = Type.GetType(typename1);
2017-10-15 13:50:51
1869
原创 wordTile算法
胡牌 /// /// 通用型字牌胡牌算法 by:黄敏 /// public class huPaiSuanFa { /* 通用型字牌胡牌算法 解释文档 by:黄敏 2017/8/20 一:流程 假设 手牌为 2 7 10 2 7 10 贰 柒 拾 (这个手牌是已经将目标牌加入其中了
2017-08-20 23:01:56
479
1
原创 C#使用windows自带的性能监视器显示
在编写各种服务器的时候,经常会需要调取CPU使用、网络队列等关键数据,以便更好的管理各种事务。那么在C#中如何调取服务器的这些数据呢?PerformanceCounter a = new PerformanceCounter("计数器类名", "计数器名", "实例名,单一实例时可以为空");log.Debug(a.NextValue());对,就是那么简单。以下就是各种名称:1就是计数
2017-07-26 18:47:23
1974
转载 unity 新的网络请求方式,替代www
使用的是 Unity 5.3.4, WWW 再 iOS 上加载资源出现卡死的问题:加载到一定程度卡死,重启APP后又可以跑过去,有些机型上甚至出现下载资源过不去的情况。解决方案,使用 UnityWebRequest 代替 WWW。当然 UnityWebRequest 次版本的 Dispose 有问题,更新到最新版就没问题了。UnityWebRequest 架构
2017-07-15 01:03:57
1825
原创 使用URL 启动unity Andriod APP并传递参数
房主微信分享一个内容(微信的URL),上面包含有url,标题,内容,略图。当被邀请人点击分享的内容,可以直接开启这个游戏,并登录后直接登录这个房间。不需要人工记忆房间号等。
2017-07-13 22:26:52
3251
原创 各种C#Unity知识点
1、DNS 解析 try { IPAddress[] IPs = Dns.GetHostAddresses(GameLocalSetting. HostName); //筛选IPV4的地址 if( IPs.Where(ip => ip.AddressFamily == System.Net.
2017-07-10 09:46:35
731
原创 unity 针对UGUI控件截屏
项目上要针对一个UGUI创建的UI窗体截图,但是不能截取窗体外的内容。按照我的思路就采用Texture2D tex = new Texture2D((int)宽度, (int)高度, TextureFormat.RGB24, false);tex.ReadPixels(new Rect(左下角X, 左下角Y, 宽度, 高度), 0, 0);tex.Apply();的方法
2017-07-06 18:13:28
1455
原创 unity 手游 3D人物的移动控制
[RequireComponent(typeof(CharacterController))]public class MoveTest : MonoBehaviour { private Rigidbody myRigidbody; private CharacterController myCharacterController; private Vecto
2017-03-09 11:57:26
1142
原创 手机游戏3D人物的移动控制
[RequireComponent(typeof(CharacterController))]public class MoveTest : MonoBehaviour { private Rigidbody myRigidbody; private CharacterController myCharacterController; private Vect
2017-03-09 11:54:14
977
转载 Unity3D Player角色移动控制脚本——转载
Unity3D Player角色移动控制脚本1. 简介在Unity3D中,有多种方式可以改变物体的坐标,实现移动的目的,其本质是每帧修改物体的position。之前写过类似的文章,这次增加了平时常用API的脚本,每个脚本均手打测试可用.2. 通过Transform组件移动物体Transform组件用于描述物体在空间中的状态,它包括位置(positio
2017-03-09 09:03:38
774
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人