com.typhoon.unitysdk 1.1.1 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,7 +1,13 @@
1
1
  # 更新日志
2
+ ## [1.1.2] - 2024-11-13
3
+
4
+ ### 新增
5
+ * 重新调整google模块的发布
6
+
7
+
2
8
  ## [1.1.1] - 2024-10-30
3
9
 
4
- ### 修复
10
+ ### 修复
5
11
  * 修复iniconfig value 参数问题
6
12
 
7
13
 
@@ -1,8 +1,7 @@
1
1
  using System;
2
2
  using System.Collections.Generic;
3
3
  using System.IO;
4
- using System.Text.RegularExpressions;
5
- using System.Threading.Tasks;
4
+ using System.Reflection;
6
5
  using UnityEditor;
7
6
  using UnityEngine;
8
7
 
@@ -32,6 +31,7 @@ namespace TyphoonUnitySDK
32
31
  { AppChannel.GooglePlay, new ApplyGooglePlay() },
33
32
  { AppChannel.VivoMini, new ApplyVivoMini() },
34
33
  { AppChannel.OppoMini, new ApplyOppoMini() },
34
+ { AppChannel.KuaiShouWebgl, new ApplyKuaiShouWebgl() },
35
35
  };
36
36
 
37
37
 
@@ -211,6 +211,7 @@ namespace TyphoonUnitySDK
211
211
  PlayerSettings.WebGL.compressionFormat = setting.CompressionFormat;
212
212
  }
213
213
 
214
+
214
215
  if (setting.OverrideWebglTemplate)
215
216
  {
216
217
  switch (setting.WebglTemplate)
@@ -224,9 +225,15 @@ namespace TyphoonUnitySDK
224
225
  }
225
226
  }
226
227
 
228
+ if (setting.OverrideLightEncoding)
229
+ {
230
+ SetWebGLLightmapEncoding(BuildTargetGroup.WebGL, setting.LightmapEncoding);
231
+ }
232
+
227
233
  PlayerSettings.WebGL.exceptionSupport = setting.ExceptionSupport;
228
234
  PlayerSettings.WebGL.debugSymbols = setting.WebglDebugSymbols;
229
235
  PlayerSettings.WebGL.dataCaching = setting.WebglDataCaching;
236
+ // PlayerSettings.lightmapEncoding = LightmapEncodingQuality.Normal;
230
237
 
231
238
  //覆写AA参数
232
239
  AddressableSupport.ModifyAAProfileAndVariables(setting);
@@ -440,6 +447,19 @@ namespace TyphoonUnitySDK
440
447
  AssetDatabase.SaveAssets();
441
448
  }
442
449
 
450
+ public static void SetWebGLLightmapEncoding(BuildTargetGroup group, LightmapEncoding encoding)
451
+ {
452
+ var typeLightEncodingQ = EditorKit.GetType("UnityEditor.LightmapEncodingQuality");
453
+ var method = EditorKit.GetMethod(typeof(PlayerSettings), "SetLightmapEncodingQualityForPlatformGroup",
454
+ BindingFlags.Static | BindingFlags.NonPublic);
455
+ method.Invoke(null, new object[]
456
+ {
457
+ group,
458
+ Enum.Parse(typeLightEncodingQ, $"{encoding.ToString()}")
459
+ });
460
+ Debug.Log($"重写Lightmap Encoding :{group} - {encoding}");
461
+ }
462
+
443
463
 
444
464
  //可能出现的文件夹
445
465
  public static string[] MaybeFolder = new[]
@@ -450,6 +470,8 @@ namespace TyphoonUnitySDK
450
470
  "Assets/WebGLTemplates",
451
471
  "Assets/Plugins/ByteGame",
452
472
  "Assets/VIVO-GAME-SDK",
473
+ "Assets/KS-WASM-SDK",
474
+ "Assets/Plugins/KSWASM",
453
475
  };
454
476
 
455
477
 
@@ -631,5 +653,33 @@ namespace TyphoonUnitySDK
631
653
  AssetDatabase.SaveAssets();
632
654
  }
633
655
  }
656
+
657
+
658
+ public class ApplyKuaiShouWebgl : IApply
659
+ {
660
+ public void Apply(PublishSetting setting)
661
+ {
662
+ var pack = UniEditor.PackagePath_KuaiShouWebgl;
663
+ Debug.Log($"导入... {pack}");
664
+ ImportUnityPackage(pack);
665
+ var manifest_path = $"{pack}.manifest";
666
+ Debug.Log($"读取资源清单...{manifest_path}");
667
+ var manifest = ReadManifest(manifest_path);
668
+ Debug.Log($"清理多余文件...");
669
+ foreach (var folder in MaybeFolder)
670
+ {
671
+ ClearFilesInDirectory(folder, manifest);
672
+ }
673
+
674
+ ReimportScript(manifest);
675
+ AssetDatabase.Refresh();
676
+ // //关联隐私政策
677
+ // Debug.Log(
678
+ // $"关联oppo隐私政策长图到 AppConfigAsset.Instance.PrivacyPolicyImage={OppoMiniConfig.Default.PrivacyPolicyImage}");
679
+ // AppConfigAsset.Instance.PrivacyImage = OppoMiniConfig.Default.PrivacyPolicyImage;
680
+ EditorUtility.SetDirty(AppConfigAsset.Instance);
681
+ AssetDatabase.SaveAssets();
682
+ }
683
+ }
634
684
  }
