草庐IT

RTC1-Unity

全部标签

Unity地面交互效果——3、曲面细分基础知识

  大家好,我是阿赵。  之前介绍了使用动态法线贴图混合的方式模拟轨迹的凹凸感,这次来讲一下更真实的凹凸感制作。不过在说这个内容之前,这一篇先要介绍一下曲面细分着色器(TessellationShader)的用法。一、为什么要做曲面细分  之前通过法线贴图模拟了凹凸的感觉:  法线贴图不会真的产生凹凸,它只是改变了这个平面上面的法线方向。所以,只有通过光照模型,通过法线方向和灯光方向进行点乘,才会计算出不同的光照角度,让我们产生一定的凹凸感觉。  但如果想做到这样的效果,法线贴图是不行的:  这种效果,球是真的陷进去地面了。很明显,这些都是需要偏移顶点让网格产生真实的变形,才能做到。  不过这

Unity3D--协程使用详解

1.简介unity的协程(Coroutine)是一个能够暂停协程执行,暂停后立即返回主函数,执行主函数剩余的部分,直到中断指令完成后,从中断指令的下一行继续执行协程剩余的函数。函数体全部执行完成,协程结束,由于中断指令的出现,使得可以将一个函数分割到多个帧里去执行。协程不是进程,也不是线程,它就是一个特殊的函数——可以在某个地方挂起,并且可以重新在挂起处继续运行。协程方法与普通方法的区别:普通方法被调用时,原来执行的部分保留现场,停止执行,然后去执行要调用的方法,并且,被调用的方法执行完之后才能返回到调用前的状态接着往下执行。协同方法执行不用等协同方法执行完再执行调用之前原来方法的代码,而是两

Unity游戏开发客户端面经——网络(初级)

前言:记录了总6w字的面经知识点,文章中的知识点若想深入了解,可以点击链接学习。由于文本太多,按类型分开。这一篇是网络 常问问题总结,有帮助的可以收藏。 1.TCP与UDP的区别区别UDPTCP是否连接不连接面向连接是否可靠不可靠可靠传输(传输过程中会丢失,但会重发)使用流量控制和拥塞控制连接对象个数支持一对一,一对多,多对一,多对多交互通信。仅支持一对一通信。传输方式面向报文面向字节流数据边界保存数据边界不保存数据边界速度速度快速度慢发送消耗轻量级(因为UDP传输的信息中不承担任何间接创造连接,保证交货或秩序的的信息。这也反应在包头大小。)重量级首部开销首部开销小,仅8个字节首部开销大,最小

Unity中的异步编程【1】—— Unity与async 、 await

新手在Unity里写东西,一个方法的内容如果写复杂了,容易把Uinty写死,就会卡帧,用流行的话来总结就是:在Update里面活生生把天聊死了。此外,如果新手才入门,不擅长使用消息、事件来进行异步的统筹,一门心思在Update里面实现各种有延时有顺序的步骤,于是自己把自己绕晕不说,程序又难调试,难修改,更甚——帧率低下…那么用协程来实现异步…聪明…但,还有比协程更好用的异步框架,那就是UniTask一、什么是异步:async和await是啥异步这个概念一言难尽,里面涉及到很多上古时候的知识:单核/多核,单线程/多线程,并发/并行,阻塞/非阻塞…举一个例子:小赵夫妻响应祖国的号召,夫妻二人7年之

Unity中EditorWindow的创建和停靠

API简介创建EditorWindow主要使用的方法有两个:GetWindow和CreateWindow1.GetWindow和CreateWindow的区别:(1)GetWindow试图寻找指定类型的第一个窗口,如果无法找到则进行创建,CreateWindow直接创建一个指定类型的窗口(2)GetWindow的参数有title,focus,utility,desiredDockNextTo,CreateWindow的参数有title,desiredDockNextTo2.参数简介:(1)title:窗口标题,默认为[命名空间].类名(2)focus:是否聚焦,默认为true(创建窗口时默认聚

Unity IL2CPP 游戏分析入门

一、目标很多时候App加密本身并不难,难得是他用了一套新玩意,天生自带加密光环。例如PC时代的VB,直接ida的话,汇编代码能把你看懵。但是要是搞明白了他的玩法,VBDecompiler一上,那妥妥的就是源码。Unity和Flutter也是如此。最近迷上了一个小游戏DreamBlast,今天就拿他解剖吧。com.rovio.dream二、步骤侦测敌情从apk包里面发现libil2cpp.so,就足以证明是Unity写的游戏了。在Android下Unity有两种玩法,一种是Mono方式打包,我们可以从包内拿到Assembly-CSharp.dll,如果开发者没有对Assembly-CSharp.

Unity3d 物体不动,碰撞触发不了的情况

问题:有一种情况,主角带刚体,主角站着不动。玩家站在陷阱上,陷阱的碰撞体Toggle之后,OnCollisionEnter触发不了。解决:盲猜玩家组件上才有刚体,而碰撞检测是刚体运动的时候,才进行检测的。privatevoidOnBecameVisible(){if(_trapBaseisTrapSpike){InvokeRepeating(nameof(CheckPlayerStay),0,0.1f);}}privatevoidOnBecameInvisible(){CancelInvoke(nameof(CheckPlayerStay));}//////地刺的碰撞体会消失和隐藏,特殊处理。

探讨Unity新的收费模式:对开发者与游戏行业的影响、负面因素的解析及面对挑战的建议

本人详解作者:王文峰,参加过CSDN2020年度博客之星,《Java王大师王天师》采购供应链共享平台人员,财务规则对账人员,物流门禁计量系统对接人员,ERP事业部人员Unity是一款备受开发者欢迎的跨平台游戏引擎,它提供了丰富的工具和功能,帮助开发者打造出优秀的游戏作品。近期,Unity宣布了一项新的收费模式,引发了广泛的讨论和反响。在对待这一收费模式的看法上,人们有着不同的观点和想法。转载说明:务必注明来源(注明:作者:王文峰哦)探讨Unity新的收费模式:对开发者与游戏行业的影响、负面因素的解析及面对挑战的建议1、unity是什么软件2、收费模式的概述3、积极的观点4、、负面的观点三、综合

查看Unity当前Fps和内存

usingSystem;usingSystem.Diagnostics;usingUnityEngine;usingUnityEngine.Profiling;usingUnityEngine.UI;publicclassDlgFramesList:MonoBehaviour{  publicTextfpsText;  publicTextheapSizeText;  publicTextusedSizeText;  publicTextallocatedMemoryText;  publicTextreservedMemoryText;  publicTextunusedReservedMe

利用Unity开发UI并接入HTC VIVE 手柄-小白(我自己)的笔记(2023.10.18更新)

目录一、任务拆解1.设备型号、Unity环境配置2.Unity播放全景视频①skybox填充全景视频,并实现play界面巡航②Sphere填充全景视频(目前暂时不采用这个方法-7.16注)优缺点3.Unity实现全流程4.Unity制作UI模块和界面①在视频画面上实现暂停/继续②替换视频URL5.Unity实现与HTCVive手柄交互(?先手柄与Steam交互,然后unity与steam链接)6.其他二、报错记录三、参考链接和书一、任务拆解1.设备型号、Unity环境配置Unity2021.3、HTCVivePro2专业套装、Steam安装Unity资源包:SteamVRPlugin(SDK要