FB引擎系列-之CloudSand

CloudSand,欲打破之前的集中版本制作的模式,

http://code.taobao.org/p/cloudsand
包含服务器端代码(php)
和客户端代码(unity)

?

EasyDown的时候,是采用一种经典的模式
准备原始资源-》打包制作版本库-》上传http服务器->客户端下载

?

CloudSand不采用这个模式
任何人(主要指的是开发者)可以随时随意上传文件。

有人很不理解我为何执着于此,经典模式有什么不好,新模式有什么特别。

这里一一解答

  1. 经典模式有什么不好

    第一大罪状,文件名和内容不固定,集中化版本制作,一次性产生大量变更。对CDN不友好,需要与CDN同步。

    第二大罪状,不能提供玩家上传数据的支持,玩家上传数据需要另写系统管理。

    第三大罪状,集中化版本制作太麻烦,很难在一个逻辑服务器上提供多版本,同时供开发、测试、发布使用。

  2. 新模式如何处理这些问题

    1. CloudSand用Sha1直接作为文件名,文件名与内容固定不变,可以直接使用CDN透明加速模式,无需同步与维护。
    2. CloudSand用Sha1直接作为文件名,不怕覆盖,可以开放多点上传,玩家上传也可以放在这里面。
    3. CloudSand采用分布化版本库,每个用户可以标记他自己的版本库
      比如说我们同时创建"开发""测试""发布" 三个用户。
      客户端根据需要选择同步一个用户的版本库。
      而且不限制用户,理论上每个玩家都可以拥有自己的版本库

CloudSand怎么使用,首先你得把服务器提供的Php文件架好。

然后就去研究客户端源码吧,有一个test目录,有测试程序。

这个项目,恕不提供技术支持

时间: 2024-11-13 09:50:03

FB引擎系列-之CloudSand的相关文章

Chrome V8引擎系列随笔 (1):Math.Random()函数概览

先让大家来看一幅图,这幅图是V8引擎4.7版本和4.9版本Math.Random()函数的值的分布图,我可以这么理解 .从下图中,也许你会认为这是个二维码?其实这幅图告诉我们一个道理,第二张图的点的分布更加的密集,也就是说Math.Random()函数能表示的数字更多了,大家在.NET中肯定也用过GUID吧,至于GUID为什么会永不重复,大家有没有想过呢? 还是让我们先来看看官方怎么解释Math.Random()吧,它是返回了一个正数,这个正数介于0~1之间,以伪随机的方式在这个范围内波动.Ma

3D游戏引擎系列九

笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,国家专利发明人;已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D实战核心技术详解>电子工业出版社等. CSDN课程视频网址:http://edu.csdn.net/lecturer/144 Phong 着色法是结合了多边形物体表面反射光的亮度,并以特定位置的表面法线作为像素参考值,以插值方式来估计其周围位置像素的色值.与Gouraud着色法比较,Phong着色法的效

Unity3D热更新全书-重头再来

之前写了Unity3D热更新全书系列Blog 提出了下载.加载.脚本三个方面的开源类库 下载方面有EasyDown加载方面有GameObjParser脚本方面有C#Light另外有一个没有独立成库,但是到处都用的Myjson. 2015,重头思考这些事情,有了不一样的感悟,于是也有了新的规划 1.首先了C#Light的语法解释问题变得臃肿低效,重头开始了L#项目.目前L#项目已经进入Beta阶段,完全可以全面替换C#Light.MyJson也独立成库2.下载方面,Easydown是基于经典的文件

一款小游戏引擎设计

前言 本文为后续引擎提炼定下了一个大致的方向,没有给出完整的引擎架构.这就够了!让我们在具体开发过程中再来从底向上设计吧! 本文目的 1.进行引擎提炼的前期规划,明确引擎提炼的整体流程和引擎的非功能性需求.2.从炸弹人领域模型中提炼出精简的领域模型,作为炸弹人的参考模型.3.从炸弹人参考模型中提炼出抽象的领域模型,作为引擎的初步领域模型. 本文主要内容 前期规划 回顾炸弹人设计 初步设计引擎 前期规划 开发流程 引擎提炼的整个流程如下图所示: 说明 • 回顾炸弹人游戏介绍炸弹人游戏的基本情况,回

20款最受欢迎的HTML5游戏引擎收集

在“最火HTML5 JavaScript游戏引擎”系列文章国外篇(一)中,我们盘点了当下备受开发者推崇的非国产HTML5和JavaScript游戏引擎.在各种2D小游戏逆袭的今天,用HTML5和JavaScript进行游戏开发成为了一大潮流,而HTML5和JavaScript游戏引擎也逐渐走向了成熟,在追求原生体验的同时,也深逐精致细腻狂炫酷拽.在本文中,我们将继续介绍来自国外,非常受开发者欢迎的HTML5和JavaScript游戏引擎. 1. melonJS melonJS这款轻量级的开源免费

Unity3D骨骼动画的分解(CleanData.Ani详解)

CleanData是什么 CleanData以前没有特定的名字,(在easydown这个开源项目中,作为一个GameObjParser模块存在).在某三国项目中,我们使用GameObjParser将NGUI 的预设保存为自定义格式(替代了assetbundle方案),以实现不论任何平台都可以使用同一份资源.在easydown的演示中GameObjParser也将一个简单的模型场景保存为自定义格式并加载.so.CleanData是想去做AssetBundle的工作,但是格式是我们自定义的,细节更透

iOS开发人员必看的精品资料(100个)

目录下载地址:http://down.51cto.com/data/416672 附件预览如下: iOS游戏开发之Unity3D引擎系列 http://down.51cto.com/zt/399 iPadian软件:让你在Windows下真实地体验iPad http://down.51cto.com/data/274307 <iPhone开发秘籍(第2版)>中文版电子书 http://down.51cto.com/data/259386 iPhone开发基础教程+源码 pdf http://d

File中操作路径的API(转)

这几天一直在搞Java,模板引擎系列和程序猿执业修养系列都暂停了,在Java上忙的不亦乐乎!由于对Java还不太熟悉,经历了各种纠结终于完成了任务.以下是关于Java获取当前目录的方法的备忘录. 原文地址:http://www.cnblogs.com/diyunpeng/archive/2011/06/06/2073567.html 1.利用System.getProperty()函数获取当前路径:System.out.println(System.getProperty("user.dir&q

【热门收藏】iOS开发人员必看的精品资料(100个)——下载目录

iPhone.iPad产品风靡全球,巨大的用户群刺激着iOS软件开发需求,然而国内人才缺口很大,正处于供不应求的状态,ios开发前景大好.我们整理了51CTO下载中心100份热门的ios开发资料,做了一个地址收藏目录,方便大家选择性下载.里边均是好资料,相信对学习ios开发有所帮助.目录下载地址:http://down.51cto.com/data/416672 附件预览如下: iOS游戏开发之Unity3D引擎系列 http://down.51cto.com/zt/399 iPadian软件: