写作绅士,读作丧尸 X岛揭示板
顺猴者昌 逆猴者亡 首页版规 |用户系统 |移动客户端下载 | 丧尸路标 | | 常用图串及路标 | 请关注 官方公众号:【X岛揭示板】 官方微博: 【@X岛极速版】| 人,是会思考的芦苇
常用串:·豆知识·跑团板聊天室·公告汇总串·X岛路标

No.60046156 - 无标题 - 技术宅


回应模式
No.60046156
名 称
E-mail
标题
颜文字
正文
附加图片
•程序语言、压制投稿、视频制作以及各计算机领域的技术问题
•我觉得还是CSDN靠谱一点
•本版发文间隔为15秒。

收起 查看大图 向左旋转 向右旋转
无标题 无名氏 2023-11-03(五)03:22:15 ID:MEjjEXe [举报] [订阅] [只看PO] No.60046156 [回应] 管理
肥哥们,unity开发有没有什么比较好的思路实现普通app那种 单个场景里 页面->多个子页面->众多物体 互相切换/跳转/还原/交互的效果。这个需求感觉很常见,但是完全没有比较好的思路和头绪( ´д`)

举个参考例子,小程序里常见的左边栏,每个边栏条目点击后,右侧内容会有相应的变化,右侧中的物体也各有一套生态,有一套自有的交互逻辑和ui,可能环境中每个物体还会有自己的状态( ゚∀。)
无标题 无名氏 2023-11-03(五)03:24:02 ID:MEjjEXe (PO主) [举报] No.60046160 管理
我的描述可能不咋地,但大概就是小程序或者网页里常见的那种效果( ゚∀。)
无标题 无名氏 2023-11-03(五)03:26:33 ID:MEjjEXe (PO主) [举报] No.60046163 管理
天亮再来捞一下,不知道这种问题该用什么关键词搜索,搜不到也想不出来,给我干出强迫症了゚(つд`゚)
收起 查看大图 向左旋转 向右旋转
无标题 无名氏 2023-11-03(五)09:50:54 ID:MEjjEXe (PO主) [举报] No.60047357 管理
早安,玛卡巴卡,先发个jpᕕ( ᐛ )ᕗ
收起 查看大图 向左旋转 向右旋转
无标题 无名氏 2023-11-03(五)11:57:37 ID:MEjjEXe (PO主) [举报] No.60048696 管理
或者可以用存档的方式来实现?
无标题 无名氏 2023-11-05(日)03:42:33 ID:Gg8kWZh [举报] No.60068844 管理
你说的是tab页切换吧?
换页面的时候,隐藏掉旧页面不就行了?为什么要保存状态销毁掉然后下次切回来再读取存档重建prefab?
一般为了加载效率,分页初始化会做延迟,但是除非会爆内存,初始化完的页切走以后是不会释放的,隐藏起来不更新而已。
就算要释放,也是释放内存开销大的部分资源,切回来之后再加载一遍这些资源就行了。
我以前写的UI都会有LRU队列来做缓存控制,关掉的界面并不会立即释放,再配合智能指针引用计数,统一释放。
无标题 无名氏 2023-11-05(日)04:10:28 ID:vuxvd1N [举报] No.60068895 管理
这个找下常见的 UI 框架插件,带 Tab 功能的,一般都有示例,并且提供 Tab 切换回调,回调绑你的 3d 切换逻辑即可。

不过说实话,如果想做那种类原生或类 Web 的 2D UI,那这是 Unity 的弱项,UGUI 性能和效率比较差,并且很难以简单的方式实现其他技术栈信手拈来的效果(eg: Web 的 css 动效及三方 React 之类的框架),而新版 GUI 库离能用还早的很。

Unity 的最大优势是解析场景树渲染 3D 场景,所以对于 UI 还是要把控下需求,对于超复杂 UI(多媒体网页那种复杂度),本肥肥待过的公司用过两种方式:
1. Untiy 场景内嵌 WebView,封一个 js-c# bridge 互相通信;
2. Unity 场景内嵌一个 Android Activity,用 Unity C# JNI 通信。
上面两种方式的原理都是把内容渲染到 Texture 上给Unity 消费,至于交互和技术细节,就不深入谈了。

UP主: