自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

燕良的博客

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

  • 博客(73)
  • 资源 (5)
  • 收藏
  • 关注

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

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

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

原创 虚幻4: 蓝图入门与进阶

中国传媒大学动画学院虚幻4课程第七周+第八周:蓝图入门与进阶,课程录播+课件+参考资料。

2021-04-26 16:31:29 2526 1

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

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

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

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

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

2020-04-06 20:19:49 2479

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

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

2020-03-15 10:23:36 3141

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

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

2020-03-01 11:38:33 3322

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

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

2020-02-16 14:57:57 4256 2

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

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

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

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

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

2019-11-24 03:22:22 9423

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

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

2019-10-20 08:24:26 3275

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

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

2019-10-10 12:08:50 9205 11

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

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

2019-09-06 07:32:38 6897

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

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

2019-08-16 21:09:15 7540 2

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

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

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

原创 可视化的OpenGL简史

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

2019-02-24 11:25:02 3306 2

原创 猪年春节知识大礼包

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

2019-02-02 17:41:55 1897

原创 ECS 与面向数据的设计

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

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

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

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

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

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

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

2018-11-06 11:05:29 15274 4

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

DirectX Raytracing 渲染管线介绍。

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

原创 SIGGRAPH 2018 见闻录

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

2018-09-01 18:14:55 4643

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

最近不是一直在和 glTF 搏斗吗,现在很多引擎都已经支持了 glTF 2.0,特别是在 WebGL 领域,包括 Three.js 等流行的引擎都已经支持了 glTF 2.0 格式。怎么得到 glTF 2.0 格式的模型、动画或者场景呢?目前有了一些工具完成格式转换,例如 FBX 转换成 glTF 2.0 等。我偏爱的一种方式是把模型先导入到 Unity 中,预览 或者 进行场景布局,然后再导...

2018-06-04 21:03:16 11773 2

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

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

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

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

前一篇文章我们看到了《炉石传说》的核心卡牌数据的存储,今天我们继续探索卡牌&技能。主要的类通过之前的分析,卡牌&技能涉及到几个类体系:Entity,Actor,Card,Spell,令人十分困惑,特别是前两者。在这里先略带武断的说一下这几个类的基本定位:Entity主要用来做网络数据同步用的;Actor主要处理客户端的渲染对象的控制,作为Component挂载在资源对象上;Spel...

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

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

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

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

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

欢迎转载,请注明作者【燕良@游戏开发】及原文地址:http://blog.csdn.net/neil3d/article/details/39580197另外,欢迎大家来我的QQ群交流各种游戏引擎相关的技术:游戏引擎能吃吗(264656505)话说,经过这段时间的学习和摸索,对于Unity3D的开发思路已经基本清晰了。唯独还剩下一个AssetBundle机制还没有搞透,这个涉及到前期项目的资源规划...

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

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

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

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

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

欢迎来的我的酒馆,快来火炉旁暖暖你的靴子。哈哈,我们继续欣赏炉石的代码。欢迎转载,请注明作者【燕良@游戏开发】及原文地址:http://blog.csdn.net/neil3d/article/details/39231541上篇文章我们分析到SceneMgr处理了Scene的加载工作,今天我们主要分析一下炉石这款游戏中一共有哪些Scene,他们各自负责什么,以及它内部的逻辑、UI的处理方式。在正...

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

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

前些天看新闻,Unity Awards两项大奖颁给了暴雪的《炉石传说》,这真是对Unity一个再好不过的宣传了——你看,暴雪都开始用Unity了。大家都知道,目前Unity发布的游戏大多都没有对程序集进行混淆、加密,所以作为一个炉石的玩家&Unity的初学者,自然不能错过这个机会。让我们好好看一下暴雪的代码吧。炉石传说的游戏内容的非常丰富多彩,所以我花了一些时间分析了其程序集,将一些设计思...

2018-04-05 17:41:04 44067 17

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

这段时间琢磨了一下Unity3D网络游戏开发中的网络消息处理。网络游戏的服务端一般都是自主开发的,所以对应的网络消息处理也要自己开发。客户端/服务端之间的消息传到目前使用JSON和Google.ProtocolBuffers是两种常见的做法。打开炉石的代码看了看它的处理方式,感觉代码写的还是很好的,把它的思路分析一下,与大家分享。整体机制描述我们想要达到的目标大概是这样的:有N个网络消息,每个消息...

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

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

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

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

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

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

2017-12-23 19:31:28 4094

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

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

2017-12-09 16:35:40 11768

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

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

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

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

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

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

原创 D3D9 Shader实例教程

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

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

原创 Unreal Cookbook:神奇的Spline Mesh

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

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

原创 Unreal Cookbook:数据驱动

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

2016-07-14 13:25:05 8346 2

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

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

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

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

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

2016-07-11 09:14:14 1105

Unity glTF 2.0 Exporter(Unity导出glTF插件)

将Unity场景中的模型对象,导出为 glTF 2.0 标准格式的文件,可供 Three.js 等引擎调用。

2018-06-02

excel2json v1.1.0

把Excel表单转换成Json对象,并保存到一个文本文件中。支持将表中内容转换成Array,或者以第一列为ID的字典对象;支持GUI模式和命令行模式。

2017-12-15

MDCC2016-虚幻4渲染系统架构解析-房燕良

讲述虚幻4引擎的渲染系统架构,以及VR渲染的实现。

2016-09-27

excel2json

将Excel表格转换成Json文件,这是EXE,源代码请见:https://github.com/neil3d/excel2json

2015-08-10

在Unity中整合LUA的DEMO

在Unity中实现一个LuaComponent来整合LUA脚本逻辑。

2015-04-11

空空如也

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

TA关注的人

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