【WEB前端2024】开源智体世界:乔布斯3D纪念馆-第18课-购买头榜解密文件锁

ops/2024/10/19 9:32:51/

【WEB前端2024】开源智体世界:乔布斯3D纪念馆-第18课-购买头榜解密文件锁

使用dtns.network德塔世界(开源的智体世界引擎),策划和设计《乔布斯超大型的开源3D纪念馆》的系列教程。dtns.network是一款主要由JavaScript编写的智体世界引擎(内嵌了three.js编辑器的定制版-支持以第一视角游览3D场馆),可以在浏览器和node.js、deno、electron上运行,它是一个跨平台的软件,支持多个操作系统使用!

下面分为几步介绍,如何基于dtns.network智体世界引擎如何实现乔布斯3D纪念馆的碟状总部的展览馆摆件的摆件跳转须购买头榜才能访问《乔布斯传》的文件的交互效果。

该购买头榜可打开《乔布斯传》的功能设置,使用了file-lock文件锁功能。下面我们会先介绍如何使用文件锁(设置待购买头榜的文件锁,购买头榜后会解锁文件内容——如不购买,打不开加密的文件——无解密密钥——AES256密钥加密)。

第一步:打开智体IB,输入cd跳转我的文件夹

1.png

第二步:新建文件夹《须付费的乔布斯传》

2.png

点击右上角的新建,进入【新建】文件夹功能页面如下图所示:

3.png

将文件夹名设置为:须付费的《乔布斯传》后,点击右上角的【确认】按钮,新建文件夹成功(如下图所示)

4.png

第三步:点击“须付费的《乔布斯传》”文件夹,进入文件夹后点右上角的【添加】文件

5.png

第四步:点击右上角的【添加】文件功能,进入添加文件功能页面,上传文件,并设置文件锁

6.png

如上图所示,将文件锁的开关打开。而后点击【确认】,添加文件成功。

第五步:将“须付费的《乔布斯传》”文件夹,分享至头榜

7.png
注:点击右上角的【分享】按钮,可以实现将整个文件夹分享至头榜。

第六步:返回头榜页面,点击右上角的+号键,进入发布头榜页面,点击下面的【我的稿箱】

9.png

因为分享文件夹,未直接推送头榜,故我们找到【我的稿箱】点击它,查看我发布过的头榜列表。

第七步:找到刚分享的“须付费的《乔布斯传》”文件夹分享头榜内容

10.png
点击右上角的…

第八步:复制整个头榜文本内容

11.png
注:务必一字不落地复制整个头榜文本内容。

第九步:返回头榜页面,点击右上角的+号,重新进入【发布头榜】页面,粘贴刚才复制的头榜文本内容,并将新头榜定价为1$

12.png
点击右上角的【确认】按钮,成功发布至头榜。

第十步,找到刚发布的定价1$的头榜

13.png

注:进入头榜编辑器的目标是复制头榜id(xmsgid),以便在3D纪念馆中使用ib3.pay购买头榜支付购买该头榜(在此之前将【文件锁】设置为“该头榜可查看此文件”)。

第十一步:点击右上角的…进入头榜编辑器,复制头榜ID(xmsgid)

14.png

注:一定要复制的是xmsgid属性值,对应msg_xmsgid

第十二步:返回“须付费的《乔布斯传》”,将《乔布斯传》的文件锁设置头榜id(刚复制的)

15.png

点击右上角编辑,可看到文件锁设置功能(如下图所示)

16.png

点击【加锁】操作,进入【文件锁】功能页面如下图

17.png

将头榜权限设置为刚才复制的头榜ID(xmsgid),如上图所示。设置完成后,点击右上角【确认】按钮,修改成功。

返回文件夹,点击《乔布斯传》文件的右侧菜单项【信息】,可复制文件ID(以便跳转加了头榜付费可见功能的此文件)

18.png

注:使用ctrl+C复制成功。

3d3D_92">第十三步:找到xverse应用,点击它,进入飞碟形的乔布斯3d纪念馆的3D模型游览

19.png

第十四步:点击右上角…后,进入编辑xverse应用页面

20.png

第十五步:编辑xverse源码,进入3D编辑器

21.png

点击《乔布斯传》的3D摆件,滚动右侧的属性面板至【脚本】

第十六步:点击摆件,在右侧属性的下方【脚本】点击【编辑】poplang智体编程脚本

22.png
在脚本中使用ib3.file.go跳转刚才复制的文件ID,如上图所示。填写完后通过右上角的X关闭poplang智体脚本编辑器(会自动保存这个脚本)

第十七步:找到并点击“紫金色iphone”摆件,右侧属性面板找到脚本-编辑选项

23.png

注:滚动属性面板至最下面以看到【脚本】选项。

第十八步:在右侧属性的下方【脚本】点击【编辑】poplang智体编程脚本,以设置购买头榜的ID(如下图所示)

24.png

注:使用ib3.pay xmsgid来做到跳转购买头榜页面。

第十九步:通过顶部的【文件】菜单,选择【推送头榜(作品)】,将该3D纪念馆源码JSON文件,发布为xverse应用

25.png
编辑发送头榜的xmsg标题为:支付头榜并跳转付费的《乔布斯传》!

26.png

点击右上角的【确认】发布头榜成功

第二十步:返回头榜页面,看到刚发布的xverse应用(如下图)

3ded48d936e5b8be4c2.png" alt="27.png" />

第二十一步:点击新发布的这个xverse应用,进入游览

28.png

通过滚轮,移动到刚才的“紫金色iphone”和《乔布斯传》贴图的2个摆件摆件(如上图所示)

第二十二步:点击“紫金色iphone”3D摆件,跳转购买头榜

29.png

点击右上角的【确认】购买,将支付相应的金额的$,以实现访问加了文件锁的《乔布斯传》

如是自己发布的头榜,不需购买,会提示语如下:不能购买自己的头榜(中文翻译)
31.png

第二十三步:点击《乔布斯传》的贴图摆件,跳转打开文件

30.png
我们看到,消息提示为:打开《乔布斯传》,并已成功跳转到该文件(是自己的或者购买了文件锁对应的头榜,方可解密文件)!

通过上述23步,我们成功完成了《乔布斯3D纪念馆》的飞碟形态的摆件的跳转并打开须付费购买头榜的《乔布斯传》文件,实现了用户点击摆件跳转打开指定的待付费可见文件的交互功能。通过poplang智体编程语言,我们可以实现丰富的自定义的交互功能和能力,跳转并打开任意文件(均由用户自定义是否加付费可见,或者任意用户可见),实现强大的3D-2D交互效果。

通过文件锁,可以实现群成员可访问、会员等级可访问、付费购买头榜-付费购买福刻FORK可访问文件的系列功能。基于文件锁功能的文件付费可见的功能异常强大且实用。

注:dtns.network德塔世界(开源的智体世界引擎)是在github和gitee上开源的项目!

开源地址:

github地址:https://github.com/dtnsman/dtns

Gitee地址:https://github.com/dtnsman/dtns

官方文档:https://dtns.network.yunapi.org

加入QQ群:279931001

加入微信群:

wechat-qr (2).png


http://www.ppmy.cn/ops/38867.html

相关文章

【个人博客搭建】(18)使用Quartz.NET 定时备份数据库

Quartz.NET在系统主要承担的一些关键功能: 任务调度:Quartz.NET 允许开发人员创建、调度和管理定时任务,支持简单触发器和Cron表达式等多样化的触发策略。灵活性:Quartz.NET 提供了灵活的任务安排机制,不仅支持基于时间…

最新版rancher环境配置安装和集群搭建详细教程记录

🚀 作者 :“二当家-小D” 🚀 博主简介:⭐前荔枝FM架构师、阿里资深工程师||曾任职于阿里巴巴担任多个项目负责人,8年开发架构经验,精通java,擅长分布式高并发架构,自动化压力测试,微服务容器化k…

9.为什么有时候会“烫烫烫”——之函数栈桢

目录 1. 什么是函数栈帧 2. 理解函数栈帧能解决什么问题呢? 3. 函数栈帧的创建和销毁解析 3.1 什么是栈? 3.2 认识相关寄存器和汇编指令 3.3 解析函数栈帧的创建和销毁 小知识:烫烫烫~ Q&A 1. 什么是函数栈帧 我们在写C语言代码…

React 基础案例

React的特点&#xff1a; 1、声明式编程 2、组件化开发 3、多平台适配yuan 原生实现&#xff1a; <h2 class"title"></h2><button class"btn">改变文本</button><script>let msg "Hello World";const titleEl d…

NIO BIO AIO详解

BIO: 同步阻塞I/O&#xff0c;是JDK1.4之前的传统IO模型。 线程发起IO请求后&#xff0c;一直阻塞&#xff0c;直到缓冲区数据就绪后&#xff0c;再进入下一步操作。 NIO:同步非阻塞IO&#xff0c;当线程发起IO请求后&#xff0c;不需要阻塞&#xff0c;会立即返回。用户线程不…

初识kafka

一、发布与订阅系统 发布与订阅系统&#xff1a;数据的发送者不会直接把消息发送给接收者&#xff1b;发布者以某种方式对消息进行分类&#xff0c;接收者通过订阅他们来接收特定类型的消息。发布与订阅系统也是事件驱动型程序的关键组件 二、初识Kafka kafka是一款基于发布…

“漫画之家”|基于Springboot+vue的“漫画之家”系统(源码+数据库+文档)

“漫画之家”系统 目录 基于Springbootvue的“漫画之家”系统 一、前言 二、系统设计 三、系统功能设计 1系统功能模块 2后台模块 5.2.1管理员功能模块 5.2.2用户功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&a…

vector实战

vector声明 初始化 获取数据 修改元素值 追加元素 遍历 定义二维的vector 二维vector遍历 #include <iostream> #include <vector>using namespace std;int main(){// vector 声明vector<string> name_vector;// vector 初始化vector<int> sco…