
游戏引擎
文章平均质量分 61
生活在他方
那天的流星划过天际,落入心中成为平凡的石头。
展开
-
Unity地理信息开发小结
Unity地理信息开发相关原创 2024-10-27 10:01:59 · 487 阅读 · 0 评论 -
Unity的Text Mesh Pro文字显示重叠处理
最后发现是换行造成的。原本的文字是从pdf中复制过来,就会重叠,在记事本中删除换行用回车再次换行就能正确显示。在使用Text Mesh Pro的时候,出现文字重叠,如图。在编辑器内显示是正确的。原创 2023-02-16 19:52:55 · 1466 阅读 · 1 评论 -
TextMeshPro快速上手
Text Mesh Pro是Unity的新的文本显示对象,最大的优点是放大以后不会有锯齿,而且有更多的显示效果。缺点是需要配置才能使用,不像原来的直接就可以用。原创 2022-12-24 19:31:51 · 2080 阅读 · 0 评论 -
Unity图形节点插件xNode简单使用说明
整个的操作窗口是图,NodeGraph,每一个框框是节点,Node,框框上的圆点是端口,Port,端口连出来的线是连接线,Connection。如果需要改变样式,需要继承NodeGraphEditor类,里面有很多方法修改图,节点,端口,连接线的样子。端口的Connecttion返回的是连接线另外那头的端口,获取后面或者前面的节点,思路就是获取端口,然后port.connection.node就能获取对应的节点。xNode是一个很好用的图形节点的插件,免费,可以用来做状态机,对话流程,实时任务流程。原创 2022-11-10 21:06:47 · 3287 阅读 · 0 评论 -
Unity鼠标光标使用学习
当使用CursorMode.ForceSoftware的时候,会使用软件来处理光标。在windows系统下想要鼠标光标变大这是唯一的方法,但是偶尔会有小bug。当使用CursorMode.Auto的时候,会使用硬件进行光标处理。但是,在windows系统下,会强制把光标大小缩小到32*32。要实现图标动画的话,只能一张一张的图片轮流替换。设置鼠标光标的方法就一个,SetCursor。第一个参数是图片,第二个参数是点击点的偏移量,第三个参数是类型。Unity下的鼠标光标程序相关的就一个类下的2、3个方法。..原创 2022-08-05 21:05:26 · 2645 阅读 · 1 评论 -
Azure Kinect微软摄像头Unity开发小结
Azure Kienct是微软的代替Kinect的摄像头,用处其实蛮多的,最近做了这个的一些开发,总结一下。如果只是当普通摄像头用的话,有集成显卡就行了。如果要用人体跟踪,至少要1050的独显。微软摄像头代的东西还不少,可以建立点云地图,但是没试过。下面是官方的SDK。后面2项应该都需要联网,而且用微软的服务才能实现。Unity开发这里用的是Azure Kinect Example for Unity这个插件。电脑上还需要安装Azure Kinect的另外2个SDK。Unity的这个插件里面有不少例原创 2022-06-24 20:46:39 · 2613 阅读 · 2 评论 -
Unity常用动画插件DOTween快速上手
DOTween是最常用的动画插件之一,比使用Unity自带脚本写动画,方便很多。目录导入和设置使用说明通用方法便捷方法添加设置事件响应序列和参数控制协程和异步导入和设置DOTween在Unity的商城里,有免费版和收费版,一般使用免费版就足够了。收费版DOTween Pro看说明主要是多了一些辅助的编辑器。DOTween商城地址:http://dotween.demigiant.comDOTween首次使用需要设置,导入以后会弹出下面的窗口,点击按钮就好。之后点击绿色的“Setup DOTwe原创 2022-05-23 21:15:38 · 1799 阅读 · 0 评论 -
在Unity中使用Font Awesome图标字体
Font Awesome 是一个前端用到的图标字体,简单说是个特殊的字体,里面不是文字都是图标。用这种方法可以简单的做出即使放大很多也不会出现锯齿的图标,不过好像图标不需要放大很多的说。很好玩就是了。Font Awesome的官网是:https://fontawesome.com字体库有免费的有收费的,下载地址:https://fontawesome.com/download下载以后解压,把otf文件导入到Unity。之后,打开Text Mesh Pro生成字体资源的窗口Font Asset原创 2022-04-28 22:05:02 · 1617 阅读 · 0 评论 -
Vosk可以用于Unity的离线语音识别
Vosk是一个免费,开业,可商用,支持离线语音识别的东西,关键是可以在Unity中使用。Vosk可以离线语音识别,也可以自建语音识别服务区,支持多种语言,还支持在Unity中使用。整体而言,识别率还行,可以发布为windows,应该也能发布为安卓和苹果。性能还行,但是,只支持单一的中文。比如说,无法将12301识别为罗马数字而是识别成幺二三零幺。至于MP3,NBA就更无法识别了。没找到添加新词的办法,也没找到识别音频文件办法,只能将麦克风录制的语音识别出来。需要注意的几点语音模型解压目录不能有原创 2022-04-15 21:51:23 · 10008 阅读 · 3 评论 -
Shader Graph制作UI效果
用Shader Graph制作了3个常用UI到效果,比用脚本或者动画实现UI效果的移动,旋转和缩放跟方便,使用到的游戏对象也少。这里的思路是将不同的形状放到PNG图片的不同颜色通道,再通过Shader和背景颜色合并到一起。思路很简单,引入图片,然后分别进行旋转,缩放和移动,然后提取对应通道的内容,最后再合并到一起。用到的节点不多,比想象中简单。总体说明的视频: ShaderGraph做UI效果总结原创 2022-03-08 15:46:55 · 4021 阅读 · 0 评论 -
Unity3D开发电脑选择
有网友问,学习Unity3D开发,需要用什么配置的电脑,windows还是mac。windows还是mac2种我都有也都用,使用感受没关系。windows11也没问题。Unity3D在windows下只能打包windows应用,在mac下只能打包mac应用,这是选择的唯一区别。如果有这方面的强制需求,就选对应平台就好。如果没有这样的需求,随个人喜好就好。mac下打开Unity和写完代码返回的时候稍微比windows卡顿一些,但是不影响使用。机器性能选择这里用了一个官方场景在3台电脑跑了下,虽然我的原创 2022-02-21 21:53:08 · 6354 阅读 · 1 评论 -
Unity中的Json字符串转换
Unity中对Json字符串进行转换原创 2022-02-08 16:54:55 · 5558 阅读 · 0 评论 -
Unity的TextMeshPro学习笔记
2020年12月,Unity2020.3.18,TextMeshPro版本3.0.6TextMeshPro比原有UGUI里的Text显示效果更好,能在不同大小保持平滑,能显示出更多样子,能够受光照影响并生成阴影。总之就是比原来酷。而且能在一些方面提升性能。第一次启动的时候,需要安装基础配置,官方建议放在Resources目录下。最关键的Text MeshPro的配置文件,默认字体资源,还有那些着色器。核心是Font Asset字体资源。字体资源需要用Font Asset Creator创建,可以有原创 2021-12-04 20:26:27 · 5307 阅读 · 0 评论 -
《Unity2020游戏开发快速上手》相关说明
新书《Unity2020游戏开发快速上手》上架了。这本书基于Unity2020版进行介绍。书分2部分,前半部分是Unity的基础介绍,包括基本的安装,界面,脚本基础和Unity常用内容。后半部分以一个简单的ARPG的移动攻击,血量显示为例子介绍如何进行Unity的开发。随书附有源码,可以通过扫描书上的二维码获取。书的一些章节还附有视频教程,希望大家喜欢。---------------------------------正事说完的分割线---------------------------------原创 2021-12-02 20:29:19 · 2822 阅读 · 0 评论 -
Unity官方教程学习简单笔记
Unity官方出了一个RPG的教程,学习了第一部分,感觉收获还是蛮大的。2020版商城导入位置变了,下载很慢。渲染管线在游戏中影响太大了,颜值就是正义,要赶快学习。程序结构Unity项目里面怎么组织,这个是最重要的收获。几个部分,首先在具体的功能游戏对象上挂Controller,进行控制,其他也写相对通用的内容挂到空的游戏对象上,成为Manager。Mananger都是Instance便于Controller访问,基本也都是单示例。Controller通过注册Manager的事件来受其控制。Scri原创 2021-02-08 18:18:05 · 799 阅读 · 1 评论 -
Unity2019学习:常用功能--Unity UI事件响应
Unity UI的事件响应有两种方式,一种是在编辑器绑定对应事件,一种是完全在脚本中完成。本质上没用区别。Unity UI事件响应都需要一个【EventSystem】游戏对象,如果场景中没用该游戏对象,则UI无法对事件进行响应。在添加Unity UI的时候,如果场景中没用该游戏对象,会自动添加。编辑器设置默认事件响应无参数 public void OnEvent() { Debug.Log("On Event"); }选中按钮,点击【On Click()】原创 2021-01-26 16:20:38 · 2151 阅读 · 2 评论 -
Unity2019学习:常用功能--Unity UI自动布局相关组件
Unity UI还提供了一些自动布局相关的组件。Aspect Ratio Fitter(宽高比适应器)Aspect Ratio Fitter宽高比适配器组件可以控制布局对象的大小,Aspect Ratio Fitter有2个属性,Aspect Mode用于设置适配模式,Aspect Ratio用于设置对象的宽/高比例。选项Width Controls Height和Height Controls Width可以通过宽度自动设置高度,或者通过高度自动设置宽度。Fit In Parent选项会根据父游原创 2021-01-26 15:44:08 · 1714 阅读 · 2 评论 -
Unity2019学习:常用功能--Unity UI的交互游戏对象
交互游戏对象是官方提供的一组用户界面常用的一些交互的游戏对象,包括Button按钮,Toggle开关,Slider滑动条,Scrollbar滚动条,Dropdown下拉选单和Input Field输入字段。Interactable(交互)选项Interactable选项默认选中,即可以进行交互。当去掉选项以后,则不可以交互,即不可以进行点击,输入,或者修改。Transition(过渡)选项Transition选项可以让交互游戏对象在不同状态显示效果不同,让使用者明确知道自己在操作哪个UI元素。Tr原创 2021-01-14 11:34:42 · 2509 阅读 · 0 评论 -
Unity2019学习:常用功能--Unity UI的文本和图像
文本和图像组件在官方文档中被称为Visual Components可视组件,是其他一些被称为Interaction Components交互组件基础。交互组件的外观都是由文本和图像组件构成的,Interaction Components交互组件的外观调整都是基于Visual Components可视组件。Text(文本)游戏对象Character(字符)属性中包括了Font(字体),Font Style(字体样式)等。中文内容在某些机型上会出现乱码或无法显示的情况,所以,用到中文最好还是设置字体,本人原创 2021-01-14 10:27:54 · 1469 阅读 · 0 评论 -
Unity2019学习:常用功能--Canvas画布
Canvas(画布)游戏对象是其他Unity UI的基础,其他的Unity UI必须是Canvas(画布)游戏对象的下级游戏对象。当UI内容发生变化的时候,是以画布为单位进行重绘,合理的将内容分配到不同的画布可以提高性能。Render Mode(渲染模式)Screen Space Overlay(屏幕空间-覆盖)屏幕空间-覆盖是根据屏幕分辨率进行渲染,不参考场景中的任何游戏对象或者摄像机,渲染之后将其绘制在其他所有内容之上。Screen Space Camera(屏幕空间-摄像机)屏幕空间-摄像原创 2021-01-05 09:03:32 · 1838 阅读 · 0 评论 -
Unity2019学习:常用功能--RectTransform脚本控制
RectTransform设置游戏对象大小位置的时候,不仅在Unity编辑器中与Transform不一样,程序控制上也不一样。RectTransform作为一个组件存在于游戏对象上,所有控制方法和属性都在该组件下。RectTransform下的rect类可以获取游戏对象的宽(rect.width)和高(rect.height),但是不可以直接设置。Pivot 轴心和 Anchors 锚点RectTransform类下的pivot属性可以用于获取和设置游戏对象的轴心。RectTransform类下的原创 2021-01-03 20:03:28 · 989 阅读 · 0 评论 -
Unity2019学习:常用功能--RectTransform
RectTransform矩阵变换主要用于用户界面,和普通游戏对象的Transform区别很大。RectTransform矩阵变换的Rotation旋转属性和Scale缩放属性和Transform的Rotation旋转属性和Scale缩放属性一样,没有变化。Pivot 轴心Pivot轴心属性是以当前游戏对象为坐标系,左下角为(0,0),右上角为(1,1)的一个点。旋转、大小和缩放修改都是围绕Pivot轴心进行的,因此Pivot轴心的位置会影响旋转、大小调整或缩放的结果。Anchors 锚点Anc原创 2021-01-01 16:40:33 · 704 阅读 · 0 评论 -
Unity2019学习:常用功能--Camera摄像机
Camera摄像机游戏对象是Unity场景中最重要的游戏对象。每个场景至少需要一个激活的Camera摄像机游戏对象,否则无法显示。玩家或者用户能看到的内容都是通过Camera摄像机游戏对象来展示的。添加或者新建场景以后,默认都会有一个名叫【Main Camera】的Camera摄像机游戏对象。Projection 投影Unity的Camera提供了2种投影模式,Perspective透视模式Orthographic正交模式。透视模式是近大远小的模式。[外链图片转存失败,源站可能有防盗链机制,建议将原创 2020-12-23 10:29:11 · 3973 阅读 · 0 评论 -
Ultimate Character Controller
Ultimate Character Controller是Opsive推出的一个针对FPS类游戏的开发插件,这个插件可以在Unity平台下通过相对简单的配置,快速的搭建出一个FPS游戏。官方提供了还算详细的使用说明和视频教程,虽然都是英文的,基本能够更着走。基本功能Ultimate Character Controller的基本功能包括第一人称视角/第三人称视角玩家控制,还有一些奇怪的视角。可以配置近身武器(刀剑),远程武器(弓箭,枪械),投掷武器(手榴弹),魔法攻击。可以设置击中效果(弹原创 2020-12-18 12:59:30 · 2103 阅读 · 0 评论 -
Unity常用插件:In-game Debug Console
In-game Debug Console插件可以在打包发布以后,程序运行时方便的看到控制台信息,在一些特定程序开发的调试过程中非常有帮助。例如在开发一些AR程序的时候,如果官方没有提供支持,则只能将程序发布到移动设备后才能调试,这个时候,能在移动设备看到控制台信息对于开发会方便很多。插件导入在Unity商城搜索“debug”就可以找到这款插件,类似的还有其他一些插件。这个插件体积小,更新也比较即时。导入的内容在【Plugins/IngameDebugConsole】目录下。插件使用将【Plug原创 2020-11-17 11:09:09 · 3451 阅读 · 4 评论 -
Unity2019在WebGL平台下播放音频
如果音频文件小,直接在Unity的Editor里面拖动设置即可。WebGL可以把音频放在StreamingAsstes目录下加载。 void Start() { StartCoroutine(GetAudioClip()); } IEnumerator GetAudioClip() { string path = Path.Combine(Application.streamingAssetsPath, "two.ogg").原创 2020-07-29 12:41:08 · 2720 阅读 · 3 评论 -
Unity2019在WebGL下播放视频
Unity2019自带的VideoPlayer组件,可以直接通过URL地址播放视频。设置URL地址即可。如果要播放本地视频,推荐将视频放置在StreamingAssets目录下,StreamingAssets目录和在安卓平台一样,不会被打包。通过下面的代码,即可对url进行赋值,而且,在Editor编辑器下也可以正常使用。 video.url = Path.Combine(Application.streamingAssetsPath, "birds.mp4"); v原创 2020-07-26 13:31:31 · 6595 阅读 · 1 评论 -
Unity2019安卓平台新手安装设置建议
第一次安装对于初学者,建议一定使用Unity Hub进行安装。Unity Hub下载地址:https://unity.cn/releases安装完Unity Hub以后,安装Unity2019。Unity安装目录,项目目录,发布APK的目录,最好都没有中文,否则容易出错。第一次安装的Unity2019的安卓平台内容,一定要选上【Android SDK & NDK Tools】和【OpenJDK】。安装完成以后,新建一个项目,打开Unity2019。在【Preferences】窗口的【原创 2020-05-29 16:05:29 · 7569 阅读 · 4 评论 -
EasyAR4.0稀疏空间地图室内导航
现有的AR室内导航,一种方案是利用运动跟踪实现,但是偏移较大。比较靠谱或者说能满足商业使用的还是稀疏空间地图。(ARCore管叫云锚点)实现效果如下:EasyAR稀疏云地图室内导航制作思路其实很简单,先建立空间地图。然后利用平面图像追踪在空间中定位关键点。然后设置关键点之间的连接形成路径。导航的时候,动态生成对应路径并烘焙,然后利用Unity的导航功能就能实现室内导航了。对于稀...原创 2020-02-26 23:32:36 · 6533 阅读 · 11 评论 -
AssetBundle学习小结
AssetBundle是Unity提供的一种存档文件,其中包含了可以在运行时加载的用于特定平台的非代码资源。可用于下载内容,减小初始安装大小,加载针对特定平台的优化过的资源以及减轻运行时内存压力。基础信息官方教程https://learn.unity.com/tutorial/assets-resources-and-assetbundleshttps://docs.unity3d.c...原创 2019-12-24 15:19:42 · 263 阅读 · 0 评论 -
Unity NavMeshComponents 学习小结
NavMeshComponents是Unity官方提供的一个自动寻路的一个扩展,基于Unity本身的寻路功能,只是更加便于使用而已。下载地址:https://github.com/Unity-Technologies/NavMeshComponents下载下来的是一个Unity的项目而不是导入包,里面有官方的例子,实际使用到的只是“NavMeshComponents”目录。NavM...原创 2019-06-11 10:43:56 · 1590 阅读 · 0 评论 -
Unity Cinemachine 学习小结
CinemaChine是Unity官方推出的一个免费的camera资源。虽然配置起来略显复杂,但是很好的解决了原有的camera功能单一使用不方便的问题。CinemaChine的功能非常强大,提供了镜头跟随,鼠标控制镜头方向转动,镜头在轨道上移动,同时跟踪多个目标,多个镜头切换等功能。基本内容Cinemachine是Unity官方推出的资源,所以在Unity的商城中直接搜索就可以找到。导入...原创 2019-07-03 21:01:45 · 5358 阅读 · 1 评论 -
VS Code作为Unity脚本编辑器设置
Unity3D在2017版以后,默认是用Visual Studio作为脚本编辑器,但是VS实在太大了,还是用VS Code方便,小巧灵活。下载VS Code下载地址:https://code.visualstudio.com/当前版本:1.38.0关联UnityUnity下打开Preferences窗口,在【External Tools】中修改【External Script Edi...原创 2019-09-09 17:25:16 · 8846 阅读 · 1 评论 -
VRTK学习小结
VRTK全程Virtual Reality Toolkit,是国外的一个VR开发工具,其最大的特点是支持主流的多个VR SDK,包括SteamVR、Oculus、GearVR等。VRTK屏蔽了各个不同VR SDK的差异,能够做到一次开发就能在多个不同的VR设备上使用。其次,VRTK提供了比官方更丰富的示例,并且提供了模拟器,让开发者能够更方便的开发VR内容。下载VRTK可以在Unity商城中...原创 2019-09-25 21:27:36 · 1943 阅读 · 0 评论 -
construct2游戏开发学习(四):循环
construct2提供了以下几种循环Repeatrepeat很简单,设定一个次数就可以了。c#里好像没有对应的。Forfor循环很常见,这里的name可以为空字符串下面内容相当于c#语句for(var i=1;i<=10;i++){ //doing something;}Whilew原创 2017-03-28 15:35:53 · 1744 阅读 · 0 评论 -
unity3d的playmaker插件使用教程,四、物品破坏,道具拾取
模拟破坏一个物体,然后出现拾取道具并将道具拾取的情景。同时演示了如果在不同的状态机下用变量传递信息。原创 2016-03-31 15:11:56 · 9838 阅读 · 1 评论 -
Unity2018下Android SDK设置
Unity3D 2018.3版本以后,要求Android SDK版本需要在26.1.1以上。之前Android SDK是有图形界面的,26.1.1之后只提供了命令行的方式。Unity3D发布Android app时,用到的Android SDK组件说明Android SDK Tools(必须) Android SDK Platform-tools(必须) Android SDK Bui...原创 2019-04-08 15:17:07 · 10116 阅读 · 4 评论 -
Unity动态载入多个图片到Image(UI)的方法的探讨
需要载入大量图片到Image并显示,基本方法有2种,用WWW或者c#的FileStream。考虑到协程,异步,以及把代码统一写或者分开写,衍生出5、6种方法。job system只能处理值类型,帮不上忙。ecs也主要集中在处理update里面的内容,似乎也不使用。还考虑过多线程,这里不是很确定。unity多线程过程中,子线程不能使用unity的api,就只能用c#把文件读取过程加速,对多线程不...原创 2018-09-25 21:26:38 · 12282 阅读 · 12 评论 -
unity3d与web api交互
unity3D与web api交互最大的用处,除了下载各种资源以外,大概就是可以记录一些简单的数据。如果只是做个简单的打飞机的游戏,想记录下最高成绩的话,用web api足够了,而且,web的资源丰富,改起来快。unity3D访问web api关键点就以下2处1、UnityWebRequest:这个方法包含了所有的内容,替代就的WWW的那个类。2、如果存在登录,需要在登录以后将传回来的Set-Co...原创 2018-04-06 17:29:51 · 6660 阅读 · 2 评论 -
unity3d显示圆形或异形背景
在unity3d里显示圆形的背景。有两种方式,一种是在GUI上显示,通常是用在UI上。另外一种是通过3D的Plane显示,这种时候用在游戏场景里,例如做游戏的小地图。然后,ngui的方式也比较简单。原创 2016-04-05 16:54:08 · 9460 阅读 · 0 评论