635
685
  }
@@ -7,152 +7,128 @@ namespace TyphoonUnitySDK
7
7
  {
8
8
  private static string _folderPath = null;
9
9
  private static string FolderPath => _folderPath ?? $"{UniEditor.PathRoot}/Editor/Texture";
10
+ private static Texture __age_12 = null;
11
+ public static Texture age_12 =>
12
+ __age_12 ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/age_12.png");
13
+ private static Texture __age_16 = null;
14
+ public static Texture age_16 =>
15
+ __age_16 ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/age_16.png");
16
+ private static Texture __age_8 = null;
17
+ public static Texture age_8 =>
18
+ __age_8 ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/age_8.png");
19
+ private static Texture __black_32x32 = null;
20
+ public static Texture black_32x32 =>
21
+ __black_32x32
22
+ ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/black_32x32.png");
10
23
  private static Texture __dark_active = null;
11
-
12
24
  public static Texture dark_active =>
13
25
  __dark_active
14
26
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/dark_active.png");
15
-
16
27
  private static Texture __dark_hover = null;
17
-
18
28
  public static Texture dark_hover =>
19
29
  __dark_hover ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/dark_hover.png");
20
-
21
30
  private static Texture __dark_normal = null;
22
-
23
31
  public static Texture dark_normal =>
24
32
  __dark_normal
25
33
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/dark_normal.png");
26
-
27
34
  private static Texture __icon_android = null;
28
-
29
35
  public static Texture icon_android =>
30
36
  __icon_android
31
37
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_android.png");
32
-
33
38
  private static Texture __icon_arrow_right = null;
34
-
35
39
  public static Texture icon_arrow_right =>
36
40
  __icon_arrow_right
37
41
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_arrow_right.png");
38
-
39
42
  private static Texture __icon_douyin = null;
40
-
41
43
  public static Texture icon_douyin =>
42
44
  __icon_douyin
43
45
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_douyin.png");
44
-
45
46
  private static Texture __icon_download = null;
46
-
47
47
  public static Texture icon_download =>
48
48
  __icon_download
49
49
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_download.png");
50
-
51
50
  private static Texture __icon_drop_arrow = null;
52
-
53
51
  public static Texture icon_drop_arrow =>
54
52
  __icon_drop_arrow
55
53
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_drop_arrow.png");
56
-
57
54
  private static Texture __icon_error = null;
58
-
59
55
  public static Texture icon_error =>
60
56
  __icon_error ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_error.png");
61
-
62
57
  private static Texture __icon_extension = null;
63
-
64
58
  public static Texture icon_extension =>
65
59
  __icon_extension
66
60
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_extension.png");
67
-
68
61
  private static Texture __icon_googleplay = null;
69
-
70
62
  public static Texture icon_googleplay =>
71
63
  __icon_googleplay
72
64
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_googleplay.png");
73
-
74
65
  private static Texture __icon_html5 = null;
75
-
76
66
  public static Texture icon_html5 =>
77
67
  __icon_html5 ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_html5.png");
78
-
79
68
  private static Texture __icon_import = null;
80
-
81
69
  public static Texture icon_import =>
82
70
  __icon_import
83
71
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_import.png");
84
-
85
72
  private static Texture __icon_ios = null;
86
-
87
73
  public static Texture icon_ios =>
88
74
  __icon_ios ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_ios.png");
89
-
75
+ private static Texture __icon_kuaishou = null;
76
+ public static Texture icon_kuaishou =>
77
+ __icon_kuaishou
78
+ ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_kuaishou.png");
90
79
  private static Texture __icon_oppo = null;
91
-
92
80
  public static Texture icon_oppo =>
93
81
  __icon_oppo ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_oppo.png");
94
-
95
82
  private static Texture __icon_refresh = null;
96
-
97
83
  public static Texture icon_refresh =>
98
84
  __icon_refresh
99
85
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_refresh.png");
100
-
101
86
  private static Texture __icon_save = null;
102
-
103
87
  public static Texture icon_save =>
104
88
  __icon_save ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_save.png");
105
-
106
89
  private static Texture __icon_search = null;
107
-
108
90
  public static Texture icon_search =>
109
91
  __icon_search
110
92
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_search.png");
111
-
112
93
  private static Texture __icon_success = null;
113
-
114
94
  public static Texture icon_success =>
115
95
  __icon_success
116
96
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_success.png");
117
-
118
97
  private static Texture __icon_variable = null;
119
-
120
98
  public static Texture icon_variable =>
121
99
  __icon_variable
122
100
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_variable.png");
123
-
124
101
  private static Texture __icon_vivo = null;
125
-
126
102
  public static Texture icon_vivo =>
127
103
  __icon_vivo ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_vivo.png");
128
-
129
104
  private static Texture __icon_wechat = null;
130
-
131
105
  public static Texture icon_wechat =>
132
106
  __icon_wechat
133
107
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/icon_wechat.png");
134
-
135
108
  private static Texture __light_active = null;
136
-
137
109
  public static Texture light_active =>
138
110
  __light_active
139
111
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/light_active.png");
140
-
141
112
  private static Texture __light_hover = null;
142
-
143
113
  public static Texture light_hover =>
144
114
  __light_hover
145
115
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/light_hover.png");
146
-
147
116
  private static Texture __light_normal = null;
148
-
149
117
  public static Texture light_normal =>
150
118
  __light_normal
151
119
  ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/light_normal.png");
152
-
120
+ private static Texture __sdk_white4x4 = null;
121
+ public static Texture sdk_white4x4 =>
122
+ __sdk_white4x4
123
+ ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/sdk_white4x4.png");
124
+ private static Texture __sidebar_1 = null;
125
+ public static Texture sidebar_1 =>
126
+ __sidebar_1 ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/sidebar_1.png");
127
+ private static Texture __sidebar_2 = null;
128
+ public static Texture sidebar_2 =>
129
+ __sidebar_2 ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/sidebar_2.png");
153
130
  private static Texture __tex_select = null;
154
-
155
131
  public static Texture tex_select =>
156
132
  __tex_select ?? AssetDatabase.LoadAssetAtPath<Texture>($"{FolderPath}/tex_select.png");
157
133
  }
158
- }
134
+ }
@@ -0,0 +1,67 @@
1
+ using System;
2
+ using System.Linq;
3
+ using System.Reflection;
4
+ using UnityEditor;
5
+ using UnityEngine;
6
+
7
+ namespace TyphoonUnitySDK
8
+ {
9
+ public class EditorKit
10
+ {
11
+ public static MethodInfo GetMethod(Type type, string methodName, BindingFlags bindingFlags)
12
+ {
13
+ if (type == null)
14
+ {
15
+ throw new ArgumentNullException(nameof(type));
16
+ }
17
+
18
+ if (string.IsNullOrEmpty(methodName))
19
+ {
20
+ throw new ArgumentNullException(nameof(methodName));
21
+ }
22
+
23
+ MethodInfo methodInfo = type.GetMethod(methodName, bindingFlags);
24
+
25
+ if (methodInfo == null)
26
+ {
27
+ throw new InvalidOperationException($"Method '{methodName}' not found in type '{type.FullName}'.");
28
+ }
29
+
30
+ return methodInfo;
31
+ }
32
+
33
+
34
+ public static Type GetType(string fullName)
35
+ {
36
+ var assemblies = AppDomain.CurrentDomain.GetAssemblies();
37
+ foreach (var assembly in assemblies)
38
+ {
39
+ var type = assembly.GetType(fullName);
40
+ if (type != null)
41
+ {
42
+ return type;
43
+ }
44
+ }
45
+
46
+ throw new Exception($"找不到 type :{fullName}");
47
+ }
48
+
49
+ //设置属性
50
+ public static void SetPlayerSettingProperty(Type type, string propertyName, object value)
51
+ {
52
+ PropertyInfo propertyInfo = type.GetProperty(propertyName,
53
+ BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static);
54
+ if (propertyInfo != null)
55
+ {
56
+ propertyInfo.SetValue(null, value, null);
57
+ }
58
+ else
59
+ {
60
+ Debug.LogError($"Property '{propertyName}' not found in PlayerSettings.");
61
+ }
62
+ }
63
+
64
+
65
+
66
+ }
67
+ }
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: 5945480f0f58ae842a093a2536428362
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -88,6 +88,8 @@ namespace TyphoonUnitySDK
88
88
  var manifest = new List<string>()
89
89
  {
90
90
  "Assets/Typhoon_Gen/TyphoonSDK/Runtime/GooglePlay",
91
+ "Assets/Plugins/Android/libs/lib-union-sdk.aar",
92
+ "Assets/Plugins/Android/AndroidManifest.xml",
91
93
  };
92
94
  if (!MakeSureExport(manifest))
93
95
  {
@@ -146,6 +148,30 @@ namespace TyphoonUnitySDK
146
148
  }
147
149
 
148
150
 
151
+ [MenuItem("TyphoonSDK/开发者/导出-KuaiShouWebgl.unitypackage")]
152
+ public static void ExportKuaiShouWebgl()
153
+ {
154
+ var manifest = new List<string>()
155
+ {
156
+ "Assets/KS-WASM-SDK",
157
+ "Assets/WebGLTemplates",
158
+ "Assets/Plugins/KSWASM",
159
+ "Assets/Typhoon_Gen/TyphoonSDK/Runtime/KuaiShouWebgl",
160
+ };
161
+ if (!MakeSureExport(manifest))
162
+ {
163
+ return;
164
+ }
165
+
166
+ if (!CheckMissFiles(manifest))
167
+ {
168
+ return;
169
+ }
170
+
171
+ ExportUnityPackage(manifest, UniEditor.PackagePath_KuaiShouWebgl, out var detail);
172
+ }
173
+
174
+
149
175
  /// <summary>
150
176
  /// 导出清单文件到模块
151
177
  /// </summary>
@@ -0,0 +1,173 @@
1
+ using System;
2
+ using System.Collections.Generic;
3
+ using System.Linq;
4
+ using System.Text;
5
+ using Alphaleonis.Win32.Filesystem;
6
+ using UnityEditor;
7
+ using UnityEngine;
8
+
9
+ namespace TyphoonUnitySDK
10
+ {
11
+ public static class KuaiShouWebglConfigGUIDrawer
12
+ {
13
+ public static Dictionary<string, Func<KuaiShouWebglConfig, bool>> OverrideDrawGUIConfig =
14
+ new Dictionary<string, Func<KuaiShouWebglConfig, bool>>()
15
+ {
16
+ { "m_Script", DrawProperty_m_Script },
17
+ { nameof(KuaiShouWebglConfig.AppId), DrawProperty_AppId },
18
+ { nameof(KuaiShouWebglConfig.CDN), DrawProperty_CDN },
19
+ { nameof(KuaiShouWebglConfig.VersionName), DrawProperty_VersionName },
20
+ { nameof(KuaiShouWebglConfig.VersionCode), DrawProperty_VersionCode },
21
+ };
22
+
23
+ private static bool DrawProperty_CDN(KuaiShouWebglConfig arg)
24
+ {
25
+ GUILayout.Space(10);
26
+ GUILayout.BeginHorizontal();
27
+ arg.CDN = EditorGUILayout.TextField("CDN地址 (后台配白名单)", arg.CDN);
28
+ GUILayout.EndHorizontal();
29
+ GUIDrawer.DrawKeynotes("支持与自定义变量,版本号拼接,填入'[版本号]'或'[变量名]'使用");
30
+ GUIDrawer.DrawKeynotes($"最终地址:{arg.GetFinalCDN()}");
31
+ return true;
32
+ }
33
+
34
+ private static bool DrawProperty_AppId(KuaiShouWebglConfig arg)
35
+ {
36
+ arg.AppId = EditorGUILayout.TextField("appid (问运营)", arg.AppId);
37
+ return true;
38
+ }
39
+
40
+ private static bool DrawProperty_m_Script(KuaiShouWebglConfig arg)
41
+ {
42
+ var tmpEnable = GUI.enabled;
43
+ GUI.enabled = true;
44
+ GUILayout.Space(6);
45
+ GUIDrawer.DrawKeynotes("①支持Unity版本:2022.3.17f(推荐,支持ASTC压缩,坑最少)");
46
+ GUIDrawer.DrawKeynotes("②需要隐私协议,适龄提醒,详情问运营同学");
47
+ GUIDrawer.DrawKeynotes("③webgl不支持多线程,修改代码进行适配");
48
+ GUILayout.Space(6);
49
+ GUI.enabled = tmpEnable;
50
+ return true;
51
+ }
52
+
53
+ private static bool DrawProperty_VersionName(KuaiShouWebglConfig arg)
54
+ {
55
+ GUILayout.Space(10);
56
+ GUILayout.Label("版本信息", Styles.BoldLabel);
57
+ arg.VersionName = EditorGUILayout.TextField("版本名", arg.VersionName);
58
+ return true;
59
+ }
60
+
61
+ private static bool DrawProperty_VersionCode(KuaiShouWebglConfig arg)
62
+ {
63
+ arg.VersionCode = EditorGUILayout.IntField("版本号", arg.VersionCode);
64
+ GUILayout.Label("", GUILayout.Height(24));
65
+ var last = GUILayoutUtility.GetLastRect();
66
+ var rectBtn = last;
67
+ rectBtn.width = 120;
68
+ rectBtn.y += 2;
69
+ rectBtn.x = last.xMax - rectBtn.width;
70
+ rectBtn.x -= 2;
71
+ if (GUI.Button(rectBtn, "自动版本号", Styles.Square.BtnBlue))
72
+ {
73
+ arg.VersionCode += 1;
74
+ try
75
+ {
76
+ var elements = arg.VersionName.Split('.').ToList();
77
+ var num = int.Parse(elements.Last());
78
+ num += 1;
79
+ elements[elements.Count - 1] = num.ToString();
80
+ var versionName = new StringBuilder();
81
+ for (var i = 0; i < elements.Count; i++)
82
+ {
83
+ var e = elements[i];
84
+ versionName.Append(e);
85
+ if (i != elements.Count - 1)
86
+ {
87
+ versionName.Append(".");
88
+ }
89
+ }
90
+
91
+ arg.VersionName = versionName.ToString();
92
+ }
93
+ catch (Exception e)
94
+ {
95
+ arg.VersionName = "0.0.1";
96
+ }
97
+
98
+ GUI.FocusControl("");
99
+ }
100
+
101
+ return true;
102
+ }
103
+
104
+ public static void DrawGUI()
105
+ {
106
+ var config = KuaiShouWebglConfig.Default;
107
+ GUIDrawer.DrawProperty(config, (property) =>
108
+ {
109
+ if (OverrideDrawGUIConfig.TryGetValue(property, out var match))
110
+ {
111
+ return match.Invoke(config);
112
+ }
113
+
114
+ return false;
115
+ });
116
+ }
117
+ }
118
+
119
+ public class KuaiShouWebglConfig : ScriptableObject, ISaveConfigPipeline
120
+ {
121
+ private static string ConfigPath = "Assets/Typhoon_Gen/TyphoonSDK/Editor/KuaiShouWebglConfig.asset";
122
+
123
+ private static KuaiShouWebglConfig _instance = null;
124
+
125
+ public static KuaiShouWebglConfig Default
126
+ {
127
+ get
128
+ {
129
+ if (_instance == null)
130
+ {
131
+ _instance = AssetDatabase.LoadAssetAtPath<KuaiShouWebglConfig>(ConfigPath);
132
+ }
133
+
134
+ if (_instance == null)
135
+ {
136
+ _instance = CreateInstance<KuaiShouWebglConfig>();
137
+ var folder = Path.GetDirectoryName(ConfigPath);
138
+ if (!Directory.Exists(folder))
139
+ {
140
+ Directory.CreateDirectory(folder);
141
+ AssetDatabase.Refresh();
142
+ }
143
+
144
+ AssetDatabase.CreateAsset(_instance, ConfigPath);
145
+ }
146
+
147
+ return _instance;
148
+ }
149
+ }
150
+
151
+ public string AppId; //appid
152
+ public string CDN = "https://xxx.xx.xx"; //cdn
153
+ public string VersionName = "0.0.1"; //版本名
154
+ public int VersionCode = 1; //版本号
155
+
156
+ public string GetFinalCDN()
157
+ {
158
+ var result = CDN.Replace("[版本号]", VersionCode.ToString());
159
+ return VariablePreset.Default.ParserToString(result);
160
+ }
161
+
162
+ public void SaveConfig()
163
+ {
164
+ Save();
165
+ }
166
+
167
+ public void Save()
168
+ {
169
+ EditorUtility.SetDirty(this);
170
+ AssetDatabase.SaveAssets();
171
+ }
172
+ }
173
+ }
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: 8a6c0147c4cb1dc4db7b7e244cd740aa
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -0,0 +1,12 @@
1
+ namespace TyphoonUnitySDK
2
+ {
3
+ /// <summary>
4
+ /// 转换到Unity UnityEditor.LightmapEncodingQuality
5
+ /// </summary>
6
+ public enum LightmapEncoding
7
+ {
8
+ Low,
9
+ Normal,
10
+ High,
11
+ }
12
+ }
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: f5dd898cf3a800f409e7b9f04c0368fc
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -15,5 +15,6 @@ namespace TyphoonUnitySDK
15
15
  GooglePlay, //google play
