知识点
杰-森
专注技术提升和分享!!
展开
-
unity 2019及更高版本无法播放视频 Got null handle from IDXGIResource::GetSharedHandle
新版本unity出现了很多莫名的bug 最近又发现视频播放不了 提示Got null handle from IDXGIResource::GetSharedHandle检测发现我的 视频文件是mp4 解码改为V8都没用最后多番搜索终于解决 现将解决方案献上 搜索竟然没有什么解决方案 捣鼓了好久才解决 所以必须顶上出一个解决方案来!!首先要添加unity程序到amd独显的运行程序 然后再playersetting里修改:更详细的解决方案 关注公众号获取 小森游戏制作!!..原创 2021-11-26 10:36:55 · 3427 阅读 · 0 评论 -
unity 模型展示 旋转查看
模型展示;创建个rendertextur原创 2021-06-15 17:53:07 · 872 阅读 · 2 评论 -
VRTK 三 抓取事件
官网:https://vrtoolkit.readme.io/docs/vrtk_fixedjointgrabattach原创 2021-06-08 11:36:43 · 401 阅读 · 0 评论 -
unity 多相机渲染 UI 3D物体显示顺序问题
关于相机属性我不再赘述 这里我做了一些简单研究 使用多相机的时候 如何控制显示一 单相机正常模式: 相机默认设置 画布默认设置二 单相机 物体再ui上 相机默认设置 画布设置为camera渲染 并将渲染相机指定为主相机 三,多相机下 一部分物体再ui上一部分正常显示 (ui后边) 再ui后边显示的相机吧渲染mask剔除掉ui 和要显示到ui上层的 注意 depth需要小于ui相机的 ui相机 需要设置clearflags为...原创 2021-04-16 09:34:43 · 1233 阅读 · 0 评论 -
unity pc 端文件读取 streamingassets datapath io
unity steamingassets 经常用于存放配置文件 txt json等 但是再编辑器可以用file 进行加载 但是发布windows之后就不可使用了另外 有一个问题就是 如果存放的是json串txt 反json的时候是会报错的 但是使用绝对路径是正常的 显然 我们既然使用了streamingassets路径就是不想使用绝对路径 对于此 有一个方案就是将文件copy到永久路径persistentDataPath 这里还会有这样...原创 2021-04-02 16:45:41 · 1098 阅读 · 3 评论 -
自定义 DropList dropdown
一,前言 unity自带的dropdown我一直觉得用着太费劲 调整不好调整的 灵活性太低为此我自定义了个droplist 如下:二 原理讲解 折叠状态:default options隐藏 首先需要做一个折叠时候的显示 图片 文字 选中框 具体可以自行diy 我这里图片是全铺于父物体 如此我们调整droplist大小即可实现调整 折叠状态显示内容...原创 2021-03-27 17:53:10 · 403 阅读 · 0 评论 -
c# 汉字转拼音 首字母 并储存字库
一 介绍: 首先输入词条分类 接下来转换的词条会一起打包到该分类下 输入词条 可逐个输入没输入完成一个按一下空格会自动添加分割符合“*”,可以输入之前自行添加好 点击转换 在右侧预览效果 里边的符号请不要修改 在存储数据时要用来分割数据 对于转换有疑问或者需要修改的直接修改 点击存入后无法修改 预览清空 点击清空即可从头开始录入点击 储存数据 即可将所有转换的词条存入bin文件 并通过类库dll直接调用获取二 示例: FileStream...原创 2021-03-27 17:38:59 · 239 阅读 · 0 评论 -
unity 配置表工具 c# 窗体 表格读取工具
一 作用: 读取表格内容 无需对表格做单独处理 可以读取到表格的每个带数据格子 不区分数据类型 只需要在使用数据的时候当成字符串来操作 读取后转存为bin文件 可以用作配置文件的转存 流程更加简洁,更具有复用性二 流程: 点击选择文件 选择要读取的文件 点击转换数据 会读取表格数据进行存储,当点击另存 选择保存位置 即可将所有数据序列化保存到指位置 可点击读取测试进行测试数据是否有误三 数据操作实例: 将生...原创 2021-03-27 17:20:19 · 402 阅读 · 0 评论 -
给新手和小白们 的
博主已经在b,站开通录播课,讲解常用技术点,大家想学习的记得关注一下哦:并且博主也已经开通小班课,对新手和小白们进行技术辅导,帮助大家快速学会unity制作游戏有兴趣来了解一下吧!...原创 2020-12-17 15:06:14 · 80 阅读 · 1 评论 -
vuforia 接入easytouch之后,移动端黑屏
unity vuforia ar 和easytouch制作手势放大easytouch是可以很轻易的制作手势操作的,并且可以很快制作摇杆等等。但是当 接入vuforia之后,由于ar相机无法触发easytouch的事件,需要再单独创建一个camear。新建的相机层级要低于ar相机,让ar相机做主相机 并且设置模式为纯色但是在不经意间就会遇到一个很坑的问题,电脑上editor模式下正常,但是打包后手机黑屏,扫描之后可以出现,背景也是 黑色这个问题其实很好解决,但是找起来废了老劲:去看..原创 2020-12-17 15:02:49 · 389 阅读 · 0 评论 -
unity打开项目 ---给那些小白学生看的
最近发现很多学生连打开项目都不知道,这里说一下怎么打开别人发来的项目首先我们拿到的是一个压缩包,不管是zip,7z等各种格式都需要有解压软件 没有的建议下载7Z 好压很重要的一点是 这个文件不要解压到中文路径的文件夹里,就是说,这个文件所在位置全路劲不要用中文,建议根目录下新建文件夹“unity”然后解压进去打开: 运行unity 点击open 找到你解压后的文件 选择Assets文件夹的上一级!...原创 2020-10-16 10:04:58 · 7629 阅读 · 0 评论 -
easytouch 之 相机操作-移动端
我们可能会经常遇到一个这样的需求, 再3d场景里实现运行时的 相机移动,旋转,缩放拉近等。game下模拟scene里的效果。对于pc端,或者是unity编辑器,我们可以手写几行代码实现 左键,右键来操作,但是对于移动端,是没有右键的概念的,就没法使用了。这时候可以使用touch类,获取出点,然后计算,触点个数,位移偏差,然后驱动相机实现效果,逻辑也不是很难,关键在于怎么区分双指的滑动,缩放等,双指的单个移动等,这些不是很好处理,当然,对于大佬还是简单的。南无除此之外还有一种方法,就是找插件。移动端.原创 2020-09-09 10:52:33 · 876 阅读 · 0 评论 -
unity 发布安卓流程
首先呢,需要下载安卓端的支持包 (点击file-buildsetting -Android双击打开,默认安装即可然后需要安装Javajdk和sdk,也可以选择jdk和ndk,但是ndk新版本好像不行。sdk不翻墙也打不开官网,不用担心,我会把一整套压缩上传,需要自取我资源包里是sdk文件夹,直接拷贝到本地目录即可。安装jdk默认安装,c盘,programfile-java 下边安装完jdk百度一下环境变量配置,参考百度经验即可,也是比较简单,完事后回到unity 点击edit-...原创 2020-08-29 15:22:35 · 988 阅读 · 0 评论 -
unity 数据可视化 折线图 柱状图饼图等 读表自动可视化 二 绘制线设置
初始状态为折线段 拐角明显,不光滑不圆滑 所以接下来说一下绘制的线的部分调整线段 点开组件 找到series属性,点开进行配置 series 是绘制图形最关键最核心部分 你需要保证数据和这个series对应。这个属性是一个链表,你可以修改个数 默认的size为1 注意,如果你只有一条线的数据,那么运行之后也只会绘制一条线 TYPE 绘制类型 默认为line(当然,我们组件选用了linechart),你可以选用其他的 如下图,line和 bar两种...原创 2020-08-17 14:48:08 · 728 阅读 · 1 评论 -
unity 数据可视化 折线图 柱状图饼图等 读表自动可视化 一 设置坐标轴
一 绘制插件XCharts unity 绘制图形的插件挺多,自己写也能实现,但是有好插件干嘛不用呢是吧?这个是一个很完善的,功能强大而又简单的插件。这就是插件的强大之处:使用简单而功能又不简单!github上有些简单教程,而且它提供有案例可以研究。相信简单制作一个表格对于各位不在话下。现在记录讲解一下一些常用的参数,方便查找,使用 0,所有的图表都要在canvas下,你可以选择在canvas下新建panel移除image逐渐,然后添加你需要的图标组件如linechart,这...原创 2020-08-17 14:32:37 · 1181 阅读 · 0 评论 -
透视shader
这个shader来源:https://blog.csdn.net/u011047171/article/details/46500187?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.原创 2020-05-30 11:14:20 · 330 阅读 · 0 评论 -
优化算法 --冒泡算法
关于排序其实有很多算法,冒泡使用是非常广泛,也很易于理解,经过研究,我发现,冒泡可以有更优化的算法首先先来看一下冒泡的流程: ...原创 2020-03-30 11:24:41 · 224 阅读 · 0 评论 -
unity 小地图
虽然小地图的教程很多,但是有很多值得注意的地方流程:unity 场景中新建相机原创 2020-03-01 11:13:02 · 2603 阅读 · 1 评论 -
使用AS接入sdk 给unity
在使用as接入安卓原生sdk时候,遇到了很多坑,这里做一下记录,希望帮到有缘人!一,配置 由于要提供给unity使用,而sdk大多是采用原生接入,所以我这里要接成类库导入给unity调用。对于unity-安卓交互不了解的去补一下再来。方式我采用arr包而不是jar包因为相对更方便,快捷,安全。1:在as中创建module,选择 android lib,并设置模块名,对应的包名也是这个...原创 2020-01-02 14:25:27 · 1247 阅读 · 1 评论 -
unity实现滚屏--小贴士系统
先说一下为什么要说是小贴士系统,因为这个东西是额外功能,虽然你可以说它附属于其他UI等模块,但是确是独立于他们的,另一方面做成一个单独系统也是为了扩展性。毕竟这个可复杂,也可简单。 我们这个表现形式为 上滚 显示一条,随机轮播,而且要保证我所有的提示都显示一遍之后再循环。 首先,实现滚动的方式是很多的,这里还是采用unity自带的系统ScrollRect ,可以百度,有很多关...原创 2019-12-24 15:24:27 · 702 阅读 · 4 评论 -
unity使用unitywebrequest 实现断点续传 热更新
网上关于断点续传的例子和教程呢共有很多,我结合了百家之长,经过大量测试,最终集成如下内容:一,原理: 当下载文件时断网了,需要将已经下载完的 存储到本地,当下次再打开下载时,从本地下载 的位置继续下载,即所谓断点续传说一下,我使用的是unity2018.3版本,所有使用的是unitywebrequest,www的没用测试估计很少有人用了吧。二,核心代码 首先存储...原创 2019-12-19 12:40:38 · 2952 阅读 · 9 评论 -
unity接入 微信登录sdk
首次吐槽一下,微信官方的文档真的是服了,各种坑,而且贼不详细,而且还只能原生接入,在做sdk给unity,对于不懂原生的小白来说简直噩梦啊!!!!为了接入恶补了一波原生 进入正题,首先还是要去注册账号,申请应用位,按照官方文档做就行了,哟啊拿到APPID,sercet,还有你打包apk的 签名,签名的获取官方也有说明不多说,直接进入接入部分首先,对于安卓和unity交互不懂的可以自...原创 2019-11-25 18:56:32 · 3384 阅读 · 0 评论 -
关于 unity 中序列化文件移动端的存储和读取
网上一搜会有很多介绍unity各个路径读取方式。不尽相同,但是很少有介绍如何加载序列化文件bin文件的。因为我这里吧配置文件读取后存储为bin文件放到streamingassets下,一块打包,在pc端直接读取即可,没什么可说的,但是到移动端,读取方式等导致无法直接读取,我采用的是copy到永久路径下,这样只需要在包体运行的时候copy一下即可。之后就可以直接读取。首先是对于移动端的copy操...原创 2019-10-31 17:17:56 · 708 阅读 · 2 评论 -
c# 序列化bin文件 和反序列化读取
c#的.net序列化有多种方式,大多使用流来创建二进制文件。这里以其中一种为例:序列化bin文件: Stream fstream = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.None); BinaryFormatter binFormat = new...原创 2019-10-29 17:59:52 · 1241 阅读 · 0 评论 -
unity 简单的 中介者模式架构
该模式大概是这样的 根据功能划分不同的模块,例如数据模块,音频模块,战斗模块,界面UI模块等,每个模块有自己单独的管理器,该管理器实现单例,并由中介者(消息处理器)访问,而各个模块之间的互动不在是直接调用,而是通过创建消息体,有消息处理器分发到 接收方,来实现通讯,好处是可以让多人开发时效率大大提高,也可以让代码更加稳定,健康。消息处理器 即中介者,负责处理各个模块发来的消息,并进行分发。为...原创 2019-10-22 17:06:16 · 353 阅读 · 0 评论 -
unity对象池
这套对象池原理比较简单, 由一个管理器和一个池子组成,池子里存储多个对象池,每个对象池对应一个对象的池,即该对象池内存储实例化的该对象,有管理器持有,统一管理关于原理什么的不多说,直接上代码管理器:/// <summary>/// 简易对象池/// </summary>public class ObjectPoolMgr : MgrBase{ ...原创 2019-10-22 16:50:25 · 206 阅读 · 0 评论 -
vrtk使用教程(二)
一,基础教程链接:教程一二,本文主要丰富基础之外的需求:1,实现射线检测到物体时候小球显示注意:①当勾选无视距离选项,设置Maximum值,小球将按照不大于该值的scale显示,若没设置这个值会按照设定的比例来显示 ②小球实际的scale=cursor Scale multiplier * Scale Factor2,物体的抓取: 手柄设置:将...原创 2019-04-29 14:21:18 · 1928 阅读 · 0 评论 -
百度语音识别PC端接入unity
(此处为http上传音频识别模式)一,找到百度AI平台,管理台点击SDK下载 选择c#sdk下载完以后会有对应不同.net版本的dll包,找到自己unity对应的。net版本,将文件夹拖入然后找到你的应用管理,点击管理,在这里要用到一个apikey 一个secretKey,将这两个值复制,识别会用到,至于id展示不需要使用二,实现录音-上传识别 1,录音...原创 2019-04-28 18:17:37 · 834 阅读 · 1 评论 -
关于unity场景切换后模型变黑问题
unity5系列的 点击window-lighting-setting 取消勾选自动烘焙(auto),将模式改为build,unity2017-以后 取消勾选后,点击Generate Lighting,进行烘焙,保存贴图数据。出现这一问题一般是场景切换,灯光若是自动烘焙,切换后无法加载光影数据导致。...原创 2019-04-28 10:20:39 · 4518 阅读 · 1 评论 -
Xlua 使用
一,热更新: 当游戏出现某个功能的bug或者修复了某些功能,增加了某些功能时,我们不希望让玩家去重新下载安装包,一方面太不方便,在这不太人性化,所以要使用热更新,让玩家不需要下载安装包就可以更新。好处: 不浪费流量,不需要商店审核,不用重新安装就可以体验更新的内容。平时可以用c#开发,运行也是c#,性能更好。有bug时候发布个fix脚本,下次整体更新时在吧...原创 2019-03-16 18:37:31 · 625 阅读 · 0 评论 -
代码动态绑定动画事件
unity的动画事件可以直接在片段上绑定,进行事件注册,但是,相对灵活性不高,这里采用代码绑定。public class AniMatorMgr : MonoBehaviour{ private Animator animator;//动画控制器 private Dictionary<string, AnimationClip> animatorClip...原创 2019-03-07 10:27:49 · 507 阅读 · 0 评论 -
SteamVR 使用攻略
一 ,头盔注视事件: 创建脚本继承自SteamVR_GazeTracker,复写一下两个方法: public override void OnGazeOff(GazeEventArgs gazeEventArgs) { Debug.Log("注视离开"); base.OnGazeOff(gazeEventArgs); } ...原创 2019-02-27 12:31:14 · 4598 阅读 · 0 评论 -
unity 性能分析工具 --Profiler
一, 概述: profiler 可以让你查看在游戏各方面花费的时间,分析GPU,CPU和内存,渲染和音频的性能。 使用时要关注消耗时间最多的部分 ,比较代码更改前后的分析结果,但是会影响帧率。二,窗口信息 打开方式:Windows-profiler 当游戏运行且探查器正在收集数据时,单击任何这些传输控件会暂停游戏,"current"传输按钮使配置文件统计窗口显示实时收...原创 2019-02-26 11:48:12 · 4032 阅读 · 0 评论 -
vrtk 使用教程(一)
.steamvr作为一个非常好用的vr插件,美中不足的需要自己实现各种交互,还是比较麻烦。这里推荐大家一个插件vrtk,对steamvr的封装,严格说不只是steamvr,是对vr插件的封装,不多说,使用教程如下,还是很简单的一,下载,assetstore搜索vrtk下载最新版本,但是最新版本和最新的steamvr好像兼容有些问题,这里采用的是老版本,steamvr也是老版本。想要...原创 2019-03-01 09:16:08 · 13807 阅读 · 8 评论 -
unity打包PC默认启动
原创 2019-01-23 09:52:52 · 609 阅读 · 0 评论 -
unity灯光渲染
一,环境光 环境光可以设置为天空盒,纯色和渐变 反射设置:Source:反射的天空和,改为custom可以指定反射的天空盒 intensity multip:反射强度 对于材质球,下边这个值0-1环境光影响越来越小 ,smooth参数:0-1 反射天空盒程度,1:全反射,0:自身...原创 2019-04-30 18:59:28 · 1207 阅读 · 1 评论 -
3DUI 按钮高亮等的实现
首先,这里有一个需求,就是要用手柄在vr里边去点击按钮,当然可以用vrtk去实现该功能,但是我们这里还要让这个界面同时及接受手势操作,这里就得用碰撞盒3d检测,这就和原本 的2D冲突了,此时也难以实现按钮的高亮显示。 为了解决这个问题,在3D中实现高亮动画等效果,想出了一下解决方案。由于我们要让该按钮不限制于只接受射线来触发,可以让3d物体来触发。给按钮添加碰撞盒,调整大小位置,将tag...原创 2019-05-14 11:49:39 · 631 阅读 · 0 评论 -
Plugin 'xx.dll' is used from several locations: Plugins colliding with each other.
这是你程序集指定平台过多导致打包无法区分具体要使用的 平台,找到指定的dll,将所有平台取消勾选,选择你自己要打包的平台原创 2019-05-07 10:06:34 · 2240 阅读 · 0 评论 -
Android开发 as
一,创建Activity(可以理解为一个界面) 首先要创建一个存放activity的包,包的名字可以自己制定 步骤如下根据java规范,报名采取小写,右键要保存的位置,点击new-package右键创建的包,new-Activity(file-Activity 工具栏的点击)然后选择需要的activity类型,这里选择一个empty空活动,然后设置名字,可以根据名字来设置,如创建...原创 2019-10-07 13:47:22 · 187 阅读 · 0 评论 -
UNITY 动态导入类库
当我们unity使用外部类库时,如果类库改变后,特别是想配置表 ,类库一旦更新就得重新导入类库,生成类库-- 拖到unity ,这样下来费时间又麻烦,因为又要删掉unity原来的,所以为了偷懒就想一键导入或者绑定,让unity内的dll直接关联到外部的类库,进行更新。我在网上查找一番,想实时刷新比较费劲,也不值当这样做,这样就只能去一键导入。网上查了一番也没什么有用的信息,最后决定使用file...原创 2019-09-16 17:02:32 · 518 阅读 · 0 评论