动画系统
摘要:动画系统 xr-frame中所有的动画都是通过动画系统AnimationSystem统一管理的,在每帧的同一个时机统一更新。动画系统自身没有什么逻辑,所有的逻辑都是在动画组件Animator和动画实现Animation中的。 动画实现 动画实现的基础是基类Animation,所有的动画都必须派生于它
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(45)
推荐(0)
AR追踪器
摘要:AR追踪器 AR追踪器ARTracker是AR系统的一部分。 提供了一种非常简单的方式,在特定的识别模式下识别出图像或者物体,对其进行跟随。其一版本代理到元素 XRARTracker。 对应在 xml 中的标签是 xr-ar-tracker。 创建AR追踪器 AR追踪器的典型创建和使用方式如下: <
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(78)
推荐(0)
AR系统
摘要:AR系统 AR系统 ARSystem 将 xr-frame 和 小程序AI系统 VisionKit 关联起来,让AR变得十分简单易用。 AR系统默认是关闭的,开启它需要在场景元素Scene上挂载ARSystem即可,以下是基础案例 <!-- 平面模式下,开启后置摄像头 --> <xr-scene a
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(51)
推荐(0)
GLTF画廊
摘要:GLTF画廊 *以下图片均为xr-frame渲染截屏,模型来源为gltf官方示例与sketchfab资源(CC-Licensed)。 物件模型 人物模型 卡通模型 完整场景
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(13)
推荐(0)
xr-frame里的GLTF
摘要:xr-frame里的GLTF GLTF资源 GLTF组件 动画 Morph GLTF扩展 限制 GLTF资源 GLTF模型需要先通过Loader加载进小程序中,才可以渲染。 <xr-asset-load type="gltf" asset-id="gltfModel" src="/assets/xx
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(256)
推荐(0)
GLTF介绍
摘要:GLTF介绍 GLTF是一种被广泛使用的文件格式,用来储存3D模型和3D场景。在xr-frame里你可以非常轻松地引入任意GLTF模型,并将其渲染出来。 使用GLTF的优势 📦 单一文件,完整场景 使用GLTF打包后的GLB文件,可将一整个场景的所有要素包揽进去。轻松管理你的3D资源。 🌍 成熟
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(51)
推荐(0)
后处理
摘要:后处理 后处理一般指一次渲染的最后环节,它接受一个相机的渲染结果,用图像处理算法对结果增强来达到一些效果,比如模糊、辉光、渐晕等等。 xr-frame内置的后处理系统以相机为基础,将后处理资源组装起来,实现最终的效果。 ⚠️ 后处理系统在框架内部涉及到渲染管线,目前暂时不接受定制,未来视情况开放。
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(77)
推荐(0)
阴影
摘要:灯光 灯光组件Light用于给场景提供照明,也是阴影的核心。相机组件一般被代理到灯光元素XRLight中使用,其派生自XRNode,对应在xml中的标签为xr-light。 创建灯光 灯光元素的一个典型使用方式如下: <xr-light type="ambient" color="1 1 1" in
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(60)
推荐(0)
天空盒与背景
摘要:环境 环境Env是一种特殊的组件,其一般被代理到元素XREnv上使用。环境用于描述当前场景的环境贴图和光照信息,其一般和相机与材质协作,实现丰富真实的渲染效果。 环境数据可以使用xr-frame-toolkit来生成。 创建环境组件 环境组件一般由xml创建,不建议使用代码创建: <xr-env e
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(57)
推荐(0)
图集
摘要:图集 图集Atlas是一种资源,可以优化渲染流程和资源,在业界中用于精灵动画和UI比较多。它将一些散碎的小图拼接为一张大图,加之偏移数据uvMatrix或者uvST,能有效减少渲染时的纹理数量和切换次数。 目前图集在框架中主要配合粒子系统使用。 创建图集 xr-frame使用的图集是 标准,提供了以
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(37)
推荐(0)
渲染纹理
摘要:渲染纹理 相机一章中提到了渲染目标renderTarget可以指定为渲染纹理,纹理也提到了渲染纹理可以作为纹理使用。可见,渲染纹理RenderTexture就是连接多个相机渲染之间的桥梁。 一个典型场景就是用渲染纹理来做镜子之类的效果。 创建渲染纹理 创建渲染纹理有两种方式,一般我们会优先在wxml
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(16)
推荐(0)
相机
摘要:相机 相机Camera是渲染系统最核心的组件之一,和几乎所有的渲染引擎一样,它真正驱动着整个渲染管线的运作。相机组件一般被代理到相机元素XRCamera中使用,其派生自XRNode,对应在xml中的标签为xr-camera。 相机组件也承载了一部分AR系统相关的能力,同时我们还提供了配套的相机控制器
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(53)
推荐(0)
纹理
摘要:纹理 纹理Texture是GPU中的图像,供着色器采样使用。在框架中其一般被作为材质的一部uniforms使用。 由于纹理来源的复杂性,有普通纹理、立方体纹理、视频纹理、渲染纹理等,它们均有不同的创建或者加载方式,却往往有相同的用法,所以框架为其特别约定了一套资源引用方式,详见使用纹理一节。 普通纹
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(64)
推荐(0)
网格
摘要:网格 网格Mesh是一种组件,严格来讲应该称为网格渲染器,但出于精简就这么命名了。其作用是组织起几何数据和材质实现渲染的载体。 创建一个网格 网格一般在xml中创建,可以直接以组件模式使用或者是用代理的封装元素xr-mesh,此封装元素派生自节点。 组件的方式: <xr-node mesh="geo
阅读全文
posted @
2024-12-30 09:26
AtlasLapetos
阅读(25)
推荐(0)
材质
摘要:材质 材质 Material 基于 效果 Effect,提供了修改渲染状态、Uniforms的接口,真正决定了物体最后的渲染方式,体现为物体表面的外观。 创建一个材质 创建材质有两种方式,一般我们会优先在wxml中进行创建。 在wxml中创建 在xml中创建需要用到xr-asset-material
阅读全文
posted @
2024-12-30 09:25
AtlasLapetos
阅读(60)
推荐(0)
效果
摘要:效果 几何数据 提供了渲染的原材料,材质 决定了渲染的方式,但在讨论材质之前,我们要讨论一下其基于的效果 Effect。 效果可以认为是一个材质模板,通过光照模式lightMode和宏定义definition来对模板的各个功能进行开关。 内置效果 详见 内置效果资源。 定制一个效果 function
阅读全文
posted @
2024-12-30 09:25
AtlasLapetos
阅读(78)
推荐(0)
几何数据
摘要:几何数据 渲染的基础之一是几何数据Geometry资源,它描述了一个模型的顶点信息、索引信息以及顶点的存取结构。 一般来讲,几何数据是通过模型中自动加载,或使用 内置Geometry,但有时候我们需要去定制一些程序化生成的数据比如粒子等等,所以还是要明白如何去定制。 定制一个看看 const geo
阅读全文
posted @
2024-12-30 09:25
AtlasLapetos
阅读(24)
推荐(0)
渲染系统
摘要:渲染系统 渲染系统是xr-fame最重要的系统,它管理并驱动着整个场景的渲染过程。渲染系统的底层设计了一套可定制的RenderGraph来组织整个渲染管线,并且内置了一套简化的ForwardAdd管线作为默认的渲染管线。 RenderGraph的定制会在未来看需求酌情开放给开发者。 在内置的管线中,
阅读全文
posted @
2024-12-30 09:25
AtlasLapetos
阅读(19)
推荐(0)
资源加载元素
摘要:资源加载元素 在资源系统一章中我们简略提到了几个xml中和资源相关的标签xr-assets、xr-asset-load等,这一章就来详细介绍一下它们。 xr-asset-load xr-asset-load是元素XRAssetLoad在xml中的对应,而这个元素则是组件AssetLoad的一个简单代
阅读全文
posted @
2024-12-30 09:25
AtlasLapetos
阅读(19)
推荐(0)
资源加载器
摘要:资源加载器 xr-frame允许开发者定制资源加载器,来添加自己所需的资源类型。所有的资源加载器都需要派生自AssetLoader类,然后使用上一章的方法在xml中或者手动使用。 在基础库版本v2.29.2以上,支持自定义资源加载器。 以一个加载器为例 让我们以内置的纹理加载器为例, import
阅读全文
posted @
2024-12-30 09:25
AtlasLapetos
阅读(35)
推荐(0)