Page 1 of 1
在Android平台不生成任何带LogicPlayer的Prefab
Posted: 2024/12/16 09:26
by kvfreedom
Logic Toolkit Version 1.6.4
Unity Version 6000.0.31f1
在编辑器中运行正常,Android平台构建运行大概率出现不生成任何带LogicPlayer的Prefab,出现此情况时没有报错。删除手机游戏进程,重新进入游戏依然出现此情况,Addressables.LoadAssetAsync增加WaitForCompletion依然出现此情况,将Object.InstantiateAsync改为Object.Instantiate依然出现此情况,重启Unity依然出现此情况。目前发现的规律是,当修改代码后直接构建运行容易出现此情况,在编辑器中运行一次再构建运行就能正常生成。
Re: 在Android平台不生成任何带LogicPlayer的Prefab
Posted: 2024/12/16 10:16
by caitsithware
感谢您的报告。
然而,仅凭这些信息,Unity 就可能存在问题。
这是对其他报告的重复,但首先,请提前检查是否是使用最低配置的 LogicToolkit 问题,如果是 LogicToolkit 问题,请写出重现它的详细信息和步骤。
Re: 在Android平台不生成任何带LogicPlayer的Prefab
Posted: 2024/12/16 11:02
by caitsithware
我首先在Unity 6000.0.30f1(尚未安装31f1)上检查了以下步骤,但无法重现。
- 在层次结构中创建一个Cube
- 为 Cube 对象添加了 Logic Player 组件
- 按逻辑播放器组件中Asset的创建按钮,创建一个具有适当名称的LogicAsset。
- 使用LogicAsset中的 Tween Transform.position 创建一个重复移动的图形。
- 将Cube对象设为Prefab
- 删除Hierarchy中的Cube对象
- 创建下面的脚本
Code: Select all
using UnityEngine;
public class InstantiatePrefab : MonoBehaviour
{
public GameObject Prefab;
void Start()
{
Instantiate(Prefab);
}
}
- 使用 Create Empty 在 Hierarchy 中创建一个空对象
- 将上面的脚本添加到对象中
- 在Prefab字段中设置Cube预制件
- 保存Scene
- 添加目标Scene到Scene List
- Android 平台上的Build And Run
- 操作确认
- 重新启动Unity
- Android 平台上的Build And Run
- 操作确认
两次都显示了Cube,我们确认了Tween Transform.position的操作。
Re: 在Android平台不生成任何带LogicPlayer的Prefab
Posted: 2024/12/16 11:16
by caitsithware
LogicToolkit 不会对预制件、构建处理或特定平台上的运行时执行执行任何特殊处理,因此我不知道导致此问题的原因。
如果您在使用 Addressables 时遇到问题,则可能是 Addressables 存在问题。
我无法提供有关如何使用 Unity 或 Addressables 或任何问题的任何支持。
再次强调,请在报告之前隔离是否是 LogicToolkit 问题。
Re: 在Android平台不生成任何带LogicPlayer的Prefab
Posted: 2024/12/16 12:39
by kvfreedom
此问题在1.6.4之前的版本均没有出现过,1.6.3搭配Unity 6000.0.30f1没有此问题,升级1.6.4搭配Unity 6000.0.30f1首次发现了此问题,我怀疑是1.6.4的改动引发了此问题,我会尝试在最小可用项目中进行实验。
Re: 在Android平台不生成任何带LogicPlayer的Prefab
Posted: 2024/12/16 13:05
by caitsithware
kvfreedom wrote: ↑2024/12/16 12:39
我会尝试在最小可用项目中进行实验。
这是最重要的报告内容。
如果不共享重现步骤,则不清楚是否可以重现完全相同的问题。
为了保证分享和问题解决的顺利进行,请您提前帮助我们明确使用最低配置重现问题的步骤。
Re: 在Android平台不生成任何带LogicPlayer的Prefab
Posted: 2024/12/16 14:12
by caitsithware
如果编辑器上未重现问题,您是否通过将 Addressable Groups 的 Play Mode Script 设置为 Use Existing Build 进行检查?
如果设置为 Use Asset Database ,在编辑器中播放将直接从Assets加载资源。
必须设置为 Use Existing Build 才能在编辑器中查看从 AssetBundle 的加载。
这是 Addressables 的一个功能,因此它并不是 LogicToolkit 论坛的真正主题。
请阅读 Addressables 手册了解详细信息。
Re: 在Android平台不生成任何带LogicPlayer的Prefab
Posted: 2024/12/16 15:46
by caitsithware
经过调查,Managed Stripping 似乎正在剥离仅在 Addressables 中使用的代码。
尝试以下方法。
- 打开 Player Settings
- 展开 Other Settings
- 关闭 Optimization 中的 Strip Engine Code
- 将 Managed Stripping Level 更改为 Minimal
Addressables 能够自动创建 link.xml,因此您使用的类型受托管剥离的影响可能是 Addressables 的根本问题。
该问题也可能与此问题不同,因为我们不知道如何重现所报告的问题。
请检查一次。
Re: 在Android平台不生成任何带LogicPlayer的Prefab
Posted: 2024/12/17 02:31
by kvfreedom
我将Managed Stripping Level 从 Low 更改为 Minimal,多次实验未出现不生成的情况,此问题已解决。
Re: 在Android平台不生成任何带LogicPlayer的Prefab
Posted: 2024/12/17 03:07
by caitsithware
感谢您的确认。
我将关闭它作为解决。