├── .gitignore
├── CHANGELOG.md
├── README.md
├── demo
├── Assets
│ ├── Font.meta
│ ├── Font
│ │ ├── OPPOSans-Bold.ttf
│ │ ├── OPPOSans-Bold.ttf.meta
│ │ ├── OPPOSans-Medium.ttf
│ │ ├── OPPOSans-Medium.ttf.meta
│ │ ├── OPPOSans-Regular.ttf
│ │ └── OPPOSans-Regular.ttf.meta
│ ├── LitJson.meta
│ ├── LitJson
│ │ ├── IJsonWrapper.cs
│ │ ├── IJsonWrapper.cs.meta
│ │ ├── JsonData.cs
│ │ ├── JsonData.cs.meta
│ │ ├── JsonException.cs
│ │ ├── JsonException.cs.meta
│ │ ├── JsonMapper.cs
│ │ ├── JsonMapper.cs.meta
│ │ ├── JsonMockWrapper.cs
│ │ ├── JsonMockWrapper.cs.meta
│ │ ├── JsonReader.cs
│ │ ├── JsonReader.cs.meta
│ │ ├── JsonWriter.cs
│ │ ├── JsonWriter.cs.meta
│ │ ├── Lexer.cs
│ │ ├── Lexer.cs.meta
│ │ ├── Netstandard15Polyfill.cs
│ │ ├── Netstandard15Polyfill.cs.meta
│ │ ├── ParserToken.cs
│ │ ├── ParserToken.cs.meta
│ │ ├── litjson.png
│ │ └── litjson.png.meta
│ ├── OPPO-GAME-SDK.meta
│ ├── OPPO-GAME-SDK
│ │ ├── Editor.meta
│ │ ├── Editor
│ │ │ ├── BuildTool.meta
│ │ │ ├── BuildTool
│ │ │ │ ├── BuildConfigAsset.cs
│ │ │ │ ├── BuildConfigAsset.cs.meta
│ │ │ │ ├── BuildEditorWindow.cs
│ │ │ │ ├── BuildEditorWindow.cs.meta
│ │ │ │ ├── OpensslPlugin.cs
│ │ │ │ └── OpensslPlugin.cs.meta
│ │ │ ├── CmdRunner.cs
│ │ │ ├── CmdRunner.cs.meta
│ │ │ ├── EditorUtil.cs
│ │ │ ├── EditorUtil.cs.meta
│ │ │ ├── GlobalDefines.cs
│ │ │ ├── GlobalDefines.cs.meta
│ │ │ ├── OppoGameSDK_Editor.asmdef
│ │ │ ├── OppoGameSDK_Editor.asmdef.meta
│ │ │ ├── QGGameTools.cs
│ │ │ ├── QGGameTools.cs.meta
│ │ │ ├── ShaderTools.meta
│ │ │ ├── ShaderTools
│ │ │ │ ├── AutoSetScriptingDefineSymbols.cs
│ │ │ │ ├── AutoSetScriptingDefineSymbols.cs.meta
│ │ │ │ ├── ShaderRuntimeDetector.cs
│ │ │ │ ├── ShaderRuntimeDetector.cs.meta
│ │ │ │ ├── ShaderStaticDetector.cs
│ │ │ │ └── ShaderStaticDetector.cs.meta
│ │ │ ├── VersionInfo.cs
│ │ │ └── VersionInfo.cs.meta
│ │ ├── Plugins.meta
│ │ ├── Plugins
│ │ │ ├── qg.minigame.jslib
│ │ │ └── qg.minigame.jslib.meta
│ │ ├── Runtime.meta
│ │ └── Runtime
│ │ │ ├── ArTools
│ │ │ ├── QGArManager.cs
│ │ │ └── QGArManager.cs.meta
│ │ │ ├── OppoGameSDK.asmdef
│ │ │ ├── OppoGameSDK.asmdef.meta
│ │ │ ├── QG.cs
│ │ │ ├── QG.cs.meta
│ │ │ ├── QGAudioPlayer.cs
│ │ │ ├── QGAudioPlayer.cs.meta
│ │ │ ├── QGBannerAd.cs
│ │ │ ├── QGBannerAd.cs.meta
│ │ │ ├── QGBaseAd.cs
│ │ │ ├── QGBaseAd.cs.meta
│ │ │ ├── QGBasePlayer.cs
│ │ │ ├── QGBasePlayer.cs.meta
│ │ │ ├── QGCallBackManager.cs
│ │ │ ├── QGCallBackManager.cs.meta
│ │ │ ├── QGCustomAd.cs
│ │ │ ├── QGCustomAd.cs.meta
│ │ │ ├── QGGameBannerAd.cs
│ │ │ ├── QGGameBannerAd.cs.meta
│ │ │ ├── QGGameDrawerAd.cs
│ │ │ ├── QGGameDrawerAd.cs.meta
│ │ │ ├── QGGamePortalAd.cs
│ │ │ ├── QGGamePortalAd.cs.meta
│ │ │ ├── QGInterstitialAd.cs
│ │ │ ├── QGInterstitialAd.cs.meta
│ │ │ ├── QGLog.cs
│ │ │ ├── QGLog.cs.meta
│ │ │ ├── QGMiniGameManager.cs
│ │ │ ├── QGMiniGameManager.cs.meta
│ │ │ ├── QGModel.cs
│ │ │ ├── QGModel.cs.meta
│ │ │ ├── QGRecordManager.cs
│ │ │ ├── QGRecordManager.cs.meta
│ │ │ ├── QGRewardedVideoAd.cs
│ │ │ ├── QGRewardedVideoAd.cs.meta
│ │ │ ├── QGVideoPlayer.cs
│ │ │ ├── QGVideoPlayer.cs.meta
│ │ │ ├── ShaderTools.meta
│ │ │ ├── ShaderTools
│ │ │ ├── ShaderAssets.cs
│ │ │ ├── ShaderAssets.cs.meta
│ │ │ ├── ShaderFinder.json
│ │ │ ├── ShaderFinder.json.meta
│ │ │ ├── ShaderListener.cs
│ │ │ ├── ShaderListener.cs.meta
│ │ │ ├── TempPrefabName.cs
│ │ │ └── TempPrefabName.cs.meta
│ │ │ ├── Utilities.meta
│ │ │ └── Utilities
│ │ │ ├── Utilities.cs
│ │ │ └── Utilities.cs.meta
│ ├── Resources.meta
│ ├── Resources
│ │ ├── BillingMode.json
│ │ └── BillingMode.json.meta
│ ├── Scenes.meta
│ ├── Scenes
│ │ ├── NewScenes.meta
│ │ └── NewScenes
│ │ │ ├── Interstitial.unity
│ │ │ ├── Interstitial.unity.meta
│ │ │ ├── InterstitialSettings.lighting
│ │ │ ├── InterstitialSettings.lighting.meta
│ │ │ ├── PlayerPrefs.unity
│ │ │ ├── PlayerPrefs.unity.meta
│ │ │ ├── StorageItem.unity
│ │ │ ├── StorageItem.unity.meta
│ │ │ ├── UserCloudStorageItem.unity
│ │ │ ├── UserCloudStorageItem.unity.meta
│ │ │ ├── audio.unity
│ │ │ ├── audio.unity.meta
│ │ │ ├── audioSettings.lighting
│ │ │ ├── audioSettings.lighting.meta
│ │ │ ├── banner.unity
│ │ │ ├── banner.unity.meta
│ │ │ ├── bannerSettings.lighting
│ │ │ ├── bannerSettings.lighting.meta
│ │ │ ├── custom.unity
│ │ │ ├── custom.unity.meta
│ │ │ ├── customSettings.lighting
│ │ │ ├── customSettings.lighting.meta
│ │ │ ├── deviceInfo.unity
│ │ │ ├── deviceInfo.unity.meta
│ │ │ ├── deviceInfoOther.unity
│ │ │ ├── deviceInfoOther.unity.meta
│ │ │ ├── deviceMotion.unity
│ │ │ ├── deviceMotion.unity.meta
│ │ │ ├── filemanager.unity
│ │ │ ├── filemanager.unity.meta
│ │ │ ├── gameBanner.unity
│ │ │ ├── gameBanner.unity.meta
│ │ │ ├── gameBannerSettings.lighting
│ │ │ ├── gameBannerSettings.lighting.meta
│ │ │ ├── gameDrawer.unity
│ │ │ ├── gameDrawer.unity.meta
│ │ │ ├── gameDrawerSettings.lighting
│ │ │ ├── gameDrawerSettings.lighting.meta
│ │ │ ├── gamePortal.unity
│ │ │ ├── gamePortal.unity.meta
│ │ │ ├── gamePortalSettings.lighting
│ │ │ ├── gamePortalSettings.lighting.meta
│ │ │ ├── login.unity
│ │ │ ├── login.unity.meta
│ │ │ ├── main.unity
│ │ │ ├── main.unity.meta
│ │ │ ├── mainSettings.lighting
│ │ │ ├── mainSettings.lighting.meta
│ │ │ ├── onAuthDialogShow.unity
│ │ │ ├── onAuthDialogShow.unity.meta
│ │ │ ├── onShow.unity
│ │ │ ├── onShow.unity.meta
│ │ │ ├── qgpay.unity
│ │ │ ├── qgpay.unity.meta
│ │ │ ├── recorder.unity
│ │ │ ├── recorder.unity.meta
│ │ │ ├── rewardedVideo.unity
│ │ │ ├── rewardedVideo.unity.meta
│ │ │ ├── rewardedVideoSettings.lighting
│ │ │ ├── rewardedVideoSettings.lighting.meta
│ │ │ ├── showModal.unity
│ │ │ ├── showModal.unity.meta
│ │ │ ├── systemInfo.unity
│ │ │ ├── systemInfo.unity.meta
│ │ │ ├── unityAudio.unity
│ │ │ ├── unityAudio.unity.meta
│ │ │ ├── vibrateShort.unity
│ │ │ ├── vibrateShort.unity.meta
│ │ │ ├── video.unity
│ │ │ └── video.unity.meta
│ ├── Script.meta
│ ├── Script
│ │ ├── demo.meta
│ │ └── demo
│ │ │ ├── Interstitial.cs
│ │ │ ├── Interstitial.cs.meta
│ │ │ ├── PlayerPrefs.cs
│ │ │ ├── PlayerPrefs.cs.meta
│ │ │ ├── banner.cs
│ │ │ ├── banner.cs.meta
│ │ │ ├── customAd.cs
│ │ │ ├── customAd.cs.meta
│ │ │ ├── filemanager.cs
│ │ │ ├── filemanager.cs.meta
│ │ │ ├── gameAudio.cs
│ │ │ ├── gameAudio.cs.meta
│ │ │ ├── gameAudioNew.cs
│ │ │ ├── gameAudioNew.cs.meta
│ │ │ ├── gameBanner.cs
│ │ │ ├── gameBanner.cs.meta
│ │ │ ├── gameDeviceInfo.cs
│ │ │ ├── gameDeviceInfo.cs.meta
│ │ │ ├── gameDeviceInfoOther.cs
│ │ │ ├── gameDeviceInfoOther.cs.meta
│ │ │ ├── gameDeviceMotion.cs
│ │ │ ├── gameDeviceMotion.cs.meta
│ │ │ ├── gameDrawer.cs
│ │ │ ├── gameDrawer.cs.meta
│ │ │ ├── gameLogin.cs
│ │ │ ├── gameLogin.cs.meta
│ │ │ ├── gameOnAuthDialogShow.cs
│ │ │ ├── gameOnAuthDialogShow.cs.meta
│ │ │ ├── gameOnShow.cs
│ │ │ ├── gameOnShow.cs.meta
│ │ │ ├── gamePlayerPrefs.cs
│ │ │ ├── gamePlayerPrefs.cs.meta
│ │ │ ├── gamePorta.cs
│ │ │ ├── gamePorta.cs.meta
│ │ │ ├── gameRecorder.cs
│ │ │ ├── gameRecorder.cs.meta
│ │ │ ├── gameSystemInfo.cs
│ │ │ ├── gameSystemInfo.cs.meta
│ │ │ ├── gameUnityAudio.cs
│ │ │ ├── gameUnityAudio.cs.meta
│ │ │ ├── gameVideo.cs
│ │ │ ├── gameVideo.cs.meta
│ │ │ ├── main_test.cs
│ │ │ ├── main_test.cs.meta
│ │ │ ├── qgpay.cs
│ │ │ ├── qgpay.cs.meta
│ │ │ ├── rewardedVideo.cs
│ │ │ ├── rewardedVideo.cs.meta
│ │ │ ├── showModal.cs
│ │ │ ├── showModal.cs.meta
│ │ │ ├── storageItem.cs
│ │ │ ├── storageItem.cs.meta
│ │ │ ├── test.cs
│ │ │ ├── test.cs.meta
│ │ │ ├── userCloudStorageItem.cs
│ │ │ ├── userCloudStorageItem.cs.meta
│ │ │ ├── vibrateShort.cs
│ │ │ └── vibrateShort.cs.meta
│ ├── Texture.meta
│ └── Texture
│ │ ├── bg1.jpg
│ │ ├── bg1.jpg.meta
│ │ ├── bg2.jpg
│ │ ├── bg2.jpg.meta
│ │ ├── bg3.jpeg
│ │ ├── bg3.jpeg.meta
│ │ ├── bg4.jpg
│ │ ├── bg4.jpg.meta
│ │ ├── bg5.png
│ │ └── bg5.png.meta
├── Packages
│ ├── manifest.json
│ └── packages-lock.json
├── ProjectSettings
│ ├── AudioManager.asset
│ ├── AutoStreamingSettings.asset
│ ├── ClusterInputManager.asset
│ ├── DynamicsManager.asset
│ ├── EditorBuildSettings.asset
│ ├── EditorSettings.asset
│ ├── GraphicsSettings.asset
│ ├── InputManager.asset
│ ├── MemorySettings.asset
│ ├── NavMeshAreas.asset
│ ├── PackageManagerSettings.asset
│ ├── Physics2DSettings.asset
│ ├── PresetManager.asset
│ ├── ProjectSettings.asset
│ ├── ProjectVersion.txt
│ ├── QualitySettings.asset
│ ├── SceneTemplateSettings.json
│ ├── TagManager.asset
│ ├── TimeManager.asset
│ ├── UnityConnectSettings.asset
│ ├── VFXManager.asset
│ ├── VersionControlSettings.asset
│ ├── XRSettings.asset
│ └── boot.config
└── logo.png
├── doc
├── API.md
├── AssetCache.md
├── CapabilitySupport.md
├── Demo.md
├── DevelopmentQA.md
├── IssueAndContact.md
├── OpensslPlugin.md
├── PublishQuickGame.md
├── RunQuickGame.md
├── SDKUpdate.md
├── ShaderCompatibilityDetect.md
├── Technique.md
├── Transform.md
├── TransformByCLI.md
├── TransformBySDK.md
├── UnityVersion.md
├── WebGL2.md
└── image
│ ├── AssetCacheExample_AddressablesGroups.png
│ ├── AssetCacheExample_AddressablesProfiles.png
│ ├── BuildToolEntry.png
│ ├── BuildToolMain.png
│ ├── CacheSystemFD.png
│ ├── DemoAudio.png
│ ├── DemoBannerAd.png
│ ├── DemoHasShortcutInstalled.png
│ ├── DemoLogin.png
│ ├── DemoMain.png
│ ├── DemoPay.png
│ ├── DemoStorage.png
│ ├── DeviceResolutionSetting.png
│ ├── DeviceResolutions.png
│ ├── GenerateCertificate.png
│ ├── GenerateCertificateImport.png
│ ├── GenerateCertificateParameters.png
│ ├── GenerateCertificatePath.png
│ ├── GenerateCertificatePath2.png
│ ├── GenerateCertificateTip.png
│ ├── GenerateCertificateTools.png
│ ├── OpenCMD.png
│ ├── OutputDirectory.png
│ ├── QuickAppIcon.jpg
│ ├── QuickGameList.png
│ ├── QuickGameStructure.png
│ ├── SDKUpdateArea.png
│ ├── ShaderCompatibility.png
│ ├── ShaderCompatibilityBuild.png
│ ├── ShaderCompatibilityBuildError.png
│ ├── ShaderCompatibilityBuildSuccess.png
│ ├── ShaderCompatibilityConsole.png
│ ├── ShaderCompatibilityError.png
│ ├── ShaderCompatibilitySuccess.png
│ ├── ShaderPhoneDetection.png
│ ├── ShaderPhoneDetection02.png
│ ├── ShaderPhoneDetection03.png
│ ├── ShaderPhoneDetection04.png
│ ├── UnityBuild.png
│ ├── UnityGraphicsAPI.png
│ ├── UnityPlatform.png
│ ├── UnityPublishCompression.png
│ ├── UnityWebGLTemplate.png
│ ├── WebGL2Examine.png
│ ├── WebGL2Setting.png
│ ├── 地铁跑酷.png
│ ├── 大圣顶住.png
│ ├── 小小蚁国.png
│ └── 巨兽战场.png
└── tools
├── unity_webgl_rpk_oppo_v1.unitypackage
├── unity_webgl_rpk_oppo_v5.unitypackage
├── unity_webgl_rpk_oppo_v6.unitypackage
├── unity_webgl_rpk_oppo_v7.unitypackage
├── unity_webgl_rpk_oppo_v8.0.0.unitypackage
├── unity_webgl_rpk_oppo_v8.0.1.unitypackage
├── unity_webgl_rpk_oppo_v8.0.2.unitypackage
├── unity_webgl_rpk_oppo_v8.0.3.unitypackage
├── unity_webgl_rpk_oppo_v8.0.4.unitypackage
├── unity_webgl_rpk_oppo_v8.0.5.unitypackage
├── unity_webgl_rpk_oppo_v8.0.6.unitypackage
├── unity_webgl_rpk_oppo_v8.0.7.unitypackage
├── unity_webgl_rpk_oppo_v8.0.7_open_ability.unitypackage
├── unity_webgl_rpk_oppo_v8.0.8.unitypackage
├── unity_webgl_rpk_oppo_v8.0.9.unitypackage
└── unity_webgl_rpk_oppo_v8.1.0.unitypackage
/.gitignore:
--------------------------------------------------------------------------------
1 | /demo/Assets/OPPO-GAME-SDK-Dev
2 | /demo/Assets/OPPO-GAME-SDK-Dev.meta
3 | /demo/Assets/OPPO-GAME-SDK_UserData
4 | /demo/Assets/OPPO-GAME-SDK_UserData.meta
5 | /demo/Assets/Temp
6 | /demo/Assets/Temp.meta
7 | /demo/Assets/TextMesh Pro
8 | /demo/Assets/TextMesh Pro.meta
9 | /demo/Build
10 | /demo/Library
11 | /demo/Logs
12 | /demo/obj
13 | /demo/ShaderLog
14 | /demo/sign
15 | /demo/Temp
16 | /demo/UserSettings
17 | /demo/.vs
18 | /demo/.vsconfig
19 | /demo/*.csproj
20 | /demo/*.csproj.user
21 | /demo/*.sln
22 | /tools/version
23 | mklink.bat
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Unity WebGL OPPO 小游戏适配方案
2 |
3 | 欢迎使用 Unity WebGL OPPO 小游戏适配(转换)方案,本方案设计的目的是降低游戏转换的开发成本,即您无需更换 Unity 引擎,无需重写核心代码的情况下将原有的 Unity 游戏项目转换到 OPPO 小游戏
4 |
5 | > 支持微信小游戏一键转换OPPO小游戏 [详情](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/develop/games/wx-transfer)
6 |
7 | ## 方案特点
8 |
9 | - 对比 H5 小游戏方案,性能有明显提升
10 | - 保持原引擎工具链与技术栈
11 | - 无需重写核心代码,降低转换成本
12 | - 转换工具可视化,方便开发者进行发布项配置,快速打包小游戏 RPK 包
13 | - OPPO 小游戏平台能力以 C# SDK 方式提供给开发者,快速对接平台开放能力
14 |
15 | ## 转换案例
16 |
17 | | 小小蚁国 | 地铁跑酷 | 大圣顶住 | 巨兽战场 |
18 | | --- | --- | --- | --- |
19 | |
|
|
|
|
20 |
21 | ## 目录导览
22 |
23 | ### 快速开始
24 |
25 | - [导出小游戏](doc/Transform.md)
26 | - [使用 SDK 导出](doc/TransformBySDK.md)
27 | - [使用命令行导出](doc/TransformByCLI.md)
28 | - [运行小游戏](doc/RunQuickGame.md)
29 | - [创建证书](doc/OpensslPlugin.md)
30 | - [发布小游戏](doc/PublishQuickGame.md)
31 |
32 | ### 基本
33 |
34 | - [Unity SDK API](doc/API.md)
35 | - [更新日志](CHANGELOG.md)
36 |
37 | ### 方案与兼容性
38 |
39 | - [技术原理](doc/Technique.md)
40 | - [推荐引擎版本](doc/UnityVersion.md)
41 | - [能力支持](doc/CapabilitySupport.md)
42 | - [Shader 兼容性检测](doc/ShaderCompatibilityDetect.md)
43 | - [使用WebGL2.0](doc/WebGL2.md)
44 |
45 | ### 版本管理
46 |
47 | - [SDK 自检更新](doc/SDKUpdate.md)
48 |
49 | ### 性能优化
50 |
51 | - [资源缓存](doc/AssetCache.md)
52 |
53 | ### 其他
54 |
55 | - [示例工程](doc/Demo.md)
56 | - [技术常见问题 QA](doc/DevelopmentQA.md)
57 | - [问题反馈与联系我们](doc/IssueAndContact.md)
58 |
--------------------------------------------------------------------------------
/demo/Assets/Font.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 608883a6bc1abe740a2f73a98a16a48f
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Font/OPPOSans-Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/demo/Assets/Font/OPPOSans-Bold.ttf
--------------------------------------------------------------------------------
/demo/Assets/Font/OPPOSans-Bold.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e0732024d8484c44bbec3e4007c4a955
3 | TrueTypeFontImporter:
4 | externalObjects: {}
5 | serializedVersion: 4
6 | fontSize: 16
7 | forceTextureCase: -2
8 | characterSpacing: 0
9 | characterPadding: 1
10 | includeFontData: 1
11 | fontName: OPPO Sans
12 | fontNames:
13 | - OPPO Sans
14 | fallbackFontReferences: []
15 | customCharacters:
16 | fontRenderingMode: 0
17 | ascentCalculationMode: 1
18 | useLegacyBoundsCalculation: 0
19 | shouldRoundAdvanceValue: 1
20 | userData:
21 | assetBundleName:
22 | assetBundleVariant:
23 |
--------------------------------------------------------------------------------
/demo/Assets/Font/OPPOSans-Medium.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/demo/Assets/Font/OPPOSans-Medium.ttf
--------------------------------------------------------------------------------
/demo/Assets/Font/OPPOSans-Medium.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a2893cab864f6934d9c3e2e1cdc0291b
3 | TrueTypeFontImporter:
4 | externalObjects: {}
5 | serializedVersion: 4
6 | fontSize: 16
7 | forceTextureCase: -2
8 | characterSpacing: 0
9 | characterPadding: 1
10 | includeFontData: 1
11 | fontName: OPPO Sans
12 | fontNames:
13 | - OPPO Sans
14 | fallbackFontReferences:
15 | - {fileID: 12800000, guid: e0732024d8484c44bbec3e4007c4a955, type: 3}
16 | customCharacters:
17 | fontRenderingMode: 0
18 | ascentCalculationMode: 1
19 | useLegacyBoundsCalculation: 0
20 | shouldRoundAdvanceValue: 1
21 | userData:
22 | assetBundleName:
23 | assetBundleVariant:
24 |
--------------------------------------------------------------------------------
/demo/Assets/Font/OPPOSans-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/demo/Assets/Font/OPPOSans-Regular.ttf
--------------------------------------------------------------------------------
/demo/Assets/Font/OPPOSans-Regular.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c42284fa6c63ce24ba0fbb502ccaf0e3
3 | TrueTypeFontImporter:
4 | externalObjects: {}
5 | serializedVersion: 4
6 | fontSize: 16
7 | forceTextureCase: -2
8 | characterSpacing: 0
9 | characterPadding: 1
10 | includeFontData: 1
11 | fontName: OPPO Sans
12 | fontNames:
13 | - OPPO Sans
14 | fallbackFontReferences:
15 | - {fileID: 12800000, guid: e0732024d8484c44bbec3e4007c4a955, type: 3}
16 | - {fileID: 12800000, guid: a2893cab864f6934d9c3e2e1cdc0291b, type: 3}
17 | customCharacters:
18 | fontRenderingMode: 0
19 | ascentCalculationMode: 1
20 | useLegacyBoundsCalculation: 0
21 | shouldRoundAdvanceValue: 1
22 | userData:
23 | assetBundleName:
24 | assetBundleVariant:
25 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f88be62c2ce442343b06eaaccfd41e9b
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/IJsonWrapper.cs:
--------------------------------------------------------------------------------
1 | #region Header
2 | /**
3 | * IJsonWrapper.cs
4 | * Interface that represents a type capable of handling all kinds of JSON
5 | * data. This is mainly used when mapping objects through JsonMapper, and
6 | * it's implemented by JsonData.
7 | *
8 | * The authors disclaim copyright to this source code. For more details, see
9 | * the COPYING file included with this distribution.
10 | **/
11 | #endregion
12 |
13 |
14 | using System.Collections;
15 | using System.Collections.Specialized;
16 |
17 |
18 | namespace LitJson
19 | {
20 | public enum JsonType
21 | {
22 | None,
23 |
24 | Object,
25 | Array,
26 | String,
27 | Int,
28 | Long,
29 | Double,
30 | Boolean
31 | }
32 |
33 | public interface IJsonWrapper : IList, IOrderedDictionary
34 | {
35 | bool IsArray { get; }
36 | bool IsBoolean { get; }
37 | bool IsDouble { get; }
38 | bool IsInt { get; }
39 | bool IsLong { get; }
40 | bool IsObject { get; }
41 | bool IsString { get; }
42 |
43 | bool GetBoolean ();
44 | double GetDouble ();
45 | int GetInt ();
46 | JsonType GetJsonType ();
47 | long GetLong ();
48 | string GetString ();
49 |
50 | void SetBoolean (bool val);
51 | void SetDouble (double val);
52 | void SetInt (int val);
53 | void SetJsonType (JsonType type);
54 | void SetLong (long val);
55 | void SetString (string val);
56 |
57 | string ToJson ();
58 | void ToJson (JsonWriter writer);
59 | }
60 | }
61 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/IJsonWrapper.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e579c6cb757ea1146a47bfee2b5de54c
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/JsonData.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bb3c389825b79414bba1daededbe827f
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/JsonException.cs:
--------------------------------------------------------------------------------
1 | #region Header
2 | /**
3 | * JsonException.cs
4 | * Base class throwed by LitJSON when a parsing error occurs.
5 | *
6 | * The authors disclaim copyright to this source code. For more details, see
7 | * the COPYING file included with this distribution.
8 | **/
9 | #endregion
10 |
11 |
12 | using System;
13 |
14 |
15 | namespace LitJson
16 | {
17 | public class JsonException :
18 | #if NETSTANDARD1_5
19 | Exception
20 | #else
21 | ApplicationException
22 | #endif
23 | {
24 | public JsonException () : base ()
25 | {
26 | }
27 |
28 | internal JsonException (ParserToken token) :
29 | base (String.Format (
30 | "Invalid token '{0}' in input string", token))
31 | {
32 | }
33 |
34 | internal JsonException (ParserToken token,
35 | Exception inner_exception) :
36 | base (String.Format (
37 | "Invalid token '{0}' in input string", token),
38 | inner_exception)
39 | {
40 | }
41 |
42 | internal JsonException (int c) :
43 | base (String.Format (
44 | "Invalid character '{0}' in input string", (char) c))
45 | {
46 | }
47 |
48 | internal JsonException (int c, Exception inner_exception) :
49 | base (String.Format (
50 | "Invalid character '{0}' in input string", (char) c),
51 | inner_exception)
52 | {
53 | }
54 |
55 |
56 | public JsonException (string message) : base (message)
57 | {
58 | }
59 |
60 | public JsonException (string message, Exception inner_exception) :
61 | base (message, inner_exception)
62 | {
63 | }
64 | }
65 | }
66 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/JsonException.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 52d721dd1f6caa745813d65d2a759e3f
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/JsonMapper.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e5a0bd321e59b204ba64ecfa81f2bf49
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/JsonMockWrapper.cs:
--------------------------------------------------------------------------------
1 | #region Header
2 | /**
3 | * JsonMockWrapper.cs
4 | * Mock object implementing IJsonWrapper, to facilitate actions like
5 | * skipping data more efficiently.
6 | *
7 | * The authors disclaim copyright to this source code. For more details, see
8 | * the COPYING file included with this distribution.
9 | **/
10 | #endregion
11 |
12 |
13 | using System;
14 | using System.Collections;
15 | using System.Collections.Specialized;
16 |
17 |
18 | namespace LitJson
19 | {
20 | public class JsonMockWrapper : IJsonWrapper
21 | {
22 | public bool IsArray { get { return false; } }
23 | public bool IsBoolean { get { return false; } }
24 | public bool IsDouble { get { return false; } }
25 | public bool IsInt { get { return false; } }
26 | public bool IsLong { get { return false; } }
27 | public bool IsObject { get { return false; } }
28 | public bool IsString { get { return false; } }
29 |
30 | public bool GetBoolean () { return false; }
31 | public double GetDouble () { return 0.0; }
32 | public int GetInt () { return 0; }
33 | public JsonType GetJsonType () { return JsonType.None; }
34 | public long GetLong () { return 0L; }
35 | public string GetString () { return ""; }
36 |
37 | public void SetBoolean (bool val) {}
38 | public void SetDouble (double val) {}
39 | public void SetInt (int val) {}
40 | public void SetJsonType (JsonType type) {}
41 | public void SetLong (long val) {}
42 | public void SetString (string val) {}
43 |
44 | public string ToJson () { return ""; }
45 | public void ToJson (JsonWriter writer) {}
46 |
47 |
48 | bool IList.IsFixedSize { get { return true; } }
49 | bool IList.IsReadOnly { get { return true; } }
50 |
51 | object IList.this[int index] {
52 | get { return null; }
53 | set {}
54 | }
55 |
56 | int IList.Add (object value) { return 0; }
57 | void IList.Clear () {}
58 | bool IList.Contains (object value) { return false; }
59 | int IList.IndexOf (object value) { return -1; }
60 | void IList.Insert (int i, object v) {}
61 | void IList.Remove (object value) {}
62 | void IList.RemoveAt (int index) {}
63 |
64 |
65 | int ICollection.Count { get { return 0; } }
66 | bool ICollection.IsSynchronized { get { return false; } }
67 | object ICollection.SyncRoot { get { return null; } }
68 |
69 | void ICollection.CopyTo (Array array, int index) {}
70 |
71 |
72 | IEnumerator IEnumerable.GetEnumerator () { return null; }
73 |
74 |
75 | bool IDictionary.IsFixedSize { get { return true; } }
76 | bool IDictionary.IsReadOnly { get { return true; } }
77 |
78 | ICollection IDictionary.Keys { get { return null; } }
79 | ICollection IDictionary.Values { get { return null; } }
80 |
81 | object IDictionary.this[object key] {
82 | get { return null; }
83 | set {}
84 | }
85 |
86 | void IDictionary.Add (object k, object v) {}
87 | void IDictionary.Clear () {}
88 | bool IDictionary.Contains (object key) { return false; }
89 | void IDictionary.Remove (object key) {}
90 |
91 | IDictionaryEnumerator IDictionary.GetEnumerator () { return null; }
92 |
93 |
94 | object IOrderedDictionary.this[int idx] {
95 | get { return null; }
96 | set {}
97 | }
98 |
99 | IDictionaryEnumerator IOrderedDictionary.GetEnumerator () {
100 | return null;
101 | }
102 | void IOrderedDictionary.Insert (int i, object k, object v) {}
103 | void IOrderedDictionary.RemoveAt (int i) {}
104 | }
105 | }
106 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/JsonMockWrapper.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 74e91501746c4084894acfec55e13891
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/JsonReader.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 740afe8a9ab82de4f85d3b39912bfada
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/JsonWriter.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 13a98316077e71f49b48373154d4f2bd
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/Lexer.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8eb09d141d116ec4e8c63d3f8ae49ab9
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/Netstandard15Polyfill.cs:
--------------------------------------------------------------------------------
1 | #if NETSTANDARD1_5
2 | using System;
3 | using System.Reflection;
4 | namespace LitJson
5 | {
6 | internal static class Netstandard15Polyfill
7 | {
8 | internal static Type GetInterface(this Type type, string name)
9 | {
10 | return type.GetTypeInfo().GetInterface(name);
11 | }
12 |
13 | internal static bool IsClass(this Type type)
14 | {
15 | return type.GetTypeInfo().IsClass;
16 | }
17 |
18 | internal static bool IsEnum(this Type type)
19 | {
20 | return type.GetTypeInfo().IsEnum;
21 | }
22 | }
23 | }
24 | #endif
--------------------------------------------------------------------------------
/demo/Assets/LitJson/Netstandard15Polyfill.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b40ea8428f319a54f939f35c6800d039
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/ParserToken.cs:
--------------------------------------------------------------------------------
1 | #region Header
2 | /**
3 | * ParserToken.cs
4 | * Internal representation of the tokens used by the lexer and the parser.
5 | *
6 | * The authors disclaim copyright to this source code. For more details, see
7 | * the COPYING file included with this distribution.
8 | **/
9 | #endregion
10 |
11 |
12 | namespace LitJson
13 | {
14 | internal enum ParserToken
15 | {
16 | // Lexer tokens (see section A.1.1. of the manual)
17 | None = System.Char.MaxValue + 1,
18 | Number,
19 | True,
20 | False,
21 | Null,
22 | CharSeq,
23 | // Single char
24 | Char,
25 |
26 | // Parser Rules (see section A.2.1 of the manual)
27 | Text,
28 | Object,
29 | ObjectPrime,
30 | Pair,
31 | PairRest,
32 | Array,
33 | ArrayPrime,
34 | Value,
35 | ValueRest,
36 | String,
37 |
38 | // End of input
39 | End,
40 |
41 | // The empty rule
42 | Epsilon
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/ParserToken.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: cd484bf5cabdcc345943174d9dae0312
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/LitJson/litjson.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/demo/Assets/LitJson/litjson.png
--------------------------------------------------------------------------------
/demo/Assets/LitJson/litjson.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2a2acdb22d2bbcb439019a1071f5a612
3 | TextureImporter:
4 | fileIDToRecycleName: {}
5 | externalObjects: {}
6 | serializedVersion: 9
7 | mipmaps:
8 | mipMapMode: 0
9 | enableMipMap: 0
10 | sRGBTexture: 1
11 | linearTexture: 0
12 | fadeOut: 0
13 | borderMipMap: 0
14 | mipMapsPreserveCoverage: 0
15 | alphaTestReferenceValue: 0.5
16 | mipMapFadeDistanceStart: 1
17 | mipMapFadeDistanceEnd: 3
18 | bumpmap:
19 | convertToNormalMap: 0
20 | externalNormalMap: 0
21 | heightScale: 0.25
22 | normalMapFilter: 0
23 | isReadable: 0
24 | streamingMipmaps: 0
25 | streamingMipmapsPriority: 0
26 | grayScaleToAlpha: 0
27 | generateCubemap: 6
28 | cubemapConvolution: 0
29 | seamlessCubemap: 0
30 | textureFormat: 1
31 | maxTextureSize: 2048
32 | textureSettings:
33 | serializedVersion: 2
34 | filterMode: -1
35 | aniso: -1
36 | mipBias: -100
37 | wrapU: 1
38 | wrapV: 1
39 | wrapW: 1
40 | nPOTScale: 0
41 | lightmap: 0
42 | compressionQuality: 50
43 | spriteMode: 1
44 | spriteExtrude: 1
45 | spriteMeshType: 1
46 | alignment: 0
47 | spritePivot: {x: 0.5, y: 0.5}
48 | spritePixelsToUnits: 100
49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
50 | spriteGenerateFallbackPhysicsShape: 1
51 | alphaUsage: 1
52 | alphaIsTransparency: 1
53 | spriteTessellationDetail: -1
54 | textureType: 8
55 | textureShape: 1
56 | singleChannelComponent: 0
57 | maxTextureSizeSet: 0
58 | compressionQualitySet: 0
59 | textureFormatSet: 0
60 | platformSettings:
61 | - serializedVersion: 2
62 | buildTarget: DefaultTexturePlatform
63 | maxTextureSize: 2048
64 | resizeAlgorithm: 0
65 | textureFormat: -1
66 | textureCompression: 1
67 | compressionQuality: 50
68 | crunchedCompression: 0
69 | allowsAlphaSplitting: 0
70 | overridden: 0
71 | androidETC2FallbackOverride: 0
72 | spriteSheet:
73 | serializedVersion: 2
74 | sprites: []
75 | outline: []
76 | physicsShape: []
77 | bones: []
78 | spriteID: 79066d7d3e643f041a0aca8bb1c38106
79 | vertices: []
80 | indices:
81 | edges: []
82 | weights: []
83 | spritePackingTag:
84 | pSDRemoveMatte: 0
85 | pSDShowRemoveMatteOption: 0
86 | userData:
87 | assetBundleName:
88 | assetBundleVariant:
89 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0be4706078668bb448e8181fb9a42fc9
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f62b734fe0af0f84a9a4b0a077b09fc6
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/BuildTool.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 70cc70b9db1144943b8efa66477a60f5
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/BuildTool/BuildConfigAsset.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.IO;
3 | using UnityEditor;
4 | using UnityEngine;
5 |
6 | namespace QGMiniGame
7 | {
8 | [Serializable]
9 | public class BuildFundamentalConfig
10 | {
11 | public const int MIN_PLATFORM_VERSION = 1103;
12 | public const int MIN_PROJECT_VERSION = 1;
13 |
14 | public bool useCustomSign;
15 | public bool useRemoteStreamingAssets;
16 | public int minPlatformVersion = MIN_PLATFORM_VERSION;
17 | public int orientation;
18 | public int projectVersion = MIN_PROJECT_VERSION;
19 | public string exportPath;
20 | public string iconPath;
21 | public string packageName;
22 | public string projectName;
23 | public string projectVersionName;
24 | public string signCertificate;
25 | public string signPrivate;
26 | public string streamingAssetsURL;
27 | }
28 |
29 | [Serializable]
30 | public class BuildAssetCacheConfig
31 | {
32 | public bool enableBundleCache = true;
33 | public bool enableCacheLog;
34 | public bool keepOldVersion;
35 | public int bundleHashLength = 32;
36 | public int defaultReleaseSize = 30;
37 | public string bundlePathIdentifier;
38 | public string excludeClearFiles;
39 | public string excludeFileExtensions = ".json;.hash";
40 | public bool unityUseWebGL2;
41 | public string gameCDNRoot;
42 |
43 | [NonSerialized]
44 | public bool available;
45 | }
46 |
47 | public class BuildConfigAsset : ScriptableObject
48 | {
49 | public static BuildFundamentalConfig Fundamentals => Instance.fundamentals;
50 | [SerializeField]
51 | private BuildFundamentalConfig fundamentals;
52 |
53 | public static BuildAssetCacheConfig AssetCache => Instance.assetCache;
54 | [SerializeField]
55 | private BuildAssetCacheConfig assetCache;
56 |
57 | private BuildConfigAsset() { }
58 |
59 | private const string ASSET_DIR_NAME = "OPPO-GAME-SDK_UserData";
60 | private static readonly string asset_path = Path.Combine("Assets", ASSET_DIR_NAME, "BuildConfig.asset");
61 |
62 | private static BuildConfigAsset Instance
63 | {
64 | get
65 | {
66 | if (!instance)
67 | {
68 | instance = AssetDatabase.LoadAssetAtPath(asset_path);
69 | if (!instance)
70 | {
71 | instance = CreateInstance();
72 | instance.hideFlags = HideFlags.HideInInspector;
73 | if (!AssetDatabase.IsValidFolder(Path.Combine("Assets", ASSET_DIR_NAME)))
74 | {
75 | AssetDatabase.CreateFolder("Assets", ASSET_DIR_NAME);
76 | }
77 | AssetDatabase.CreateAsset(instance, asset_path);
78 | }
79 | }
80 | return instance;
81 | }
82 | }
83 | private static BuildConfigAsset instance;
84 |
85 | public static void Save()
86 | {
87 | if (!instance) return;
88 | EditorUtility.SetDirty(instance);
89 | #if UNITY_2020_3_OR_NEWER
90 | AssetDatabase.SaveAssetIfDirty(instance);
91 | #else
92 | AssetDatabase.SaveAssets();
93 | #endif
94 | }
95 | }
96 | }
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/BuildTool/BuildConfigAsset.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4f6edf1651a4c404ab8b0519cff73132
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/BuildTool/BuildEditorWindow.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 82d4c84b007c03a49a11b103de3d07b9
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/BuildTool/OpensslPlugin.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e21cd0e77e4b18b439bf5f15e033ea9a
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/CmdRunner.cs:
--------------------------------------------------------------------------------
1 | using System.Diagnostics;
2 | using UnityEngine;
3 |
4 | namespace QGMiniGame
5 | {
6 | public static class CmdRunner
7 | {
8 | public static Process CreateShellExProcess(string cmd, string args, string cwd = "", bool noWindow = true)
9 | {
10 | var pStartInfo = new ProcessStartInfo(cmd)
11 | {
12 | Arguments = args,
13 | CreateNoWindow = noWindow,
14 | UseShellExecute = false,
15 | RedirectStandardError = false,
16 | RedirectStandardInput = false,
17 | RedirectStandardOutput = true
18 | };
19 | if (cwd.IsValid())
20 | {
21 | pStartInfo.WorkingDirectory = cwd;
22 | }
23 | return Process.Start(pStartInfo);
24 | }
25 |
26 | public static void RunBat(string batfile, string args, string workingDir = "")
27 | {
28 | var p = CreateShellExProcess(batfile, args, workingDir);
29 | p.Close();
30 | }
31 |
32 | public static string FormatPath(string path)
33 | {
34 | path = path.Replace("/", "\\");
35 | if (Application.platform == RuntimePlatform.OSXEditor)
36 | path = path.Replace("\\", "/");
37 | return path;
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/CmdRunner.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: deee6942da50c07409496c204c977d41
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/EditorUtil.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2b18e1175c67b164ebbf29ddb02d6d6e
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/GlobalDefines.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | namespace QGMiniGame
4 | {
5 | public static class GlobalDefines
6 | {
7 | public const string MINIGAME_MENU_ITEM_ROOT = "OPPO小游戏";
8 | public const string BUILD_TOOL_MODULE = "BuildTool";
9 |
10 | public static bool IsValid(this string str) => !string.IsNullOrEmpty(str);
11 | }
12 | }
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/GlobalDefines.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a841d679c56f8b648becb1bff613e3ac
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/OppoGameSDK_Editor.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "OppoGameSDK_Editor",
3 | "rootNamespace": "QGMiniGame",
4 | "references": [
5 | "OppoGameSDK"
6 | ],
7 | "includePlatforms": [
8 | "Editor"
9 | ],
10 | "excludePlatforms": [],
11 | "allowUnsafeCode": false,
12 | "overrideReferences": false,
13 | "precompiledReferences": [],
14 | "autoReferenced": true,
15 | "defineConstraints": [],
16 | "versionDefines": [],
17 | "noEngineReferences": false
18 | }
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/OppoGameSDK_Editor.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0bf4606b40483d24dbf83b6deec7e04e
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/QGGameTools.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 188141d705f3e0143a035dfeb5458638
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/ShaderTools.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c4f9bebce2740754d8e2cea7fd787300
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/ShaderTools/AutoSetScriptingDefineSymbols.cs:
--------------------------------------------------------------------------------
1 | using UnityEditor;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace QGMiniGame
6 | {
7 | public class AutoSetScriptingDefineSymbols : AssetPostprocessor
8 | {
9 | private static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths)
10 | {
11 | Dictionary scoreDict = new Dictionary();
12 | //Key 新增资源 Value 新增脚本宏
13 | scoreDict.Add("OppoGameSDK", "OppoGameSDK");
14 | foreach (string importedAsset in importedAssets)
15 | {
16 | foreach (KeyValuePair kvp in scoreDict)
17 | {
18 | if (importedAsset.Contains(kvp.Key))
19 | {
20 | SetScriptingDefineSymbols(kvp.Value);
21 | scoreDict.Clear();
22 | break;
23 | }
24 | }
25 | }
26 | scoreDict.Clear();
27 | }
28 |
29 | private static void SetScriptingDefineSymbols(string DefineSymbols)
30 | {
31 | // 获取当前的构建平台
32 | BuildTargetGroup targetGroup = EditorUserBuildSettings.selectedBuildTargetGroup;
33 |
34 | // 获取当前的脚本宏
35 | string currentDefines = PlayerSettings.GetScriptingDefineSymbolsForGroup(targetGroup);
36 |
37 | string[] splitStrings = currentDefines.Split(';');
38 |
39 | if (splitStrings.Length > 0)
40 | {
41 | for (global::System.Int32 i = 0; i < splitStrings.Length; i++)
42 | {
43 | if (splitStrings[i] == DefineSymbols)
44 | {
45 | //当前已有这个脚本宏
46 | return;
47 | }
48 | }
49 | }
50 | // 添加新的脚本宏
51 | string newDefines = currentDefines + ";" + DefineSymbols;
52 |
53 | // 设置新的脚本宏
54 | PlayerSettings.SetScriptingDefineSymbolsForGroup(targetGroup, newDefines);
55 | }
56 | }
57 | }
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/ShaderTools/AutoSetScriptingDefineSymbols.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6e90ef1d1bfefd04bb03d8d19fb229d9
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/ShaderTools/ShaderRuntimeDetector.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bf9b17edde76af340bb7f001c0f5b9e5
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/ShaderTools/ShaderStaticDetector.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f97e3e16ff2ebf743a9bd8544fc96b96
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/VersionInfo.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | namespace QGMiniGame
4 | {
5 | public static class VersionInfo
6 | {
7 | ///
8 | /// @note: 版本更新记得升级版本号
9 | ///
10 | public const string VERSION = "8.1.0";
11 | }
12 | }
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Editor/VersionInfo.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 196c8e1aa5e999545a855b1fea9d9aff
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Plugins.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 83cd30e96cd7232448e751bc6e548dc3
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Plugins/qg.minigame.jslib.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 13f10f1e406ed75429ed7dcd5100bbb9
3 | PluginImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | iconMap: {}
7 | executionOrder: {}
8 | defineConstraints: []
9 | isPreloaded: 0
10 | isOverridable: 0
11 | isExplicitlyReferenced: 0
12 | validateReferences: 1
13 | platformData:
14 | - first:
15 | Any:
16 | second:
17 | enabled: 0
18 | settings: {}
19 | - first:
20 | Editor: Editor
21 | second:
22 | enabled: 0
23 | settings:
24 | DefaultValueInitialized: true
25 | - first:
26 | WebGL: WebGL
27 | second:
28 | enabled: 1
29 | settings: {}
30 | userData:
31 | assetBundleName:
32 | assetBundleVariant:
33 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 250ac078ab77ec744808db49aeb03a66
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/ArTools/QGArManager.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 754dd393a37a5904babd65276e3d1d3a
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/OppoGameSDK.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "OppoGameSDK",
3 | "rootNamespace": "QGMiniGame",
4 | "references": [],
5 | "includePlatforms": [
6 | "Editor",
7 | "WebGL"
8 | ],
9 | "excludePlatforms": [],
10 | "allowUnsafeCode": false,
11 | "overrideReferences": false,
12 | "precompiledReferences": [],
13 | "autoReferenced": true,
14 | "defineConstraints": [],
15 | "versionDefines": [],
16 | "noEngineReferences": false
17 | }
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/OppoGameSDK.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4f07a863d6a06924589ff792f0d14301
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QG.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2cd083e67a934664593e8843db0f35c1
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGAudioPlayer.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UnityEngine;
3 |
4 |
5 | namespace QGMiniGame
6 | {
7 | public class QGAudioPlayer : QGBasePlayer
8 | {
9 | public QGAudioPlayer(string playerId) : base(playerId)
10 | {
11 |
12 | }
13 |
14 |
15 | //volume 0~1
16 | public virtual void SetVolume(float volume)
17 | {
18 | QGMiniGameManager.Instance.AudioPlayerVolume(playerId, volume);
19 | }
20 |
21 | public virtual void SetLoop(bool bl)
22 | {
23 | QGMiniGameManager.Instance.AudioPlayerLoop(playerId, bl);
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGAudioPlayer.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e4e1e6ab2f7ad684fa46fb14d71e915d
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGBannerAd.cs:
--------------------------------------------------------------------------------
1 |
2 | using UnityEngine;
3 | using System;
4 |
5 | namespace QGMiniGame
6 | {
7 | public class QGBannerAd : QGBaseAd
8 | {
9 | public QGBannerAd(string adId) : base(adId)
10 | {
11 |
12 | }
13 | }
14 | }
15 |
16 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGBannerAd.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 58c16beecb328c54ea195e073c65bf82
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGBaseAd.cs:
--------------------------------------------------------------------------------
1 |
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using System;
5 |
6 | namespace QGMiniGame
7 | {
8 | public class QGBaseAd
9 | {
10 |
11 | public static Dictionary QGAds = new Dictionary();
12 |
13 | public string adId; // 广告的唯一标识
14 | public Action onLoadAction;
15 | public Action onErrorAction;
16 | public Action onCloseAction;
17 | public Action onHideAction;
18 |
19 | public QGBaseAd(string adId)
20 | {
21 | this.adId = adId;
22 | QGAds.Add(adId, this);
23 | }
24 |
25 | public virtual void Show(Action success = null, Action failed = null)
26 | {
27 | QGMiniGameManager.Instance.ShowAd(adId, success, failed);
28 | }
29 |
30 | public virtual void Load(Action success = null, Action failed = null)
31 | {
32 | QGMiniGameManager.Instance.LoadAd(adId, success, failed);
33 | }
34 |
35 | public virtual void OnLoad(Action onLoad)
36 | {
37 | onLoadAction += onLoad;
38 | }
39 |
40 |
41 | public virtual void OffLoad(Action offLoad)
42 | {
43 | onLoadAction -= offLoad;
44 | }
45 |
46 | public void OnError(Action onError)
47 | {
48 | onErrorAction += onError;
49 | }
50 |
51 | public void OffError(Action offError)
52 | {
53 | onErrorAction -= offError;
54 | }
55 |
56 | public virtual void OnClose(Action onClose)
57 | {
58 | onCloseAction += onClose;
59 | }
60 |
61 | public virtual void OffClose(Action offClose)
62 | {
63 | onCloseAction -= offClose;
64 | }
65 |
66 | public void OnHide(Action onHide)
67 | {
68 | onHideAction += onHide;
69 | }
70 |
71 | public void OffHide(Action offHide)
72 | {
73 | onHideAction -= offHide;
74 | }
75 |
76 | public virtual void Hide(Action success = null, Action failed = null)
77 | {
78 | QGMiniGameManager.Instance.HideAd(adId, success, failed);
79 | }
80 |
81 | public void Destroy()
82 | {
83 | QGMiniGameManager.Instance.DestroyAd(adId);
84 | QGAds.Remove(adId);
85 | }
86 |
87 | }
88 | }
89 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGBaseAd.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 13034b9e733f6e047ab30edd0232d5ba
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGBasePlayer.cs:
--------------------------------------------------------------------------------
1 |
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using System;
5 |
6 | namespace QGMiniGame
7 | {
8 | public class QGBasePlayer
9 | {
10 |
11 | public static Dictionary QGPlayers = new Dictionary();
12 |
13 | public string playerId; // 播放器的唯一标识
14 | public Action onPlayAction;
15 | public Action onCanPlayAction;
16 | public Action onPauseAction;
17 | public Action onStopAction;
18 | public Action onEndedAction;
19 | public Action onTimeUpdateAction;
20 | public Action onErrorAction;
21 | public Action onWaitingAction;
22 | public Action onSeekingAction;
23 | public Action onSeekedAction;
24 |
25 | public QGBasePlayer(string playerId)
26 | {
27 | this.playerId = playerId;
28 | QGPlayers.Add(playerId, this);
29 | }
30 |
31 | public virtual void Play()
32 | {
33 | QGMiniGameManager.Instance.PlayMedia(playerId);
34 | }
35 |
36 | public virtual void Pause()
37 | {
38 | QGMiniGameManager.Instance.PauseMedia(playerId);
39 | }
40 |
41 | public virtual void Stop()
42 | {
43 | QGMiniGameManager.Instance.StopMedia(playerId);
44 | }
45 |
46 | public virtual void Seek(float time)
47 | {
48 | QGMiniGameManager.Instance.SeekMedia(playerId,time);
49 | }
50 |
51 | public void Destroy()
52 | {
53 | QGMiniGameManager.Instance.DestroyMedia(playerId);
54 | QGPlayers.Remove(playerId);
55 | }
56 |
57 | public virtual void OnPlay(Action onPlay)
58 | {
59 | onPlayAction += onPlay;
60 | }
61 |
62 | public virtual void OffPlay(Action offPlay)
63 | {
64 | onPlayAction -= offPlay;
65 | }
66 |
67 | public virtual void OnCanPlay(Action onCanPlay)
68 | {
69 | onCanPlayAction += onCanPlay;
70 | }
71 |
72 | public virtual void OffCanPlay(Action offCanPlay)
73 | {
74 | onCanPlayAction -= offCanPlay;
75 | }
76 |
77 | public virtual void OnPause(Action onPause)
78 | {
79 | onPauseAction += onPause;
80 | }
81 |
82 | public virtual void OffPause(Action offPause)
83 | {
84 | onPauseAction -= offPause;
85 | }
86 |
87 | public virtual void OnStop(Action onStop)
88 | {
89 | onStopAction += onStop;
90 | }
91 |
92 | public virtual void OffStop(Action offStop)
93 | {
94 | onStopAction -= offStop;
95 | }
96 |
97 | public virtual void OnEnded(Action onEnded)
98 | {
99 | onEndedAction += onEnded;
100 | }
101 |
102 | public virtual void OffEnded(Action offEnded)
103 | {
104 | onEndedAction -= offEnded;
105 | }
106 | public virtual void OnTimeUpdate(Action onTimeUpdate)
107 | {
108 | onTimeUpdateAction += onTimeUpdate;
109 | }
110 |
111 | public virtual void OffTimeUpdate(Action offTimeUpdate)
112 | {
113 | onTimeUpdateAction -= offTimeUpdate;
114 | }
115 | public virtual void OnError(Action onError)
116 | {
117 | onErrorAction += onError;
118 | }
119 |
120 | public virtual void OffError(Action offError)
121 | {
122 | onErrorAction -= offError;
123 | }
124 | public virtual void OnWaiting(Action onWaiting)
125 | {
126 | onWaitingAction += onWaiting;
127 | }
128 |
129 | public virtual void OffWaiting(Action offWaiting)
130 | {
131 | onWaitingAction -= offWaiting;
132 | }
133 | public virtual void OnSeeking(Action onSeeking)
134 | {
135 | onSeekingAction += onSeeking;
136 | }
137 |
138 | public virtual void OffSeeking(Action offSeeking)
139 | {
140 | onSeekingAction -= offSeeking;
141 | }
142 | public virtual void OnSeeked(Action onSeeked)
143 | {
144 | onSeekedAction += onSeeked;
145 | }
146 |
147 | public virtual void OffSeeked(Action offSeeked)
148 | {
149 | onSeekedAction -= offSeeked;
150 | }
151 | }
152 | }
153 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGBasePlayer.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3975654284c9b134392cc46a74851ed5
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGCallBackManager.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections;
3 | using System.Collections.Generic;
4 | using UnityEngine;
5 |
6 | namespace QGMiniGame
7 | {
8 | public class QGCallBackManager
9 | {
10 | public static readonly Hashtable responseCallBacks = new Hashtable();
11 |
12 | private static int id = 0;
13 |
14 | private static int GenarateId()
15 | {
16 | if (id > 1000000)
17 | {
18 | id = 0;
19 | }
20 | id++;
21 |
22 | return id;
23 | }
24 |
25 | public static string Add(Action callback)
26 | where T : QGBaseResponse
27 | {
28 | if (callback == null)
29 | {
30 | return "";
31 | }
32 | var key = getKey();
33 | responseCallBacks.Add (key, callback);
34 | return key;
35 | }
36 |
37 | public static string getKey()
38 | {
39 | int id = GenarateId();
40 | TimeSpan ts = DateTime.Now - new DateTime(1970, 1, 1, 0, 0, 0, 0);
41 | var time = Convert.ToInt64(ts.TotalSeconds);
42 | return (time.ToString() + '-' + id);
43 | }
44 |
45 | public static void InvokeResponseCallback(string str, bool remove = true)
46 | where T : QGBaseResponse
47 | {
48 | QGLog.LogWarning("remove = " + remove);
49 | if (str != null)
50 | {
51 | T res = JsonUtility.FromJson(str);
52 | var id = res.callbackId;
53 | if (responseCallBacks[id] != null)
54 | {
55 | var callback = (Action) responseCallBacks[id];
56 | callback (res);
57 | if (remove)
58 | {
59 | responseCallBacks.Remove (id);
60 | }
61 | }
62 | else
63 | {
64 | QGLog
65 | .LogWarning("InvokeResponseCallback responseCallBacks get null id = " +
66 | id);
67 | }
68 | }
69 | else
70 | {
71 | QGLog.LogWarning("InvokeResponseCallback str is null");
72 | }
73 | }
74 | }
75 | }
76 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGCallBackManager.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8d9aad28976d4dc47a782d3c20e517bf
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGCustomAd.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UnityEngine;
3 |
4 |
5 | namespace QGMiniGame
6 | {
7 | public class QGCustomAd : QGBaseAd
8 | {
9 | public Action onShowAction;
10 |
11 | public QGCustomAd(string adId) : base(adId)
12 | {
13 |
14 | }
15 |
16 | public void OnShow(Action onShow)
17 | {
18 | onShowAction += onShow;
19 | }
20 |
21 |
22 | public void OffShow(Action offShow)
23 | {
24 | onShowAction -= offShow;
25 | }
26 |
27 | public bool IsShow()
28 | {
29 | return QGMiniGameManager.Instance.IsShow(adId);
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGCustomAd.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7459fab73770dee4bb3e40184de96fd6
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGGameBannerAd.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UnityEngine;
3 |
4 |
5 | namespace QGMiniGame
6 | {
7 | public class QGGameBannerAd : QGBaseAd
8 | {
9 | public Action onShowAction;
10 | public QGGameBannerAd(string adId) : base(adId)
11 | {
12 |
13 | }
14 |
15 | public void OnShow(Action onShow)
16 | {
17 | onShowAction += onShow;
18 | }
19 |
20 |
21 | public void OffShow(Action offShow)
22 | {
23 | onShowAction -= offShow;
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGGameBannerAd.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9177a7d4827dee444b411d1b2fcafe95
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGGameDrawerAd.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UnityEngine;
3 |
4 |
5 | namespace QGMiniGame
6 | {
7 | public class QGGameDrawerAd : QGBaseAd
8 | {
9 | public Action onShowAction;
10 |
11 | public QGGameDrawerAd(string adId) : base(adId)
12 | {
13 |
14 | }
15 |
16 | public void OnShow(Action onShow)
17 | {
18 | onShowAction += onShow;
19 | }
20 |
21 |
22 | public void OffShow(Action offShow)
23 | {
24 | onShowAction -= offShow;
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGGameDrawerAd.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6b16d9e625be25941837fca3710dd624
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGGamePortalAd.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UnityEngine;
3 |
4 |
5 | namespace QGMiniGame
6 | {
7 | public class QGGamePortalAd : QGBaseAd
8 | {
9 |
10 | public QGGamePortalAd(string adId) : base(adId)
11 | {
12 |
13 | }
14 |
15 | public void Load(Action success = null, Action failed = null)
16 | {
17 | QGMiniGameManager.Instance.LoadAd(adId, success, failed);
18 | }
19 | }
20 | }
21 |
22 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGGamePortalAd.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 69db30278c0f458489394a586c5a9db1
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGInterstitialAd.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UnityEngine;
3 |
4 | namespace QGMiniGame
5 | {
6 | public class QGInterstitialAd : QGBaseAd
7 | {
8 |
9 |
10 | public QGInterstitialAd(string adId) : base(adId)
11 | {
12 |
13 | }
14 |
15 | public override void Hide(Action success = null, Action failed = null)
16 | {
17 | QGLog.LogWarning("QGInterstitialAd no Hide Function");
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGInterstitialAd.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1ac024bfe1d79fa48bae1da8340e664b
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGLog.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 |
6 |
7 | namespace QGMiniGame
8 | {
9 | public class QGLog
10 | {
11 | private static string TAG = "QGMiniGame : ";
12 |
13 | public static void Log(string msg)
14 | {
15 | Debug.Log(TAG + msg);
16 | }
17 |
18 | public static void LogWarning(string msg)
19 | {
20 | Debug.LogWarning(TAG + msg);
21 | }
22 |
23 | public static void LogError(string msg)
24 | {
25 | Debug.LogError(TAG + msg);
26 | }
27 | }
28 | }
29 |
30 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGLog.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 806220161ed3b3c40a2f7cbfdbe59f33
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGMiniGameManager.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f4128b0f4ff60e847acc79ff8ee2c6aa
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGModel.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3de0f3726a3405b45ab18247fccac4dd
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGRecordManager.cs:
--------------------------------------------------------------------------------
1 |
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 | using System;
5 |
6 | namespace QGMiniGame
7 | {
8 | public class QGRecordManager
9 | {
10 | public static Dictionary QGRecords = new Dictionary();
11 | public string recordId; // 录音的唯一标识
12 | public Action onStartAction; //监听录音开始事件
13 | public Action onResumeAction; //监听录音继续事件
14 | public Action onPauseAction; //监听录音暂停事件
15 | public Action onStopAction; //监听录音结束事件
16 | public Action onFrameRecordedAction; //监听已录制完指定帧大小的文件事件。如果设置了 frameSize,则会回调此事件
17 | public Action onErrorAction; //监听录音错误事件
18 |
19 | public QGRecordManager(string recordId)
20 | {
21 | this.recordId = recordId;
22 | QGRecords.Add(recordId, this);
23 | }
24 |
25 | public virtual void Start(RecordParam recordParam = null)
26 | {
27 | QGMiniGameManager.Instance.RecorderStart(recordId, recordParam);
28 | }
29 |
30 | public virtual void Pause()
31 | {
32 | QGMiniGameManager.Instance.RecorderPause(recordId);
33 | }
34 | public virtual void Resume()
35 | {
36 | QGMiniGameManager.Instance.RecorderResume(recordId);
37 | }
38 |
39 | public virtual void Stop()
40 | {
41 | QGMiniGameManager.Instance.RecorderStop(recordId);
42 | }
43 |
44 | public virtual void OnStart(Action onStart)
45 | {
46 | onStartAction += onStart;
47 | }
48 |
49 | public virtual void OffStart(Action offStart)
50 | {
51 | onStartAction -= offStart;
52 | }
53 |
54 |
55 | public virtual void OnResume(Action onResume)
56 | {
57 | onResumeAction += onResume;
58 | }
59 |
60 | public virtual void OffResume(Action offResume)
61 | {
62 | onResumeAction -= offResume;
63 | }
64 |
65 | public virtual void OnPause(Action onPause)
66 | {
67 | onPauseAction += onPause;
68 | }
69 |
70 | public virtual void OffPause(Action offPause)
71 | {
72 | onPauseAction -= offPause;
73 | }
74 |
75 | public virtual void OnStop(Action onStop)
76 | {
77 | onStopAction += onStop;
78 | }
79 |
80 | public virtual void OffStop(Action offStop)
81 | {
82 | onStopAction -= offStop;
83 | }
84 |
85 |
86 | public virtual void OnFrameRecorded(Action onFrameRecorded)
87 | {
88 | onFrameRecordedAction += onFrameRecorded;
89 | }
90 |
91 | public virtual void OffFrameRecorded(Action offFrameRecorded)
92 | {
93 | onFrameRecordedAction -= offFrameRecorded;
94 | }
95 |
96 | public virtual void OnError(Action onError)
97 | {
98 | onErrorAction += onError;
99 | }
100 |
101 | public virtual void OffError(Action offError)
102 | {
103 | onErrorAction -= offError;
104 | }
105 | }
106 | }
107 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGRecordManager.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c0192f1433f47384aa513c3fb2760722
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGRewardedVideoAd.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 | using System;
3 |
4 |
5 |
6 | namespace QGMiniGame
7 | {
8 | public class QGRewardedVideoAd : QGBaseAd
9 | {
10 |
11 | public Action onCloseRewardedVideoAction;
12 |
13 | public QGRewardedVideoAd(string adId) : base(adId)
14 | {
15 |
16 | }
17 |
18 | public override void Hide(Action success = null, Action failed = null)
19 | {
20 | QGLog.LogWarning("QGRewardedVideoAd no Hide Function");
21 | }
22 |
23 | public void Load(Action success = null, Action failed = null)
24 | {
25 | QGMiniGameManager.Instance.LoadAd(adId, success, failed);
26 | }
27 |
28 |
29 | public void OnClose(Action onClose)
30 | {
31 | onCloseRewardedVideoAction += onClose;
32 | }
33 |
34 |
35 | public void OffClose(Action offClose)
36 | {
37 | onCloseRewardedVideoAction -= offClose;
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGRewardedVideoAd.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 46875f47006d54840a0705145bbcba69
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGVideoPlayer.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UnityEngine;
3 |
4 |
5 | namespace QGMiniGame
6 | {
7 | public class QGVideoPlayer : QGBasePlayer
8 | {
9 | public QGVideoPlayer(string adId) : base(adId)
10 | {
11 |
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/QGVideoPlayer.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1bb4b8c5b0609674a8fc1fb002631576
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/ShaderTools.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0cb621040901a0c4d9919752ed3a9b77
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/ShaderTools/ShaderAssets.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/demo/Assets/OPPO-GAME-SDK/Runtime/ShaderTools/ShaderAssets.cs
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/ShaderTools/ShaderAssets.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a56845a43f6c514478202986f2d7e0e9
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/ShaderTools/ShaderFinder.json:
--------------------------------------------------------------------------------
1 | {
2 | "ShaderApi": [
3 | "geometry",
4 | "CustomTessellation.cginc",
5 | "Tessellation",
6 | "addshadow",
7 | "#pragma kernel"
8 | ]
9 | }
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/ShaderTools/ShaderFinder.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7a970cd70e90f9a4f9a7e0474dbb9705
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/ShaderTools/ShaderListener.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4a4e212136dd76f47887dbca443c9715
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/ShaderTools/TempPrefabName.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using UnityEngine;
3 |
4 | namespace QGMiniGame
5 | {
6 | public class TempPrefabName : MonoBehaviour
7 | {
8 | public List _prefabNames = new List();
9 | }
10 | }
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/ShaderTools/TempPrefabName.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ce3f2b3af38e15b4580de30ef2ebc5cc
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/Utilities.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f7011e65cc7d2a4478c0d82305fd788e
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/Utilities/Utilities.cs:
--------------------------------------------------------------------------------
1 | using System.Text;
2 | using UnityEngine;
3 |
4 | namespace QGMiniGame
5 | {
6 | public static class Utilities
7 | {
8 | public static string MD5(this byte[] data)
9 | {
10 | byte[] hashBytes;
11 | using (var md5 = System.Security.Cryptography.MD5.Create())
12 | {
13 | hashBytes = md5.ComputeHash(data);
14 | }
15 | var sb = new StringBuilder();
16 | foreach (var hash in hashBytes)
17 | {
18 | sb.Append(hash.ToString("x2"));
19 | }
20 | return sb.ToString();
21 | }
22 | }
23 | }
--------------------------------------------------------------------------------
/demo/Assets/OPPO-GAME-SDK/Runtime/Utilities/Utilities.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 88d527a414582f44fb8d710814360d9b
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Resources.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: df674b6a348dc76499eebbc82f5fc0bc
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Resources/BillingMode.json:
--------------------------------------------------------------------------------
1 | {"androidStore":"GooglePlay"}
--------------------------------------------------------------------------------
/demo/Assets/Resources/BillingMode.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a540f33f22f790846b653470c84442f1
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c2a507eec32787743ba99bf66df6595d
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b8a200cabaa84814b8cb309115999e2c
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/Interstitial.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d3dca9b1d97aaf4439c06c763b15cec8
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/InterstitialSettings.lighting:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!850595691 &4890085278179872738
4 | LightingSettings:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_Name: InterstitialSettings
10 | serializedVersion: 4
11 | m_GIWorkflowMode: 1
12 | m_EnableBakedLightmaps: 0
13 | m_EnableRealtimeLightmaps: 0
14 | m_RealtimeEnvironmentLighting: 1
15 | m_BounceScale: 1
16 | m_AlbedoBoost: 1
17 | m_IndirectOutputScale: 1
18 | m_UsingShadowmask: 1
19 | m_BakeBackend: 1
20 | m_LightmapMaxSize: 1024
21 | m_BakeResolution: 40
22 | m_Padding: 2
23 | m_LightmapCompression: 3
24 | m_AO: 0
25 | m_AOMaxDistance: 1
26 | m_CompAOExponent: 1
27 | m_CompAOExponentDirect: 0
28 | m_ExtractAO: 0
29 | m_MixedBakeMode: 2
30 | m_LightmapsBakeMode: 1
31 | m_FilterMode: 1
32 | m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
33 | m_ExportTrainingData: 0
34 | m_TrainingDataDestination: TrainingData
35 | m_RealtimeResolution: 2
36 | m_ForceWhiteAlbedo: 0
37 | m_ForceUpdates: 0
38 | m_FinalGather: 0
39 | m_FinalGatherRayCount: 256
40 | m_FinalGatherFiltering: 1
41 | m_PVRCulling: 1
42 | m_PVRSampling: 1
43 | m_PVRDirectSampleCount: 32
44 | m_PVRSampleCount: 512
45 | m_PVREnvironmentSampleCount: 512
46 | m_PVREnvironmentReferencePointCount: 2048
47 | m_LightProbeSampleCountMultiplier: 4
48 | m_PVRBounces: 2
49 | m_PVRMinBounces: 2
50 | m_PVREnvironmentMIS: 0
51 | m_PVRFilteringMode: 2
52 | m_PVRDenoiserTypeDirect: 0
53 | m_PVRDenoiserTypeIndirect: 0
54 | m_PVRDenoiserTypeAO: 0
55 | m_PVRFilterTypeDirect: 0
56 | m_PVRFilterTypeIndirect: 0
57 | m_PVRFilterTypeAO: 0
58 | m_PVRFilteringGaussRadiusDirect: 1
59 | m_PVRFilteringGaussRadiusIndirect: 5
60 | m_PVRFilteringGaussRadiusAO: 2
61 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
62 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
63 | m_PVRFilteringAtrousPositionSigmaAO: 1
64 | m_PVRTiledBaking: 0
65 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/InterstitialSettings.lighting.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 954e80b1b026072458ddabdfe1f26ea2
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 4890085278179872738
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/PlayerPrefs.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1209dbb85201e4945ba0d12b84b822b4
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/StorageItem.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d8d2372b114b6494fb479a60f8809869
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/UserCloudStorageItem.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 218c9b38f2a7aa443bdae7d02707d9e8
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/audio.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 422c40e46d7cbe440990cd5356da26d8
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/audioSettings.lighting:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!850595691 &4890085278179872738
4 | LightingSettings:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_Name: audioSettings
10 | serializedVersion: 4
11 | m_GIWorkflowMode: 1
12 | m_EnableBakedLightmaps: 0
13 | m_EnableRealtimeLightmaps: 0
14 | m_RealtimeEnvironmentLighting: 1
15 | m_BounceScale: 1
16 | m_AlbedoBoost: 1
17 | m_IndirectOutputScale: 1
18 | m_UsingShadowmask: 1
19 | m_BakeBackend: 1
20 | m_LightmapMaxSize: 1024
21 | m_BakeResolution: 40
22 | m_Padding: 2
23 | m_LightmapCompression: 3
24 | m_AO: 0
25 | m_AOMaxDistance: 1
26 | m_CompAOExponent: 1
27 | m_CompAOExponentDirect: 0
28 | m_ExtractAO: 0
29 | m_MixedBakeMode: 2
30 | m_LightmapsBakeMode: 1
31 | m_FilterMode: 1
32 | m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
33 | m_ExportTrainingData: 0
34 | m_TrainingDataDestination: TrainingData
35 | m_RealtimeResolution: 2
36 | m_ForceWhiteAlbedo: 0
37 | m_ForceUpdates: 0
38 | m_FinalGather: 0
39 | m_FinalGatherRayCount: 256
40 | m_FinalGatherFiltering: 1
41 | m_PVRCulling: 1
42 | m_PVRSampling: 1
43 | m_PVRDirectSampleCount: 32
44 | m_PVRSampleCount: 512
45 | m_PVREnvironmentSampleCount: 512
46 | m_PVREnvironmentReferencePointCount: 2048
47 | m_LightProbeSampleCountMultiplier: 4
48 | m_PVRBounces: 2
49 | m_PVRMinBounces: 2
50 | m_PVREnvironmentMIS: 0
51 | m_PVRFilteringMode: 2
52 | m_PVRDenoiserTypeDirect: 0
53 | m_PVRDenoiserTypeIndirect: 0
54 | m_PVRDenoiserTypeAO: 0
55 | m_PVRFilterTypeDirect: 0
56 | m_PVRFilterTypeIndirect: 0
57 | m_PVRFilterTypeAO: 0
58 | m_PVRFilteringGaussRadiusDirect: 1
59 | m_PVRFilteringGaussRadiusIndirect: 5
60 | m_PVRFilteringGaussRadiusAO: 2
61 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
62 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
63 | m_PVRFilteringAtrousPositionSigmaAO: 1
64 | m_PVRTiledBaking: 0
65 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/audioSettings.lighting.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 772e51294b6cad54c8a61c0612d1ebcb
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 4890085278179872738
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/banner.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9d2ccf09bd4973845ab2eabf7a533457
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/bannerSettings.lighting:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!850595691 &4890085278179872738
4 | LightingSettings:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_Name: bannerSettings
10 | serializedVersion: 4
11 | m_GIWorkflowMode: 1
12 | m_EnableBakedLightmaps: 0
13 | m_EnableRealtimeLightmaps: 0
14 | m_RealtimeEnvironmentLighting: 1
15 | m_BounceScale: 1
16 | m_AlbedoBoost: 1
17 | m_IndirectOutputScale: 1
18 | m_UsingShadowmask: 1
19 | m_BakeBackend: 1
20 | m_LightmapMaxSize: 1024
21 | m_BakeResolution: 40
22 | m_Padding: 2
23 | m_LightmapCompression: 3
24 | m_AO: 0
25 | m_AOMaxDistance: 1
26 | m_CompAOExponent: 1
27 | m_CompAOExponentDirect: 0
28 | m_ExtractAO: 0
29 | m_MixedBakeMode: 2
30 | m_LightmapsBakeMode: 1
31 | m_FilterMode: 1
32 | m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
33 | m_ExportTrainingData: 0
34 | m_TrainingDataDestination: TrainingData
35 | m_RealtimeResolution: 2
36 | m_ForceWhiteAlbedo: 0
37 | m_ForceUpdates: 0
38 | m_FinalGather: 0
39 | m_FinalGatherRayCount: 256
40 | m_FinalGatherFiltering: 1
41 | m_PVRCulling: 1
42 | m_PVRSampling: 1
43 | m_PVRDirectSampleCount: 32
44 | m_PVRSampleCount: 512
45 | m_PVREnvironmentSampleCount: 512
46 | m_PVREnvironmentReferencePointCount: 2048
47 | m_LightProbeSampleCountMultiplier: 4
48 | m_PVRBounces: 2
49 | m_PVRMinBounces: 2
50 | m_PVREnvironmentMIS: 0
51 | m_PVRFilteringMode: 2
52 | m_PVRDenoiserTypeDirect: 0
53 | m_PVRDenoiserTypeIndirect: 0
54 | m_PVRDenoiserTypeAO: 0
55 | m_PVRFilterTypeDirect: 0
56 | m_PVRFilterTypeIndirect: 0
57 | m_PVRFilterTypeAO: 0
58 | m_PVRFilteringGaussRadiusDirect: 1
59 | m_PVRFilteringGaussRadiusIndirect: 5
60 | m_PVRFilteringGaussRadiusAO: 2
61 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
62 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
63 | m_PVRFilteringAtrousPositionSigmaAO: 1
64 | m_PVRTiledBaking: 0
65 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/bannerSettings.lighting.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 957764d809088714bb7b648e031ea8e7
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 4890085278179872738
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/custom.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6c76b09e23d33d04692f77b1a6f8a819
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/customSettings.lighting:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!850595691 &4890085278179872738
4 | LightingSettings:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_Name: customSettings
10 | serializedVersion: 4
11 | m_GIWorkflowMode: 1
12 | m_EnableBakedLightmaps: 0
13 | m_EnableRealtimeLightmaps: 0
14 | m_RealtimeEnvironmentLighting: 1
15 | m_BounceScale: 1
16 | m_AlbedoBoost: 1
17 | m_IndirectOutputScale: 1
18 | m_UsingShadowmask: 1
19 | m_BakeBackend: 1
20 | m_LightmapMaxSize: 1024
21 | m_BakeResolution: 40
22 | m_Padding: 2
23 | m_LightmapCompression: 3
24 | m_AO: 0
25 | m_AOMaxDistance: 1
26 | m_CompAOExponent: 1
27 | m_CompAOExponentDirect: 0
28 | m_ExtractAO: 0
29 | m_MixedBakeMode: 2
30 | m_LightmapsBakeMode: 1
31 | m_FilterMode: 1
32 | m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
33 | m_ExportTrainingData: 0
34 | m_TrainingDataDestination: TrainingData
35 | m_RealtimeResolution: 2
36 | m_ForceWhiteAlbedo: 0
37 | m_ForceUpdates: 0
38 | m_FinalGather: 0
39 | m_FinalGatherRayCount: 256
40 | m_FinalGatherFiltering: 1
41 | m_PVRCulling: 1
42 | m_PVRSampling: 1
43 | m_PVRDirectSampleCount: 32
44 | m_PVRSampleCount: 512
45 | m_PVREnvironmentSampleCount: 512
46 | m_PVREnvironmentReferencePointCount: 2048
47 | m_LightProbeSampleCountMultiplier: 4
48 | m_PVRBounces: 2
49 | m_PVRMinBounces: 2
50 | m_PVREnvironmentMIS: 0
51 | m_PVRFilteringMode: 2
52 | m_PVRDenoiserTypeDirect: 0
53 | m_PVRDenoiserTypeIndirect: 0
54 | m_PVRDenoiserTypeAO: 0
55 | m_PVRFilterTypeDirect: 0
56 | m_PVRFilterTypeIndirect: 0
57 | m_PVRFilterTypeAO: 0
58 | m_PVRFilteringGaussRadiusDirect: 1
59 | m_PVRFilteringGaussRadiusIndirect: 5
60 | m_PVRFilteringGaussRadiusAO: 2
61 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
62 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
63 | m_PVRFilteringAtrousPositionSigmaAO: 1
64 | m_PVRTiledBaking: 0
65 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/customSettings.lighting.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e40780be1f1015d469501854baa400e9
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 4890085278179872738
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/deviceInfo.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3b390ae58c0c2e442a45b27c1c8833e8
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/deviceInfoOther.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1b4738d4cc46a7246b9d59331a397c65
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/deviceMotion.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 499f8124009e9fa4fb177aea29b29167
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/filemanager.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3fbbdcbf0880dc1459f6aa4bb7655c81
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/gameBanner.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 75268fad364c59c4781e0f971db76dce
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/gameBannerSettings.lighting:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!850595691 &4890085278179872738
4 | LightingSettings:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_Name: gameBannerSettings
10 | serializedVersion: 4
11 | m_GIWorkflowMode: 1
12 | m_EnableBakedLightmaps: 0
13 | m_EnableRealtimeLightmaps: 0
14 | m_RealtimeEnvironmentLighting: 1
15 | m_BounceScale: 1
16 | m_AlbedoBoost: 1
17 | m_IndirectOutputScale: 1
18 | m_UsingShadowmask: 1
19 | m_BakeBackend: 1
20 | m_LightmapMaxSize: 1024
21 | m_BakeResolution: 40
22 | m_Padding: 2
23 | m_LightmapCompression: 3
24 | m_AO: 0
25 | m_AOMaxDistance: 1
26 | m_CompAOExponent: 1
27 | m_CompAOExponentDirect: 0
28 | m_ExtractAO: 0
29 | m_MixedBakeMode: 2
30 | m_LightmapsBakeMode: 1
31 | m_FilterMode: 1
32 | m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
33 | m_ExportTrainingData: 0
34 | m_TrainingDataDestination: TrainingData
35 | m_RealtimeResolution: 2
36 | m_ForceWhiteAlbedo: 0
37 | m_ForceUpdates: 0
38 | m_FinalGather: 0
39 | m_FinalGatherRayCount: 256
40 | m_FinalGatherFiltering: 1
41 | m_PVRCulling: 1
42 | m_PVRSampling: 1
43 | m_PVRDirectSampleCount: 32
44 | m_PVRSampleCount: 512
45 | m_PVREnvironmentSampleCount: 512
46 | m_PVREnvironmentReferencePointCount: 2048
47 | m_LightProbeSampleCountMultiplier: 4
48 | m_PVRBounces: 2
49 | m_PVRMinBounces: 2
50 | m_PVREnvironmentMIS: 0
51 | m_PVRFilteringMode: 2
52 | m_PVRDenoiserTypeDirect: 0
53 | m_PVRDenoiserTypeIndirect: 0
54 | m_PVRDenoiserTypeAO: 0
55 | m_PVRFilterTypeDirect: 0
56 | m_PVRFilterTypeIndirect: 0
57 | m_PVRFilterTypeAO: 0
58 | m_PVRFilteringGaussRadiusDirect: 1
59 | m_PVRFilteringGaussRadiusIndirect: 5
60 | m_PVRFilteringGaussRadiusAO: 2
61 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
62 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
63 | m_PVRFilteringAtrousPositionSigmaAO: 1
64 | m_PVRTiledBaking: 0
65 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/gameBannerSettings.lighting.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7027c758cc7fb73469d006795e5bd886
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 4890085278179872738
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/gameDrawer.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 04b25042dfb51594881f1a9b3e57bd8d
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/gameDrawerSettings.lighting:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!850595691 &4890085278179872738
4 | LightingSettings:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_Name: gameDrawerSettings
10 | serializedVersion: 4
11 | m_GIWorkflowMode: 1
12 | m_EnableBakedLightmaps: 0
13 | m_EnableRealtimeLightmaps: 0
14 | m_RealtimeEnvironmentLighting: 1
15 | m_BounceScale: 1
16 | m_AlbedoBoost: 1
17 | m_IndirectOutputScale: 1
18 | m_UsingShadowmask: 1
19 | m_BakeBackend: 1
20 | m_LightmapMaxSize: 1024
21 | m_BakeResolution: 40
22 | m_Padding: 2
23 | m_LightmapCompression: 3
24 | m_AO: 0
25 | m_AOMaxDistance: 1
26 | m_CompAOExponent: 1
27 | m_CompAOExponentDirect: 0
28 | m_ExtractAO: 0
29 | m_MixedBakeMode: 2
30 | m_LightmapsBakeMode: 1
31 | m_FilterMode: 1
32 | m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
33 | m_ExportTrainingData: 0
34 | m_TrainingDataDestination: TrainingData
35 | m_RealtimeResolution: 2
36 | m_ForceWhiteAlbedo: 0
37 | m_ForceUpdates: 0
38 | m_FinalGather: 0
39 | m_FinalGatherRayCount: 256
40 | m_FinalGatherFiltering: 1
41 | m_PVRCulling: 1
42 | m_PVRSampling: 1
43 | m_PVRDirectSampleCount: 32
44 | m_PVRSampleCount: 512
45 | m_PVREnvironmentSampleCount: 512
46 | m_PVREnvironmentReferencePointCount: 2048
47 | m_LightProbeSampleCountMultiplier: 4
48 | m_PVRBounces: 2
49 | m_PVRMinBounces: 2
50 | m_PVREnvironmentMIS: 0
51 | m_PVRFilteringMode: 2
52 | m_PVRDenoiserTypeDirect: 0
53 | m_PVRDenoiserTypeIndirect: 0
54 | m_PVRDenoiserTypeAO: 0
55 | m_PVRFilterTypeDirect: 0
56 | m_PVRFilterTypeIndirect: 0
57 | m_PVRFilterTypeAO: 0
58 | m_PVRFilteringGaussRadiusDirect: 1
59 | m_PVRFilteringGaussRadiusIndirect: 5
60 | m_PVRFilteringGaussRadiusAO: 2
61 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
62 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
63 | m_PVRFilteringAtrousPositionSigmaAO: 1
64 | m_PVRTiledBaking: 0
65 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/gameDrawerSettings.lighting.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3adaa757fceaec240952a9edf4739a70
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 4890085278179872738
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/gamePortal.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 89409a2bd57d6894496877b4a7d7f064
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/gamePortalSettings.lighting:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!850595691 &4890085278179872738
4 | LightingSettings:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_Name: gamePortalSettings
10 | serializedVersion: 4
11 | m_GIWorkflowMode: 1
12 | m_EnableBakedLightmaps: 0
13 | m_EnableRealtimeLightmaps: 0
14 | m_RealtimeEnvironmentLighting: 1
15 | m_BounceScale: 1
16 | m_AlbedoBoost: 1
17 | m_IndirectOutputScale: 1
18 | m_UsingShadowmask: 1
19 | m_BakeBackend: 1
20 | m_LightmapMaxSize: 1024
21 | m_BakeResolution: 40
22 | m_Padding: 2
23 | m_LightmapCompression: 3
24 | m_AO: 0
25 | m_AOMaxDistance: 1
26 | m_CompAOExponent: 1
27 | m_CompAOExponentDirect: 0
28 | m_ExtractAO: 0
29 | m_MixedBakeMode: 2
30 | m_LightmapsBakeMode: 1
31 | m_FilterMode: 1
32 | m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
33 | m_ExportTrainingData: 0
34 | m_TrainingDataDestination: TrainingData
35 | m_RealtimeResolution: 2
36 | m_ForceWhiteAlbedo: 0
37 | m_ForceUpdates: 0
38 | m_FinalGather: 0
39 | m_FinalGatherRayCount: 256
40 | m_FinalGatherFiltering: 1
41 | m_PVRCulling: 1
42 | m_PVRSampling: 1
43 | m_PVRDirectSampleCount: 32
44 | m_PVRSampleCount: 512
45 | m_PVREnvironmentSampleCount: 512
46 | m_PVREnvironmentReferencePointCount: 2048
47 | m_LightProbeSampleCountMultiplier: 4
48 | m_PVRBounces: 2
49 | m_PVRMinBounces: 2
50 | m_PVREnvironmentMIS: 0
51 | m_PVRFilteringMode: 2
52 | m_PVRDenoiserTypeDirect: 0
53 | m_PVRDenoiserTypeIndirect: 0
54 | m_PVRDenoiserTypeAO: 0
55 | m_PVRFilterTypeDirect: 0
56 | m_PVRFilterTypeIndirect: 0
57 | m_PVRFilterTypeAO: 0
58 | m_PVRFilteringGaussRadiusDirect: 1
59 | m_PVRFilteringGaussRadiusIndirect: 5
60 | m_PVRFilteringGaussRadiusAO: 2
61 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
62 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
63 | m_PVRFilteringAtrousPositionSigmaAO: 1
64 | m_PVRTiledBaking: 0
65 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/gamePortalSettings.lighting.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5dc04418fc30b4a4a969631130af46ca
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 4890085278179872738
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/login.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6c6df49e773ed784bbef3266d173fd61
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/main.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fe65a94e3707b0744af1f1b78fcc6e00
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/mainSettings.lighting:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!850595691 &4890085278179872738
4 | LightingSettings:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_Name: mainSettings
10 | serializedVersion: 4
11 | m_GIWorkflowMode: 1
12 | m_EnableBakedLightmaps: 0
13 | m_EnableRealtimeLightmaps: 0
14 | m_RealtimeEnvironmentLighting: 1
15 | m_BounceScale: 1
16 | m_AlbedoBoost: 1
17 | m_IndirectOutputScale: 1
18 | m_UsingShadowmask: 1
19 | m_BakeBackend: 1
20 | m_LightmapMaxSize: 1024
21 | m_BakeResolution: 40
22 | m_Padding: 2
23 | m_LightmapCompression: 3
24 | m_AO: 0
25 | m_AOMaxDistance: 1
26 | m_CompAOExponent: 1
27 | m_CompAOExponentDirect: 0
28 | m_ExtractAO: 0
29 | m_MixedBakeMode: 2
30 | m_LightmapsBakeMode: 1
31 | m_FilterMode: 1
32 | m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
33 | m_ExportTrainingData: 0
34 | m_TrainingDataDestination: TrainingData
35 | m_RealtimeResolution: 2
36 | m_ForceWhiteAlbedo: 0
37 | m_ForceUpdates: 0
38 | m_FinalGather: 0
39 | m_FinalGatherRayCount: 256
40 | m_FinalGatherFiltering: 1
41 | m_PVRCulling: 1
42 | m_PVRSampling: 1
43 | m_PVRDirectSampleCount: 32
44 | m_PVRSampleCount: 512
45 | m_PVREnvironmentSampleCount: 512
46 | m_PVREnvironmentReferencePointCount: 2048
47 | m_LightProbeSampleCountMultiplier: 4
48 | m_PVRBounces: 2
49 | m_PVRMinBounces: 2
50 | m_PVREnvironmentMIS: 0
51 | m_PVRFilteringMode: 2
52 | m_PVRDenoiserTypeDirect: 0
53 | m_PVRDenoiserTypeIndirect: 0
54 | m_PVRDenoiserTypeAO: 0
55 | m_PVRFilterTypeDirect: 0
56 | m_PVRFilterTypeIndirect: 0
57 | m_PVRFilterTypeAO: 0
58 | m_PVRFilteringGaussRadiusDirect: 1
59 | m_PVRFilteringGaussRadiusIndirect: 5
60 | m_PVRFilteringGaussRadiusAO: 2
61 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
62 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
63 | m_PVRFilteringAtrousPositionSigmaAO: 1
64 | m_PVRTiledBaking: 0
65 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/mainSettings.lighting.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8aff5ce9b6614a14aabdccd7ac9132d5
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 4890085278179872738
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/onAuthDialogShow.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7f3e661492a592842b0b63b362f132f8
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/onShow.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ae76f2fc5cd703c4488e16713d6809cc
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/qgpay.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ea414604814a9064fbcc7086542bd021
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/recorder.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ba9f89b0f5fc7d7438760ea86fb8d208
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/rewardedVideo.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d0f5050d9aec4b544b1ba8b991462bca
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/rewardedVideoSettings.lighting:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!850595691 &4890085278179872738
4 | LightingSettings:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_Name: rewardedVideoSettings
10 | serializedVersion: 4
11 | m_GIWorkflowMode: 1
12 | m_EnableBakedLightmaps: 0
13 | m_EnableRealtimeLightmaps: 0
14 | m_RealtimeEnvironmentLighting: 1
15 | m_BounceScale: 1
16 | m_AlbedoBoost: 1
17 | m_IndirectOutputScale: 1
18 | m_UsingShadowmask: 1
19 | m_BakeBackend: 1
20 | m_LightmapMaxSize: 1024
21 | m_BakeResolution: 40
22 | m_Padding: 2
23 | m_LightmapCompression: 3
24 | m_AO: 0
25 | m_AOMaxDistance: 1
26 | m_CompAOExponent: 1
27 | m_CompAOExponentDirect: 0
28 | m_ExtractAO: 0
29 | m_MixedBakeMode: 2
30 | m_LightmapsBakeMode: 1
31 | m_FilterMode: 1
32 | m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
33 | m_ExportTrainingData: 0
34 | m_TrainingDataDestination: TrainingData
35 | m_RealtimeResolution: 2
36 | m_ForceWhiteAlbedo: 0
37 | m_ForceUpdates: 0
38 | m_FinalGather: 0
39 | m_FinalGatherRayCount: 256
40 | m_FinalGatherFiltering: 1
41 | m_PVRCulling: 1
42 | m_PVRSampling: 1
43 | m_PVRDirectSampleCount: 32
44 | m_PVRSampleCount: 512
45 | m_PVREnvironmentSampleCount: 512
46 | m_PVREnvironmentReferencePointCount: 2048
47 | m_LightProbeSampleCountMultiplier: 4
48 | m_PVRBounces: 2
49 | m_PVRMinBounces: 2
50 | m_PVREnvironmentMIS: 0
51 | m_PVRFilteringMode: 2
52 | m_PVRDenoiserTypeDirect: 0
53 | m_PVRDenoiserTypeIndirect: 0
54 | m_PVRDenoiserTypeAO: 0
55 | m_PVRFilterTypeDirect: 0
56 | m_PVRFilterTypeIndirect: 0
57 | m_PVRFilterTypeAO: 0
58 | m_PVRFilteringGaussRadiusDirect: 1
59 | m_PVRFilteringGaussRadiusIndirect: 5
60 | m_PVRFilteringGaussRadiusAO: 2
61 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
62 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
63 | m_PVRFilteringAtrousPositionSigmaAO: 1
64 | m_PVRTiledBaking: 0
65 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/rewardedVideoSettings.lighting.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: dd9232b8f4a3162469a6f2827d44f168
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 4890085278179872738
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/showModal.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5bee905a62b7af24a991c0bdf75cad0c
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/systemInfo.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0ccb615aaba971b44befd577b2f56d26
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/unityAudio.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 34f6804019c37fa418b66c48fbaa7252
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/vibrateShort.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0be1614e7f7d85c47a666d3ee7ad031d
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Scenes/NewScenes/video.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2ccc854c710c6504a88f6a0aceac4d30
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/demo/Assets/Script.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 986e181a6eca94445821c1678e5eeb28
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1c2e1ffd979ab304396cdde5a801d559
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/Interstitial.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 98ca273e120b2e64d8f3cf8e24d339f3
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/PlayerPrefs.cs:
--------------------------------------------------------------------------------
1 | using QGMiniGame;
2 | using UnityEngine;
3 | using System;
4 | //覆盖unity的PlayerPrefs
5 | public static class PlayerPrefs
6 | {
7 | public static void SetInt(string key, int value)
8 | {
9 | string numberStr = value.ToString();
10 | QG.StorageSetItem(key, numberStr);
11 | }
12 | public static int GetInt(string key, int defaultValue = 0)
13 | {
14 | try
15 | {
16 | string numberStr = QG.StorageGetItem(key);
17 | int number = int.Parse(numberStr);
18 | return number;
19 | }
20 | catch (Exception error)
21 | {
22 | Debug.LogError(error);
23 | return defaultValue;
24 | }
25 | }
26 | public static void SetString(string key, string value)
27 | {
28 | QG.StorageSetItem(key, value);
29 | }
30 | public static string GetString(string key, string defaultValue = "")
31 | {
32 | try
33 | {
34 | string value = QG.StorageGetItem(key);
35 | return value;
36 | }
37 | catch (Exception error)
38 | {
39 | Debug.LogError(error);
40 | return defaultValue;
41 | }
42 | }
43 | public static void SetFloat(string key, float value)
44 | {
45 | string numberStr = value.ToString();
46 | QG.StorageSetItem(key, numberStr);
47 | }
48 | public static float GetFloat(string key, float defaultValue = 0)
49 | {
50 | try
51 | {
52 | string numberStr = QG.StorageGetItem(key);
53 | float number = float.Parse(numberStr);
54 | return number;
55 | }
56 | catch (Exception error)
57 | {
58 | Debug.LogError(error);
59 | return defaultValue;
60 | }
61 | }
62 | public static void DeleteAll()
63 | {
64 | QG.StorageClear();
65 | }
66 | public static void DeleteKey(string key)
67 | {
68 | QG.StorageRemoveItem(key);
69 | }
70 | public static bool HasKey(string key)
71 | {
72 | string value = QG.StorageGetItem(key);
73 | return !string.IsNullOrWhiteSpace(value);
74 | }
75 | public static void Save() { }
76 | }
77 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/PlayerPrefs.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fae3e58c65ea0024baa04fc90e4475a5
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/banner.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a8722a7757e67594883a4ea815190a91
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/customAd.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9ee4288abb63c384c9332e4fa6f0082e
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/filemanager.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 88ddf8e25091f3e4aa8cdf06be206d1c
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameAudio.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f301b1cb33cadf7438610f878168e4d7
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameAudioNew.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9e327c8fa6c5cde48baa12347b2f0c1a
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameBanner.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8a1a793534ca47044aedabb012de3db9
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameDeviceInfo.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: dd5731630b2623a4ea6ae870af1be165
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameDeviceInfoOther.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 84977a5b720227f44b1d502d5538c553
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameDeviceMotion.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 | using UnityEngine.UI;
3 | using QGMiniGame;
4 | using UnityEngine.SceneManagement;
5 | using System;
6 | public class gameDeviceMotion : MonoBehaviour
7 | {
8 | public Button comebackbtn;
9 |
10 | public Button startDeviceMotionListeningBtn;
11 |
12 | public Button stopDeviceMotionListeningBtn;
13 |
14 | public Button onDeviceMotionChangeBtn;
15 |
16 | public Button offDeviceMotionChangeBtn;
17 | public Button getDeviceMotionChangeBtn;
18 |
19 | public Text loginMessage;
20 |
21 | private bool isGetDeviceData = false;
22 | void Start()
23 | {
24 | comebackbtn.onClick.AddListener(comebackfunc);
25 | startDeviceMotionListeningBtn.onClick.AddListener(startDeviceMotionListeningFunc);
26 | stopDeviceMotionListeningBtn.onClick.AddListener(stopDeviceMotionListeningFunc);
27 | onDeviceMotionChangeBtn.onClick.AddListener(onDeviceMotionChangeFunc);
28 | offDeviceMotionChangeBtn.onClick.AddListener(offDeviceMotionChangeFunc);
29 | getDeviceMotionChangeBtn.onClick.AddListener(getDeviceMotionChangeFunc);
30 | }
31 |
32 | void Update()
33 | {
34 | if (isGetDeviceData)
35 | {
36 | DeviceMotionChangeParam deviceMotionChangeParam = QGArManager.GetDeviceMotionChange();
37 | // loginMessage.text = deviceMotionChangeParam == null ? "当前设备方向信息: \n数据为空" : loginMessage.text = "当前设备方向信息: \nalpha:" + deviceMotionChangeParam.alpha + "\nbeta:" + deviceMotionChangeParam.beta + "\ngamma:" + deviceMotionChangeParam.gamma;
38 | double radians = Math.PI / 2; // 90 degrees
39 | loginMessage.text = deviceMotionChangeParam == null ? "当前设备方向信息: \n数据为空" : loginMessage.text = "当前设备方向信息: \n弧度:\nalpha:" + deviceMotionChangeParam.alpha + "\nbeta:" + deviceMotionChangeParam.beta + "\ngamma:" + deviceMotionChangeParam.gamma + "\n角度:\nalpha:" + RadiansToDegrees(deviceMotionChangeParam.alpha) + "\nbeta:" + RadiansToDegrees(deviceMotionChangeParam.beta) + "\ngamma:" + RadiansToDegrees(deviceMotionChangeParam.gamma);
40 | }
41 | }
42 |
43 | public void comebackfunc()
44 | {
45 | SceneManager.LoadScene("main");
46 | }
47 |
48 | public void startDeviceMotionListeningFunc()
49 | {
50 | QGArManager.StartDeviceMotionListening(
51 | "game",
52 | (success) =>
53 | {
54 | Debug.Log("StartDeviceMotionListening = " + success);
55 | },
56 | (fail) =>
57 | {
58 | Debug.Log("StartDeviceMotionListening = " + fail);
59 | }
60 | );
61 | }
62 | public void stopDeviceMotionListeningFunc()
63 | {
64 | QGArManager.StopDeviceMotionListening(
65 | (success) =>
66 | {
67 | Debug.Log("StopDeviceMotionListening = " + success);
68 | },
69 | (fail) =>
70 | {
71 | Debug.Log("StopDeviceMotionListening = " + fail);
72 | }
73 | );
74 | }
75 |
76 | public void onDeviceMotionChangeFunc()
77 | {
78 | QGArManager.OnDeviceMotionChange();
79 | }
80 |
81 | public void offDeviceMotionChangeFunc()
82 | {
83 | QGArManager.OffDeviceMotionChange();
84 | }
85 |
86 | public void getDeviceMotionChangeFunc()
87 | {
88 | isGetDeviceData = true;
89 | }
90 |
91 | public double RadiansToDegrees(float radians)
92 | {
93 | return radians * (180 / Math.PI);
94 | }
95 | }
96 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameDeviceMotion.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: efaf175700db0e44c96678aba5fbd0a6
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameDrawer.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c0d549060624cec4088109d9dddb94ea
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameLogin.cs:
--------------------------------------------------------------------------------
1 | using QGMiniGame;
2 | using System.Collections;
3 | using System.Collections.Generic;
4 | using UnityEngine;
5 | using UnityEngine.SceneManagement;
6 | using UnityEngine.UI;
7 |
8 | public class gameLogin : MonoBehaviour
9 | {
10 | public Text loginMessage;
11 |
12 | public Button comebackbtn;
13 | void Start()
14 | {
15 |
16 | comebackbtn.onClick.AddListener(comebackfunc);
17 |
18 | QG
19 | .Login((msg) =>
20 | {
21 | Debug.Log("QG.Login success = " + JsonUtility.ToJson(msg));
22 | loginMessage.text = "QG.Login success = " + JsonUtility.ToJson(msg);
23 | },
24 | (msg) =>
25 | {
26 | Debug.Log("QG.Login fail = " + msg.errMsg);
27 | loginMessage.text = "QG.Login fail = " + msg.errMsg;
28 | });
29 | }
30 |
31 | public void comebackfunc()
32 | {
33 | SceneManager.LoadScene("main");
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameLogin.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 39865029d40f2da40aa3f225dda92598
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameOnAuthDialogShow.cs:
--------------------------------------------------------------------------------
1 | using QGMiniGame;
2 | using System.Collections;
3 | using System.Collections.Generic;
4 | using UnityEngine;
5 | using UnityEngine.SceneManagement;
6 | using UnityEngine.UI;
7 |
8 | public class gameOnAuthDialogShow : MonoBehaviour
9 | {
10 | public Text authDialogShowMessage;
11 | public Text authDialogCloseMessage;
12 | public Button onAuthDialogShowBtn;
13 | public Button offAuthDialogShowBtn;
14 | public Button onAuthDialogCloseBtn;
15 | public Button offAuthDialogCloseBtn;
16 | public Button comebackbtn;
17 | void Start()
18 | {
19 | comebackbtn.onClick.AddListener(comebackfunc);
20 |
21 | onAuthDialogShowBtn.onClick.AddListener(OnAuthDialogShow);
22 | offAuthDialogShowBtn.onClick.AddListener(OffAuthDialogShow);
23 | onAuthDialogCloseBtn.onClick.AddListener(OnAuthDialogClose);
24 | offAuthDialogCloseBtn.onClick.AddListener(OffAuthDialogClose);
25 | }
26 |
27 | public void comebackfunc()
28 | {
29 | SceneManager.LoadScene("main");
30 | }
31 |
32 | public void AuthDialogShowMessage(string str)
33 | {
34 | Debug.Log(str);
35 | authDialogShowMessage.text = str;
36 | }
37 |
38 | public void AuthDialogCloseMessage(string str)
39 | {
40 | Debug.Log(str);
41 | authDialogCloseMessage.text = str;
42 | }
43 |
44 | public void OnAuthDialogShow()
45 | {
46 | QG.OnAuthDialogShow((msg) =>
47 | {
48 | Debug.Log("QG.OnAuthDialogShow = " + JsonUtility.ToJson(msg));
49 | AuthDialogShowMessage("QG.OnAuthDialogShow = " + JsonUtility.ToJson(msg));
50 | });
51 | }
52 |
53 | public void OffAuthDialogShow()
54 | {
55 | AuthDialogShowMessage("回调日志:");
56 | QG.OffAuthDialogShow((msg) =>
57 | {
58 | Debug.Log("QG.OffAuthDialogShow = " + JsonUtility.ToJson(msg));
59 | AuthDialogShowMessage("QG.OffAuthDialogShow = " + JsonUtility.ToJson(msg));
60 | });
61 | }
62 |
63 | public void OnAuthDialogClose()
64 | {
65 | QG.OnAuthDialogClose((msg) =>
66 | {
67 | Debug.Log("QG.OnAuthDialogClose = " + JsonUtility.ToJson(msg));
68 | AuthDialogCloseMessage("QG.OnAuthDialogClose = " + JsonUtility.ToJson(msg));
69 | });
70 | }
71 |
72 | public void OffAuthDialogClose()
73 | {
74 | AuthDialogCloseMessage("回调日志:");
75 | QG.OffAuthDialogClose((msg) =>
76 | {
77 | Debug.Log("QG.OffAuthDialogClose = " + JsonUtility.ToJson(msg));
78 | AuthDialogCloseMessage("QG.OffAuthDialogClose = " + JsonUtility.ToJson(msg));
79 | });
80 | }
81 | }
82 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameOnAuthDialogShow.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1c9e446d0fddc7e44ac667c6e9235a7e
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameOnShow.cs:
--------------------------------------------------------------------------------
1 | using QGMiniGame;
2 | using System.Collections;
3 | using System.Collections.Generic;
4 | using UnityEngine;
5 | using UnityEngine.SceneManagement;
6 | using UnityEngine.UI;
7 |
8 | public class gameOnShow : MonoBehaviour
9 | {
10 | public Text showMessage;
11 | public Text hideMessage;
12 | public Button onShowBtn;
13 | public Button offShowBtn;
14 | public Button onHideBtn;
15 | public Button offHideBtn;
16 | public Button comebackbtn;
17 | void Start()
18 | {
19 | comebackbtn.onClick.AddListener(comebackfunc);
20 |
21 | onShowBtn.onClick.AddListener(OnShow);
22 | offShowBtn.onClick.AddListener(OffShow);
23 | onHideBtn.onClick.AddListener(OnHide);
24 | offHideBtn.onClick.AddListener(OffHide);
25 | }
26 |
27 | public void comebackfunc()
28 | {
29 | SceneManager.LoadScene("main");
30 | }
31 |
32 | public void ShowMessage(string str)
33 | {
34 | Debug.Log(str);
35 | showMessage.text = str;
36 | }
37 |
38 | public void HideMessage(string str)
39 | {
40 | Debug.Log(str);
41 | hideMessage.text = str;
42 | }
43 |
44 | public void OnShow()
45 | {
46 | QG.OnShow((msg) =>
47 | {
48 | Debug.Log("QG.OnShow = " + JsonUtility.ToJson(msg));
49 | ShowMessage("QG.OnShow = " + JsonUtility.ToJson(msg));
50 | });
51 | }
52 |
53 | public void OffShow()
54 | {
55 | ShowMessage("回调日志:");
56 | QG.OffShow((msg) =>
57 | {
58 | Debug.Log("QG.OffShow = " + JsonUtility.ToJson(msg));
59 | ShowMessage("QG.OffShow = " + JsonUtility.ToJson(msg));
60 | });
61 | }
62 |
63 | public void OnHide()
64 | {
65 | QG.OnHide((msg) =>
66 | {
67 | Debug.Log("QG.OnHide = " + JsonUtility.ToJson(msg));
68 | HideMessage("QG.OnHide = " + JsonUtility.ToJson(msg));
69 | });
70 | }
71 |
72 | public void OffHide()
73 | {
74 | HideMessage("回调日志:");
75 | QG.OffHide((msg) =>
76 | {
77 | Debug.Log("QG.OffHide = " + JsonUtility.ToJson(msg));
78 | HideMessage("QG.OffHide = " + JsonUtility.ToJson(msg));
79 | });
80 | }
81 | }
82 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameOnShow.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: dd1758a5e24f0f144acb997d6c7e8063
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gamePlayerPrefs.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0bee1b6481033244a8c4da7df8b1be8e
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gamePorta.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 765db65fb96935e478bd18b22346c2cf
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameRecorder.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e546c600566ddb64cb5bf84a7a16ae11
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameSystemInfo.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 911c13cd66078844490594fa4a892fe5
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameUnityAudio.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d0aef5819a02bab44b9305c8b0925c60
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/gameVideo.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 48c76a1f7566d1c43b669969d02f9964
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/main_test.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bc75c74a2a35c28459c263a652c588b4
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/qgpay.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 | using UnityEngine.UI;
3 | using QGMiniGame;
4 | using UnityEngine.SceneManagement;
5 |
6 | public class qgpay : MonoBehaviour
7 | {
8 | public Button comebackbtn;
9 |
10 | public Button qgPaytestBtn;
11 |
12 | public Button qgPayBtn;
13 |
14 | void Start()
15 | {
16 | comebackbtn.onClick.AddListener(comebackfunc);
17 | qgPaytestBtn.onClick.AddListener(playQGPayTest);
18 | qgPayBtn.onClick.AddListener(playQGPay);
19 | }
20 |
21 | public void comebackfunc()
22 | {
23 | SceneManager.LoadScene("main");
24 | }
25 |
26 |
27 | public void playQGPayTest()
28 | {
29 | //支付先登录拉数据
30 | QG.Login((msg) =>
31 | {
32 | Debug.Log("QG.Login success = " + JsonUtility.ToJson(msg));
33 | if (msg.data.token != string.Empty)
34 | {
35 | qgPaytestFunc(msg.data.token);
36 | }
37 | else
38 | {
39 | Debug.Log("The platform token fails to be obtained. Procedure");
40 | }
41 | },
42 | (msg) =>
43 | {
44 | Debug.Log("QG.Login fail = " + msg.errMsg);
45 | });
46 | }
47 |
48 | public void playQGPay()
49 | {
50 | //支付先登录拉数据
51 | QG.Login((msg) =>
52 | {
53 | Debug.Log("QG.Login success = " + JsonUtility.ToJson(msg));
54 | if (msg.data.token != string.Empty)
55 | {
56 | qgPayFunc(msg.data.token);
57 | }
58 | else
59 | {
60 | Debug.Log("The platform token fails to be obtained. Procedure");
61 | }
62 | },
63 | (msg) =>
64 | {
65 | Debug.Log("QG.Login fail = " + msg.errMsg);
66 | });
67 | }
68 |
69 | public void qgPaytestFunc(string parameterToken)
70 | {
71 | PayTestParam param =
72 | new PayTestParam()
73 | {
74 | appId = 30173650,
75 | openId = parameterToken,
76 | productName = "测试礼包",
77 | productDesc = "测试支付",
78 | count = 1, //商品数量(只能传1)
79 | price = 1, //商品价格,以分为单位
80 | currency = "CNY", //币种,人民币如:CNY
81 | callBackUrl = "", // 服务器接收平台返回数据的接口回调地址
82 | cpOrderId = "1.0", //CP自己的订单号
83 | appVersion = "1.0.0", //游戏版本
84 | deviceInfo = "", //设备号
85 | //model = "", //机型
86 | ip = "", //终端IP
87 | attach = ""//附加信息
88 | };
89 | QG
90 | .PayTest(param,
91 | (msg) =>
92 | {
93 | Debug.Log("QG.Pay success = " + JsonUtility.ToJson(msg));
94 | },
95 | (msg) =>
96 | {
97 | Debug.Log("QG.Pay fail = " + JsonUtility.ToJson(msg));
98 | });
99 | }
100 |
101 | public void qgPayFunc(string parameterToken)
102 | {
103 | PayParam param =
104 | new PayParam()
105 | {
106 | appId = 0,
107 | openId = "",
108 | timestamp = 0,
109 | orderNo = "",
110 | paySign = ""
111 | };
112 | QG
113 | .Pay(param,
114 | (msg) =>
115 | {
116 | Debug.Log("QG.Pay success = " + JsonUtility.ToJson(msg));
117 | },
118 | (msg) =>
119 | {
120 | Debug.Log("QG.Pay fail = " + JsonUtility.ToJson(msg));
121 | });
122 | }
123 |
124 | }
125 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/qgpay.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 81a511f88d5fb844795a116c707e924c
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/rewardedVideo.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b38699af380d3994ca8314f82f03ca50
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/showModal.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 16147b1e2d0be174a8b885a065a81f53
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/storageItem.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3a979e50a72425446a23b5f23ed9cf6b
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/test.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: eca6f5aed2195ce4299efde2318ad9c1
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/userCloudStorageItem.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f67212a64abc04b4db9addc1f2989cb7
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/vibrateShort.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 | using UnityEngine.UI;
3 | using QGMiniGame;
4 | using UnityEngine.SceneManagement;
5 |
6 | public class vibrateShort : MonoBehaviour
7 | {
8 | public Button comebackbtn;
9 |
10 | public Button vibrateShortbtn;
11 |
12 | public Button vibrateLongbtn;
13 |
14 | void Start()
15 | {
16 | comebackbtn.onClick.AddListener(comebackfunc);
17 | vibrateShortbtn.onClick.AddListener(vibrateShortFunc);
18 | vibrateLongbtn.onClick.AddListener(vibrateLongFunc);
19 | }
20 |
21 | void vibrateShortFunc()
22 | {
23 | QG.VibrateShort();
24 | }
25 | void vibrateLongFunc()
26 | {
27 | QG.VibrateLong();
28 | }
29 |
30 | public void comebackfunc()
31 | {
32 | SceneManager.LoadScene("main");
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/demo/Assets/Script/demo/vibrateShort.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6a0b1dc01133aa64d899bfb8724a94bd
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/demo/Assets/Texture.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 088cdb36720e7e747b7b0d0ced2ecd65
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/demo/Assets/Texture/bg1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/demo/Assets/Texture/bg1.jpg
--------------------------------------------------------------------------------
/demo/Assets/Texture/bg1.jpg.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2e5bffbec7ecee2438cbfde6b27af22d
3 | TextureImporter:
4 | internalIDToNameTable: []
5 | externalObjects: {}
6 | serializedVersion: 11
7 | mipmaps:
8 | mipMapMode: 0
9 | enableMipMap: 0
10 | sRGBTexture: 1
11 | linearTexture: 0
12 | fadeOut: 0
13 | borderMipMap: 0
14 | mipMapsPreserveCoverage: 0
15 | alphaTestReferenceValue: 0.5
16 | mipMapFadeDistanceStart: 1
17 | mipMapFadeDistanceEnd: 3
18 | bumpmap:
19 | convertToNormalMap: 0
20 | externalNormalMap: 0
21 | heightScale: 0.25
22 | normalMapFilter: 0
23 | isReadable: 0
24 | streamingMipmaps: 0
25 | streamingMipmapsPriority: 0
26 | grayScaleToAlpha: 0
27 | generateCubemap: 6
28 | cubemapConvolution: 0
29 | seamlessCubemap: 0
30 | textureFormat: 1
31 | maxTextureSize: 2048
32 | textureSettings:
33 | serializedVersion: 2
34 | filterMode: -1
35 | aniso: -1
36 | mipBias: -100
37 | wrapU: 1
38 | wrapV: 1
39 | wrapW: 1
40 | nPOTScale: 0
41 | lightmap: 0
42 | compressionQuality: 50
43 | spriteMode: 1
44 | spriteExtrude: 1
45 | spriteMeshType: 1
46 | alignment: 0
47 | spritePivot: {x: 0.5, y: 0.5}
48 | spritePixelsToUnits: 100
49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
50 | spriteGenerateFallbackPhysicsShape: 1
51 | alphaUsage: 1
52 | alphaIsTransparency: 1
53 | spriteTessellationDetail: -1
54 | textureType: 8
55 | textureShape: 1
56 | singleChannelComponent: 0
57 | maxTextureSizeSet: 0
58 | compressionQualitySet: 0
59 | textureFormatSet: 0
60 | applyGammaDecoding: 0
61 | platformSettings:
62 | - serializedVersion: 3
63 | buildTarget: DefaultTexturePlatform
64 | maxTextureSize: 2048
65 | resizeAlgorithm: 0
66 | textureFormat: -1
67 | textureCompression: 1
68 | compressionQuality: 50
69 | crunchedCompression: 0
70 | allowsAlphaSplitting: 0
71 | overridden: 0
72 | androidETC2FallbackOverride: 0
73 | forceMaximumCompressionQuality_BC6H_BC7: 0
74 | spriteSheet:
75 | serializedVersion: 2
76 | sprites: []
77 | outline: []
78 | physicsShape: []
79 | bones: []
80 | spriteID: 5e97eb03825dee720800000000000000
81 | internalID: 0
82 | vertices: []
83 | indices:
84 | edges: []
85 | weights: []
86 | secondaryTextures: []
87 | spritePackingTag:
88 | pSDRemoveMatte: 0
89 | pSDShowRemoveMatteOption: 0
90 | userData:
91 | assetBundleName:
92 | assetBundleVariant:
93 |
--------------------------------------------------------------------------------
/demo/Assets/Texture/bg2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/demo/Assets/Texture/bg2.jpg
--------------------------------------------------------------------------------
/demo/Assets/Texture/bg2.jpg.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2c17a0a40fae8774891c8148232736ec
3 | TextureImporter:
4 | internalIDToNameTable: []
5 | externalObjects: {}
6 | serializedVersion: 11
7 | mipmaps:
8 | mipMapMode: 0
9 | enableMipMap: 0
10 | sRGBTexture: 1
11 | linearTexture: 0
12 | fadeOut: 0
13 | borderMipMap: 0
14 | mipMapsPreserveCoverage: 0
15 | alphaTestReferenceValue: 0.5
16 | mipMapFadeDistanceStart: 1
17 | mipMapFadeDistanceEnd: 3
18 | bumpmap:
19 | convertToNormalMap: 0
20 | externalNormalMap: 0
21 | heightScale: 0.25
22 | normalMapFilter: 0
23 | isReadable: 0
24 | streamingMipmaps: 0
25 | streamingMipmapsPriority: 0
26 | grayScaleToAlpha: 0
27 | generateCubemap: 6
28 | cubemapConvolution: 0
29 | seamlessCubemap: 0
30 | textureFormat: 1
31 | maxTextureSize: 2048
32 | textureSettings:
33 | serializedVersion: 2
34 | filterMode: -1
35 | aniso: -1
36 | mipBias: -100
37 | wrapU: 1
38 | wrapV: 1
39 | wrapW: 1
40 | nPOTScale: 0
41 | lightmap: 0
42 | compressionQuality: 50
43 | spriteMode: 1
44 | spriteExtrude: 1
45 | spriteMeshType: 1
46 | alignment: 0
47 | spritePivot: {x: 0.5, y: 0.5}
48 | spritePixelsToUnits: 100
49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
50 | spriteGenerateFallbackPhysicsShape: 1
51 | alphaUsage: 1
52 | alphaIsTransparency: 1
53 | spriteTessellationDetail: -1
54 | textureType: 8
55 | textureShape: 1
56 | singleChannelComponent: 0
57 | maxTextureSizeSet: 0
58 | compressionQualitySet: 0
59 | textureFormatSet: 0
60 | applyGammaDecoding: 0
61 | platformSettings:
62 | - serializedVersion: 3
63 | buildTarget: DefaultTexturePlatform
64 | maxTextureSize: 2048
65 | resizeAlgorithm: 0
66 | textureFormat: -1
67 | textureCompression: 1
68 | compressionQuality: 50
69 | crunchedCompression: 0
70 | allowsAlphaSplitting: 0
71 | overridden: 0
72 | androidETC2FallbackOverride: 0
73 | forceMaximumCompressionQuality_BC6H_BC7: 0
74 | spriteSheet:
75 | serializedVersion: 2
76 | sprites: []
77 | outline: []
78 | physicsShape: []
79 | bones: []
80 | spriteID: 5e97eb03825dee720800000000000000
81 | internalID: 0
82 | vertices: []
83 | indices:
84 | edges: []
85 | weights: []
86 | secondaryTextures: []
87 | spritePackingTag:
88 | pSDRemoveMatte: 0
89 | pSDShowRemoveMatteOption: 0
90 | userData:
91 | assetBundleName:
92 | assetBundleVariant:
93 |
--------------------------------------------------------------------------------
/demo/Assets/Texture/bg3.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/demo/Assets/Texture/bg3.jpeg
--------------------------------------------------------------------------------
/demo/Assets/Texture/bg3.jpeg.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e8645ceb30b627a498f4bfde30c11a8e
3 | TextureImporter:
4 | internalIDToNameTable: []
5 | externalObjects: {}
6 | serializedVersion: 11
7 | mipmaps:
8 | mipMapMode: 0
9 | enableMipMap: 0
10 | sRGBTexture: 1
11 | linearTexture: 0
12 | fadeOut: 0
13 | borderMipMap: 0
14 | mipMapsPreserveCoverage: 0
15 | alphaTestReferenceValue: 0.5
16 | mipMapFadeDistanceStart: 1
17 | mipMapFadeDistanceEnd: 3
18 | bumpmap:
19 | convertToNormalMap: 0
20 | externalNormalMap: 0
21 | heightScale: 0.25
22 | normalMapFilter: 0
23 | isReadable: 0
24 | streamingMipmaps: 0
25 | streamingMipmapsPriority: 0
26 | grayScaleToAlpha: 0
27 | generateCubemap: 6
28 | cubemapConvolution: 0
29 | seamlessCubemap: 0
30 | textureFormat: 1
31 | maxTextureSize: 2048
32 | textureSettings:
33 | serializedVersion: 2
34 | filterMode: -1
35 | aniso: -1
36 | mipBias: -100
37 | wrapU: 1
38 | wrapV: 1
39 | wrapW: 1
40 | nPOTScale: 0
41 | lightmap: 0
42 | compressionQuality: 50
43 | spriteMode: 1
44 | spriteExtrude: 1
45 | spriteMeshType: 1
46 | alignment: 0
47 | spritePivot: {x: 0.5, y: 0.5}
48 | spritePixelsToUnits: 100
49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
50 | spriteGenerateFallbackPhysicsShape: 1
51 | alphaUsage: 1
52 | alphaIsTransparency: 1
53 | spriteTessellationDetail: -1
54 | textureType: 8
55 | textureShape: 1
56 | singleChannelComponent: 0
57 | maxTextureSizeSet: 0
58 | compressionQualitySet: 0
59 | textureFormatSet: 0
60 | applyGammaDecoding: 0
61 | platformSettings:
62 | - serializedVersion: 3
63 | buildTarget: DefaultTexturePlatform
64 | maxTextureSize: 2048
65 | resizeAlgorithm: 0
66 | textureFormat: -1
67 | textureCompression: 1
68 | compressionQuality: 50
69 | crunchedCompression: 0
70 | allowsAlphaSplitting: 0
71 | overridden: 0
72 | androidETC2FallbackOverride: 0
73 | forceMaximumCompressionQuality_BC6H_BC7: 0
74 | spriteSheet:
75 | serializedVersion: 2
76 | sprites: []
77 | outline: []
78 | physicsShape: []
79 | bones: []
80 | spriteID: 5e97eb03825dee720800000000000000
81 | internalID: 0
82 | vertices: []
83 | indices:
84 | edges: []
85 | weights: []
86 | secondaryTextures: []
87 | spritePackingTag:
88 | pSDRemoveMatte: 0
89 | pSDShowRemoveMatteOption: 0
90 | userData:
91 | assetBundleName:
92 | assetBundleVariant:
93 |
--------------------------------------------------------------------------------
/demo/Assets/Texture/bg4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/demo/Assets/Texture/bg4.jpg
--------------------------------------------------------------------------------
/demo/Assets/Texture/bg4.jpg.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 88fc267c2b5d14941bfe3f92df34ea9d
3 | TextureImporter:
4 | internalIDToNameTable: []
5 | externalObjects: {}
6 | serializedVersion: 11
7 | mipmaps:
8 | mipMapMode: 0
9 | enableMipMap: 0
10 | sRGBTexture: 1
11 | linearTexture: 0
12 | fadeOut: 0
13 | borderMipMap: 0
14 | mipMapsPreserveCoverage: 0
15 | alphaTestReferenceValue: 0.5
16 | mipMapFadeDistanceStart: 1
17 | mipMapFadeDistanceEnd: 3
18 | bumpmap:
19 | convertToNormalMap: 0
20 | externalNormalMap: 0
21 | heightScale: 0.25
22 | normalMapFilter: 0
23 | isReadable: 0
24 | streamingMipmaps: 0
25 | streamingMipmapsPriority: 0
26 | grayScaleToAlpha: 0
27 | generateCubemap: 6
28 | cubemapConvolution: 0
29 | seamlessCubemap: 0
30 | textureFormat: 1
31 | maxTextureSize: 2048
32 | textureSettings:
33 | serializedVersion: 2
34 | filterMode: -1
35 | aniso: -1
36 | mipBias: -100
37 | wrapU: 1
38 | wrapV: 1
39 | wrapW: 1
40 | nPOTScale: 0
41 | lightmap: 0
42 | compressionQuality: 50
43 | spriteMode: 1
44 | spriteExtrude: 1
45 | spriteMeshType: 1
46 | alignment: 0
47 | spritePivot: {x: 0.5, y: 0.5}
48 | spritePixelsToUnits: 100
49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
50 | spriteGenerateFallbackPhysicsShape: 1
51 | alphaUsage: 1
52 | alphaIsTransparency: 1
53 | spriteTessellationDetail: -1
54 | textureType: 8
55 | textureShape: 1
56 | singleChannelComponent: 0
57 | maxTextureSizeSet: 0
58 | compressionQualitySet: 0
59 | textureFormatSet: 0
60 | applyGammaDecoding: 0
61 | platformSettings:
62 | - serializedVersion: 3
63 | buildTarget: DefaultTexturePlatform
64 | maxTextureSize: 2048
65 | resizeAlgorithm: 0
66 | textureFormat: -1
67 | textureCompression: 1
68 | compressionQuality: 50
69 | crunchedCompression: 0
70 | allowsAlphaSplitting: 0
71 | overridden: 0
72 | androidETC2FallbackOverride: 0
73 | forceMaximumCompressionQuality_BC6H_BC7: 0
74 | spriteSheet:
75 | serializedVersion: 2
76 | sprites: []
77 | outline: []
78 | physicsShape: []
79 | bones: []
80 | spriteID: 5e97eb03825dee720800000000000000
81 | internalID: 0
82 | vertices: []
83 | indices:
84 | edges: []
85 | weights: []
86 | secondaryTextures: []
87 | spritePackingTag:
88 | pSDRemoveMatte: 0
89 | pSDShowRemoveMatteOption: 0
90 | userData:
91 | assetBundleName:
92 | assetBundleVariant:
93 |
--------------------------------------------------------------------------------
/demo/Assets/Texture/bg5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/demo/Assets/Texture/bg5.png
--------------------------------------------------------------------------------
/demo/Assets/Texture/bg5.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2ba20feb219204c489ded922aec9560b
3 | TextureImporter:
4 | internalIDToNameTable: []
5 | externalObjects: {}
6 | serializedVersion: 11
7 | mipmaps:
8 | mipMapMode: 0
9 | enableMipMap: 0
10 | sRGBTexture: 1
11 | linearTexture: 0
12 | fadeOut: 0
13 | borderMipMap: 0
14 | mipMapsPreserveCoverage: 0
15 | alphaTestReferenceValue: 0.5
16 | mipMapFadeDistanceStart: 1
17 | mipMapFadeDistanceEnd: 3
18 | bumpmap:
19 | convertToNormalMap: 0
20 | externalNormalMap: 0
21 | heightScale: 0.25
22 | normalMapFilter: 0
23 | isReadable: 0
24 | streamingMipmaps: 0
25 | streamingMipmapsPriority: 0
26 | grayScaleToAlpha: 0
27 | generateCubemap: 6
28 | cubemapConvolution: 0
29 | seamlessCubemap: 0
30 | textureFormat: 1
31 | maxTextureSize: 2048
32 | textureSettings:
33 | serializedVersion: 2
34 | filterMode: -1
35 | aniso: -1
36 | mipBias: -100
37 | wrapU: 1
38 | wrapV: 1
39 | wrapW: 1
40 | nPOTScale: 0
41 | lightmap: 0
42 | compressionQuality: 50
43 | spriteMode: 1
44 | spriteExtrude: 1
45 | spriteMeshType: 1
46 | alignment: 0
47 | spritePivot: {x: 0.5, y: 0.5}
48 | spritePixelsToUnits: 100
49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
50 | spriteGenerateFallbackPhysicsShape: 1
51 | alphaUsage: 1
52 | alphaIsTransparency: 1
53 | spriteTessellationDetail: -1
54 | textureType: 8
55 | textureShape: 1
56 | singleChannelComponent: 0
57 | maxTextureSizeSet: 0
58 | compressionQualitySet: 0
59 | textureFormatSet: 0
60 | applyGammaDecoding: 0
61 | platformSettings:
62 | - serializedVersion: 3
63 | buildTarget: DefaultTexturePlatform
64 | maxTextureSize: 2048
65 | resizeAlgorithm: 0
66 | textureFormat: -1
67 | textureCompression: 1
68 | compressionQuality: 50
69 | crunchedCompression: 0
70 | allowsAlphaSplitting: 0
71 | overridden: 0
72 | androidETC2FallbackOverride: 0
73 | forceMaximumCompressionQuality_BC6H_BC7: 0
74 | spriteSheet:
75 | serializedVersion: 2
76 | sprites: []
77 | outline: []
78 | physicsShape: []
79 | bones: []
80 | spriteID: 5e97eb03825dee720800000000000000
81 | internalID: 0
82 | vertices: []
83 | indices:
84 | edges: []
85 | weights: []
86 | secondaryTextures: []
87 | spritePackingTag:
88 | pSDRemoveMatte: 0
89 | pSDShowRemoveMatteOption: 0
90 | userData:
91 | assetBundleName:
92 | assetBundleVariant:
93 |
--------------------------------------------------------------------------------
/demo/Packages/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.unity.2d.sprite": "1.0.0",
4 | "com.unity.2d.tilemap": "1.0.0",
5 | "com.unity.ads": "3.7.5",
6 | "com.unity.analytics": "3.6.12",
7 | "com.unity.collab-proxy": "1.17.6",
8 | "com.unity.ide.rider": "3.0.16",
9 | "com.unity.ide.visualstudio": "2.0.16",
10 | "com.unity.ide.vscode": "1.2.5",
11 | "com.unity.purchasing": "4.5.1",
12 | "com.unity.test-framework": "1.1.31",
13 | "com.unity.textmeshpro": "3.0.6",
14 | "com.unity.timeline": "1.6.4",
15 | "com.unity.ugui": "1.0.0",
16 | "com.unity.xr.legacyinputhelpers": "2.1.10",
17 | "com.unity.modules.ai": "1.0.0",
18 | "com.unity.modules.androidjni": "1.0.0",
19 | "com.unity.modules.animation": "1.0.0",
20 | "com.unity.modules.assetbundle": "1.0.0",
21 | "com.unity.modules.audio": "1.0.0",
22 | "com.unity.modules.cloth": "1.0.0",
23 | "com.unity.modules.director": "1.0.0",
24 | "com.unity.modules.imageconversion": "1.0.0",
25 | "com.unity.modules.imgui": "1.0.0",
26 | "com.unity.modules.jsonserialize": "1.0.0",
27 | "com.unity.modules.particlesystem": "1.0.0",
28 | "com.unity.modules.physics": "1.0.0",
29 | "com.unity.modules.physics2d": "1.0.0",
30 | "com.unity.modules.screencapture": "1.0.0",
31 | "com.unity.modules.terrain": "1.0.0",
32 | "com.unity.modules.terrainphysics": "1.0.0",
33 | "com.unity.modules.tilemap": "1.0.0",
34 | "com.unity.modules.ui": "1.0.0",
35 | "com.unity.modules.uielements": "1.0.0",
36 | "com.unity.modules.umbra": "1.0.0",
37 | "com.unity.modules.unityanalytics": "1.0.0",
38 | "com.unity.modules.unitywebrequest": "1.0.0",
39 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
40 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
41 | "com.unity.modules.unitywebrequesttexture": "1.0.0",
42 | "com.unity.modules.unitywebrequestwww": "1.0.0",
43 | "com.unity.modules.vehicles": "1.0.0",
44 | "com.unity.modules.video": "1.0.0",
45 | "com.unity.modules.vr": "1.0.0",
46 | "com.unity.modules.wind": "1.0.0",
47 | "com.unity.modules.xr": "1.0.0"
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/AudioManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!11 &1
4 | AudioManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Volume: 1
8 | Rolloff Scale: 1
9 | Doppler Factor: 1
10 | Default Speaker Mode: 2
11 | m_SampleRate: 0
12 | m_DSPBufferSize: 1024
13 | m_VirtualVoiceCount: 512
14 | m_RealVoiceCount: 32
15 | m_SpatializerPlugin:
16 | m_AmbisonicDecoderPlugin:
17 | m_DisableAudio: 0
18 | m_VirtualizeEffects: 1
19 | m_RequestedDSPBufferSize: 0
20 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/AutoStreamingSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1200 &1
4 | AutoStreamingSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | mSearchMode: 15
8 | mCustomSearchFile:
9 | mTextureSearchString:
10 | mMeshSearchString:
11 | mTextures: []
12 | mAudios: []
13 | mMeshes: []
14 | mScenes: []
15 | mConfigCCD:
16 | useCCD: 0
17 | cosKey:
18 | projectGuid:
19 | bucketUuid:
20 | bucketName:
21 | badgeName:
22 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/ClusterInputManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!236 &1
4 | ClusterInputManager:
5 | m_ObjectHideFlags: 0
6 | m_Inputs: []
7 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/DynamicsManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!55 &1
4 | PhysicsManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 10
7 | m_Gravity: {x: 0, y: -9.81, z: 0}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_BounceThreshold: 2
10 | m_SleepThreshold: 0.005
11 | m_DefaultContactOffset: 0.01
12 | m_DefaultSolverIterations: 6
13 | m_DefaultSolverVelocityIterations: 1
14 | m_QueriesHitBackfaces: 0
15 | m_QueriesHitTriggers: 1
16 | m_EnableAdaptiveForce: 0
17 | m_ClothInterCollisionDistance: 0
18 | m_ClothInterCollisionStiffness: 0
19 | m_ContactsGeneration: 1
20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
21 | m_AutoSimulation: 1
22 | m_AutoSyncTransforms: 0
23 | m_ReuseCollisionCallbacks: 0
24 | m_ClothInterCollisionSettingsToggle: 0
25 | m_ContactPairsMode: 0
26 | m_BroadphaseType: 0
27 | m_WorldBounds:
28 | m_Center: {x: 0, y: 0, z: 0}
29 | m_Extent: {x: 250, y: 250, z: 250}
30 | m_WorldSubdivisions: 8
31 | m_FrictionType: 0
32 | m_EnableEnhancedDeterminism: 0
33 | m_EnableUnifiedHeightmaps: 1
34 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/EditorBuildSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1045 &1
4 | EditorBuildSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Scenes:
8 | - enabled: 1
9 | path: Assets/Scenes/NewScenes/main.unity
10 | guid: fe65a94e3707b0744af1f1b78fcc6e00
11 | - enabled: 1
12 | path: Assets/Scenes/NewScenes/audio.unity
13 | guid: 422c40e46d7cbe440990cd5356da26d8
14 | - enabled: 1
15 | path: Assets/Scenes/NewScenes/banner.unity
16 | guid: 9d2ccf09bd4973845ab2eabf7a533457
17 | - enabled: 1
18 | path: Assets/Scenes/NewScenes/custom.unity
19 | guid: 6c76b09e23d33d04692f77b1a6f8a819
20 | - enabled: 1
21 | path: Assets/Scenes/NewScenes/gameBanner.unity
22 | guid: 75268fad364c59c4781e0f971db76dce
23 | - enabled: 1
24 | path: Assets/Scenes/NewScenes/gameDrawer.unity
25 | guid: 04b25042dfb51594881f1a9b3e57bd8d
26 | - enabled: 1
27 | path: Assets/Scenes/NewScenes/gamePortal.unity
28 | guid: 89409a2bd57d6894496877b4a7d7f064
29 | - enabled: 1
30 | path: Assets/Scenes/NewScenes/Interstitial.unity
31 | guid: d3dca9b1d97aaf4439c06c763b15cec8
32 | - enabled: 1
33 | path: Assets/Scenes/NewScenes/rewardedVideo.unity
34 | guid: d0f5050d9aec4b544b1ba8b991462bca
35 | - enabled: 1
36 | path: Assets/Scenes/NewScenes/login.unity
37 | guid: 6c6df49e773ed784bbef3266d173fd61
38 | - enabled: 1
39 | path: Assets/Scenes/NewScenes/StorageItem.unity
40 | guid: d8d2372b114b6494fb479a60f8809869
41 | - enabled: 1
42 | path: Assets/Scenes/NewScenes/UserCloudStorageItem.unity
43 | guid: 218c9b38f2a7aa443bdae7d02707d9e8
44 | - enabled: 1
45 | path: Assets/Scenes/NewScenes/systemInfo.unity
46 | guid: 0ccb615aaba971b44befd577b2f56d26
47 | - enabled: 1
48 | path: Assets/Scenes/NewScenes/showModal.unity
49 | guid: 5bee905a62b7af24a991c0bdf75cad0c
50 | - enabled: 1
51 | path: Assets/Scenes/NewScenes/qgpay.unity
52 | guid: ea414604814a9064fbcc7086542bd021
53 | - enabled: 1
54 | path: Assets/Scenes/NewScenes/deviceInfoOther.unity
55 | guid: 1b4738d4cc46a7246b9d59331a397c65
56 | - enabled: 1
57 | path: Assets/Scenes/NewScenes/deviceInfo.unity
58 | guid: 3b390ae58c0c2e442a45b27c1c8833e8
59 | - enabled: 1
60 | path: Assets/Scenes/NewScenes/vibrateShort.unity
61 | guid: 0be1614e7f7d85c47a666d3ee7ad031d
62 | - enabled: 1
63 | path: Assets/Scenes/NewScenes/filemanager.unity
64 | guid: 3fbbdcbf0880dc1459f6aa4bb7655c81
65 | - enabled: 1
66 | path: Assets/Scenes/NewScenes/deviceMotion.unity
67 | guid: 499f8124009e9fa4fb177aea29b29167
68 | - enabled: 1
69 | path: Assets/Scenes/NewScenes/video.unity
70 | guid: 2ccc854c710c6504a88f6a0aceac4d30
71 | - enabled: 1
72 | path: Assets/Scenes/NewScenes/recorder.unity
73 | guid: ba9f89b0f5fc7d7438760ea86fb8d208
74 | - enabled: 1
75 | path: Assets/Scenes/NewScenes/unityAudio.unity
76 | guid: 34f6804019c37fa418b66c48fbaa7252
77 | - enabled: 1
78 | path: Assets/Scenes/NewScenes/onShow.unity
79 | guid: ae76f2fc5cd703c4488e16713d6809cc
80 | - enabled: 1
81 | path: Assets/Scenes/NewScenes/PlayerPrefs.unity
82 | guid: 1209dbb85201e4945ba0d12b84b822b4
83 | - enabled: 1
84 | path: Assets/Scenes/NewScenes/onAuthDialogShow.unity
85 | guid: 7f3e661492a592842b0b63b362f132f8
86 | m_configObjects: {}
87 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/EditorSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!159 &1
4 | EditorSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 7
7 | m_ExternalVersionControlSupport: Hidden Meta Files
8 | m_SerializationMode: 2
9 | m_LineEndingsForNewScripts: 2
10 | m_DefaultBehaviorMode: 1
11 | m_PrefabRegularEnvironment: {fileID: 0}
12 | m_PrefabUIEnvironment: {fileID: 0}
13 | m_SpritePackerMode: 4
14 | m_SpritePackerPaddingPower: 1
15 | m_EtcTextureCompressorBehavior: 1
16 | m_EtcTextureFastCompressor: 1
17 | m_EtcTextureNormalCompressor: 2
18 | m_EtcTextureBestCompressor: 4
19 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;rsp
20 | m_ProjectGenerationRootNamespace:
21 | m_CollabEditorSettings:
22 | inProgressEnabled: 1
23 | m_EnableTextureStreamingInPlayMode: 1
24 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/GraphicsSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!30 &1
4 | GraphicsSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 12
7 | m_Deferred:
8 | m_Mode: 1
9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
10 | m_DeferredReflections:
11 | m_Mode: 1
12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
13 | m_ScreenSpaceShadows:
14 | m_Mode: 1
15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
16 | m_LegacyDeferred:
17 | m_Mode: 1
18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
19 | m_DepthNormals:
20 | m_Mode: 1
21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
22 | m_MotionVectors:
23 | m_Mode: 1
24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
25 | m_LightHalo:
26 | m_Mode: 1
27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
28 | m_LensFlare:
29 | m_Mode: 1
30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
31 | m_AlwaysIncludedShaders:
32 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
33 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
34 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
35 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
36 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
37 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
38 | - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0}
39 | - {fileID: 16000, guid: 0000000000000000f000000000000000, type: 0}
40 | - {fileID: 17000, guid: 0000000000000000f000000000000000, type: 0}
41 | m_PreloadedShaders: []
42 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000,
43 | type: 0}
44 | m_CustomRenderPipeline: {fileID: 0}
45 | m_TransparencySortMode: 0
46 | m_TransparencySortAxis: {x: 0, y: 0, z: 1}
47 | m_DefaultRenderingPath: 1
48 | m_DefaultMobileRenderingPath: 1
49 | m_TierSettings: []
50 | m_LightmapStripping: 0
51 | m_FogStripping: 0
52 | m_InstancingStripping: 0
53 | m_LightmapKeepPlain: 1
54 | m_LightmapKeepDirCombined: 1
55 | m_LightmapKeepDynamicPlain: 1
56 | m_LightmapKeepDynamicDirCombined: 1
57 | m_LightmapKeepShadowMask: 1
58 | m_LightmapKeepSubtractive: 1
59 | m_FogKeepLinear: 1
60 | m_FogKeepExp: 1
61 | m_FogKeepExp2: 1
62 | m_AlbedoSwatchInfos: []
63 | m_LightsUseLinearIntensity: 0
64 | m_LightsUseColorTemperature: 0
65 | m_LogWhenShaderIsCompiled: 0
66 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/MemorySettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!387306366 &1
4 | MemorySettings:
5 | m_ObjectHideFlags: 0
6 | m_EditorMemorySettings:
7 | m_MainAllocatorBlockSize: -1
8 | m_ThreadAllocatorBlockSize: -1
9 | m_MainGfxBlockSize: -1
10 | m_ThreadGfxBlockSize: -1
11 | m_CacheBlockSize: -1
12 | m_TypetreeBlockSize: -1
13 | m_ProfilerBlockSize: -1
14 | m_ProfilerEditorBlockSize: -1
15 | m_BucketAllocatorGranularity: -1
16 | m_BucketAllocatorBucketsCount: -1
17 | m_BucketAllocatorBlockSize: -1
18 | m_BucketAllocatorBlockCount: -1
19 | m_ProfilerBucketAllocatorGranularity: -1
20 | m_ProfilerBucketAllocatorBucketsCount: -1
21 | m_ProfilerBucketAllocatorBlockSize: -1
22 | m_ProfilerBucketAllocatorBlockCount: -1
23 | m_TempAllocatorSizeMain: -1
24 | m_JobTempAllocatorBlockSize: -1
25 | m_BackgroundJobTempAllocatorBlockSize: -1
26 | m_JobTempAllocatorReducedBlockSize: -1
27 | m_TempAllocatorSizeGIBakingWorker: -1
28 | m_TempAllocatorSizeNavMeshWorker: -1
29 | m_TempAllocatorSizeAudioWorker: -1
30 | m_TempAllocatorSizeCloudWorker: -1
31 | m_TempAllocatorSizeGfx: -1
32 | m_TempAllocatorSizeJobWorker: -1
33 | m_TempAllocatorSizeBackgroundWorker: -1
34 | m_TempAllocatorSizePreloadManager: -1
35 | m_PlatformMemorySettings: {}
36 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/NavMeshAreas.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!126 &1
4 | NavMeshProjectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | areas:
8 | - name: Walkable
9 | cost: 1
10 | - name: Not Walkable
11 | cost: 1
12 | - name: Jump
13 | cost: 2
14 | - name:
15 | cost: 1
16 | - name:
17 | cost: 1
18 | - name:
19 | cost: 1
20 | - name:
21 | cost: 1
22 | - name:
23 | cost: 1
24 | - name:
25 | cost: 1
26 | - name:
27 | cost: 1
28 | - name:
29 | cost: 1
30 | - name:
31 | cost: 1
32 | - name:
33 | cost: 1
34 | - name:
35 | cost: 1
36 | - name:
37 | cost: 1
38 | - name:
39 | cost: 1
40 | - name:
41 | cost: 1
42 | - name:
43 | cost: 1
44 | - name:
45 | cost: 1
46 | - name:
47 | cost: 1
48 | - name:
49 | cost: 1
50 | - name:
51 | cost: 1
52 | - name:
53 | cost: 1
54 | - name:
55 | cost: 1
56 | - name:
57 | cost: 1
58 | - name:
59 | cost: 1
60 | - name:
61 | cost: 1
62 | - name:
63 | cost: 1
64 | - name:
65 | cost: 1
66 | - name:
67 | cost: 1
68 | - name:
69 | cost: 1
70 | - name:
71 | cost: 1
72 | m_LastAgentTypeID: -887442657
73 | m_Settings:
74 | - serializedVersion: 2
75 | agentTypeID: 0
76 | agentRadius: 0.5
77 | agentHeight: 2
78 | agentSlope: 45
79 | agentClimb: 0.75
80 | ledgeDropHeight: 0
81 | maxJumpAcrossDistance: 0
82 | minRegionArea: 2
83 | manualCellSize: 0
84 | cellSize: 0.16666667
85 | manualTileSize: 0
86 | tileSize: 256
87 | accuratePlacement: 0
88 | debug:
89 | m_Flags: 0
90 | m_SettingNames:
91 | - Humanoid
92 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/PackageManagerSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &1
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 61
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_GameObject: {fileID: 0}
10 | m_Enabled: 1
11 | m_EditorHideFlags: 0
12 | m_Script: {fileID: 13964, guid: 0000000000000000e000000000000000, type: 0}
13 | m_Name:
14 | m_EditorClassIdentifier:
15 | m_ScopedRegistriesSettingsExpanded: 1
16 | oneTimeWarningShown: 0
17 | m_Registries:
18 | - m_Id: main
19 | m_Name:
20 | m_Url: https://packages.unity.com
21 | m_Scopes: []
22 | m_IsDefault: 1
23 | m_UserSelectedRegistryName:
24 | m_UserAddingNewScopedRegistry: 0
25 | m_RegistryInfoDraft:
26 | m_ErrorMessage:
27 | m_Original:
28 | m_Id:
29 | m_Name:
30 | m_Url:
31 | m_Scopes: []
32 | m_IsDefault: 0
33 | m_Modified: 0
34 | m_Name:
35 | m_Url:
36 | m_Scopes:
37 | -
38 | m_SelectedScopeIndex: 0
39 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/Physics2DSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!19 &1
4 | Physics2DSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 4
7 | m_Gravity: {x: 0, y: -9.81}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_VelocityIterations: 8
10 | m_PositionIterations: 3
11 | m_VelocityThreshold: 1
12 | m_MaxLinearCorrection: 0.2
13 | m_MaxAngularCorrection: 8
14 | m_MaxTranslationSpeed: 100
15 | m_MaxRotationSpeed: 360
16 | m_BaumgarteScale: 0.2
17 | m_BaumgarteTimeOfImpactScale: 0.75
18 | m_TimeToSleep: 0.5
19 | m_LinearSleepTolerance: 0.01
20 | m_AngularSleepTolerance: 2
21 | m_DefaultContactOffset: 0.01
22 | m_JobOptions:
23 | serializedVersion: 2
24 | useMultithreading: 0
25 | useConsistencySorting: 0
26 | m_InterpolationPosesPerJob: 100
27 | m_NewContactsPerJob: 30
28 | m_CollideContactsPerJob: 100
29 | m_ClearFlagsPerJob: 200
30 | m_ClearBodyForcesPerJob: 200
31 | m_SyncDiscreteFixturesPerJob: 50
32 | m_SyncContinuousFixturesPerJob: 50
33 | m_FindNearestContactsPerJob: 100
34 | m_UpdateTriggerContactsPerJob: 100
35 | m_IslandSolverCostThreshold: 100
36 | m_IslandSolverBodyCostScale: 1
37 | m_IslandSolverContactCostScale: 10
38 | m_IslandSolverJointCostScale: 10
39 | m_IslandSolverBodiesPerJob: 50
40 | m_IslandSolverContactsPerJob: 50
41 | m_AutoSimulation: 1
42 | m_QueriesHitTriggers: 1
43 | m_QueriesStartInColliders: 1
44 | m_CallbacksOnDisable: 1
45 | m_ReuseCollisionCallbacks: 0
46 | m_AutoSyncTransforms: 0
47 | m_AlwaysShowColliders: 0
48 | m_ShowColliderSleep: 1
49 | m_ShowColliderContacts: 0
50 | m_ShowColliderAABB: 0
51 | m_ContactArrowScale: 0.2
52 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412}
53 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432}
54 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745}
55 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804}
56 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
57 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/PresetManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1386491679 &1
4 | PresetManager:
5 | m_ObjectHideFlags: 0
6 | m_DefaultList: []
7 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/ProjectVersion.txt:
--------------------------------------------------------------------------------
1 | m_EditorVersion: 2021.3.14f1
2 | m_EditorVersionWithRevision: 2021.3.14f1 (eee1884e7226)
3 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/TagManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!78 &1
4 | TagManager:
5 | serializedVersion: 2
6 | tags: []
7 | layers:
8 | - Default
9 | - TransparentFX
10 | - Ignore Raycast
11 | -
12 | - Water
13 | - UI
14 | -
15 | -
16 | -
17 | -
18 | -
19 | -
20 | -
21 | -
22 | -
23 | -
24 | -
25 | -
26 | -
27 | -
28 | -
29 | -
30 | -
31 | -
32 | -
33 | -
34 | -
35 | -
36 | -
37 | -
38 | -
39 | -
40 | m_SortingLayers:
41 | - name: Default
42 | uniqueID: 0
43 | locked: 0
44 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/TimeManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!5 &1
4 | TimeManager:
5 | m_ObjectHideFlags: 0
6 | Fixed Timestep: 0.02
7 | Maximum Allowed Timestep: 0.33333334
8 | m_TimeScale: 1
9 | Maximum Particle Timestep: 0.03
10 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/UnityConnectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!310 &1
4 | UnityConnectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 1
7 | m_Enabled: 0
8 | m_TestMode: 0
9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events
10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events
11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com
12 | m_DashboardUrl: https://dashboard.unity3d.com
13 | m_TestInitMode: 0
14 | CrashReportingSettings:
15 | m_EventUrl: https://perf-events.cloud.unity3d.com
16 | m_Enabled: 0
17 | m_LogBufferSize: 10
18 | m_CaptureEditorExceptions: 1
19 | UnityPurchasingSettings:
20 | m_Enabled: 0
21 | m_TestMode: 0
22 | UnityAnalyticsSettings:
23 | m_Enabled: 0
24 | m_TestMode: 0
25 | m_InitializeOnStartup: 1
26 | m_PackageRequiringCoreStatsPresent: 0
27 | UnityAdsSettings:
28 | m_Enabled: 0
29 | m_InitializeOnStartup: 1
30 | m_TestMode: 0
31 | m_IosGameId:
32 | m_AndroidGameId:
33 | m_GameIds: {}
34 | m_GameId:
35 | PerformanceReportingSettings:
36 | m_Enabled: 0
37 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/VFXManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!937362698 &1
4 | VFXManager:
5 | m_ObjectHideFlags: 0
6 | m_IndirectShader: {fileID: 0}
7 | m_CopyBufferShader: {fileID: 0}
8 | m_SortShader: {fileID: 0}
9 | m_RenderPipeSettingsPath:
10 | m_FixedTimeStep: 0.016666668
11 | m_MaxDeltaTime: 0.05
12 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/VersionControlSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!890905787 &1
4 | VersionControlSettings:
5 | m_ObjectHideFlags: 0
6 | m_Mode: Visible Meta Files
7 | m_CollabEditorSettings:
8 | inProgressEnabled: 1
9 |
--------------------------------------------------------------------------------
/demo/ProjectSettings/XRSettings.asset:
--------------------------------------------------------------------------------
1 | {
2 | "m_SettingKeys": [
3 | "VR Device Disabled",
4 | "VR Device User Alert"
5 | ],
6 | "m_SettingValues": [
7 | "False",
8 | "False"
9 | ]
10 | }
--------------------------------------------------------------------------------
/demo/ProjectSettings/boot.config:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/demo/ProjectSettings/boot.config
--------------------------------------------------------------------------------
/demo/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/demo/logo.png
--------------------------------------------------------------------------------
/doc/CapabilitySupport.md:
--------------------------------------------------------------------------------
1 | # 能力支持
2 |
3 | | 能力 | 支持性 | 描述 |
4 | | --- | --- | --- |
5 | | Unity 基础模块 | 支持 | 支持动画、物理、渲染、音频、UI等基础模块 |
6 | | Unity 渲染管线 | 部分支持 | 支持标准渲染管线,URP 未完全支持 |
7 | | Unity 资源加载 | 支持 | 支持 AssetBundle、Addressables |
8 | | Lua 脚本 | 不支持 | 小游戏暂不允许脚本更新能力 |
9 | | PureTS | 不支持 | 小游戏暂不允许脚本更新能力 |
10 | | 第三方插件 | 部分支持 | 支持大部分插件,C# 插件与非平台相关的 C 原生插件 |
11 | | 分包 | 部分支持 | 不支持 wasm 分包,js 分包详见官方文档 [分包能力](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/develop/subpackage/subpackage) |
12 | | 渲染接口 | 支持 | WebGL1.0 完全支持,WebGL2.0 部分支持[详情](WebGL2.md) |
13 | | 多线程 | 不支持 | 不支持 C# 多线程相关 API,使用异步等其他方式代替 |
14 | | 文件系统 | 需调整 | 不支持 C# 文件相关 API,需要使用 [OPPO SDK API](API.md),用户本地存储空间限制为 500M |
15 | | 网络访问 | 支持 | 推荐使用 UnityWebRequest |
--------------------------------------------------------------------------------
/doc/Demo.md:
--------------------------------------------------------------------------------
1 | # 示例工程
2 |
3 | ## 主界面
4 | 
5 |
6 | ## 登录
7 | 点击 `登录` 后将以当前 OPPO 账号进行登录请求,打印登录结果,参考 API [QG.Login](API.md#登录)
8 |
9 | 
10 |
11 | ## 支付
12 | > 非测试页面,此操作将进行真实的支付
13 |
14 | 点击 `支付` 将调起 OPPO 支付 SDK,参考 API [QG.Pay](API.md#支付)
15 |
16 | 
17 |
18 | ## 数据储存
19 | 通过 key-value 的形式支持本地存储,参考 API [QG.Storage](API.md#数据储存)
20 |
21 | 
22 |
23 | ## 创建桌面图标
24 | 弹出创建桌面图标确认界面,提醒用户进行二次确认,参考 API [QG.HasShortcutInstalled](API.md#创建桌面图标)
25 |
26 | 
27 |
28 | ## 广告
29 | > 测试 RPK 包名必须为 `com.oppo.littleGameDemo` 才能显示广告
30 |
31 | 支持多种类型的广告,以激励视频广告为例,参考 API [QG.CreateRewardedVideoAd](API.md#激励视频广告)
32 |
33 | 
34 |
35 | ## 音频
36 | 支持音频的多种基本操作,以播放音频为例,参考 API [QG.PlayAudio](API.md#音频播放)
37 |
38 | 
--------------------------------------------------------------------------------
/doc/DevelopmentQA.md:
--------------------------------------------------------------------------------
1 | # 技术常见问题 QA
2 |
3 | ## Unity WebGL
4 |
5 | ### 1. 怎么通过 JavaScript 回调给 C# 脚本
6 |
7 | - 可以通过 `window.unityInstance.SendMessage(objectName,
8 | methodName, value)` 进行调用,其中 OPPO 会将初始化的 Unity 实例赋值到 `window['unityInstance']` 中,具体参考以下文档
9 |
10 | - Unity:https://docs.unity3d.com/Manual/webgl-interactingwithbrowserscripting.html
11 | - OPPO 小游戏 API 文档:https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/
12 |
13 |
14 | ### 2. 打包 AssetBundle 发布到 WebGL 无法使用
15 |
16 | - 需要使用 LZ4 压缩 AssetBundle,打包命令 `BuildPipeline.BuildAssetBundles(path, BuildAssetBundleOptions.ChunkBasedCompression, BuildTarget.WebGL)`
17 |
18 | ### 3. 是否支持 WebGL2.0
19 |
20 | - 暂不支持,详见 [能力支持](CapabilitySupport.md)
21 |
22 | ## 打包配置
23 |
24 | ### 1. 游戏如何修改桌面图标、横竖屏、最小平台版本
25 |
26 | - 优先推荐您 [使用 SDK 进行配置](TransformBySDK.md)
27 |
28 | - 您也可以直接修改 `quickgame/manifest.json` 文件,并且重新用 `quickgame unity [release]` 即可重新发布
29 |
30 | ## 发布上架
31 |
32 | ### 1. 是否可以上架未带 `xxx.signed.rpk` 的 RPK 包到线上
33 |
34 | - 需要使用 `quickgame unity release` 打包生成 RPK,才可以上架到线上。其
35 | 中开发者需要保留签名,用于以后代码更新重新打包
36 |
37 | ### 2. 游戏上架包体太大怎么解决
38 |
39 | - 由于 OPPO 小游戏平台对 RPK 包体有限制大小,最大不能超过 30M。而 Unity 发布的游戏大部分都比较大,将游戏的资源放到开发者自己的服务器上,并修改 Unity 配置文件,再重新打包。以 2019 版本为例如下所示
40 |
41 | ```javascript
42 | {
43 | "companyName": "company",
44 | "productName": "demo",
45 | "productVersion": "0.1",
46 | "dataUrl": "https://xxx.com/webgl.data.unityweb",
47 | "wasmCodeUrl": "https://xxx.com/webgl.wasm.code.unityweb",
48 | "wasmFrameworkUrl": "webgl.wasm.framework.unityweb",
49 | "graphicsAPI": ["WebGL 1.0"],
50 | "webglContextAttributes": {"preserveDrawingBuffer": false},
51 | "splashScreenStyle": "Dark",
52 | "backgroundColor": "#231F20",
53 | "developmentBuild": false,
54 | "multithreading": false,
55 | "unityVersion": "2019.1.0f2"
56 | }
57 | ```
58 |
59 | - 原Unity项目中 AssetBundle 文件保存 WebGL 项目的 StreamingAssets 文件夹下,把 StreamingAssets 文件夹中的所有内容放到自己服务器上。打包 RPK 包时,在 WebGL 发布的目标目录执行命令时,添加参数 --addressable,参数 value 为您的服务器地址。执行示例命令
60 |
61 | `quickgame unity --unityVer 2019.4.35f1 --addressable https://oppo/AddressableAssetsData`
62 | - 打包后的 RPK 包体缩小不少,成功把分包中的资源放到远程服务器上请求了
63 | - 经过上述处理后,打包的 RPK 包体仍然超出规定的 30MB,后续还可以考虑压缩、优化、重构源代码
64 |
65 | ## 环境适配
66 |
67 | ### 1. 屏幕上下左右留有黑边
68 |
69 | - 开发者需要针对不同的手机进行屏幕适配。由于 OPPO 小游戏的画布宽和高跟屏幕分
70 | 辩率保持一致,并且 devicePixelRatio 为 1 ,所以进行适配,首先需要适配不同的手机
71 | 分辨率,如下所示
72 |
73 | 
74 |
75 | - 最后需要适配发布的分辨率,并在手机进行测试,如下所示
76 |
77 | 
78 |
79 | ### 2. 如何接入平台能力,包括退出、账户、支付、广告等
80 |
81 | - 优先推荐您使用 Unity SDK,下载地址位于 `tools/unity_webgl_rpk_oppo_v*.unitypackage`。接着参考 [API 使用文档](API.md),使用 C# 封装的接口调用平台能力
82 |
83 | - 还可以通过调用 window 能力一样调用我们平台能力,具体参考以下文档
84 |
85 | - Unity:https://docs.unity3d.com/Manual/webgl-interactingwithbrowserscripting.html
86 | - OPPO 小游戏 API 文档:https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/
87 |
88 | ### 3. 默认文字不显示怎么办
89 |
90 | - 默认中文字体不显示,必须使用外部导入的字体(需要下载字体文件)
91 |
92 | ### 4. 音频使用什么格式
93 |
94 | - 建议使用 `.mp3`
95 |
96 | ### 5. 是否可以使用Blob格式数据
97 |
98 | - 当前不支持,推荐使用 `ArrayBuffer` 替代
99 |
100 | ### 6. 安装 Node.js 时提示 Warning: Setting the NODE_TLS_REJECT_UNAUTHORIZED environment variable to ‘0‘ makes TLS connections
101 |
102 | - 环境变量里面查看,如果配置了 `NODE_TLS_REJECT_UNAUTHORIZED`,将其删除就可以了
103 |
104 | ### 7. 使用 Demo 示例中的支付代码可能会碰到的问题
105 |
106 | - 查看 OPPO 小游戏文档中支付相关说明
107 |
108 | https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/develop/pay/pay-introduction
109 |
110 | 若仍无法解决,请 [联系我们](IssueAndContact.md)
111 |
112 | ### 8. 是否支持分包
113 |
114 | - 部分支持,详见 [能力支持](CapabilitySupport.md) `能力-分包` 项
--------------------------------------------------------------------------------
/doc/IssueAndContact.md:
--------------------------------------------------------------------------------
1 | # 问题反馈与联系我们
2 |
3 | 开发过程中遇到任何问题,可以通过以下方式联系并反馈给我们
4 |
5 | ## 反馈渠道
6 |
7 | 您可以通过 [Git Issue](https://github.com/oppominigame/unity-webgl-to-oppo-minigame/issues) 或 [小游戏开发者论坛](https://open.oppomobile.com/bbs/geek.php?mod=index) 进行反馈,我们将不定期对其中的问题进行集中解答
8 |
9 | ## 小游戏联系人
10 |
11 | 若您遇到任何技术、商务、广告等问题时,希望得到最及时的反馈,可以直接找到我们相应的联系人进行沟通,[点此](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/introduce/know/linkman) 前往查看具体联系方式
--------------------------------------------------------------------------------
/doc/OpensslPlugin.md:
--------------------------------------------------------------------------------
1 | # 一键生成签名证书
2 |
3 | ## 版本要求
4 |
5 | SDK:V8.0.5 及以上
6 | > 可前往`tools` 目录安装 `unity_webgl_rpk_oppo_v8.0.5.unitypackage` 及以上版本,后续版本可通过 [SDK 自检更新](SDKUpdate.md) 能力进行升级
7 |
8 | ## 功能说明
9 |
10 | > 界面截图以 `Unity 2021.3.14f1` 版本为例
11 |
12 | #### 新建签名证书
13 |
14 | 1. 执行 `OPPO小游戏 -> 打包小游戏 -> 勾选 自定义密钥库 -> 新建`
15 |
16 | 
17 |
18 | 2. 按提示输入有效参数,点击保存
19 |
20 | 
21 |
22 | 3. 确认需要下载的证书工具 `会优先使用全局openssl工具,如果没有点击确认自动安装`
23 |
24 | 
25 |
26 | 4. 生成证书提示,并弹出证书保存路径
27 |
28 | 
29 | 
30 |
31 | 5. 创建成功证书和私钥路径会自动导入
32 |
33 | 
34 |
35 |
--------------------------------------------------------------------------------
/doc/PublishQuickGame.md:
--------------------------------------------------------------------------------
1 | # 发布小游戏
2 |
3 | ## 打正式包
4 |
5 | 正式发布前,需要使用正式签名文件进行打包,按照以下步骤依次进行
6 |
7 | 1. **生成签名**:通过 [OPPO 小游戏开发者工具](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/develop/games/ide?id=_5%e3%80%81%e7%94%9f%e6%88%90%e6%b8%b8%e6%88%8f%e7%ad%be%e5%90%8d) 或 [OpenSSL](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/develop/games/quickgame?id=_53-%e5%85%b6%e4%bb%96%e7%94%9f%e6%88%90-release-%e7%ad%be%e5%90%8d%e6%96%b9%e5%bc%8f) 生成正式签名,执行完成后将生成**私钥文件** `private.pem` 和**证书文件** `certificate.pem`
8 |
9 | 2. **正式打包**:将 `private.pem` 和 `certificate.pem` 放到 `小游戏根目录/sign/release` 目录下,再于小游戏根目录执行 `quickgame pack release` 命令完成正式打包
10 |
11 | > RPK 包体积限制在 30M 以内,若超过此值将无法通过上架审核
12 |
13 | ## 上架审核
14 |
15 | 详细步骤参照 [官方文档](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/introduce/know/know) 进行
--------------------------------------------------------------------------------
/doc/RunQuickGame.md:
--------------------------------------------------------------------------------
1 | # 运行小游戏
2 |
3 | ## 工程结构
4 |
5 | 导出后的标准小游戏工程结构如下
6 |
7 | 
8 |
9 | - **Build**:Unity WebGL 导出目录
10 | - **dist**:存放打包好的小游戏 rpk
11 | - **sign**:存放签名文件
12 | - **StreamingAssets**:对应 Unity 中的同名目录,若非必需,可删除此目录,减少包体大小
13 | - **logo.png**:游戏图标
14 | - **main.js**:游戏入口文件
15 | - **manifest.json**:通过 [Unity SDK](TransformBySDK.md) 或 [命令行](TransformByCLI.md) 导出小游戏时生成的游戏配置文件
16 | - **ral.js、ral_2021.js、web-adapter.js**:小游戏适配文件
17 |
18 | > 原则上不建议对导出工程进行修改,若确实需要修改,则在修改后执行 quickgame pack 重新打包
19 |
20 | ## 真机调试
21 |
22 | OPPO 小游戏支持多种方式进行调试,可根据自身需求进行选择
23 |
24 | ### OPPO 小游戏开发者工具「强烈推荐」
25 |
26 | 通过统一的工具链对小游戏进行编译、打包、安装、真机调试等,建议使用最新版本,具体使用指南参考 [官方文档](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/develop/games/ide)
27 |
28 | ### 云真机调试「一般推荐」
29 |
30 | 具体使用指南参考 [官方文档](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/develop/feature/cloudmachine)
31 |
32 | ### 本地真机调试「一般推荐」
33 |
34 | 本地调试需要自行搭建调试环境,具体步骤如下
35 |
36 | #### 安装调试器
37 |
38 | 在进行真机调试前需要安装小游戏调试器,推荐使用最新版本,[点此](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/develop/games/use) 前往安装。安装成功后,手机桌面会出现如下快应用图标
39 |
40 | 
41 |
42 | #### 安装小游戏
43 |
44 | 打好的小游戏 RPK 包存放在 `dist` 目录中,假设名为 `com.oppo.littleGameDemo`,可以通过以下 2 种方式安装
45 |
46 | - 通过 ADB 安装 **「推荐」**:确保已安装 Android Debug Bridge 且手机已通过 USB 连接至电脑,在 `dist` 目录中打开控制台执行 `adb push com.oppo.littleGameDemo /sdcard/games/com.oppo.littleGameDemo`,命令执行结束后即安装成功
47 |
48 | - 手动安装 「不推荐」: 确保手机以通过 USB **文件传输**方式连接至电脑,通过文件浏览器打开 /sdcard/games 目录(若没有此目录需要先创建),将 `com.oppo.littleGameDemo` 拷贝至目录下即可完成安装
49 |
50 | 若安装成功,打开之前安装的调试器 App 即可看到小游戏,若安装前已打开调试器则下拉刷新列表
51 |
52 | 
53 |
54 | #### 调试小游戏
55 |
56 | 调试工作将在 Chrome 浏览器环境下进行,具体使用指南参考 [官方文档](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/develop/games/debug)
--------------------------------------------------------------------------------
/doc/SDKUpdate.md:
--------------------------------------------------------------------------------
1 | # SDK 自检更新
2 |
3 | ## 版本要求
4 |
5 | SDK:V8.0.0 及以上
6 | > 可前往`tools` 目录安装 `unity_webgl_rpk_oppo_v8.0.0.unitypackage` 及以上版本,后续版本可通过 [SDK 自检更新](SDKUpdate.md) 能力进行升级
7 |
8 | ## 功能说明
9 |
10 | > 界面截图以 `Unity 2021.3.14f1` 版本为例
11 |
12 | Unity SDK 自 V8.0.0 版本开始具备自检更新能力,展示及交互区域位于界面底部,如下图所示
13 |
14 | 
15 |
16 | 由于 SDK 部分模块依赖 `OPPO 小游戏打包工具`(以下简称 `打包工具`),因此每次打开主界面时,会对 SDK 本身和打包工具进行版本检查。在打包工具不满足指定版本时,部分模块及打包功能将不可用,`打包` 按钮置灰无法点击,需要升级后方可使用。第一次打开界面进行版本检查会相对较慢,并且与您的网络环境和速度相关,请您耐心等待,若长时间停留在版本检查阶段,请 [联系我们](IssueAndContact.md)
17 | > 若出现未检测到打包工具最新版本的情况,请尝试将源切换为 npm(推荐使用 [nrm](https://www.npmjs.com/package/nrm)),其他 npm 源中的版本可能会滞后
18 |
19 | ### SDK 更新
20 |
21 | SDK 版本展示区域分为 `[当前版本] [检查更新] [版本状态]`,点击 `检查更新` 可手动获取最新版本状态
22 |
23 | - 当正在检查 SDK 版本时,界面将展示为 `[SDK 版本: x.x.x] [正在检测 SDK 版本更新...]`
24 | - 当 SDK 已是最新版本时,界面将展示为 `[SDK 版本: x.x.x] [检查更新] [已是最新版本]`
25 | - 当 SDK 有新版本时,界面将展示为 `[SDK 版本: x.x.x] [检查更新] [升级版本]`。点击 `升级版本` 后将在安装包下载完成后,自动进行安装
26 | - 当 SDK 检查版本异常时,界面将展示为 `[SDK 版本: x.x.x] [检查更新] [更新获取失败]`。若出现此情况,您可以点击 `检查更新` 重试,根据 Unity 控制台错误输出排查问题。若仍然无法解决,请 [联系我们](IssueAndContact.md)
27 |
28 | ### 打包工具更新
29 |
30 | 打包工具版本展示区域分为 `[当前版本] [刷新版本] [版本状态]`,点击 `刷新图标` 可手动刷新版本状态
31 |
32 | - 当正在刷新打包工具版本时,界面将展示为 `[正在检查打包工具版本...]`
33 | - 当打包工具已是最新版本时,界面将展示为 `[小游戏打包工具版本: x.x.x] [刷新版本] [已是最新版本]`
34 | - 当打包工具有新版本时,界面将展示为 `[小游戏打包工具版本: x.x.x] [刷新版本] [升级版本]`,点击 `升级版本` 会将打包工具升级到最新版本
35 | - 若您未安装过打包工具,或打包工具刷新版本异常时,界面将展示为 `[获取打包工具版本失败,请安装后重试] [刷新版本] [升级版本]`。若出现此情况,您可以点击 `升级版本` 来安装最新的打包工具。若升级失败,可根据 Unity 控制台错误输出排查问题。若仍然无法解决,请 [联系我们](IssueAndContact.md)
--------------------------------------------------------------------------------
/doc/ShaderCompatibilityDetect.md:
--------------------------------------------------------------------------------
1 | # Shader 兼容性检测
2 |
3 | ## 版本要求
4 |
5 | SDK:V8.0.0 及以上
6 | > 可前往`tools` 目录安装 `unity_webgl_rpk_oppo_v8.0.0.unitypackage` 及以上版本,后续版本可通过 [SDK 自检更新](SDKUpdate.md) 能力进行升级
7 |
8 | ## 功能说明
9 |
10 | > 界面截图以 `Unity 2021.3.14f1` 版本为例
11 |
12 | ### 静态检测
13 |
14 | 静态检测用于编辑器模式下筛选常用不支持 WebGL1.0 的 Shader API
15 |
16 | #### 一键检查
17 |
18 | 1. 执行 `OPPO小游戏 -> Shader检测工具 -> 一键检查`
19 |
20 | 
21 | 2. 完成检测后提示`无异常`或`存在异常`
22 |
23 | 
24 | 
25 |
26 | 3. 查看 UnityConsole 打印 Shader 异常信息
27 |
28 | 
29 |
30 | 4. 查看日志记录异常信息,日志记录在 Project 同级目录 ShaderLog 文件夹下
31 | - 历史日志: ShaderLog/HistoryLog/日期-时间-ShaderLog.txt
32 | - 最新日志: ShaderLog/日期-时间-ShaderLog.txt
33 |
34 | #### 打包检查
35 |
36 | 1. 执行 `OPPO小游戏 -> 打包工具 -> 检查Shader兼容性 -> 打包`
37 |
38 | 
39 |
40 | 2. 完成检测后提示`无异常`或`存在异常`,根据实际情况决定是否继续打包
41 |
42 | 
43 | 
44 |
45 | ### 真机检测
46 |
47 | 真机检测用于在真实运行环境中收集 Shader 兼容错误信息
48 |
49 | 1. 执行 `OPPO小游戏 -> 打包工具 -> 启用Shader真机检测 -> 打包`
50 |
51 | 
52 |
53 | 2. 真机运行 RPK `开始测试 -> 加载资源 -> 检测异常 -> 完成检测`
54 |
55 |   
56 |
57 | 3. 检测异常:输出资源信息,无异常:点击 `完成测试 -> 进入下个场景`
--------------------------------------------------------------------------------
/doc/Technique.md:
--------------------------------------------------------------------------------
1 | # 技术原理
2 |
3 | Unity 游戏是使用 C# 语言开发的游戏,而 OPPO 小游戏的运行环境却是使用 V8 引擎和 JS Framework 解析执行。从 C# 到 JS,我们采用的方案是使用 WebGL 作为桥梁进行跨端合并
4 |
5 | - Unity 游戏提供了发布成 WebGL 项目的能力,详情见 [Unity官网介绍](https://docs.unity3d.com/cn/2020.3/Manual/webgl-technical-overview.html)
6 | - OPPO 小游戏引擎采用了 WebGL1.0 规范,使用适配层模拟实现了 Unity 游戏发布 WebGL 项目后所依赖的 Web API
7 | - 使用 OPPO 提供的 WebGL 配置方案,将 Unity 游戏原生 WebGL 项目打包成 OPPO 小游戏
--------------------------------------------------------------------------------
/doc/Transform.md:
--------------------------------------------------------------------------------
1 | # 导出小游戏
2 |
3 | ## 环境配置
4 |
5 | 1. 安装 Node.js 环境,建议安装 14.x 以上稳定版本,[点击](https://nodejs.org/en) 前往 Node.js 官方网站
6 |
7 | 2. 安装小游戏打包工具,在控制台执行 `npm install -g @oppo-minigame/cli` 进行安装。安装完成后执行 `quickgame -V` 能正确显示版本号表示安装成功。Unity 支持 **2.1.6 及以上版本**,推荐使用最新正式版本,beta 版本包含新特性但可能不稳定
8 |
9 | > 若提示 quickgame 不是内部或外部命令,可重新打开控制台或重启计算机后重新执行命令
10 |
11 | ## 导出方式
12 |
13 | 当前支持 2 种方式将 Unity 游戏导出转换为 OPPO 小游戏
14 |
15 | - [Unity SDK](TransformBySDK.md)**「强烈推荐」**:该方案会在 Unity Editor 内安装小游戏导出 SDK,通过界面的形式进行一键配置和导出,操作简单好用
16 |
17 | - [命令行](TransformByCLI.md)「新手不推荐」:该方案需要根据指引先将 Unity 游戏导出到 WebGL 平台,再运行命令行完成小游戏导出,适合从 Unity 外部修改后进行重复导出
--------------------------------------------------------------------------------
/doc/TransformByCLI.md:
--------------------------------------------------------------------------------
1 | # 使用命令行导出小游戏
2 |
3 | ## 构建 Unity WebGL
4 |
5 | ### 项目设置
6 |
7 | 1. 打开 `File -> Build Settings...`,将目标平台切换为 `WebGL`
8 | 
9 |
10 | 2. 打开 `Edit -> Project Settings...`
11 |
12 | 3. 在 `Player` 页签中展开 `Resolution and Presentation`,将 `WebGL Template` 设置为 `Default`
13 | 
14 |
15 | 4. 在 `Player` 页签中展开 `Other Settings`,取消勾选 `Auto Graphics API`,仅保留 `WebGL 1` 选项
16 | > OPPO 小游戏当前只支持 WebGL1.0,WebGL2.0支持正在开发中
17 |
18 | 
19 |
20 | 5. 在 `Player` 页签中展开 `Publishing Settings`,将 `Compression Format` 设置为 `Disabled`,并勾选 `Data Caching`
21 | > 后续打包 OPPO 小游戏时将会统一进行 GZip 压缩,因此在这里忽略压缩
22 |
23 | 
24 |
25 | 6. 打开 `File -> Build Settings...`,添加需要打包的场景到 `Scenes In Build` 面板中,取消勾选 `Development Build`,点击 `Build` 进行构建
26 | > OPPO 小游戏当前不支持调试模式,正在开发中
27 |
28 | 
29 |
30 | 7. 等待构建完成后进行 OPPO 小游戏打包流程
31 |
32 | ## 打包 OPPO 小游戏
33 |
34 | 1. 在 Unity WebGL 构建目录中打开控制台窗口,执行 `quickgame unity --unityVer ` 进行打包
35 | > unityVer(不含尖括号)为必填项,表示当前 Unity 引擎版本号,例如 2021.3.14f1
36 |
37 | 其他打包参数可以通过 `quickgame unity --help` 命令进行查询
38 |
39 | 
40 |
41 | 2. 若打包成功,将在当前目录的上级目录中生成名为 `quickgame` 的文件夹。至此打包工作已完成,下一步将前往 [运行小游戏](RunQuickGame.md)
--------------------------------------------------------------------------------
/doc/TransformBySDK.md:
--------------------------------------------------------------------------------
1 | # 使用 SDK 导出小游戏
2 |
3 | ## 下载安装
4 |
5 | 1. 下载 `tools/unity_webgl_rpk_oppo_v*.unitypackage`,推荐使用最新版本
6 |
7 | 2. 在 Unity Editor 中导入下载的 SDK 包即可完成安装
8 |
9 |
10 | ## 使用指引
11 |
12 | > 以下步骤均基于 Unity SDK V8.0.0 版本进行描述,建议您前往 `tools` 目录安装 `unity_webgl_rpk_oppo_v8.0.0.unitypackage` 及以上版本,界面截图以 `Unity 2021.3.14f1` 版本为例
13 |
14 | 1. 点击 `OPPO小游戏 -> 打包工具` 打开主窗口
15 |
16 | 
17 |
18 | 2. 根据项目实际情况填写信息,以下为填写示例
19 |
20 | 
21 | - **基本设置**
22 | - **游戏包名**:游戏唯一标识,打包后的文件以此命名,一般格式为 `com.company.product`,默认写为 `com.[PlayerSettings.companyName].[PlayerSettings.productName]`
23 | - **游戏名称**:游戏对外展示名称
24 | - **游戏方向**:进入游戏时的设备方向,包含 Portrait(竖屏)、Landscape(横屏)、landscapeLeft (横左屏)、landscapeRight (横右屏)
25 | - **游戏版本号**:正整数,一般从 1 开始递增
26 | - **游戏版本名称**:与版本号对应,用于展示版本信息
27 | - **最小平台版本号**:一般填写 1103,平台版本支持的 API 可查询 [OPPO小游戏官方文档](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/)
28 | - **游戏图标**:游戏在平台、桌面展示的图标,正方形,默认 108x108 尺寸
29 | - **自定义秘钥库**:不勾选仅供调试使用,无法正式发布;勾选后将对包体进行正式签名,可以通过 [OPPO小游戏开发者工具](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/develop/games/ide?id=_5%e3%80%81%e7%94%9f%e6%88%90%e6%b8%b8%e6%88%8f%e7%ad%be%e5%90%8d) 或者 [OpenSSL](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/develop/games/quickgame?id=_53-%e5%85%b6%e4%bb%96%e7%94%9f%e6%88%90-release-%e7%ad%be%e5%90%8d%e6%96%b9%e5%bc%8f) 生成签名
30 | - **证书文件路径**:生成的 `certificate.pem` 文件绝对路径
31 | - **私钥文件路径**:生成的 `private.pem` 文件绝对路径
32 | - **使用远程资源**:是否将 StreamingAssets 中的资源放置到服务器,勾选后将不再把此目录中的资源进行打包,需要手动填写服务器地址,并将资源上传上去
33 | - **服务器地址**:例如 http://localhost:8080/StreamingAssets
34 | - **导出路径**:导出的 WebGL 和小游戏工程存储目录
35 | - **缓存设置**
36 |
37 | 资源缓存系统相关配置,建议前往了解 [缓存系统](AssetCache.md) 后再进行配置
38 | - **启用缓存**:是否启用缓存,建议开启
39 | - **缓存路径标识**:不填写代表所有路径都进行缓存判断。填写时多个时使用英文分号分隔,例如 StreamingAssets;bundles
40 | - **不缓存的文件类型**:不填写代表所有文件都进行缓存判断。填写多个时使用英文分号分隔,例如 .json;.hash
41 | - **哈希长度**:资源 hash 占多少长度,默认 32 位
42 | - **额外清理大小**:清理缓存时默认额外清理的大小,单位 MB,默认 30MB
43 | - **保留旧版本**:资源更新后是否保留旧版本资源,默认删除不保留
44 | - **清理忽略文件**:自动清理时忽略的文件,支持纯 hash 或名称,名称尽量不要使用特殊字符。不填写代表所有缓存都有可能被清理。填写多个时使用英文分号分隔,例如 8d265a9dfd6cb7669cdb8b726f0afb1e;asset1
45 | - **开启日志**:是否将缓存信息输出到控制台,便于调试
46 | - **资源检查**
47 |
48 | Shader 检测器相关配置,建议前往了解 [Shader 兼容性检测](ShaderCompatibilityDetect.md) 后再进行配置
49 | - **检查Shader兼容性**:勾选后将在执行打包时,对 Shader 兼容性进行检查
50 | - **启用Shader真机检测**:勾选后将在执行打包时,额外构建 Shader 兼容性检查场景,在启动游戏后进入此场景进行真机检测(仅供自测,正式打包请勿使用)。
51 |
52 | 3. 点击 `打包` 即可一键将 WebGL 项目转化为 OPPO 小游戏。构建成功后点击 `确定` 将自动打开 **导出路径**
53 |
54 | 
55 |
56 | - **quickgame**:小游戏导出目录
57 | - **webgl**:Unity WebGL 构建目录
58 |
59 | 4. 导出完成,前往 [运行小游戏](RunQuickGame.md)
--------------------------------------------------------------------------------
/doc/UnityVersion.md:
--------------------------------------------------------------------------------
1 | # 推荐引擎版本
2 |
3 | 本适配方案理论上支持的 Unity 版本包括2018、2019、2020、2021,但并非每个小版本都经过了严格的验证,具体情况如下
4 |
5 | | 引擎版本 | 已验证版本 | 下载链接 |
6 | | --- | --- | --- |
7 | | 2018.4 | 2018.4.30f1, 2018.4.36f1 | https://unity.com/releases/editor/whats-new/2018.4.30 |
8 | | 2019.4 | 2019.4.35f1 | https://unity.com/releases/editor/whats-new/2019.4.35 |
9 | | 2020.3 | 2020.3.25f1, 2020.3.47f1 | https://unity.com/releases/editor/whats-new/2020.3.47 |
10 | | 2021.3 | 2021.3.14f1 | https://unity.com/releases/editor/whats-new/2021.3.14 |
--------------------------------------------------------------------------------
/doc/WebGL2.md:
--------------------------------------------------------------------------------
1 | # 使用 WebGL 2.0
2 |
3 | ## 版本要求
4 |
5 | SDK:V8.0.6 及以上
6 | > 推荐通过 [SDK 自检更新](SDKUpdate.md) 能力进行升级。也可前往`tools` 目录安装 `unity_webgl_rpk_oppo_v8.0.6.unitypackage` 及以上版本
7 |
8 | 小游戏打包工具:2.1.9-beta.6 及以上
9 | > 推荐通过 [SDK 自检更新](SDKUpdate.md) 能力进行升级。也可通过cmd安装命令 npm install @oppo-minigame/cli@beta -g。
10 |
11 | ## 功能说明
12 |
13 | > 界面截图以 `Unity 2021.3.14f1` 版本为例
14 |
15 | ## 构建设置Webgl2
16 |
17 | 1. 设置 `Player Settings -> Other Settings -> Auto Graphics API(取消勾选) -> Graphics APIs 右下点击 + 新增WebGL 2`
18 |
19 | 
20 |
21 | 2. 检查版本 `OPPO小游戏 -> 打包小游戏 -> 右下角SDK 版本(8.0.6及以上) -> 小游戏打包工具版本(2.1.9-beta.6及以上)`
22 |
23 | ## 测试运行环境
24 |
25 | 1. 测试运行环境需安装指定版本[调试器](https://ie-activity-cn.heytapimage.com/static/minigame/CN/docs/index.html#/develop/games/wx-transfer?id=%E8%B0%83%E8%AF%95%E5%99%A8)
26 |
27 | 2. 不管是WebGL1.0还是WebGL2.0,都建议先在浏览器中运行,查看console相关报错以及渲染情况,无误后再使用OPPO小游戏调试器进行调试
28 |
29 | ## 发布流程
30 |
31 | 1.开放平台提交游戏勾选Webgl2.0选项.最终审核结果会同步展示在“游戏审核”界面“渲染类型”字段中
32 | 
33 |
34 | ## 注意事项
35 |
36 | - 如遇到一些特殊的材质或者场景有未适配到渲染相关问题,可以随时联系:oppominigame@oppo.com;QQ:994365657
37 |
38 | ## 常见QA
39 |
40 | ### 1、什么样场景适合使用WebGL2.0?
41 |
42 | - WebGL 是一种用于在 Web 浏览器中渲染图形的 API,基于 OpenGL ES 图形库的功能。WebGL 1.0 大致与 OpenGL ES 2.0 功能相匹配,而 WebGL 2.0 大致与 OpenGL ES 3.0 功能相匹配。 根据游戏项目统计,我们发现相对于WebGL1,更适合以下游戏需求:
43 | - 线性颜色空间渲染
44 | - 使用GPU Instancing提高渲染性能
45 | - 使用SRP Batcher提高渲染性能
46 | - 使用URP PostProcessing效果提升品质
47 | - 存在大量依赖OpenGL ES 3.0以上的Shader难以降低
48 |
49 | ### 2、符合什么条件游戏才能在OPPO小游戏平台通过审核?
50 |
51 | - 目前只有通过WebGL2.0申请使用的游戏,才能使用平台WebGL2.0渲染能力。在符合平台规定以外,还需要具备以下条件才能通过审核:
52 | - 必须使用WebGL2.0渲染,才能成功渲染的游戏(如果使用WebGL1.0能渲染成功,优先使用WebGL1.0);
53 | - 使用WebGL2.0渲染,不存在渲染缺陷;
54 | - 在开放平台提交了WebGL2.0审核申请。
55 |
56 | ### 3、在平台提交了WebGL2.0审核,为什么最终使用WebGL1.0来渲染?
57 |
58 | - 平台目前对于申请使用WebGL2.0实行严控策略,只有存在必须使用WebGL2.0才能正常渲染的情况下,才允许使用WebGL2.0。
59 | - 对于提交WebGL2.0申请,但是审核过程中发现使用WebGL1.0就能渲染成功的游戏,自动适配选择WebGL1.0。
60 |
61 | ### 4、开放平台提交游戏信息审核的环节的渲染类型选项是用来做什么的?
62 |
63 | - 开发者可以通过webgl2.0的适用场景进行初步判断,在提交游戏审核环节选择游戏适用的渲染类型,提交到平台后,平台会进一步进行适配测试,从而帮助开发者选择当前更适用于游戏渲染的类型。
64 |
65 | ### 5、提交WebGL2.0审核后,游戏CP在哪里可以获取最终的审核结果?
66 |
67 | - 最终审核结果会同步展示在“游戏审核”界面“渲染类型”字段中
--------------------------------------------------------------------------------
/doc/image/AssetCacheExample_AddressablesGroups.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/AssetCacheExample_AddressablesGroups.png
--------------------------------------------------------------------------------
/doc/image/AssetCacheExample_AddressablesProfiles.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/AssetCacheExample_AddressablesProfiles.png
--------------------------------------------------------------------------------
/doc/image/BuildToolEntry.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/BuildToolEntry.png
--------------------------------------------------------------------------------
/doc/image/BuildToolMain.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/BuildToolMain.png
--------------------------------------------------------------------------------
/doc/image/CacheSystemFD.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/CacheSystemFD.png
--------------------------------------------------------------------------------
/doc/image/DemoAudio.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/DemoAudio.png
--------------------------------------------------------------------------------
/doc/image/DemoBannerAd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/DemoBannerAd.png
--------------------------------------------------------------------------------
/doc/image/DemoHasShortcutInstalled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/DemoHasShortcutInstalled.png
--------------------------------------------------------------------------------
/doc/image/DemoLogin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/DemoLogin.png
--------------------------------------------------------------------------------
/doc/image/DemoMain.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/DemoMain.png
--------------------------------------------------------------------------------
/doc/image/DemoPay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/DemoPay.png
--------------------------------------------------------------------------------
/doc/image/DemoStorage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/DemoStorage.png
--------------------------------------------------------------------------------
/doc/image/DeviceResolutionSetting.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/DeviceResolutionSetting.png
--------------------------------------------------------------------------------
/doc/image/DeviceResolutions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/DeviceResolutions.png
--------------------------------------------------------------------------------
/doc/image/GenerateCertificate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/GenerateCertificate.png
--------------------------------------------------------------------------------
/doc/image/GenerateCertificateImport.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/GenerateCertificateImport.png
--------------------------------------------------------------------------------
/doc/image/GenerateCertificateParameters.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/GenerateCertificateParameters.png
--------------------------------------------------------------------------------
/doc/image/GenerateCertificatePath.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/GenerateCertificatePath.png
--------------------------------------------------------------------------------
/doc/image/GenerateCertificatePath2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/GenerateCertificatePath2.png
--------------------------------------------------------------------------------
/doc/image/GenerateCertificateTip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/GenerateCertificateTip.png
--------------------------------------------------------------------------------
/doc/image/GenerateCertificateTools.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/GenerateCertificateTools.png
--------------------------------------------------------------------------------
/doc/image/OpenCMD.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/OpenCMD.png
--------------------------------------------------------------------------------
/doc/image/OutputDirectory.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/OutputDirectory.png
--------------------------------------------------------------------------------
/doc/image/QuickAppIcon.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/QuickAppIcon.jpg
--------------------------------------------------------------------------------
/doc/image/QuickGameList.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/QuickGameList.png
--------------------------------------------------------------------------------
/doc/image/QuickGameStructure.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/QuickGameStructure.png
--------------------------------------------------------------------------------
/doc/image/SDKUpdateArea.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/SDKUpdateArea.png
--------------------------------------------------------------------------------
/doc/image/ShaderCompatibility.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/ShaderCompatibility.png
--------------------------------------------------------------------------------
/doc/image/ShaderCompatibilityBuild.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/ShaderCompatibilityBuild.png
--------------------------------------------------------------------------------
/doc/image/ShaderCompatibilityBuildError.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/ShaderCompatibilityBuildError.png
--------------------------------------------------------------------------------
/doc/image/ShaderCompatibilityBuildSuccess.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/ShaderCompatibilityBuildSuccess.png
--------------------------------------------------------------------------------
/doc/image/ShaderCompatibilityConsole.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/ShaderCompatibilityConsole.png
--------------------------------------------------------------------------------
/doc/image/ShaderCompatibilityError.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/ShaderCompatibilityError.png
--------------------------------------------------------------------------------
/doc/image/ShaderCompatibilitySuccess.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/ShaderCompatibilitySuccess.png
--------------------------------------------------------------------------------
/doc/image/ShaderPhoneDetection.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/ShaderPhoneDetection.png
--------------------------------------------------------------------------------
/doc/image/ShaderPhoneDetection02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/ShaderPhoneDetection02.png
--------------------------------------------------------------------------------
/doc/image/ShaderPhoneDetection03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/ShaderPhoneDetection03.png
--------------------------------------------------------------------------------
/doc/image/ShaderPhoneDetection04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/ShaderPhoneDetection04.png
--------------------------------------------------------------------------------
/doc/image/UnityBuild.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/UnityBuild.png
--------------------------------------------------------------------------------
/doc/image/UnityGraphicsAPI.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/UnityGraphicsAPI.png
--------------------------------------------------------------------------------
/doc/image/UnityPlatform.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/UnityPlatform.png
--------------------------------------------------------------------------------
/doc/image/UnityPublishCompression.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/UnityPublishCompression.png
--------------------------------------------------------------------------------
/doc/image/UnityWebGLTemplate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/UnityWebGLTemplate.png
--------------------------------------------------------------------------------
/doc/image/WebGL2Examine.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/WebGL2Examine.png
--------------------------------------------------------------------------------
/doc/image/WebGL2Setting.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/WebGL2Setting.png
--------------------------------------------------------------------------------
/doc/image/地铁跑酷.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/地铁跑酷.png
--------------------------------------------------------------------------------
/doc/image/大圣顶住.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/大圣顶住.png
--------------------------------------------------------------------------------
/doc/image/小小蚁国.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/小小蚁国.png
--------------------------------------------------------------------------------
/doc/image/巨兽战场.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/doc/image/巨兽战场.png
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v1.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v1.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v5.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v5.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v6.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v6.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v7.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v7.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v8.0.0.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v8.0.0.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v8.0.1.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v8.0.1.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v8.0.2.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v8.0.2.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v8.0.3.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v8.0.3.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v8.0.4.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v8.0.4.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v8.0.5.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v8.0.5.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v8.0.6.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v8.0.6.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v8.0.7.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v8.0.7.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v8.0.7_open_ability.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v8.0.7_open_ability.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v8.0.8.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v8.0.8.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v8.0.9.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v8.0.9.unitypackage
--------------------------------------------------------------------------------
/tools/unity_webgl_rpk_oppo_v8.1.0.unitypackage:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oppominigame/unity-webgl-to-oppo-minigame/4576915ac5654945132f3355c64fa84bdd320100/tools/unity_webgl_rpk_oppo_v8.1.0.unitypackage
--------------------------------------------------------------------------------