提交 0aeb23b7 编写于 作者: L liangyizhou(周良宜)

update:更新压缩纹理文档

上级 0c971125
......@@ -25,7 +25,7 @@ public class Ranking : MonoBehaviour
ShowButton.onClick.AddListener(()=> {
RankingBox.SetActive(true);
// 如果父元素占满整个窗口的话,pivot 设置为(0,0),rotation设置为180,则左上角就是离屏幕的距离
// 注意这里传x,y,width,height是为了点击区域能正确点击,x,y 是距离屏幕左上角的距离,宽度传 (int)RankBody.rectTransform.rect.width是在canvas的UI Scale Mode为 Constant Pixel Size的情况下设置的。如果是Scale With Screen Size则要这要做一下换算,比如canavs宽度为750,rawImage设置为690 则应该传Screen.width*(690/750)。高度的同理
// 注意这里传x,y,width,height是为了点击区域能正确点击,x,y 是距离屏幕左上角的距离,宽度传 (int)RankBody.rectTransform.rect.width是在canvas的UI Scale Mode为 Constant Pixel Size的情况下设置的。如果是Scale With Screen Size,且设置为以宽度作为缩放,则要这要做一下换算,比如canavs宽度为750,rawImage设置为690 则应该传Screen.width*(690/750)。高度为Screen.height*(690/750)
var p = RankBody.transform.position;
WX.ShowOpenData(RankBody.texture, (int)p.x, Screen.height-(int)p.y, (int)RankBody.rectTransform.rect.width, (int)RankBody.rectTransform.rect.height);
});
......
# 音频优化
由于导出成WEBGL的游戏,音频处理上存在一定的性能损耗,建议直接调用SDK中的音频API直接控制播放,能达到不错效果。
### API使用
代码如下,可参考[微信开发者文档](https://developers.weixin.qq.com/minigame/dev/api/media/audio/InnerAudioContext.html),其中src为音频地址,可填本地路径如 Assets/xx.wav,运行时会自动和配置的音频地址前缀做拼接得到最终线上地址。
## API使用
### 长音频的使用
代码如下,可参考[微信开发者文档](https://developers.weixin.qq.com/minigame/dev/api/media/audio/InnerAudioContext.html),其中src为音频地址,可填本地路径如 Assets/xx.wav,运行时会自动和配置的音频地址前缀做拼接得到最终线上地址。注意长音频使用时,音频对象是不还被缓存的,需要直接缓存音频对象(就是WX.CreateInnerAudioContext的对象需要自己缓存),不然每次都会重新加载。
* 使用方法一:
为了减少用户等待时间和避免音频延迟,
......@@ -51,11 +52,21 @@
});
```
`注意` WX.CreateInnerAudioContext 返回的音频对象是可以复用的,就是可以多次调用Play方法播放,但是如果需要多个音频同时播放就要创建多个音频对象了。
### 导出设置
勾选使用微信音频API,并填上"Assets目录对应CDN地址",比如填写的地址为https://wx.qq.com/data/Assets/,而API的src地址为 Audio/Chill_1.wav,则最终会请求https://wx.qq.com/data/Assets/Audio/Chill_1.wav
### 短音频的使用
类似于Unity开发者喜欢更改AudioClip的方式来播放短音频,这里可以使用WX.ShortAudioPlayer来播放音频。音频对象会自动被缓存下来。便于后续播放`。可以参考如下代码:
```
// 这里是播放前预先加载Assets/music目录下的两个音频,来避免后续播放的音频播放延迟
WX.ShortAudioPlayer.PreLoadAudio(new string[] { "music/LowCrash.wav", "music/Brake2.wav" });
// 在需要播放的适合调用,不要暂停其他短音频,这里会自动停掉其他短音频,只播放这个端音频
WX.ShortAudioPlayer.StopOthersAndPlay("music/Brake2.wav", 1.0f,false);
```
## 导出设置
勾选使用微信音频API,并填上"Assets目录对应CDN地址",比如填写的地址为https://wx.qq.com/data/Assets/ ,而API的src地址为 Audio/Chill_1.wav,则最终会请求 https://wx.qq.com/data/Assets/Audio/Chill_1.wav
### 将音频文件上传CDN
## 将音频文件上传CDN
游戏内的音频会被导出到导出目录的Assets文件夹下,需要将其上传至您的CDN,保证用户能访问到
![avatar](../image/assets2.png)
\ No newline at end of file
![avatar](../image/assets2.png)
......@@ -25,7 +25,10 @@
这里替换纹理后在导出目录会生成一个Assets目录,需要将该目录放到CDN的对应目录, 其对应的是你填写的"Assets目录对应CDN地址" ,比如你填写的地址为 https://wx.qq.com/data/Assets/
,那么小游戏需要展示图片的时候就会自动去该目录下载对应图片。
<image src="../image/edwindow.png" width="600"/>
<image src="../image/edwindow.png" width="600"/>
导出后的纹理所在目录:
![avatar](../image/assets2.png)
### 4、导出游戏
点击"微信小游戏"->"转换小游戏" 打开转换小游戏弹窗,点击左下角的"导出WEBGL并转化为小游戏"按钮等待导出游戏即可
......
......@@ -37,4 +37,7 @@ wx.onMessage(data => {
在转化后的小游戏中的open-data/index.js 文件中写你对应的业务逻辑即可,如下图所示。 这里的JS开发我们提供了一个简单易上手的
[绘制引擎](https://wechat-miniprogram.github.io/minigame-canvas-engine/),可以参看对应使用文档来绘制页面。而开放域的业务逻辑开发与普通小游戏的开放数据的开发没有差异,可以查看[官网](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/open-data.html)做进一步了解。
![avatar](../image/o3.png)
\ No newline at end of file
![avatar](../image/o3.png)
### 5、示例DEMO
可以参考[Demo/Ranking/Assets](../Demo/Ranking/Assets)下面的Unity工程,对应导出的小游戏在[Demo/Ranking/MiniGame/minigame](../Demo/Ranking/MiniGame/minigame)下。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册