自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

燕良的博客

一个游戏程序员的自我修养

原创 《虚幻4引擎快速入门》视频教程

本想写一系列虚幻4引擎入门的博客,发现呢文字+图片的方式表达上还是有些不方便,于是开始录制这一系列视频教程,发布在CSDN学院,求围观,求好评。下面是课程的目录: Unreal Engine 4开发快速入门 项目代码和资源下载:https://github.com/neil3d/UnrealV...

2015-10-12 10:24:07 42529 17

原创 虚幻4中的C++单元测试
原力计划

在虚幻4项目开发中,利用 Automation 系统进行代码单元测试。

2020-07-09 16:33:18 852 1

原创 虚幻4与现代C++:使用TaskGraph实现Fork-Join模型
原力计划

Fork-Join是并行编程中常用的设计模式,这个博客用一个实例来演示通过虚幻4TaskGraph来实现这种模式。

2020-04-06 20:19:49 534 0

原创 虚幻4与现代C++:基于任务的并行编程与TaskGraph入门

基于任务的并行编程是现代C++的一个趋势,虚幻4中的TaskGraph也是这样一个方向。这个帖子就分享一下 TaskGraph 的基本用法。

2020-03-15 10:23:36 589 0

原创 虚幻4与现代C++:Lambda好用也有坑

Lambda可以让代码简化很多,可维护性也能提高很多,但是它也有一些小细节,不小心的话,可能程序Crash了还不知道是哪里的问题。

2020-03-01 11:38:33 1089 0

原创 深入Unreal蓝图开发:将异步操作封装为蓝图节点

引擎中提供两种蓝图异步节点的实现方式,这里我们主要介绍 Blueprint Async Action 的实现方式。

2020-02-16 14:57:57 759 0

原创 虚幻4与现代C++:转移语义和右值引用

虚幻引擎基于C++14标准开发,理解并运用好现代C++的语言特性对掌握Unreal C++就至关重要。转移语义是非常重要的,我们就从实用性的角度来理解一下这个概念。

2020-01-30 10:21:27 1088 1

原创 深入Unreal蓝图开发:理解蓝图技术架构

这篇博客主要是深入理解蓝图整个流程的的底层机制,包括节点编辑、编译、字节码解释执行。理解了这些,对前面几篇所讲的蓝图扩展,可以有一个更清晰的认识。

2019-11-24 03:22:22 2072 0

原创 深入Unreal蓝图开发:自定义蓝图节点(下)

前面两篇博客我们都是通过ExpandNode来实现蓝图节点的功能,这一篇来介绍另外一种重要的蓝图扩展方式,就是Node Handler。

2019-10-20 08:24:26 728 0

原创 虚幻4插件:导入GIF动画,作为贴图使用

新增了一个自定义的AnimatedTexture贴图资源类型,支持把GIF动画导入到虚幻4的项目中。AnimatedTexture支持Material、UMG,并具有完备的Playback API。

2019-10-10 12:08:50 2369 1

原创 深入Unreal蓝图开发:自定义蓝图节点(中)

通过派生class UK2Node和class SGraphNodeK2Base,为蓝图添加自定义节点,实现一个“动态添加输入Pin”的蓝图节点。

2019-09-06 07:32:38 2527 0

原创 深入Unreal蓝图开发:自定义蓝图节点(上)

通过派生class UK2Node,为蓝图添加自定义节点;这篇博客我们先实现一个最简单的自定义节点,下篇文章将完成“动态添加输入Pin”的蓝图节点。

2019-08-16 21:09:15 1955 0

原创 深入Unreal蓝图开发:实现蓝图模板函数

使用UFunction CustomThunk函数方式,实现蓝图模板功能节点,用来处理任意类型的数组,并探索实现细节背后的蓝图机制。

2019-04-27 10:59:52 2824 6

原创 可视化的OpenGL简史

使用隔壁组的数据可视化技术为OpenGL做了一个版本历史气泡图,并一起回顾一下OpenGL一路走来的历程,分享一下我与OpenGL的故事。

2019-02-24 11:25:02 1096 1

原创 猪年春节知识大礼包

在这给你拜年啦!送上精心准备的知识大礼包,包含很多很精彩的技术资料。

2019-02-02 17:41:55 604 0

原创 ECS 与面向数据的设计

《守望先锋》使用了 ECS 的架构方式,但是为什么 ECS 会成为一个更好的架构呢?这篇文章就来讲一下 ECS 背后的‘面向数据的设计(Data-Oriented Design)’,你将会明白这个 Why。进而,你将发现面向数据的设计是多么的重要!

2018-12-01 09:51:25 8241 2

原创 理解PBR:从原理到实现(下)

前面的文章我们讲了虚幻4中的反射率方程,及其各个部分的公式,这篇文章我们就来讲明白这个方程是如何在实时渲染中求解的!

2018-11-15 23:10:27 7428 8

原创 理解PBR:从原理到实现(上)

以反射率方程为线索,理解 PBR 技术集合中的各个技术点,进而理解整个 PBR 的原理,以及虚幻4引擎中的实现方案。上半部分,主要是理解其原理。

2018-11-06 11:05:29 9264 2

原创 DXR 实时光线追踪技术概览

DirectX Raytracing 渲染管线介绍。

2018-09-19 08:47:13 5315 1

原创 SIGGRAPH 2018 见闻录

亲历 SIGGRAPH 2018 大会的体验 & 经验总结。

2018-09-01 18:14:55 3546 0

原创 Unity3D插件:导出 glTF 2.0 资源文件

最近不是一直在和 glTF 搏斗吗,现在很多引擎都已经支持了 glTF 2.0,特别是在 WebGL 领域,包括 Three.js 等流行的引擎都已经支持了 glTF 2.0 格式。 怎么得到 glTF 2.0 格式的模型、动画或者场景呢?目前有了一些工具完成格式转换,例如 FBX 转换成 gl...

2018-06-04 21:03:16 6749 1

原创 3D引擎数据结构与glTF(4): BIN

回顾 glTF 文件组织 glTF 是一种面向实时渲染的内容标准格式,类似于顶点缓冲、Index 缓冲这些数据它会以一个二进制文件的形式保存,这样,应用程序加载 glTF 内容时就可以把这些 Buffer 直接传递到图形API,而不需要再对它们进行解析或者转换,从而达到高效的目的。前面几章我们主...

2018-04-11 21:10:39 3464 4

原创 《炉石传说》架构设计赏析(6):卡牌 & 技能数据的运行时组织

前一篇文章我们看到了《炉石传说》的核心卡牌数据的存储,今天我们继续探索卡牌&技能。主要的类通过之前的分析,卡牌&技能涉及到几个类体系:Entity,Actor,Card,Spell,令人十分困惑,特别是前两者。在这里先略带武断的说一下这几个类的基本定位:Entity...

2018-04-05 17:42:41 8960 3

原创 《炉石传说》架构设计赏析(5):卡牌 & 技能的静态数据组织

经过前面几次的尝试,我们对炉石的代码已经不陌生了。除了网络机制还没有了解以外,本机的逻辑已经比较熟悉了。接下来继续向暴雪最NB的技能系统进发,我们的目标是:分析技能的静态数据描述;分析技能的运行时数据、逻辑组织;这篇笔记主要记录对其分析静态数据。静态数据组织卡牌数据卡牌的基本数据对于的AssetF...

2018-04-05 17:42:22 10404 4

原创 《炉石传说》架构设计赏析(4):Asset管理

欢迎转载,请注明作者【燕良@游戏开发】及原文地址:http://blog.csdn.net/neil3d/article/details/39580197另外,欢迎大家来我的QQ群交流各种游戏引擎相关的技术:游戏引擎能吃吗(264656505)话说,经过这段时间的学习和摸索,对于Unity3D的开...

2018-04-05 17:42:05 9927 2

原创 《炉石传说》架构设计赏析(3):Gameplay初探

经过前面两篇文章的分析,我们对炉石的代码已经不陌生了,接下来我初步尝试分析其游戏逻辑代码。欢迎转载,请注明作者【燕良@游戏开发】及原文地址:http://blog.csdn.net/neil3d/article/details/39453291经过前面的分析,我们已经找到了两个关键的类Gamepl...

2018-04-05 17:41:48 12166 5

原创 《炉石传说》架构设计赏析(2):Scene管理

欢迎来的我的酒馆,快来火炉旁暖暖你的靴子。哈哈,我们继续欣赏炉石的代码。欢迎转载,请注明作者【燕良@游戏开发】及原文地址:http://blog.csdn.net/neil3d/article/details/39231541上篇文章我们分析到SceneMgr处理了Scene的加载工作,今天我们主...

2018-04-05 17:41:32 17975 5

原创 《炉石传说》架构设计赏析(1):游戏启动流程

前些天看新闻,Unity Awards两项大奖颁给了暴雪的《炉石传说》,这真是对Unity一个再好不过的宣传了——你看,暴雪都开始用Unity了。大家都知道,目前Unity发布的游戏大多都没有对程序集进行混淆、加密,所以作为一个炉石的玩家&Unity的初学者,自然不能错过这个机会。...

2018-04-05 17:41:04 41759 16

原创 《炉石传说》架构设计赏析(7):使用Google.ProtocolBuffers处理网络消息

这段时间琢磨了一下Unity3D网络游戏开发中的网络消息处理。网络游戏的服务端一般都是自主开发的,所以对应的网络消息处理也要自己开发。客户端/服务端之间的消息传到目前使用JSON和Google.ProtocolBuffers是两种常见的做法。打开炉石的代码看了看它的处理方式,感觉代码写的还是很好的...

2018-04-05 17:40:45 10533 4

原创 3D引擎数据结构与glTF(3): Mesh

在上一篇文章中我们介绍了场景中对象之间的层次关系,接下来我们就探讨单个物体在三维空间中的表示。 要渲染三维空间中的物体,首先就要在三维空间中表示物体的造型。目前图形学中最常用的方法叫做“边界表示法( Boundary Representation )”,即用一组多边形或者曲面来定义物体的边界,它...

2018-01-23 22:45:47 4010 1

原创 3D引擎数据结构与glTF(2): Scene Graph

在这篇文章中我们将介绍 Scene Graph 的概念,以及在 glTF 标准中是如何定义 Scene Graph 数据的。

2017-12-23 19:31:28 3380 0

原创 3D引擎数据结构与glTF(1):简介

glTF是Khronos Group制定的一套3D内容的格式标准,包括场景、Mesh、动画、材质等方面。通过学习它,可以对3D引擎中的核心数据结构有一个基础的的理解,对于深入掌握3D引擎技术有很大的帮助。

2017-12-09 16:35:40 10147 0

原创 Steam VR - The Lab Renderer学习笔记

Steam的The Lab Renderer主要实现了哪些特性?从代码的层面看,是如何实现的?

2016-10-16 10:38:18 9184 1

原创 MDCC2016 VR峰会演讲资料-虚幻4渲染系统架构解析

我在MDCC 2016 VR开发者分会上所在技术分享的PPT提供给大家下载,并说明一下为什么我认为要深入 学习引擎架构。

2016-09-27 11:08:51 2995 1

原创 D3D9 Shader实例教程

2008年写的一组Shader编程教程代码,基于D3D9 API,因为有同学问起,所以找出来,重新发布一下。

2016-09-07 19:49:49 4722 1

原创 Unreal Cookbook:神奇的Spline Mesh

使用Spline Mesh快速建立一个管道。:)

2016-08-07 11:40:10 6571 1

原创 Unreal Cookbook:数据驱动

在虚幻4引擎中使用数据驱动的两种方式:CSV数据表格和DataAsset

2016-07-14 13:25:05 7881 1

原创 《虚幻4 VR开发指南》视频教程

本课程通过项目实例编程的方式,讲解主流VR平台上的游戏开发,包括三星GearVR,Google Daydream,SteamVR(HTC Vive)。 视频地址:http://edu.csdn.net/course/

2016-07-11 16:04:08 9362 5

原创 虚幻4 VR开发指南-房燕良-专题视频课程

本课程通过项目实例编程的方式,讲解主流VR平台上的游戏开发,包括三星GearVR,Google Daydream,SteamVR(HTC Vive)。

2016-07-11 09:14:14 354 0

原创 “VR技术开放日”演讲资料汇总

“VR技术开放日”演讲资料汇总

2016-06-25 21:17:46 4309 0

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