16
16
  VivoMini, //vivo小游戏
17
17
  OppoMini, //oppo小游戏
18
+ KuaiShouWebgl, //快手WEBGL
18
19
  }
19
20
  }
@@ -49,8 +49,8 @@ namespace TyphoonUnitySDK
49
49
 
50
50
  public ManagedStrippingLevel StrippingLevel = ManagedStrippingLevel.Low;
51
51
 
52
- #if UNITY_2021
53
- public AndroidSdkVersions MinApiVersion = AndroidSdkVersions.AndroidApiLevel22;
52
+ #if UNITY_2021_1_OR_NEWER
53
+ public AndroidSdkVersions MinApiVersion = AndroidSdkVersions.AndroidApiLevel22;
54
54
  #else
55
55
  public AndroidSdkVersions MinApiVersion = AndroidSdkVersions.AndroidApiLevel19;
56
56
  #endif
@@ -79,9 +79,13 @@ public AndroidSdkVersions MinApiVersion = AndroidSdkVersions.AndroidApiLevel22;
79
79
  public WebGLExceptionSupport ExceptionSupport = WebGLExceptionSupport.FullWithoutStacktrace;
80
80
  public bool WebglDataCaching = true;
81
81
  public bool WebglDebugSymbols = false;
82
+ public bool OverrideLightEncoding = false;
83
+ public LightmapEncoding LightmapEncoding = LightmapEncoding.High;
82
84
 
83
85
 
84
- [FormerlySerializedAs("EnableAASupport")] [FormerlySerializedAs("EnableAddressableSupport")] [Header("AA相关")]
86
+ [FormerlySerializedAs("EnableAASupport")]
87
+ [FormerlySerializedAs("EnableAddressableSupport")]
88
+ [Header("AA相关")]
85
89
  /*AA相关*/
86
90
  public bool AASupportEnable = false;
87
91
 
@@ -105,10 +109,12 @@ public AndroidSdkVersions MinApiVersion = AndroidSdkVersions.AndroidApiLevel22;
105
109
 
106
110
  /*oppo小游戏拓展配置*/
107
111
  public bool OppoMiniGUIFoldout = true;
108
-
112
+
109
113
  //国内安卓拓展配置
110
114
  public bool ChinaAndroidGUIFoldout = true;
111
-
115
+
116
+ //快手小游戏webgl
117
+ public bool KuaishouWebglGUIFoldout = true;
112
118
 
113
119
 
114
120
  //使用配置
@@ -55,6 +55,7 @@ namespace TyphoonUnitySDK
55
55
  { nameof(PublishSetting.VivoMiniGUIFoldout), DrawProperty_VivoMiniGUIFoldout },
56
56
  { nameof(PublishSetting.OppoMiniGUIFoldout), DrawProperty_OppoMiniGUIFoldout },
57
57
  { nameof(PublishSetting.ChinaAndroidGUIFoldout), DrawProperty_ChinaAndroidGUIFoldout },
58
+ { nameof(PublishSetting.KuaishouWebglGUIFoldout), DrawProperty_KuaiShouWebglGUIFoldout },
58
59
  };
59
60
 
60
61
  private static bool DrawProperty_ChinaAndroidGUIFoldout(PublishSetting arg)
@@ -180,6 +181,24 @@ namespace TyphoonUnitySDK
180
181
  }
181
182
 
182
183
 
184
+ private static bool DrawProperty_KuaiShouWebglGUIFoldout(PublishSetting arg)
185
+ {
186
+ if (arg.Channel != AppChannel.KuaiShouWebgl)
187
+ {
188
+ return true;
189
+ }
190
+
191
+ GUILayout.Space(10);
192
+ arg.OppoMiniGUIFoldout = GUIDrawer.DrawFoldout("快手小游戏-webgl", arg.OppoMiniGUIFoldout, GUILayout.Height(26));
193
+ if (arg.OppoMiniGUIFoldout)
194
+ {
195
+ KuaiShouWebglConfigGUIDrawer.DrawGUI();
196
+ }
197
+
198
+ return true;
199
+ }
200
+
201
+
183
202
  /// <summary>
184
203
  /// 绘制GUI
185
204
  /// </summary>
@@ -48,6 +48,8 @@ namespace TyphoonUnitySDK
48
48
  return EditorIcons.icon_vivo;
49
49
  case AppChannel.OppoMini:
50
50
  return EditorIcons.icon_oppo;
51
+ case AppChannel.KuaiShouWebgl:
52
+ return EditorIcons.icon_kuaishou;
51
53
  }
52
54
 
53
55
  return null;
