可视化的OpenGL简史


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

ECS 与面向数据的设计


《守望先锋》使用了 ECS 的架构方式,但是为什么 ECS 会成为一个更好的架构呢?这篇文章就来讲一下 EC...

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

以反射率方程为线索,理解 PBR 技术集合中的各个技术点,进而理解整个 PBR 的原理,以及虚幻4引擎中的实...

DirectX Raytracing 渲染管线介绍。

SIGGRAPH 2018 见闻录


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

针对顶点缓冲、Index缓冲等数据,glTF 提供一个高效的二进制存储方式。

渲染3D图形需要模型,这篇文章我们就聊一下处理模型的方式,以及glTF中如何定义Mesh数据的。

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

glTF是Khronos Group制定的一套3D内容的格式标准,包括场景、Mesh、动画、材质等方面。通过...

2016年9月24日我在MDCC 2016 VR 峰会上我做了一个技术分享,这里是这次分享的技术资料

在2016年6月参加了CSDN的VR技术开放日活动,分享了开发VR小游戏的教程。这篇文章是当时技术分享后所写...

虚幻4视频教程


在2015年,我与C...

Unreal Cook Book


虚幻4的一些常用功能、技巧的例子。

在Unity3D中实现一个Lua组件,用来整合Lua上层逻辑代码。

炉石使用Google.ProtocolBuffers来处理网络消息,这里我们就分析一下消息打包、解包等代码是...

游戏程序员的自我修养

探讨一下如何在Legacy动画系统之上附加Root Motion功能,其实很简单。

接着上一篇文章,继续分析炉石的卡牌和技能。

分析《炉石传说》的卡牌、技能的静态数据组织。

分析《炉石传说》的AssetBundle的管理机制。

经过前面两篇文章的分析,我们对炉石的代码已经不陌生了,接下来我初步尝试分析其游戏逻辑代码。

分析一下炉石这款游戏中一共有哪些Scene,他们各自负责什么,以及它内部的逻辑、UI的处理方式。

分析《炉石传说》游戏的启动流程,这中间就涉及到了游戏基础数据的管理&初始化,各种管理器级别的类,以及...

学习Unity3D引擎,除了官方的手册以外,其他人的经验也是非常有益的。偶尔看到老外这篇文章,觉得还不错,于...

2009年开始,我在之前《功夫Online》的引擎经验之上结合对Unreal Engine 3的理解,开始构...

通过本文,你可以理解 Shadow Mapping 算法原理,已经如何编程实现它。

游戏程序员的自我修养

D 语言游戏编程入门


曾经一度研究过D语言,这是当时写的一篇介绍D语言如何进行OpenGL开发的文章。

游戏程序员的自我修养

D 语言简介


曾经一度研究过D语言,这是当时写的一篇介绍D语言的文章。

《功夫Online》是我在《仙剑3》之后的一个MMORPG项目,引擎是从头开发的;经历了前期半年的快速搭建架...

游戏程序员的自我修养

D3D9 Shader实例教程


2007年上半年写的一系列基于D3D9 API的Shader开发教程,包括从基本的光照计算,到延迟渲染等。<...

游戏程序员的自我修养

这是在《功夫Online》开发进入最困难阶段的时候,结合《仙剑3》项目的运作,对于游戏开发项目规划做的一个总...

游戏程序员的自我修养

2006年第一次总结关于游戏程序员的知识体系的博文

游戏程序员的自我修养

总结在大宇软星工作期间对可重用代码的一点领悟

游戏程序员的自我修养

我的第一份工作是开发图形化的MUD,这是当时工作的一个总结。顺便说一下,当时的产品叫做