create account

【白皮书略读笔记】如何构成 Decentraland? by ankar

View this thread on: hive.blogpeakd.comecency.com
· @ankar · (edited)
$0.06
【白皮书略读笔记】如何构成 Decentraland?
![大概是 2017 年最酷的 ICO](https://i.imgur.com/tnCzltI.jpg)

> Decentraland 是架构于 Ethereum 区块链上的虚拟世界。Decentraland 的土地(Land)是纪录在区块链上的虚拟资产,所有权可以像真实世界中一样转移。土地是数量固定的有限资源,每ㄧ笔土地都有固定的座标(x, y)。土地拥有者可以任意创造土地上呈现的内容,像是静态的 3D 场景或是一间虚拟电商甚至一个可和使用者互动的游戏(请发挥想像力)。**本篇希望根据[白皮书](https://decentraland.org/whitepaper.pdf),了解构成 Decentraland 主要的技术架构。**

![现在买三环还来得及](https://i.imgur.com/rDTlz5v.png)

本篇专注在技术上如何构成 Decentraland。想从其他面向了解 Decentraland 可以先参考[官网](https://decentraland.org/),也可以听听创办人怎么说:

- [对谈 Project Lead of Decentraland - Ari Meilich](https://mp.weixin.qq.com/s/ke-j4UBXrj1TO-EPXa_IBg)
- [SF WebVR/AR Monthly: Esteban Ordano - Decentraland](https://www.youtube.com/watch?v=esjFLqNx4e8)

## 在 Decentraland 之上

Decentraland 的架构包含三层:

- Consensus layer(共识层):管理土地(所有权、内容的连结等)和 MANA 代币。
- Land content layer(内容层):透过分布式的档案系统储存内容。
- Real-time layer(实时呈现层):让使用者能实际体验这个虚拟世界(所有土地上的内容),并与其他使用者彼此互动。

![](https://i.imgur.com/KOlfo0g.png
)

### Consensus layer(共识层)

#### 土地(LAND)

Decentraland 使用 Ethereum 智能合约来管理土地,将土地的所有权和交易历史等记录在难以窜改的区块链上。在他们撰写的 [LAND 智能合约](https://github.com/decentraland/land) 中,定义 **土地(Land)** 为一种虚拟资产,且是不可替代的(non-fungible)。都有唯一的(x, y)座标、一个拥有者和一个参考(可以是一个 IPFS Hash 或是一个 HTTPS 网址等)连结到描述内容的文件。Decentraland Client(目前还没实作出来) 会连结这个 LAND 智能合约,取得土地最新的参考,并从参考下载描述土地上内容的文件,再将内容呈现给使用者。

另外实际上 LAND 智能合约分成两部分:[LANDProxy](https://etherscan.io/address/0xf87e31492faf9a91b02ee0deaad50d51d56d5d4d#code) 和 [LANDRegistry](https://etherscan.io/address/0x7e06a9512086bc44c51c07c2bf0af338420c2a13#code),目的是让实作管理土地的 LANDRegistry 合约可以更新。使用者透过 LANDProxy 调用 LANDRegistry,当要更新 LANDRegistry 时只需重新部署并取得新的合约地址,再更新 LANDProxy 中纪录的合约地址就可以了。

#### MANA

Decentraland 另外使用 Ethereum 智能合约发行一种代币叫 **MANA**。MANA 是符合 ERC20 的代币,用来购买土地。起初可以透过花掉 1000 MANA 取得一块土地(MANA 会被销毁,这个角度来看购买 MANA 就像预购土地)。另外[ Genesis City 的土地在 2017 年底时透过拍卖出售](https://wiki.decentraland.org/index.php?title=The_Genesis_City_Auction)。关于购买土地详细请看 [wiki](https://wiki.decentraland.org/index.php?title=Buying_Land)。

### Land content layer(内容层)

每块土地都有对应的文件描述土地的内容,这份文件可用 IPFS(Inter-Planetary File System) 来储存。这让 Decentraland 的运行不需要中心化的 server,避免 single-point of faliure,且可以做到 censorship-resistance。至于 IPFS 对提供储存空间、频宽的人缺发奖励机制,未来可望用 Filecoin 这类 protocol 解决。

实际上一块土地实际需要多份文件才能描述其完整的内容,这些内容包括:

- 物件内容:描述土地上物件的 3D 模型、纹理或一切渲染所需要的资讯。目前官方正在开发一个[基于 A-Frame 的土地编辑器](https://blog.decentraland.org/why-we-use-a-frame-fc5c1d4c3e90)。
- 脚本:描述的土地上的物件如何放置、移动,还有每个物件和使用者互动的行为。这让在 Decentraland 的世界中制作动画或是游戏成为可能。这个脚本语言也正在开发中。
- P2P 互动:这部分官方描述比较模糊,应该还没定案。目的是希望使用者可以彼此互动,像是语音、讯息甚至支付的功能。可能就要描述由哪个 server 提供服务,如何使用等。

### Real-time layer(实时呈现层)

除了用各种 3D 渲染技术呈现内容(主要透过虚拟实境装置),还希望使用者之间可以彼此互动透过讯息或语音等。比较可行的方式是土地拥有者架设 server,让使用者透过 server 进行互动。但在 Decentraland 中使用者需要透过 centralized 的 server 才能互动,这个世界好像就不这么美丽了,所以白皮书中计划未来会开发一个 P2P 沟通系统。此外,还要开发在 Decentraland 中的支付网路,提供快速、低手续费的支付方式。用来购买 P2P 服务或奖励内容提供者。虽然已经有 MANA 这个代币,但作为一个 ERC20 代币,以目前 Ethereum 区块链网路的情况用做支付可能会又慢又贵([以太坊区块链被猫咪堵住](https://cn.bitcoin.com/archives/5678))。

## 目前与未来发展

![](https://i.imgur.com/HtbJ5RU.png)

Decentraland 在 2017 年 8 月才 ICO 并发行 MANA 的代币。至今与社群共同完成 Decentraland 中各街区的规划、并在部署 Land 智能合约后开放使用者取得土地所有权。整个项目还在早期,根据[官网](https://decentraland.org/)的 Roadmap,目前正进入开发阶段中的 “Iron Age“,包括要释出基于 A-Frame 的土地编辑器和脚本系统,让土地拥有者可以开始创造土地上的内容。脚本系统所能提供的功能和创造出来的使用体验,会是影响 Decentraland 发展的重要因素。目前也正在开发去中心化的[土地交易所](https://github.com/decentraland/marketplace)。未来的挑战还有快速、低手续费的支付网路和 P2P 沟通系统等。期待 Decentraland 未来的发展。

## 参考资料

- [Decentraland Whitepaper](https://decentraland.org/whitepaper.pdf)
- [Decentraland Wiki](https://wiki.decentraland.org/index.php?title=Main_Page)
- [Decentraland Blog](https://blog.decentraland.org/)
👍  , , , ,
properties (23)
authorankar
permlinkdecentraland
categorycn
json_metadata{"tags":["cn","decentraland","blockchain","ethereum","vr"],"image":["https://i.imgur.com/tnCzltI.jpg","https://i.imgur.com/rDTlz5v.png","https://i.imgur.com/KOlfo0g.png","https://i.imgur.com/HtbJ5RU.png"],"links":["https://decentraland.org/whitepaper.pdf","https://decentraland.org/","https://mp.weixin.qq.com/s/ke-j4UBXrj1TO-EPXa_IBg","https://www.youtube.com/watch?v=esjFLqNx4e8","https://github.com/decentraland/land","https://etherscan.io/address/0xf87e31492faf9a91b02ee0deaad50d51d56d5d4d#code","https://etherscan.io/address/0x7e06a9512086bc44c51c07c2bf0af338420c2a13#code","https://wiki.decentraland.org/index.php?title=The_Genesis_City_Auction","https://wiki.decentraland.org/index.php?title=Buying_Land","https://blog.decentraland.org/why-we-use-a-frame-fc5c1d4c3e90","https://cn.bitcoin.com/archives/5678","https://github.com/decentraland/marketplace","https://wiki.decentraland.org/index.php?title=Main_Page","https://blog.decentraland.org/"],"app":"steemit/0.1","format":"markdown"}
created2018-01-24 02:47:42
last_update2018-01-24 02:54:42
depth0
children0
last_payout2018-01-31 02:47:42
cashout_time1969-12-31 23:59:59
total_payout_value0.056 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length3,569
author_reputation130,030,985,850
root_title"【白皮书略读笔记】如何构成 Decentraland?"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id31,803,592
net_rshares5,859,212,153
author_curate_reward""
vote details (5)