HarmonyOS 粒子特效实战:emitter.size 是双刃剑:粒子精确定位 [0,0] 与条带随机出生(HarmonyOS)

emitter.size 是双刃剑:粒子精确定位 0,0 与条带随机出生(HarmonyOS)

现象: 马赛克 256 块定点拼合出现"间隙重叠 + 边缘不齐 + 倾斜感",且每次复位/切档重建后错位图案都不同;反过来,另一些效果(白点消散)又需要粒子"沿一条线随机出生"------同一个参数,用法完全相反。

原因: emitter.size 是发射区域宽高(particle.d.ts :796-800),粒子在区域内均匀随机 出生------size:1,1 即每块 ±0.5vp 随机偏移;它既是精确定位错误的源头,也是条带效果的正牌机制。

解决: 精确拼合改 0,0 点发射 + 瓦片尺寸精确等于格子;条带效果正向设"线宽 × 薄条带";铁证判别法是"重建结果每次完全一致"。

暗面:随机出生区毁掉精确定位(坑10)

想让 256 块严丝合缝,写了 emitter.size: [1, 1]------1×1vp 已经够小了吧?结果块界处随机错缝/叠。因为 emitter 的 size 是发射区域:粒子在 宽, 高 区域内均匀随机出生,1,1 区域意味着出生点 ±0.5vp 随机偏移。

旧版块间 1vp 明缝一直在掩盖这个随机性;无缝化修复把缝消掉后,随机错位彻底暴露------连环坑:修掉 A(明缝)暴露 B(随机错位)。

解法:

typescript 复制代码
emitter: {
  size: [0, 0],        // 点发射,出生位置确定
  position: [x, y],    // 块的格位左上角
  // 瓦片尺寸精确等于格子 [tw, th],错位即露缝便于辨别
}

铁证:修复后重建结果每次完全一致(有随机时每次都不同);错位与素材横竖拍无关(对照排除)。

亮面:条带发射器的正确姿势

同一机制,用在"沿一条线撒粒子"的效果上就是正解。白点消散卡:192 批 × 每批 2 个发射器,每个发射器 size 设「线宽 × 薄条带」+ position = 条带左上角 → 一条发射器多颗粒子沿整条线随机出生。

配套参数:

  • 发射持续时间 = count ÷ emitRate:emitRate 取 max(N×3, 20) → 333ms 连喷,前沿带尾
  • lifetime + lifetimeRange(since 12):每颗寿命在 lifetime−range, lifetime 随机,避免"整整齐齐同时死"

判别法速查

症状 诊断
拼合/排版错位,每次重建都不同 size 随机出生区在作怪 → 改 0,0 点发射
效果太"整齐",粒子挤在一点 正向设 size 条带 → 沿线/沿区随机出生

标签

#HarmonyOS #ArkUI #Particle #emitter #粒子特效 #马赛克

📹 效果演示 :本文的「白点消散/马赛克拼合」动态效果实录会发在抖音------号 581821159(天行健之初九),截图看不出的粒子细节,视频一眼就懂。

懿路向前 · AI辅助整理 · 2026-10-12

相关推荐
贾伟康3 小时前
【共创稿事节】HarmonyOS 7.0 BindContentCover全屏模态:从接入到生产验证
性能优化·实战·harmonyos·arkts·arkui
KevinChaos5 小时前
声音明信片实验室 03|HarmonyOS 7.0 音频空间化:双版本试听无缝切换
harmonyos
贾伟康6 小时前
【共创稿事节】HarmonyOS 7.0 Menu菜单与上下文:从接入到生产验证
性能优化·实战·harmonyos·arkts·arkui
行者-全栈开发6 小时前
Flutter 插件 device_calendar_plus 开源鸿蒙适配实战:从权限弹窗失灵到循环日程跑通
flutter·跨平台·harmonyos·arkts·日历·适配·开源鸿蒙
贾伟康8 小时前
【共创稿事节】HarmonyOS 7.0 BindSheet半模态浮层:从接入到生产验证
性能优化·实战·harmonyos·arkts·arkui
JosieBook8 小时前
【鸿蒙PC GUI适配】chiaki-ng 移植的工程实践:Qt6/QML 与 ArkUI 的混合窗口架构
华为·架构·harmonyos
Dream-Y.ocean17 小时前
鸿蒙PC平台宅匠 3D 室内设计适配实战:基于 Electron 壳方案的 Three.js 双渲染引擎与参数化户型编辑器开发
javascript·3d·harmonyos
行者-全栈开发18 小时前
【共创稿事节】HarmonyOS 应用上架全流程中的隐私合规:权限最小化、数据本地化与 AppAnalyzer 体检
harmonyos·鸿蒙·隐私合规·应用上架·agc·appanalyzer
贾伟康19 小时前
HarmonyOS API 26 UKey PIN 授权门禁:状态查询、失败归因与资源闭环
华为·harmonyos
Dream-Y.ocean1 天前
鸿蒙PC平台星图遥感适配实战:基于 Electron 壳方案的纯 JavaScript 遥感图像处理引擎开发
javascript·electron·harmonyos