Binary file
@@ -0,0 +1,166 @@
1
+ fileFormatVersion: 2
2
+ guid: 0c1d06acea265684189729009a924063
3
+ TextureImporter:
4
+ internalIDToNameTable: []
5
+ externalObjects: {}
6
+ serializedVersion: 12
7
+ mipmaps:
8
+ mipMapMode: 0
9
+ enableMipMap: 1
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
+ flipGreenChannel: 0
24
+ isReadable: 0
25
+ streamingMipmaps: 0
26
+ streamingMipmapsPriority: 0
27
+ vTOnly: 0
28
+ ignoreMipmapLimit: 0
29
+ grayScaleToAlpha: 0
30
+ generateCubemap: 6
31
+ cubemapConvolution: 0
32
+ seamlessCubemap: 0
33
+ textureFormat: 1
34
+ maxTextureSize: 2048
35
+ textureSettings:
36
+ serializedVersion: 2
37
+ filterMode: 1
38
+ aniso: 1
39
+ mipBias: 0
40
+ wrapU: 0
41
+ wrapV: 0
42
+ wrapW: 0
43
+ nPOTScale: 0
44
+ lightmap: 0
45
+ compressionQuality: 50
46
+ spriteMode: 1
47
+ spriteExtrude: 1
48
+ spriteMeshType: 1
49
+ alignment: 0
50
+ spritePivot: {x: 0.5, y: 0.5}
51
+ spritePixelsToUnits: 100
52
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
53
+ spriteGenerateFallbackPhysicsShape: 1
54
+ alphaUsage: 1
55
+ alphaIsTransparency: 1
56
+ spriteTessellationDetail: -1
57
+ textureType: 0
58
+ textureShape: 1
59
+ singleChannelComponent: 0
60
+ flipbookRows: 1
61
+ flipbookColumns: 1
62
+ maxTextureSizeSet: 0
63
+ compressionQualitySet: 0
64
+ textureFormatSet: 0
65
+ ignorePngGamma: 0
66
+ applyGammaDecoding: 0
67
+ swizzle: 50462976
68
+ cookieLightType: 0
69
+ platformSettings:
70
+ - serializedVersion: 3
71
+ buildTarget: DefaultTexturePlatform
72
+ maxTextureSize: 2048
73
+ resizeAlgorithm: 0
74
+ textureFormat: -1
75
+ textureCompression: 1
76
+ compressionQuality: 50
77
+ crunchedCompression: 0
78
+ allowsAlphaSplitting: 0
79
+ overridden: 0
80
+ ignorePlatformSupport: 0
81
+ androidETC2FallbackOverride: 0
82
+ forceMaximumCompressionQuality_BC6H_BC7: 0
83
+ - serializedVersion: 3
84
+ buildTarget: WebGL
85
+ maxTextureSize: 2048
86
+ resizeAlgorithm: 0
87
+ textureFormat: -1
88
+ textureCompression: 1
89
+ compressionQuality: 50
90
+ crunchedCompression: 0
91
+ allowsAlphaSplitting: 0
92
+ overridden: 0
93
+ ignorePlatformSupport: 0
94
+ androidETC2FallbackOverride: 0
95
+ forceMaximumCompressionQuality_BC6H_BC7: 0
96
+ - serializedVersion: 3
97
+ buildTarget: Standalone
98
+ maxTextureSize: 2048
99
+ resizeAlgorithm: 0
100
+ textureFormat: -1
101
+ textureCompression: 1
102
+ compressionQuality: 50
103
+ crunchedCompression: 0
104
+ allowsAlphaSplitting: 0
105
+ overridden: 0
106
+ ignorePlatformSupport: 0
107
+ androidETC2FallbackOverride: 0
108
+ forceMaximumCompressionQuality_BC6H_BC7: 0
109
+ - serializedVersion: 3
110
+ buildTarget: iPhone
111
+ maxTextureSize: 2048
112
+ resizeAlgorithm: 0
113
+ textureFormat: -1
114
+ textureCompression: 1
115
+ compressionQuality: 50
116
+ crunchedCompression: 0
117
+ allowsAlphaSplitting: 0
118
+ overridden: 0
119
+ ignorePlatformSupport: 0
120
+ androidETC2FallbackOverride: 0
121
+ forceMaximumCompressionQuality_BC6H_BC7: 0
122
+ - serializedVersion: 3
123
+ buildTarget: Android
124
+ maxTextureSize: 2048
125
+ resizeAlgorithm: 0
126
+ textureFormat: -1
127
+ textureCompression: 1
128
+ compressionQuality: 50
129
+ crunchedCompression: 0
130
+ allowsAlphaSplitting: 0
131
+ overridden: 0
132
+ ignorePlatformSupport: 0
133
+ androidETC2FallbackOverride: 0
134
+ forceMaximumCompressionQuality_BC6H_BC7: 0
135
+ - serializedVersion: 3
136
+ buildTarget: Server
137
+ maxTextureSize: 2048
138
+ resizeAlgorithm: 0
139
+ textureFormat: -1
140
+ textureCompression: 1
141
+ compressionQuality: 50
142
+ crunchedCompression: 0
143
+ allowsAlphaSplitting: 0
144
+ overridden: 0
145
+ ignorePlatformSupport: 0
146
+ androidETC2FallbackOverride: 0
147
+ forceMaximumCompressionQuality_BC6H_BC7: 0
148
+ spriteSheet:
149
+ serializedVersion: 2
150
+ sprites: []
151
+ outline: []
152
+ physicsShape: []
153
+ bones: []
154
+ spriteID: 5e97eb03825dee720800000000000000
155
+ internalID: 0
156
+ vertices: []
157
+ indices:
158
+ edges: []
159
+ weights: []
160
+ secondaryTextures: []
161
+ nameFileIdTable: {}
162
+ mipmapLimitGroupName:
163
+ pSDRemoveMatte: 0
164
+ userData:
165
+ assetBundleName:
166
+ assetBundleVariant:
@@ -63,6 +63,11 @@ namespace TyphoonUnitySDK
63
63
  public static string PackagePath_OppoMini = $"{PathRoot}/Sources~/Package/OppoMini.unitypackage";
64
64
 
65
65
 
66
+ /// <summary>
67
+ /// 快手webgl模式资源包
68
+ /// </summary>
69
+ public static string PackagePath_KuaiShouWebgl = $"{PathRoot}/Sources~/Package/KuaiShouWebgl.unitypackage";
70
+
66
71
  /// <summary>
67
72
  /// Toast模块
68
73
  /// </summary>
@@ -51,5 +51,10 @@ namespace TyphoonUnitySDK
51
51
  /// oppo小游戏
52
52
  /// </summary>
53
53
  OppoMini = 9,
54
+
55
+ /// <summary>
56
+ /// 快手webgl
57
+ /// </summary>
58
+ KuaiShouWebgl = 10,
54
59
  }
55
60
  }
@@ -33,7 +33,11 @@ namespace TyphoonUnitySDK
33
33
  Action<string> fail, Dictionary<string, string> header, int timeOut)
34
34
  {
35
35
  var uri = new Uri(url);
36
- using (UnityWebRequest www = UnityWebRequest.Post(uri, data))
36
+ #if UNITY_2022_2_OR_NEWER
37
+ using (UnityWebRequest www = UnityWebRequest.PostWwwForm(uri, data))
38
+ #else
39
+ using (UnityWebRequest www = UnityWebRequest.Post(uri, data))
40
+ #endif
37
41
  {
38
42
  try
39
43
  {
@@ -4,3 +4,5 @@ Assets/Typhoon_Gen/TyphoonSDK/Runtime/GooglePlay/GooglePlaySdk.cs
4
4
  Assets/Typhoon_Gen/TyphoonSDK/Runtime/GooglePlay/GooglePlaySdk.cs.meta
5
5
  Assets/Typhoon_Gen/TyphoonSDK/Runtime/GooglePlay/Editor/PublishGooglePlay.cs
6
6
  Assets/Typhoon_Gen/TyphoonSDK/Runtime/GooglePlay/Editor/PublishGooglePlay.cs.meta
7
+ Assets/Plugins/Android/libs/lib-union-sdk.aar
8
+ Assets/Plugins/Android/AndroidManifest.xml
@@ -0,0 +1,36 @@
1
+ Assets/KS-WASM-SDK
2
+ Assets/KS-WASM-SDK/Editor.meta
3
+ Assets/KS-WASM-SDK/link.xml
4
+ Assets/KS-WASM-SDK/link.xml.meta
5
+ Assets/KS-WASM-SDK/package.json
6
+ Assets/KS-WASM-SDK/package.json.meta
7
+ Assets/KS-WASM-SDK/Editor/KSUnityConvertTools.dll
8
+ Assets/KS-WASM-SDK/Editor/KSUnityConvertTools.dll.meta
9
+ Assets/WebGLTemplates
10
+ Assets/WebGLTemplates/ks.meta
11
+ Assets/WebGLTemplates/ks/game.js
12
+ Assets/WebGLTemplates/ks/game.js.meta
13
+ Assets/WebGLTemplates/ks/game.json
14
+ Assets/WebGLTemplates/ks/game.json.meta
15
+ Assets/WebGLTemplates/ks/kwaiApiAdapter.js
16
+ Assets/WebGLTemplates/ks/kwaiApiAdapter.js.meta
17
+ Assets/WebGLTemplates/ks/project.config.json
18
+ Assets/WebGLTemplates/ks/project.config.json.meta
19
+ Assets/Plugins/KSWASM
20
+ Assets/Plugins/KSWASM/js.jslib
21
+ Assets/Plugins/KSWASM/js.jslib.meta
22
+ Assets/Plugins/KSWASM/KSUnityOpenSDK.dll
23
+ Assets/Plugins/KSWASM/KSUnityOpenSDK.dll.meta
24
+ Assets/Plugins/KSWASM/link.xml
25
+ Assets/Plugins/KSWASM/link.xml.meta
26
+ Assets/Plugins/KSWASM/OpenSdk.jslib
27
+ Assets/Plugins/KSWASM/OpenSdk.jslib.meta
28
+ Assets/Plugins/KSWASM/RakNet.jslib
29
+ Assets/Plugins/KSWASM/RakNet.jslib.meta
30
+ Assets/Plugins/KSWASM/SoGameOpenSdk.jslib
31
+ Assets/Plugins/KSWASM/SoGameOpenSdk.jslib.meta
32
+ Assets/Plugins/KSWASM/UDPSocket.jslib
33
+ Assets/Plugins/KSWASM/UDPSocket.jslib.meta
34
+ Assets/Typhoon_Gen/TyphoonSDK/Runtime/KuaiShouWebgl
35
+ Assets/Typhoon_Gen/TyphoonSDK/Runtime/KuaiShouWebgl/KuaiShouWebglSdk.cs
36
+ Assets/Typhoon_Gen/TyphoonSDK/Runtime/KuaiShouWebgl/KuaiShouWebglSdk.cs.meta
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"com.typhoon.unitysdk","displayName":"typhoon unity sdk","version":"1.1.1","description":"","unity":"2018.1","type":"tool","hideInEditor":false,"author":{"name":"Jan Zhang","email":"","url":""},"changelogUrl":"","documentationUrl":"","keywords":["typhoon"],"license":"","licensesUrl":"","customDependencies":[{"PackageName":"com.unity.nuget.newtonsoft-json","Value":"3.2.0"}],"version_log":"## [1.1.1] - 2024-10-30\r\n\r\n### 修复\n* 修复iniconfig value 参数问题\r\n\r\n","major_flag":false,"write_time_stamp":1730275396000,"others":{"items":[]},"dependencies":{"com.unity.nuget.newtonsoft-json":"3.2.0"}}
1
+ {"name":"com.typhoon.unitysdk","displayName":"typhoon unity sdk","version":"1.1.2","description":"","unity":"2018.1","type":"tool","hideInEditor":false,"author":{"name":"Jan Zhang","email":"","url":""},"changelogUrl":"","documentationUrl":"","keywords":["typhoon"],"license":"","licensesUrl":"","customDependencies":[{"PackageName":"com.unity.nuget.newtonsoft-json","Value":"3.2.0"}],"version_log":"## [1.1.2] - 2024-11-13\r\n\r\n### 新增\n* 重新调整google模块的发布\r\n\r\n","major_flag":false,"write_time_stamp":1731473731000,"others":{"items":[]},"dependencies":{"com.unity.nuget.newtonsoft-json":"3.2.0"}}