首页 广告公司 NFT元宇宙链游系统开发逻辑分析

NFT元宇宙链游系统开发逻辑分析

发布时间 2023-05-18 收藏 分享
价格 面议
区域 全国
来源 广州杰肯狸网络科技有限公司

详情描述:

区块链构建一个开放的稳定的价值载体,为数字化的价值提供流动协作的条件,构建一个完整的世界观体验还需要一个庞大的基础设施。利用5G、VR设备、IoT设施、AI技术算法实现一个不可或缺的关键产业支柱。在区块链方向,数字分身系统,去中心化的存储以及云计算仍有可持续化的发展。

根据支持产业的发展水平将元宇宙分为以下几个阶段

一阶段——社交 游戏:浸式的体验形式,在虚拟世界中实现基本的娱乐,社交功能还是可以的,部分的玩家对元宇宙的归属非常的强。

二阶段——虚拟现实相结合的模糊概念:将消费,金融生活服务等真实的世界融入到其中,用技术,时间进一步的提升元宇宙成为生活中的一部分。

三阶段——全真互联网的数字元宇宙,虚拟与现实世界密不可分,用户技术和使用时间长,在虚拟世界中形成新的文明。

Rebuild的程序流程 NFT链游开发源码模式威:Congge420 作者:

Image,Text都是继承Graphic,Graphic有ICanvasElement接口,实现rebuild函数

 

 

 

   public interface ICanvasElement

 

 

 

   {

 

 

 

       /// <summary>

 

 

 

       /// Rebuild the element for the given stage.

 

 

 

       /// </summary>

 

 

 

       /// <param name="executing">The current CanvasUpdate stage being rebuild.</param>

 

 

 

       ///  // 根据CanvasUpdate的不同阶段重建元素

 

 

 

       void Rebuild(CanvasUpdate executing);

 

 

 

 

 

 

 

CanvasUpdateRegistry监听Canvas的willRenderCanvases事件,这个事件会在渲染前进行每帧调用

 

 

 

   public class CanvasUpdateRegistry

 

 

 

   {

 

 

 

         //布局重建队列,当UI元素的布局需要更新时将其加入队列

 

 

 

       private readonly IndexedSet<ICanvasElement> m_LayoutRebuildQueue = new IndexedSet<ICanvasElement>();

 

 

 

 

 

 

 

       //图形重建队列,当UI元素的图像需要更新时将其加入队列

 

 

 

       private readonly IndexedSet<ICanvasElement> m_GraphicRebuildQueue = new IndexedSet<ICanvasElement>();

 

 

 

 

 

 

 

       protected CanvasUpdateRegistry()

 

 

 

       {

 

 

 

           //监听了Canvas的willRenderCanvases事件,这个事件会在渲染前进行每帧调用

 

 

 

           Canvas.willRenderCanvases = PerformUpdate;

 

 

 

       }

 

 

 

 

 

 

 

PerformUpdate收集布局重建队列,图形重建队列调用ICanvasElement.Rebuild完成重建

 

 

 

何时加入重建

 

 

 

通过设置“脏数据”实现的,包括布局(Layout)、材质(Material)和顶点(Vertices)三部分,设置布局为脏,将进行布局重建,设置顶点或材质为脏,则进行图形重建。布局重建会将自身加入m_LayoutRebuildQueue中,图形重建则会将自身加入m_GraphicRebuildQueue中,等待被调用。

 

 

 

SetLayoutDirty:加入到布局重建队列

 

 

 

SetVerticesDirty,SetMaterialDirty:材质,顶点变换加入到图形重建队列

 

 

 

 

 

 

 

布局重建:位置或者大小 ;

 

 

 

图像重建:顶点变化,材质变化(大小,旋转以及文字变化、图片的修改)

 

 

 

优化

 

 

 

主要目标,把Profile里Canvas.SendWillRenderCanv参数调小。通过限制顶点数量,顶点变化等。

 

 

 

 

 

 

 

text属性改变(“123”–>“1234”),触发SetLayoutDirty:在做倒计时相关,按照每1s改变,不要实时改变

 

 

 

 

 

 

 

改文字,图片颜色,触发SetVerticesDirty(顶点改变),所以改图片颜色好是改材质球颜色

 

 

 

 

 

 

 

layout组件引起重建问题

 

 

 

 

 

 

 

text 描边,阴影性能问题

 

 

 

一个字符产生4个顶点,

 

 

 

如果再加上Shadow则相当于又把Text复制了一遍产生8个,

 

 

 

Outline则会将Text复制4遍产生20个顶点。

联系人 罗聪
13138494301
2813729063@qq.com
上一条 下一条
电话联系