跳至正文

专业

联机同步(一)基本概念

之前写弹幕AI的时候我们提到了神奇的AI数组,我曾经说过是因为它能更好的进行变量存储和联机同步。具体来说就是,AI数组的内容会在需要同步的时候与服务器端、客户端进行同步,确保在两个终端里面AI数组的值都一致。同时,TR内部也会同步弹幕的位置,速度等基础属性。在自动机的AI模式下,如果AI数组里面的值一致,我们就可以认为这个物体它在行为上基本是一致的。但是只同步ai值就足够吗?事情远没有那么简单。

根据NPC行为的不同,我们很可能需要用不同的手段去进行联机同步。此外,为了妥协正确性和流畅性,我们经常要进行取舍。而本系列教程将会讨论如何正确的进行联机同步,包括基础概念、游戏机制和实现方案。由于内容较多,本系列教程会分为很多个章节。本章我会介绍联机同步的基本概念以及背后的原理,同时还会介绍一部分TML提供的联机同步API。提醒一下,联机同步的代码其实不是很容易debug,因为你需要一个客户端和一个服务器端同时运行代码,错会出在哪一个终端上不好判断。而且有些时候甚至需要不止一个客户端来观察行为,所以这部分代码编写的时候难度是比较大的,需要仔细思考以及对原版联机模式的深入理解。

本章还是使用1.3的TML而不是1.4,如有差异请麻烦告知一下(懒)。

阅读更多 »联机同步(一)基本概念

Shader简介

前置知识:向量,三角函数,线性代数

题目名叫Shader简介,其实这也只是个简介而已,对于Shader在TR以外的用途我仍然知之甚少。所以本次教程我会教一下着色器在TR的基本使用方法,遗憾的是,由于XNA这方面的资料不全,所以可能会出现一些疏漏,请大家帮助指出。

阅读更多 »Shader简介