刷新
lua语言理论及应用

博主头像 Lua语言技术(其一) 动态脚本语言Lua:用标准C语言编写并开放了源代码。 其轻量小巧,与C/C++交互便捷,热更新友好,在游戏行业里都用它做逻辑层开发(通过Lua扩展自定义功能) 官网:Lua官方下载页面 配置环境变量cmd确认再从编辑器搜索下载lua插件即可编程 运行时再次导入Lua解释器.e ...

基于Phaser的纯js小游戏开发

博主头像 从一个网页小游戏合集,看 Phaser 项目的分层设计:SGame 架构与实现原理 很多小游戏项目最初都很简单:创建一个 Canvas,监听键盘事件,然后在循环里不断更新坐标。可当游戏数量从一个增加到六个,并且还要兼容桌面键盘、手机触控、中英文切换、关卡切换和自动化测试时,继续把所有逻辑写在同一个文 ...

Unity 中使用 GPU 播放简单的顶点动画

博主头像 Unity中使用 GPU 播放简单的顶点动画 偶然间在知乎上看到了《戴森球计划》制作人关于游戏实现技术细节的回答,在GPU上播放顶点动画这一技术很有意思,《ABZU》制作人也曾分享这一技术在鱼群中的使用。个人在面试时也曾被问过这样的问题:“场景中存在大量使用相同动画的同类角色,可以怎样优化?” 这类 ...

Unity 中使用 Playable 实现简单的动画播放

博主头像 Unity 中使用 Playable 实现简单的动画播放 在 Unity 中,Animator 组件大概是每个初学者都会接触到的第一个动画组件,它提供可视化的方式处理各个动画的过渡连接,并利用自定义参数作为过渡条件。但当涉及的动画多起来时,这个结构会变得十分复杂,好在 Unity 有提供 Anima ...

UE4 GAS Buff 模块源码阅读

博主头像 写在前面 本文基于 UE4.26 编写,阅读前需要对 GAS 的 技能组件 ASC、属性 Attribute 以及 技能 GameplayAbility 有基本的了解。 本文的目标是用一篇文章把 UE GAS Buff 模块讲清楚。 Buff 功能 标记状态:Buff 可以携带并赋予所属 ASC 若 ...

便捷打包Instant Asset脚本

博主头像 使用说明 将脚本放在Assets/Editor目录下 在需要打包同一个table的资源要放在同一个文件夹下,在Project中选中要打table的文件夹,右键->Build->Instant Assets 脚本 using System.Collections; using System.Colle ...

Tuanjie InstantAsset

博主头像 InstantAsset InstantAsset 是一套全新的资产解决方案,旨在提升开发者的开发和运行时效率,简化资产管理流程,特点是支持资产免构建、导入即用、具有更细粒度的内存周期管理和更方便快捷的管理方式。当前仅支持在 Tuanjie 1.7.0及以上版本使用InstantAsset功能。 本 ...

英文看不懂,汉化Unity引擎API的注释

博主头像 如果你只想要直接实现效果,请直接跳至第三节 欢迎前往我的B站查看该内容视频:https://www.bilibili.com/video/BV1AT7izKEeJ/ 一. 实现效果 将原本为英文的注释代码汉化为中文 二. 原理 Unity的注释xml文件存放于 ...\Editor\Data\Man ...

实现C#泛型四则运算等特化操作

博主头像 有些情况下我们会对字段做泛型封装,使其支持OnChange、IsDirty等统一的功能扩展,例如: IObservable<float> hitPoint; 而有些字段有挂载修改器的需求(例如某属性挂载修改器让数值*1.2倍)修改器若使用lambda则对序列化不友好, 因此考虑自行封装四则运算供修改 ...

【光照】[PBR][几何遮蔽]实现方法对比

博主头像 摘要:文章介绍了Unity URP渲染管线中的几何遮蔽(G)计算流程,重点分析了几种主流几何遮蔽模型的特点和实现方案。URP采用Smith-Joint-Schlick-GGX模型,在物理准确性、视觉质量和性能之间取得平衡,既保证了与GGX法线分布的一致性,又通过优化技术(如预计算、数值稳定性处理)提... ...

【光照】[PBR][法线分布]为何不选Beckmann

博主头像 本文探讨了Beckmann分布函数在游戏渲染中的应用及其与GGX的对比。Beckmann是最早的微表面法线分布函数,基于高斯分布假设,具有物理准确性但计算复杂度较高。GGX因更符合真实材质反射特性、能量守恒良好、计算效率更高而成为行业标准,特别适合金属和粗糙表面表现。Unity URP选择GGX因其... ...

【光照】[PBR][法线分布]GGX实现方法对比

博主头像 GGX是Unity URP渲染管线中的核心法线分布函数,由Walter等人在2007年提出。相比传统分布函数,GGX具有长尾特性,能更真实地模拟材质高光衰减,同时保证能量守恒。URP通过BRDF.hlsl实现了GGX分布及其各向异性版本,支持从锐利高光到柔和散射的平滑过渡。虽然计算复杂度较高,但UR... ...

【光照】[PBR][镜面反射]实现方法解析

博主头像 本文深入解析了Unity URP中基于微表面理论的PBR渲染实现。微表面理论将宏观表面视为由无数微观几何细节组成的结构,通过Cook-Torrance BRDF方程精确模拟光线交互。文章详细介绍了三大核心组件:法线分布函数(NDF)使用GGX分布描述微观朝向,几何遮蔽函数模拟自阴影效应,菲涅尔方程处... ...

【光照】[PBR][漫反射]实现方法对比

博主头像 本文对比了Unity URP中四种主流漫反射模型:Lambert、Half-Lambert、Disney和Oren-Nayar。Lambert是经典模型,性能最好但能量不守恒;Half-Lambert增强暗部细节,适合卡通渲染;Disney模型物理准确但计算复杂,是URP默认方案;Oren-Naya... ...

【光照】[物理模型]中的[BRDF]是什么?

博主头像 本文深入解析了双向反射分布函数(BRDF)在游戏渲染中的应用。BRDF作为描述物体表面反射特性的核心数学模型,将反射分解为漫反射和镜面反射两部分,并通过微表面理论精确模拟光线行为。文章详细介绍了GGX/Trowbridge-Reitz等主流BRDF模型的数学实现,包括法线分布函数、几何遮蔽函数和菲涅... ...

【光照】Unity中的[物理模型]PBR

博主头像 本文深入解析了PBR(基于物理渲染)与BRDF(双向反射分布函数)的核心原理及在Unity URP中的应用。PBR通过物理可测量的材质属性(金属度/粗糙度)和微表面理论实现真实感渲染,其四大支柱包括材质参数系统、微表面理论、能量守恒和线性工作流。BRDF作为PBR的数学基础,通过GGX法线分布、菲涅... ...