- 博客(68)
- 资源 (2)
- 收藏
- 关注
原创 分享一个专业TA的《Shader参考大全》
这个网站可以在线查阅Shader相关文档的网站,越用越喜欢,特性如下: 比Unity官方文档更聚焦 文档打开速度快(相比官方文档的龟速) 目录清晰,支持搜索 西山居某在职大佬持续维护,支持开放式PR更新 传送门:Unity小白的TA之路-Shader开发|图形渲染管线|URP|性能优化|图形渲染|PostProcessing使用场景1:我想把Shader升级到URP,该怎么做? 找到升级指南,选到“结构”,有详细指南 使用场景2:...
2021-05-03 14:33:27 722
原创 浅谈《帧同步网络游戏》之“框架”实现思路
为什么要采用帧同步帧同步是与状态同步并驾齐驱的两种网络游戏开发模式简言之,帧同步就是客户端发送操作,服务器转发给每个客户端;而状态模式是客户端发操作,收服务器计算结果帧同步最早流行是出现在局域网游戏中,如最早的红色警戒、帝国时代系列等,那时没有专用游戏服务器,游戏数据都是通过一台局域网主机转发给其他客户机进入2000,网游开始兴起,有了专门的支持大型多人在线的网络游戏服务器,为了避免作弊,这时的大部分网游都采用了状态模式进行开发,客户端只能发送操作,并得到服务器计算的结果,从而极大降低了客户端变态
2020-08-28 12:23:24 901
原创 《黑神话·悟空》Shader技术剖析
大家能看出来这个高光效果是如何实现的吗?总结:云海效果怎么能做到呢?最后再看一下这篇文章的总结和一些思考凯亚战斗技能展示.mp4
2024-10-16 07:00:00 635
原创 反射的N种渲染方式
我们的RayMarching也是在整个场景拍照,把场景照出来了,再做一个后期处理,获得场景的深度,获得场景的法线,计算反射方向,计算反射点的颜色,然后把它贴在原图上面,流程和美颜类似。上图中,绿色线条框选出来的部分,都是存在问题的地方,比如,左下角的侧面反射是扭曲的,窗台下跟窗户相对位置的反射高度是不对的,显得不太真实,最好的效果是Flat Mirror,也即是平面反射。但是反射相机也有它的问题:反射相机它会让我们的渲染的开销直接翻倍,那这个对于我们的设备的性能压力是非常大的。
2024-10-10 07:00:00 654
原创 GPU硬件如何实现光栅化?
线程束英文WARP,为了和线程数加以区分,在容易产生歧义的地方,我们统一用英文WARP,而不用中文术语(线程束)那么光栅化以后的像素是如何被并行计算(也就是逐像素渲染)的呢?在逻辑上,一个线程执行一个Pixel Shader的核心函数,也就是一个线程处理一个像素。GPU将屏幕分成一个一个的2×2的像素块,因为逻辑上一个Warp包含了32个线程,也就是说一个Warp处理的是8个像素块,这就解释了为什么上面我们看到的色块是8*8的。
2024-09-24 12:11:06 796
原创 《黑神话悟空》开发框架与战斗系统解析
本文主要围绕《黑神话悟空》的开发框架与战斗系统解析展开主要内容《黑神话悟空》采用的技术栈《黑神话悟空》战斗系统的实现方式四种攻击模式连招系统的创建如何实现高扩展性的战斗系统包括角色属性系统、技能配置文件和逻辑节点的抽象等关键技术点。
2024-09-19 23:36:27 5353 3
原创 备战秋招:2024游戏开发入行与跳槽面试详解
本次分享由优梦创客机构的创始人雷蒙德主讲,专注于2024年秋招期间游戏开发领域的入行与跳槽面试准备。本次分享重点在于提供面试技巧和解答求职者疑问,助力求职者更好地准备秋招。同时,回顾了游戏行业近期的发展趋势和招聘市场的特点,强调了能力提升的重要性以及面对行业波动时的应对策略
2024-08-01 18:10:37 689
原创 光线追踪:原理与实现
● 今天我要给大家分享的是光线追踪的原理和实现● 大家知道在过往很多年里面,光线追踪技术一般只能用于离线渲染● 但是由于硬件发展的速度非常快,大家知道摩尔定律是每一年半硬件的性能会增长一倍● 但是现在像英伟达显卡,可能半年或者一年就会推出性能翻倍的显卡● 所以已经完全打破了摩尔定律● 那按照这个规律,可能也过不了多久,光线追踪技术就可以用在实时游戏当中● 实际上现在有一些游戏像赛博朋克 2077 已经用上了支持光追技术● 所以今天我就要给大家分享光线追踪的原理和实现,帮助大家能跟上未来图形学的
2024-06-29 10:00:00 778
原创 分享一个“在URP管线中编写Shader代码”的新手教程
许多在线着色器代码教程旨在用于 Unity 的内置渲染管线,但可能无法在URP管线中工作 - 它们要么会产生洋红色错误,要么至少与SRP Batcher不兼容,SRP Batcher 会批处理在每个着色器/材质的绘制调用之间进行设置,因此使用该着色器渲染许多对象将具有更高的性能。
2024-05-11 10:00:00 524
原创 【二次元MMORPG游戏开发】任务系统技术拆解
在今天的分享当中,我将对任务系统去做一个拆解。也许你见过很多任务系统,但是今天我要分享的是我们经过一个框架迭代以后的任务系统。我会结合客户端的功能演示给大家去讲解。
2024-05-10 07:00:00 1150
原创 如何设计和优化游戏服务器定时器的性能?
在使用定时器功能时,我们免不了要使用获取系统时间的函数,而在大多数操作系统上获取系统时间的函数属于系统调用,一次系统调用相对于《单进程单线程游戏服务器架构》结构中的其他逻辑来说可能耗时更多,因此为了提高效率,在一些对时间要求精度不是特别高的情况,我们可能会缓存一些时间,在较近的下次如果需要系统时间,可以使用上次缓存的时间,而不是再次调用获取系统时间的函数,目前不少网络库和商业服务在定时器逻辑这一块都使用这一策略。如图所示,图中小根堆的各个节点代表一个定时器对象,它们按过期时间从小到大排列。
2024-03-22 16:14:07 747
原创 【原神游戏开发日志1】缘起
大家好,最近看到原神在TGA上频频获奖,作为一个14年经验的游戏开发行业的老兵,对原神游戏进行了详细的技术分解,分享给希望开发或者学习的小伙伴!
2023-12-04 19:30:00 480
原创 『完蛋!我被美女包围了』游戏开发指南
我从游戏开发者的角度对最近火爆网络的《完蛋!我被美女包围了!》做了详细的技术拆解,分享给希望开发或者学习此类游戏的小伙伴!
2023-11-30 07:30:00 770
原创 Unity冷知识:读取用户输入应该写在Update还是FixedUpdate里?
这是因为,Update是真正和我们机器相关,帧率受不同机器性能影响的函数,而FixedUpdate则是一个Unity自行封装定义的函数,它的默认值一般是0.02m,也就是50fps,我们可以通过Edit -> Project Setting -> Physics来改变调用间隔时间。官网上写到,物理运算要放到FixedUpdate里面进行处理,那么如果需要用Input控制物理运动,就把Input也放到FixedUpdate里面不就可以了吗?但要注意,这个值只是一个请求,你的机子可能不能达到这个速度。
2023-05-08 12:23:27 835
原创 MMORPG网络游戏开发之用户管理
MMO游戏又称大型多人在线角色扮演类游戏,在所有的角色扮演的游戏当中,玩家都要扮演一个虚拟角色,并控制角色活动MMO可以分为客户端和服务器两部分,玩家通过客户端连接到互联网登录服务器才能进行游戏,游戏玩家的数据资料保存在服务器上,游戏的开发商和运营商提供游戏的服务器以及管理虚拟世界,对游戏不断的做出更新以便留住老玩家以及吸引新玩家在之前的训练营课程里,我们已经完成了MMORPG所需的网络通信、协议序列化以及游戏的服务器和客户端部分,接下来就带大家来实现MMO游戏的用户管理。............
2022-08-31 17:56:21 546
原创 MMORPG网络游戏开发之Protobuf的基本使用
MMO游戏又称大型多人在线角色扮演类游戏,在所有的角色扮演的游戏当中,玩家都要扮演一个虚拟角色,并控制角色活动MMO可以分为客户端和服务器两部分,玩家通过客户端连接到互联网登录服务器才能进行游戏,游戏玩家的数据资料保存在服务器上,游戏的开发商和运营商提供游戏的服务器以及管理虚拟世界,对游戏不断的做出更新以便留住老玩家以及吸引新玩家今天就为大家介绍MMORPG游戏中的Protobuf的基本使用。...
2022-08-30 17:34:10 1294
原创 MMORPG网络游戏开发之网络通信
MMO游戏又称大型多人在线角色扮演类游戏,在所有的角色扮演的游戏当中,玩家都要扮演一个虚拟角色,并控制角色活动MMO可以分为客户端和服务器两部分,玩家通过客户端连接到互联网登录服务器才能进行游戏,游戏玩家的数据资料保存在服务器上,游戏的开发商和运营商提供游戏的服务器以及管理虚拟世界,对游戏不断的做出更新以便留住老玩家以及吸引新玩家........................
2022-08-29 16:23:44 1956
原创 深入浅出分布式服务器架构
本文是对分布式服务器架构的由来进行介绍,要开发一款网络游戏自然不能对开发网络游戏的历史一无所知,充分了解网络游戏开发的历史也能加深对当前网络游戏架构的理解下面就来看一看网络游戏的服务器是如何一步步的从一个简单的服务器逐渐过渡到当前热门的分布式架构服务器的
2022-08-24 17:30:16 2958
原创 Unity ECS实现RTS游戏中的游戏单位框选、集结和移动控制
今天想给大家分享的主题是如何实现RTS类型游戏中的游戏单位角色控制本文中会介绍如何运用最新的ECS架构来实现游戏单位控制
2022-08-22 19:06:58 2779
原创 一小时极速掌握HybridCLR热更新
HybridCLR热更新是一个新的热更新方案,根据HybirdCLR的官方自述,它的性能和开发的便利性相较于传统的热更方式都有了大幅度的提升本文会为大家讲解HybridCLR的详细情况以及如何基于HybridCLR进行游戏热更新
2022-08-19 19:27:12 5496
原创 为什么游戏需要热更新
简单来说就是为了绕过手机操作系统的安全验证因为如果手机操作系统允许我们随意从网络上下载并更新安装好的APP,那么一些不良的游戏开发者就有可能在更新的程序中植入后台或者木马程序来窃取用户的数据,甚至破坏手机系统,从而达到一些不可告人的目的...
2022-08-08 13:54:39 528
原创 ILRuntime:ILRuntime寄存器模式详解
ILRunTime虽然有很多优点,其中有一点在以前经常被拿来与Lua进行比较,就是ILRunTime的数值计算性能由于Lua采用了寄存器模式,而ILRunTime在过去是没有支持寄存器模式的,所以在比较时都会说ILRunTime的计算性能比起Lua要略微差一点但是现在ILRunTime已经增加了寄存器模式,接下来我们就来看一看什么是ILRunTime的寄存器模式以及这种模式解决了哪些问题?有哪些优点?.....................
2022-08-03 16:10:41 987
原创 Unity热更新那些事
本文想要给大家分享的是Unity热更那些事儿,会带大家了解:在打包时为什么选择使用Mono作为脚本引擎的后台?JIT与Mono有什么关系?IOS热更新的问题Lua如何进行热更新?ILRunTime热更新介绍
2022-08-03 14:22:44 1058
原创 视差映射:更逼真的纹理细节表现(上):为什么要使用视差映射
视差贴图技术是相对于传统的法线贴图技术所做的一项改进视察贴图技术可以给场景里要渲染的游戏物体增加物体表面的凹凸细节,在过去为了表现物体的表面细节,通常会使用法线贴图,那么为什么又要使用视差贴图呢?它跟法线贴图有什么区别呢?下面来为大家讲解......
2022-08-03 13:32:52 1043
原创 初学者也能看懂的Ray March体积云
前言今天要给大家分享的主题是现在游戏开发中必备的一项游戏效果:游戏中的云渲染现在大部分的游戏,不管是主机、PC还是手机游戏都在往3A的方向发展,所以现在的游戏在云的渲染上很少会采用传统的渲染方式大家可以想一想:平时在玩游戏时是否看到过一些传统的渲染方式、你知不知道它是用了什么样的技术来实现的?知道的同学,可以把你的答案发在我们的评论区我今天要带给大家的是一种不太一样的渲染方式,是现在很多游戏大作中必备的体积云渲染方式,比如地平线系列、大表哥二,都采用了这样的渲染技术,可以说体积云是主机游戏标配的一
2022-04-22 19:04:45 4069
原创 游戏开发入行大师攻略
本文主要从游戏行业介绍、游戏开发高薪入行标准、如何高效学习商业游戏开发技术三个方面,给大家在从游戏爱好者转变成为游戏创作者方向上指明路径
2022-03-01 12:49:13 2900
原创 屏幕后期处理之:Sobel算子实现边缘检测
版权声明本文为“优梦创客”原创文章,您可以自由转载,但必须加入完整的版权声明更多学习资源请加QQ:1517069595获取(企业级性能优化/热更新/Shader特效/服务器/商业项目实战/每周直播/一对一指导)主题—、屏幕后期处理的效果实现这个屏幕后期处理可以实现哪些效果呢?可以说是非常多,包括有边缘检测高斯模糊,不能反光运动模糊和毛玻璃那么首先我们来看一看这些效果的一个大致的概览。二、后期处理用于优化图像质量:Anti-Aliasing这里我们可以看到这个是用这个屏幕后处理做的一个
2021-09-18 12:23:00 913
原创 二次元卡通渲染-着色
各位同学大家好!欢迎大家来到我们的直播课堂,今天这节课要给大家分享的是《泛二次元卡通渲染》的技术原理与实现。近几年以来二次元卡通渲染是游戏中越来越被广泛采用的渲染方式,像我们课程封面图上的《原神》、《崩坏》、《阴阳师》、《明日方舟》都是一些非常流行的二次元手游佳作。那么今天我要分享给大家的就是如何实现二次元的风格化渲染效果,以及对于已经在职的或者在开发独立游戏的小伙伴们,如何将这项渲染技术应用在自己的项目中。主题二次元卡渲的技术概览二次元卡渲的着色实现Part 1:亮部与暗部Part .
2021-08-13 14:28:54 4867
原创 二次元卡通渲染之描边
前言本文为“优梦创客”原创文章,您可以自由转载,但必须加入完整的版权声明更多学习资源请加QQ:1517069595获取(企业级性能优化/热更新/Shader特效/服务器/商业项目实战/每周直播/一对一指导)各位同学大家好!欢迎大家来到我们的优梦创客,今天这节课要给大家分享的是《泛二次元卡通渲染》的技术原理与实现大家知道,近几年加入二次元游戏的玩家越来越多,这跟游戏玩家的群体主力都是年轻人有很大关系,今天来到咱们课堂的相信有很多都是90后或者00后的同学,同学们都是看着二次元动漫长大的,自然对
2021-08-10 14:48:31 2373
原创 休闲游戏开发
前言本文为“优梦创客”原创文章,您可以自由转载,但必须加入完整的版权声明更多学习资源请加QQ:1517069595获取(企业级性能优化/热更新/Shader特效/服务器/商业项目实战/每周直播/一对一指导)休闲游戏制作全攻略——兼谈兴趣爱好如何变现大家好,今天要给大家分享的主题是休闲游戏制作全攻略开发一款自己想要制作的同时也是其他小伙伴爱玩的游戏,想必是很多同学心目中的一个梦想。其实啊在我们实现这个梦想的同时,我们还可以通过小游戏的制作赚到人生的第1桶金,或者至少是赚点零花钱吧。现在st
2021-08-05 12:29:41 1557
原创 C#热更新比Lua好在哪里?
C#热更新比Lua好在哪里?大家好!在上期分享当中,给大家科普了一下,为什么游戏需要热更新?简而言之就是:热更新可以只下载一部分更新内容,而无需重新下载整个游戏APP,提升了玩家的体验。但是由于手机操作系统的限制,特别是苹果IOS的限制。手机操作系统通常不能直接支持热更新,所以就需要我们想办法去绕过这个限制。那么作为一名游戏开发者,我们具体该如何做呢?在这里有两种方案可供选择:使用基于传统的Lua的热更新方案采用基于C sharp的热更方案我们先来说第1种,如果我们采用基于Lua的热
2021-07-13 10:03:48 847
原创 为什么游戏需要热更新?
版权申明:本文为“优梦创客”原创文章,您可以自由转载,但必须加入完整的版权声明更多学习资源请加QQ:1517069595获取(企业级性能优化/热更新/Shader特效/服务器/商业项目实战/每周直播/一对一指导)为什么游戏需要热更新?简单来说就是为了绕过手机操作系统的安全验证。因为如果手机操作系统允许我们随意从网络上下载并更新我们安装好的APP,那么一些不良的游戏开发者就有可能在更新的程序中植入后台或者木马程序来窃取用户的数据,甚至破坏手机系统,从而达到一些不可告人的目的。但是手机操作系统
2021-07-09 11:35:41 1905
原创 如何实现网格建造系统
版权声明本文为“优梦创客”原创文章,您可以自由转载,但必须加入完整的版权声明更多学习资料请加QQ:1517069595获取(企业级性能优化/Shader特效/热更新/shader特效/服务器/商业项目实战/每周直播/一对一指导)网格建造系统我们的建造系统要实现的目标:WASD在地图上移动按1~6键切换建造单位类型建筑单元可占据多个网格左键按下执行建造(有建造效果)定义基础网格数据结构定义建筑预制体,点击创建实例点击创建实例解决创建位置重叠只能创建在网格内(不能横跨)根
2021-07-06 16:04:25 806
原创 一小时极速掌握游戏资源远程热更新
版权声明本文为“优梦创客”原创文章,您可以自由转载,但必须加入完整的版权声明更多学习资源请加QQ:1517069595获取(企业级性能优化/热更新/Shader特效/服务器/商业项目实战/每周直播/一对一指导)一、前言今天这篇文章一共分为两个部分,第一部分为游戏的远程热更新,第二部分为实现一个商业项目的资源热更新。二、三十分钟实现资源/代码远程热更新首先我们作一个约定,第一点我们会使用unity最新的一套资源管理的解决方案,叫做AddressableAssets。Address
2021-05-16 15:54:36 261
原创 浅谈游戏中3种常用阴影渲染技术(3):阴影贴图
浅谈游戏中3种常用阴影渲染技术(3):阴影贴图版权声明本文为“优梦创客”原创文章,您可以自由转载,但必须加入完整的版权声明更多学习资源请加QQ:1517069595获取(企业级性能优化/热更新/Shader特效/服务器/商业项目实战/每周直播/一对一指导)三、阴影贴图3.1阴影贴图的特点阴影贴图是Unity官方所采纳的一种阴影渲染方式需要一个额外的ShadowCaster通道便于实现软阴影3.2阴影贴图的实现第一步:在灯光的位置生成一张深度图,将场景中的深度值渲染到深度图里面
2021-04-25 21:09:50 901
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人