【问题标题】:How do I add image assets at runtime?如何在运行时添加图像资产?
【发布时间】:2016-10-21 06:59:16
【问题描述】:

我有一个这样的实体:

<a-entity id="entity1" 
    position="0 0 -1"
    geometry="primitive: plane; width: 1"
    material="src: #myTexture;  opacity:0.9; transparent:true;">

我正在尝试分配一个新的 Base64 图像字符串,如下所示:

myTexture.setAttribute('src','data:image/png;base64,xxx');

这似乎有效,因为myTexture 似乎包含新图像。但是,entity1 并未使用该新材料进行更新。

有人知道怎么解决吗?

【问题讨论】:

    标签: aframe


    【解决方案1】:

    修改实体而不是&lt;a-assets&gt; 中的内容。资产管理系统用于预加载和缓存。如果您要动态设置资产,则可以内联设置。

    el.setAttribute('material', 'src', 'url(data:image/png;base64,xxx)').

    【讨论】:

    • 谢谢。澄清:
    • 应该是:myTexture.setAttribute('src',url('data:image/png;base64,xxx'))?
    • 我已经修改了答案。 url() 是字符串的一部分,而不是函数。哦,我刚刚发现要修改实体,而不是资产项。
    猜你喜欢
    • 2012-06-27
    • 2022-11-30
    • 1970-01-01
    • 1970-01-01
    • 2015-11-16
    • 2011-11-30
    • 2018-11-06
    • 2021-11-24
    相关资源
    最近更新 更多