请教大家一个微信小游戏 SDK 的问题

2023-04-17 17:32:59 +08:00
 ChineseCabbage

背景:工种是前端,没有游戏方面的开发经验

最近接到一个需求:要求开发一个微信小游戏的 SDK ,别人引入之后在他的小游戏上面生成(或者说创建)一个图片的挂件;

遇到的问题: 1 、我原本的思路是通过传入 canvas 的上下文初始化我的类,然后我这边去创建这个图片挂件并渲染在游戏中,但是这样需要使用这个 SKD 的一方在为我这个 SDK 写上不少逻辑,同时也跟其他公司的技术人员沟通,他们对接别人的这种类似的 SDK 都是直接 require 进去就能使用了,所以我怀疑我思路的方向是不正确的;

2 、第二种方式我采用了用 LayaAir 去生成的小游戏实例(因为有些合作公司是使用 laya 开发的),再同样使用原生的方式去创建挂件,但是我无法获取到 canvas 实例的上下文,导致无法顺利创建挂件,同时如果使用 createCanvas 去创建画布,界面就只剩下我这个挂件图片,游戏内容全部抹除;

目前来说我对于实现这个需求还是没有太好思路,也付费去咨询解决方案,但是最后提供的 demo 无法使用,希望各位老哥能帮助提供一下思路,万分感谢。

1076 次点击
所在节点    程序员
8 条回复
krapnik
2023-04-17 17:47:54 +08:00
提供一个 sdk ,直接 require 进去,sdk 的内容主要为:判断游戏引擎,动态创建 spritem ,将图片挂件添加到场景树上去[比如 laya 的话,就 addChild 到 Laya.stage 上面去],覆盖一下常用的游戏引擎 [CCC,LAYA,EGRET,PIXI,UNITY 等等]
ChineseCabbage
2023-04-17 18:03:18 +08:00
@krapnik 谢谢大佬,我按照这个思路去尝试一下,因为我之前的思路都是从原生 js 出发去创建的;
能否再帮我解惑一下,像你这边所说的这种思路是否有一些使用原生写的小游戏不适用呢
krapnik
2023-04-17 18:10:39 +08:00
是的,在游戏中,带有图形可视化实体的 sdk 都得去适配,因为每个游戏引擎定义的图形可视化实体都不统一,有的喜欢 sprite ,有的喜欢 displayobject ,所以你必须要用游戏环境去创建你的图片挂件。而且你写好了这个 sdk ,不用需要在微信小游戏环境中,web 也是可以测试到的,因为游戏引擎帮你抹平了平台环境的差异。
stardew
2023-04-17 18:11:39 +08:00
能不能 webview 直接创建一个图片放在最上层,就是个 img 元素,我们之前项目是 cocos creator,有个 sdk 就是这样的,require 时创建并且绑定回调
krapnik
2023-04-17 18:14:58 +08:00
@stardew #4 先不说界面适配问题,数据通信上就麻烦了,而且小游戏环境好像是没有 webview 的
stardew
2023-04-17 18:17:17 +08:00
@krapnik 好吧,好久没接触小游戏了,忘记了...
ChineseCabbage
2023-04-20 11:28:48 +08:00
@stardew 谢谢老哥能花时间给我的问题提出见解跟思路
ChineseCabbage
2023-04-20 11:29:15 +08:00
@krapnik 感恩老哥,给我指明了思路,已实现功能了,感谢感谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/933218

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX