自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 资源 (1)
  • 收藏
  • 关注

原创 Unity shader中TEXCOORD定义数量(备注)

通用渲染管线(Universal Render Pipeline,URP):在URP下,似乎没有数量限制。实际上,你可以定义超过8个甚至更多的TEXCOORD,但硬件本身仍然存在一定的限制。具体的硬件限制可能因设备而异,但通常情况下,你不太可能遇到语义不够用的情况。如果你需要传入更多的顶点属性,你可以使用缓冲区并在顶点着色器中进行索引操作。的数量取决于你的渲染管线和应用需求。在使用时,请确保理解你所使用的管线的限制,并根据需要进行适当的设置。是一种用于表示顶点属性的语义。根据不同的渲染管线和硬件,

2024-03-16 14:04:13 184 1

原创 URP渲染管线多Pass的问题

在Unity所有渲染管线中,URP是一种比较特殊的渲染管线。不同于HDRP和build-in管线,URP是一种。将某一特性做成RenderFeature添加到渲染管线中,并添加图层过滤的方式来对渲染对象进行过滤。源码中可以看到Unity提供了3个标签的位置。故在无法回避多pass的情况下可以通过。不过对于实际应用需要使用多pass渲染的场景下,其实常规也有其他方法可以绕过限制。其中,single-pass这个描述词让人不由得一哆嗦。

2024-03-12 16:00:47 269 1

原创 Unity安卓包外接UVC摄像头库时打包注意事项(要点备注)

接SDK后打包时报错More than one file was found with OS independent path 'META-INF/gradle-plugins/com.bytedance.std.tracker.properties' ,原因很简单就是接入的包里面资源有冲突,只需要在build.gradle下Android->packagingOptions中声明如下代码即可。在所有的build.gradle下的所有packagingOptions位置处添加该代码。

2024-03-06 00:40:20 400 1

原创 URP后处理的Kawase模糊实现

Kawase模糊在URP下的实现

2024-03-05 23:32:18 567 1

原创 搭建简易资源更新服务器

下载Nginx并解压(如果有其他方便易用的web服务器都可以)因为大部分开发都会放在Windows下,为了方便开发,这里下载Windows版。

2024-03-04 22:48:31 243 1

原创 物理碰撞系统的简单实现

AABB包围盒是一种简单、高效和稳定的碰撞算法,其通过一个与坐标轴对齐的长方体,完全包含所要检测碰撞的物体。一种是通过两者最大包围盒的坐标,获取物体边界多个顶点的“平均”边界值,另外一种就是简单粗暴,直接按半径来进行“平均”边界值的获取。常规来说,碰撞的核心就是检测两物体是否相交,2D情况如此,3D情况亦是如此。在物理模拟和3D图形中,球形碰撞器(Sphere Collider)是一种简单的碰撞形状,用于检测和处理物体之间的碰撞。所以在有一定形状刻画要求的物体上,包围盒的制作思路会更好的匹配物体的碰撞。

2024-02-27 13:45:55 1059

原创 ASE中Depth Fade节点细节分析

因为两张深度图所取的时间不同,一个为顶点着色器时所获取的深度信息,此时unity并未对透明物体的mesh进行剔除,而另一个则是在光栅化后,像素着色器时获取的屏幕深度图,两张图的差别即为该透明物体。而又由于透明物体和场景物体交界处深度差距为0,所以通过此方法便能取巧得到透明物体和场景物体相交边界。而借由此特性,ASE制作了Depth Fade节点,而由于深度差距为0,所以使用时需要 1 - (Depth Fade Value) 来进行反向。通过近裁剪面将对应向量变换为DX或者GL坐标系。

2023-12-28 13:13:16 444 1

原创 简易UI框架

一个简易的UI框架,支持基础的压栈和出栈功能

2023-10-17 15:28:14 62 1

原创 Unity 去除开屏Logo

实际操作的时候可以调用。unity 官方文档。

2023-10-16 11:24:44 381 1

原创 飞行模拟代码(一)

unity 飞行模拟控制

2022-08-11 20:52:55 725 1

原创 Unity中角色着地功能

Character Controller组件角色控制器自带刚体Rigidbody和碰撞器Collider,isGrounded可以方便检测是否落地,Move和SimpleMove也可简化移动方面的操作。但是CharacterController的isGrounded 本身拥有一定的局限性CharacterController.isGrounded的官方文档中有一句话:Was the CharacterController touching the ground during the las

2021-10-17 20:08:36 2629

原创 跟随视角中相机自动修正朝向方向

大致实现如下其中turnSmoothVelocity与turnSmoothTime可以自行设置Transform cam = Camera.main.transform;float targetAngle = Mathf.Atan2(_playerVelocity.x, _playerVelocity.z) * Mathf.Rad2Deg + cam.eulerAngles.y;float angle = Mathf.SmoothDampAngle(model.eulerAngles.y,

2021-10-17 16:35:42 1063

原创 关于Unity中使用timeScale暂停的一些注意要点

Time.timeScale = 0可以暂停游戏,Time.timeScale = 1恢复正常。暂停内容包含动画,特效,UI动画等涉及使用到 设置Time.timeScale = 0 将会暂停所有和帧率无关的事情。这些主要是指所有的物理事件和依赖时间的函数、刚体力和速度等,而且FixedUpdate会受到影响,会被暂停(不是Update),即timeScale =0 时将不会调用FixedUpdate函数了。timeScale不会影响Update和LateUpdate的执行速度。因为Fixed..

2021-10-16 13:19:54 4818

原创 关于unity中动画的强制切换

核心使用的是这个函数Animator.Updatepublic voidUpdate(floatdeltaTime);根据 deltaTime 计算动画器。故将当前动画播放时间设置为0,直接停止,并进行动画强行切换和融合public static void ForceCrossFade(this Animator animator, string name, float transitionDuration, int layer = 0, float normalizedTim...

2021-10-15 21:23:23 3084

原创 Unity CharacterController中SimpleMove & Move区别

SimpleMove只能在平面移动,不带Y轴移动 默认每帧,移动时不需要乘以deltaTime 重力自动施加。 如果该角色落地,则返回character.SimpleMove(moveDir.normalized * Speed);Move无限制 移动时候需要注意乘以时间 需要自己做重力character.Move(moveDir.normalized * Speed * Time.deltaTime);做跳跃等含Y轴功能的时候用Move建议每帧只调用一次Move...

2021-10-15 10:50:33 2831

Visual Foxpro 6.0教程

开发数据库应用软件visual foxpro 这个是一个电子书的版本

2008-08-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除