最新版Kaboom中origin()函数的替代实现方法是什么?
最新版Kaboom修改对象锚点的替代方案
旧版Kaboom里的origin()组件已被移除,最新版本改用anchor()组件实现锚点设置功能,有两种常用实现方式:
方式一:在图形组件中直接指定锚点
创建rect、circle这类图形组件时,可通过配置参数直接设置锚点:
const player = add([ rect(24, 24, { anchor: "center" }), // 直接在rect组件内设置锚点为中心 pos(12, 12), color(0, 0, 1), area(), body(), ]);
方式二:使用anchor()组件单独设置
如果需要单独定义锚点,或者后续要动态修改锚点,可直接添加anchor()组件:
const player = add([ rect(24, 24), pos(12, 12), color(0, 0, 1), area(), body(), anchor("center"), // 替代原origin()的写法 ]);
补充说明
anchor()支持的参数和旧版origin()完全一致,除了预设的字符串值(如"top"、"bottom"、"left"、"right"、"center"),还可以传入自定义坐标(比如vec2(0.5, 0.5)等价于"center")。
内容的提问来源于stack exchange,提问作者dytra
相关产品推荐
相关产品推荐

