- 博客(30)
- 资源 (1)
- 收藏
- 关注
原创 Unity架构师进阶:红点系统的架构与设计
面试的时候经常被问道如何来设计一个红点系统,本文将详细地介绍如何设计一个红点系统,有哪些接口,并完整地给出实现。
2024-04-09 19:18:55
1209
原创 DOTS Instancing合批:如何针对单个渲染实体修改材质参数
最近在做DOTS的教程,由于DOTS(版本1.0.16)目前不支持角色的骨骼动画,我们是将角色的所有动画数据Baker到一个纹理里面,通过修改材质中的参数AnimBegin,AnimEnd来决定动画播放的起点和终点,材质参数AnimTime记录当前过去的动画时间。但是在做大规模战斗控制的时候,有10000+的小兵在战斗,动画控制的时候,如果通过修改材质参数,来切换每个角色的动画。
2024-04-09 19:17:22
628
原创 DOTS Unity.Physics物理引擎碰撞事件处理
最近DOTS发布了正式的版本,同时基于DOTS的理念实现了一套高性能的物理引擎,今天我们给大家分享和介绍一下这个物理引擎的碰撞事件处理以及核心相关概念。
2024-04-09 19:14:43
966
原创 DOTS Unity.Physics物理引擎碰撞查询核心分析
碰撞查询(Collison Qurey)是Unity.Physics物理引擎中的一个很重要的功能。很多游戏逻辑都需要基于碰撞查询来实现,比如一个子弹是否打到了物体,具体打在了哪个部位,这些都需要依赖Collison Qurey来实现。Unity Physics物理引擎有强大的碰撞查询功能,包含了:射线检测,形状检测,最近点计算等。碰撞查询(Collison Qurey)计算的时候,读取的是物理引擎里面的内部数据,更准确的说是broadphase阶段的内部数据。
2024-04-09 19:13:30
1155
原创 Unity DOTS物理引擎的核心分析与详解
最近DOTS发布了正式的版本,同时基于DOTS的理念实现了一套高性能的物理引擎,今天我们来给大家分享和介绍一下这个物理引擎的使用。
2024-04-09 19:11:19
950
原创 Unity DOTS《群体战斗弹幕游戏》核心技术分析之3D角色动画
最近DOTS发布了正式的版本, 我们来分享现在流行基于群体战斗的弹幕类游戏,实现的核心原理。今天给大家介绍大规模战斗群体3D角色的动画如何来实现。
2024-04-09 19:08:42
1418
原创 Unity DOTS系列之IJobChunk来迭代处理数据
最近DOTS发布了正式的版本, 我们来分享一下System中如何在System中使用IJobChunk来迭代处理World中的数据,方便大家上手学习掌握Unity DOTS开发。
2024-03-27 06:52:56
1428
原创 Unity DOTS系列之System中如何使用SystemAPI.Query迭代数据
最近DOTS发布了正式的版本, 我们来分享一下System中如何基于SystemAPI.Query来迭代World中的数据,方便大家上手学习掌握Unity DOTS开发。
2024-03-27 06:50:16
1071
原创 Unity DOTS系列之托管/非托管Component的区别与性能分析
最近DOTS发布了正式的版本, 我们来分享一下DOTS里面托管与非托管Component的区别与性能分析,方便大家上手学习掌握Unity DOTS开发。托管与非托管的区别在于是不是基于自动垃圾回收的。托管是由垃圾回收器来负责自动回收,非托管需要我们手动来做相关内存管理,不被垃圾回收系统来处理。
2024-03-23 14:29:04
1043
原创 Unity DOTS系列之Filter Baking Output与Prefab In Baking核心分析
最近DOTS发布了正式的版本, 我们来分享一下DOTS里面Baking核心机制,方便大家上手学习掌握Unity DOTS开发。今天给大家分享的Baking机制中的Filter Baking Output与Prefab In Baking。
2024-03-21 19:07:37
790
原创 Unity DOTS Baking System与Baking World
最近DOTS终于发布了正式的版本, 我们来分享一下DOTS里面Baking阶段,Baking System,Baking World的关键概念,方便大家上手学习掌握Unity DOTS开发。Unity在Baking也是基于ECS模式开发设计的,所以Baking的时候也会有Baking System与Baking World,把Baking出来的数据放到Baking World里面。
2024-03-19 08:10:28
1044
2
原创 Unity DOTS Baking与Baker详解
例如,如果是一个 authoring GameObject 是一个cube, Unity在bake的时候,就会把这个entity 渲染成一个cube,如果这个authoring GameObject 随后被修改成了一个 球体, 那么 ECS也必须要相通地做出改变,要把这个entity渲染成球体,这个就意味着unity要删除以前早期的Cube Entity, 并创建一个新的球的entity,或者改变entity让他显示一个球体。Baking是异步操作的,Baking的时候不影响你正常的Unity的操作。
2024-03-15 07:13:17
1085
1
原创 Unity DOTS System与SystemGroup概述
最近DOTS终于发布了正式的版本, 我们来分享以下DOTS里面System关键概念,方便大家上手学习掌握Unity DOTS开发。System是迭代计算与处理World中的Entity实体的Component Data数据的逻辑代码。System对应的代码是运行在main thread上的。World里面所有的System通过SystemGroup来进行管理, 通过SystemGroup, 来决定了每个System的迭代顺序。
2024-03-15 07:11:33
1046
1
原创 Unity DOTS Component概述
我们Unity DOTS课程也正式发布了,我们课程经过9年多的更新与迭代,已经涵盖了Unity 开发中遇到的绝大部分问题,涵盖了Unity主程序进阶,升职加薪所需要的系统的知识体系,主流游戏类型的重点难点技术解决方案。相信我们提供的游戏开发技术服务能很好的帮助到您。当我们使用struct 来定义ComponentData的时候,意味着我们使用的是一个非托管(垃圾回收)的对象,里面的数据成员也是需要用非托管的,如果你要用托管的数据成员与对象,你可以把struct 改成class来定义。
2024-03-14 07:25:03
479
1
原创 Unity ECS系列最新DOTS关键概念概述
每个World,包含了自己的所有的Systems, 并负责System的迭代计算。分配的时候,首先会分配16K大小的Trunk, 然后每种ArchType会对应一个size,一个Trunk只会分配同一种类型的ArchType,这样可以更高效的做好内存释放与分配。运行的时候,Unity会创建一个默认的世界出来,并把每个system加入到这个默认的世界,如果你想要添加一个system,在运行的时候就加入到默认的World里面,你只要实现IcustomBootstarp接口。
2024-03-14 07:22:05
1033
1
原创 Unity DOTS中ECS核心架构详解
最近DOTS终于发布了正式的版本, 我们来分享一下DOTS中ECS的几个关键概念与结构,方便大家上手学习掌握Unity DOTS开发。
2024-03-14 07:17:17
949
1
原创 Unity ECS最新DOTS环境搭建教程
最近DOTS终于发布了正式的版本, 今天我们来基于Unity 2023.1.6来搭建DOTS 1.0.16的开发环境与注意事项。获取DOTS的在线文档Unity DOTS的权威资料比较少,我们主要的都是基于DOTS的官方文档来进行学习和使用。如上图所示,左上角可以选择DOTS的文档的版本,根据项目使用的DOTS版本来选择合适版本的文档。建议大家在学习的过程中把这些文档全部仔细的都看一遍。DOTS 开发所需的开发工具。
2024-03-13 19:56:38
794
1
原创 Cocos Creator中的Tween
最新的Cocos Creator 3.x版本使用了Tween系统来代替原来的Action系统,很多小伙伴不明白Tween到底是什么,并且怎么用。今天就来给大家讲解一下Tween吧,希望能够帮助大家快速掌握Tween的使用,并且对Tween有一个更加深入的了解。先来看一张UML图: 此UML图中,涉及到两个新的类Tween以及TweenAction,下面分别介绍。何为TweenAction 新增的TweenAction类从ActionInterval派生(图中简化成从Action派生),它.
2022-04-28 23:16:07
1360
原创 CocosCreator中快速实现HTTP
Cocos Creator中快速实现HTTP 首先声明,本文并不对HTTP做专业的解释与说明,因为网上肯定有很多专业的解释与说明。解释专业,本文尽量尝试以不那么专业的方式去解释HTTP,并且最重要的是在Cocos Creator中快速实现并且使用。 对于初学者来说,认为HTTP很复杂,不知道是什么协议。专业名词为超文本传输协议(Hyper Text Transfer Protocol,HTTP),专业解释是一个简单的请求-响应协议。通常情况下,HTTP是一个短连接,就是当你向HTTP服务器的指定UR
2022-04-25 22:59:52
797
原创 Unity3D常用设计模式之工厂模式
Unity3D常用设计模式《工厂模式》 工厂模式(Factory Pattern)是游戏开发中比较常用的设计模式。这种类型的设计模式属于创建型模式,它提供了一种创建对象实例的最佳方式。在工厂模式中,我们在创建对象时不会对用户暴露创建对象的具体细节,而是通过提供一个共同的接口来创建需要的对象。 如果不好理解,先来看看生活中的一个真实案例。例如某个品牌的汽车制造工厂,对外提供生产这个品牌的不同型号汽车的服务。外界只要指定一个“汽车型号”,工厂就可以根据型号来构建出对应型号的汽车。这样外界就不用关心工厂
2022-04-23 12:44:00
2798
原创 Unity 常用设计模式之工厂模式
工厂模式(Factory Pattern)是 游戏开发中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对用户暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。先来看一个生活中的真实的案例,某个品牌的汽车制造工厂,对外提供生产这个品牌的不同型号汽车的服务。外界只要下一个”汽车型号”, 工厂可以根据型号构建出来不同型号的汽车。这样外界不用关心工厂内部是怎么运作的,当用户需要某个型号的汽车的时候调用接口就可以了,同时内部工
2022-02-10 20:46:35
3169
原创 制作MMORPG游戏需要储备哪些技术
今天给大家分享一下制作一个MMORPG游戏需要学习的知识点和技术储备。MMORPG游戏又叫大型多人在线角色扮演类游戏,对技术,美术,策划的要求非常的高,制作一个成功的MMORPG不容易,今天我们从技术的角度来给大家详细的讲解制作一个MMORPG游戏需要储备的哪些技术点。一: 客户端准备游戏引擎的选择目前做MMORPG游戏主流的跨平台(PC+Android+IOS)的3D游戏引擎有Unity和UE4,各自都有比较成功的代表作,技术上都能够实现,UE4赢在渲染效果,Unity赢在使用相对简单。基
2022-02-08 20:54:07
574
原创 Unity3D的RPG游戏中攻击的判定
Unity3D的RPG游戏中攻击的判定这个怪物从出生点寻路过来,走了半天,被我普攻直接打死了,可怜它三秒。那么很明显的一个判断,它在我面前..
2021-12-05 22:53:20
2008
原创 制作MMORPG游戏需要储备哪些门子技术
今天给大家分享一下制作一个MMORPG游戏需要学习的知识点和技术储备。MMORPG游戏又叫大型多人在线角色扮演类游戏,对技术,美术,策划的要求非常的高,制作一个成功的MMORPG不容易,今天我们从技术的角度来给大家详细的讲解制作一个MMORPG游戏需要储备的哪些技术点。这里有个教学视频可以学习一下。一: 客户端准备游戏引擎的选择目前做MMORPG游戏主流的跨平台(PC+Android+IOS)的3D游戏引擎有Unity和UE4,各自都有比较成功的代表作,技术上都能够实现,UE4赢在渲染效
2021-12-05 16:21:15
165
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人