草庐IT

Swift 等同于 Unity3d 协程?

研究如何在Swift3中构建类似的东西。我习惯在Unity3d中使用这种架构,也许没有类似的东西来处理异步数据。我听说过完成block+使用协议(protocol)/委托(delegate)在Swift中传递数据,但我认为拥有一个获取数据的公共(public)函数然后使用协程等待所有数据都在VC中会更容易开始吧。这是我用来创建它们的C#代码:Listdata=newList;privateIENumeratorget_data(){run_async_func_to_get_data();while(data.count==0){yieldreturnnull;}yieldbreak;

【工具篇】Unity运行期间日志查看的两种方式

目录方式一:ShowConsole工具脚本使用方法打开方式1:PC端指定按键打开界面

Unity 圆角矩形Shader实现(支持长方形)(只写两行)

一、效果与引言相信很多小伙伴都会遇到做圆角矩形的需求,网上的shader还不明白是怎么实现的,甚至还有一部分是错误的,本文讲从原理到代码讲解圆角矩形shader的实现二、原理分析想要实现一个圆角矩形,常见的是抽象成一个数学模型,如下图紫色区域,就是我们应该保留的区域,为了更准确的描述这个图形,我们在四个角创建四个相等的圆形。因为控制每个像素的颜色主要是由片元着色器负责的,所以我们也通过FragmentShader去实现这个效果,可以看到在这个函数里我们只能拿到uv和vertex,所以我们根据uv坐标判定是否在上图的紫色区域,如果在则返回原本的颜色,如果不在返回完全透明的颜色。(对每个像素都会执

Unity 移动端内置网页浏览插件:UniWebView

Unity移动端内置网页浏览插件:UniWebView.v4文章目录Unity移动端内置网页浏览插件:UniWebView.v4前言一、插件内置预制体Prefab介绍1.UniWebView1-UrlOnStart2-ShowOnStart3-FullScreen4-UseToolbar5-ToolbarPosition6-Fram7-ReferenceRectTransform2.UniWebViewSafeBrowsing1-Url二、主要事件使用1.OnPageStarted2.OnPageFinished3.OnPageProgressChanged4.OnPageErrorRecei

unity制作游戏,点击鼠标左键,展示屏幕震动效果

在Unity中实现点击鼠标左键展示屏幕震动效果可以通过以下步骤进行:创建一个新的C#脚本,例如"ScreenShake.cs",并将其附加到想要添加屏幕震动效果的游戏对象上。在脚本中定义一个变量来控制震动的幅度,例如publicfloatshakeAmount=0.1f;。在Update函数中检测鼠标左键点击事件,并在点击时触发屏幕震动效果。可以使用Camera类的DOShakePosition方法来实现屏幕震动效果。示例代码如下:usingUnityEngine;usingDG.Tweening;publicclassScreenShake:MonoBehaviour{publicfloat

【Unity3D插件】动态连线插件CustomWire,使用教程

推荐阅读CSDN主页GitHub开源地址Unity3D插件分享简书地址我的个人博客大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。一、前言CustomWire插件可以在Unity3D中实现动态连线,将三维物体通过线段连接到一起。可以添加多个节点,以及设置节点的上一个节点和下一个节点完成节点的连线。还可以通过修改贴图,来修改线段的不同颜色,拓展度高,使用原生Unity组件LineRenderer,流畅度也可以接受。效果图:二、插件使用教程2-1、下载地址https://download.csdn.net/download/q764424567/877

Unity 找不到 Navigation 组件的解决

当我们想利用unity里面的Navigation组件来实现我们的物体的自动导航时,有时竟然会发现我们的菜单栏里面找不到该组件 这时我们应该怎么办?        请确保你的项目中已经导入了Unity的AI模块。要导入该模块,请打开"ProjectSettings"(项目设置)【打开GeneralSetting】,然后选择"Player"(玩家)选项卡。在"OtherSettings"(其他设置)下,你应该能够找到"ScriptingDefineSymbols"(脚本定义符号)字段。确保其中包含"UNITY_AI_NAVMESH"。 点击Play之后,在里面找到 ScriptingDefineS

unity 实现水的波纹效果

之前的实现过这个效果,可惜没有记笔记,所以现在有点遗忘,连多个波纹一起在水面上实现的效果都忘记了,所以,查看了下之前实现的代码,现在再记一下笔记。基础的波纹效果要实现波纹,首先要知道波纹的中心点,这个位置应该是世界空间坐标系的位置,然后还要知道扩散到了哪里,也需要传入,知道了这两个值以后,就可以实现一个最简易的效果,只需要通过脚本更新这两个值,就可以实现最简单的波纹扩散效果。波纹中心点我命名为了_HitPos,扩散到了尺寸就命名为HitSize,在片元里面求出世界空间坐标位置和中心点的位置,然后再减去_HitSize,就可以得出一个扩散的圆,调节_HitSize的大小,就可以发现圆会变大变小。

Unity射线编程详解

⚠️:本文为上篇文章:http://t.csdn.cn/VQy63中对射线检测编程的补充一、射线碰撞信息射线检测有着丰富的碰撞信息,如可以获取到碰撞点坐标、被碰撞物体的所有信息,甚至可以获取到碰撞点的发现。这些信息都被保存在RaycastHit结构体中。以下几个Raycast()函数的重载可以获取到碰撞信息boolRaycast(Vector3origin,Vector3direction,outRaycastHithitInfo,floatmaxDistance);boolRaycast(Vector3origin,Vector3direction,outRaycastHithitInfo,

Unity可用 运行时语音合成(文本转语音)插件 RT-Voice PRO

Unity语音合成文本转语音插件RT-VoicePRO前言一、导入RT-VoicePRO插件二、使用步骤1.先看自带例子(01-Speech)2.自行配置总结前言提示:这个插件在UnityAssetStore卖78美刀,确实买不起啊。😂AssetStore下载链接文章最后会附上我下载过的的插件包。兼容性适用于Windows、macOS、Android和iOS的本地提供程序作者只使用到了Windows平台😂,Android平台也是可用的(需要设置)。其他平台应该还是正常能用的RT-VoicePRO官方网站RT-VoicePRO官方API一、导入RT-VoicePRO插件作者插件下载地址下载RT-