Unity Windows
Hive SDK การพัฒนาแอป Unity Windows ต้องการการตั้งค่าดังต่อไปนี้เมื่อสร้างแอปหลังจากการพัฒนา.
สร้างการกำหนดค่าล่วงหน้า¶
ก่อนที่จะสร้างโปรเจกต์ Windows ให้กำหนดค่าการตั้งค่าต่อไปนี้ใน ไฟล์ > การตั้งค่าการสร้าง... ของโปรแกรมแก้ไข:
- ตั้งค่าการสร้าง:
- กำหนดค่าผู้เล่น: คุณสามารถตั้งค่าได้โดยการกดปุ่ม การตั้งค่าผู้เล่น... ที่มุมล่างซ้ายของหน้าต่างการตั้งค่าการสร้าง... หรือในหมวด ผู้เล่น ของหน้าต่าง Inspector.
- กำหนดค่าไฟล์HIVE_PLUGIN.dll: อ้างอิงจากภาพด้านล่างและตั้งค่าไฟล์HIVE_PLUGIN.dll ในโฟลเดอร์Assets\Hive_SDK_v4\Plugins\Windows ในหน้าต่าง Inspector.
การตั้งค่าการสร้าง¶
ขึ้นอยู่กับว่ามีการเลือก Generate Visual Studio Solution ในระหว่างการกำหนดค่าการสร้างหรือไม่ ให้ดำเนินการตาม ตัวเลือก 1. หรือ ตัวเลือก 2. ด้านล่าง
ตัวเลือก 1. การสร้างโซลูชัน Visual Studio: เท็จ¶
- เตรียมไฟล์ Assets\Plugins\Windows\res\hive_config.xml ในโปรเจกต์ของผู้แก้ไข
- ไฟล์เพิ่มเติมของ Hive SDK (ไฟล์ทรัพยากรเช่น .dll, .pak, .bin) จะถูกคัดลอกโดย Assets\Hive_SDK_v4\Editor\HivePostprocess.cs ไปยังโฟลเดอร์ที่ไฟล์ปฏิบัติการที่สร้างโดย Unity Build ตั้งอยู่ หากไม่ได้ถูกคัดลอก โปรดคัดลอกด้วยตนเองดังนี้:
- Assets\Hive_SDK_v4\Plugins\desktop\hive_string → [Executable Folder]\resources\hive_string
- Assets\Hive_SDK_v4\Plugins\Windows\additional → [Executable Folder] (ไม่รวมไฟล์ .meta)
- Assets\Plugins\Windows\res\hive_config.xml → [Executable Folder]\resources\hive_config.xml
- หากคุณได้คัดลอกไฟล์ด้วยตนเองในขั้นตอนก่อนหน้า ให้ย้ายเนื้อหาภายใต้โฟลเดอร์ [Executable Folder]\hive-sdk-res ไปยังโฟลเดอร์ [Executable Folder]\resources
- หากคุณได้ย้ายเนื้อหาทั้งหมดจาก [Executable Folder]\hive-sdk-res คุณสามารถลบโฟลเดอร์ hive-sdk-res ได้
- สคริปต์ Assets\Hive\SDK\v4\Editor\HivePostprocess.cs ตั้งค่ารุ่นโดยใช้รุ่นที่ระบุในโปรเจกต์ หากรุ่นของไฟล์ปฏิบัติการยังไม่เปลี่ยนแปลง คุณสามารถเรียกใช้ Assets\Hive\SDK\v4\Plugins\Windows\postBuildUtil\rcedit.exe จาก CMD หรือ PowerShell เพื่อ เปลี่ยนมันด้วยตนเอง
ตัวเลือก 2. การสร้างโซลูชัน Visual Studio: จริง¶
ทำการสร้าง Unity สำหรับ Windows ในโฟลเดอร์ที่ต้องการโดยมีการกำหนดค่าของสภาพแวดล้อมใน การกำหนดค่าล่วงหน้าสำหรับการสร้าง
สร้างการตั้งค่าหลังการสร้าง¶
ส่วนนี้อธิบายการตั้งค่าที่จำเป็นหลังจากสร้างแอป Unity Windows SDK ของ Hive เมื่อการสร้าง Unity เสร็จสิ้น ไฟล์ต่อไปนี้จะถูกสร้างขึ้น
- สร้าง
- Il2CppOutputProject
- [ชื่อโปรเจกต์] โฟลเดอร์
- UnityPlayerStub
- [ชื่อโปรเจกต์].sln
- UnityCommon.props
- locales
- resources
- swiftshader
- .dll
- cef.subprocess.exe
- .pak
- .bin
- icudtl.dat
การตั้งค่าเวอร์ชัน¶
คุณสามารถตั้งค่าเวอร์ชันโดยการแก้ไข FILEVERSION
และ PRODUCTVERSION
ในไฟล์ WindowsPlayerVersion.rc ภายในโฟลเดอร์ [ชื่อโปรเจกต์] เวอร์ชันที่แก้ไขจะถูกใช้เป็นข้อมูล appversion
เมื่อสื่อสารกับเซิร์ฟเวอร์ Hive
การสร้าง Visual Studio และการคัดลอก Hive SDK¶
- เปิดsln ด้วย Visual Studio และไฟล์ที่สามารถเรียกใช้ได้จะถูกสร้างในbuild\bin\x64\Debug (หรือ Master) โฟลเดอร์ระหว่างการสร้าง
- เมื่อต้องการรันผลลัพธ์ของ Unity 2018.4.17 ด้วย Visual Studio 2019 จำเป็นต้องมีขั้นตอน Retarget Solution
- คัดลอกไฟล์จากโฟลเดอร์ที่สร้างขึ้นระหว่างการสร้าง Unity ไปยังโฟลเดอร์เดียวกันกับไฟล์ที่สามารถเรียกใช้ได้ โดยไม่รวม[Project name_Data].sln และUnityCommon.props
- คัดลอกโฟลเดอร์locales, resources และswiftshader ในลักษณะเดียวกัน
- แก้ไขเนื้อหาของhive_config.xml ให้ตรงกับโปรเจกต์ และระบุที่ตั้งในโฟลเดอร์ resources ภายใต้ไฟล์ที่สามารถเรียกใช้ได้ (Appid, เกี่ยวกับ Google, เกี่ยวกับ Facebook)
- หากเกมต้องการค่าตลาดที่ป้อนใน hive_config.xml ให้ป้อน
HS
ซึ่งเป็นรหัสตลาดสำหรับ Hive Store (อย่างไรก็ตาม ค่าตลาดที่ป้อนในhive_config.xml จะไม่มีผลต่อบริการจริง) -
คัดลอกbuild\bin\Project name_Data folder ไปยังโฟลเดอร์ที่ไฟล์ที่สามารถเรียกใช้ได้ตั้งอยู่.
-
ไฟล์ (*.dll) ในbuild\bin[Project name_Data]\plugins ถูกทำซ้ำ ดังนั้นสามารถลบได้
- การวาง.dll และทรัพยากรเพิ่มเติมในbuild\bin[Project name_Data]\plugins แทนที่จะอยู่ในโฟลเดอร์ที่ไฟล์ปฏิบัติการตั้งอยู่เป็นไปได้บางส่วน แต่มีฟังก์ชันที่ไม่ทำงาน ดังนั้นจึงถูกคัดลอกไปยังโฟลเดอร์ที่ไฟล์ปฏิบัติการตั้งอยู่และใช้งาน
Note
Redistributable packages จำเป็นต้องใช้ในสภาพแวดล้อมอื่นนอกเหนือจาก PC ของนักพัฒนา.
เมื่อสร้างในโหมดดีบัก DLL เวอร์ชันดีบักของแพ็คเกจ redistributable จะต้องใช้:vccorlib140d.dll, vcruntime140d.dll, cruntime140_1d.dll, ucrtbased.dll, msvcp140d.dll, concrt140d.dl
การแยกการติดตั้ง SDK (ไม่บังคับ)¶
คุณสามารถเลือกที่จะใช้การปรับใช้ SDK แยกต่างหากในระหว่างกระบวนการสร้างโปรเจกต์ ซึ่งจะช่วยให้คุณแยกเกมและ SDK ภายในไดเรกทอรีโปรเจกต์เกม
ในไดเรกทอรีของโปรเจกต์ที่มีอยู่ ไลบรารีที่เกี่ยวข้องกับ SDK จะถูกจัดเก็บอยู่ในระดับเดียวกับโปรแกรมเกม (*.exe) โดยการวางไฟล์และไลบรารีที่เกี่ยวข้องกับ SDK ไว้ในโฟลเดอร์ย่อย PlatformHive ที่เฉพาะเจาะจง คุณสามารถรับประกันการพึ่งพาอิสระของ SDK ได้
การเปรียบเทียบโครงสร้างไดเรกทอรี¶
หากคุณเพิ่มมาโคร HIVE_SDK_LOAD_FROM_STREAMING_ASSETS
ลงใน Scripting Define Symbols ในโปรเจกต์ของคุณ ไฟล์และไลบรารีที่เกี่ยวข้องกับ SDK จะถูกวางไว้ในโฟลเดอร์ PlatformHive ซึ่งแตกต่างจากโครงสร้างโปรเจกต์เริ่มต้น
-
โครงสร้างโปรเจกต์เริ่มต้น (โดยไม่มี
HIVE_SDK_LOAD_FROM_STREAMING_ASSETS
) -
โครงสร้างการปรับใช้แยก (ด้วย
HIVE_SDK_LOAD_FROM_STREAMING_ASSETS
)GameRoot ├─ <GameName>_Data/ ; โฟลเดอร์ข้อมูล Unity │ └─ StreamingAssets/ ; โฟลเดอร์ที่แยกออก │ └─ PlatformHive/ ; โฟลเดอร์ที่แยกออก │ ├─ HIVE_SERVICE.dll, libcef.dll, cef.subprocess.exe … │ ├─ propFolder/ ; ข้อมูลท้องถิ่นของ hive │ └─ resource/ ; hive_config.xml, html └─ <GameName>.exe
※ ตำแหน่งสุดท้ายของไฟล์ SDK หลังจากการสร้างจะเปลี่ยนเป็น
_Data/StreamingAssets/PlatformHive/ . โครงสร้างของโปรเจกต์ที่เหลือและวิธีการอ้างอิง SDK ยังคงเหมือนเดิม.
ขั้นตอนการตั้งค่า¶
ทำตามขั้นตอนเหล่านี้เพื่อกำหนดค่า SDK การปรับใช้แยกต่างหาก:
- ใน Unity ให้ไปที่ Project Settings > Player > Other Settings และเพิ่ม
HIVE_SDK_LOAD_FROM_STREAMING_ASSETS
ลงในฟิลด์ Scripting Define Symbols สำหรับรายละเอียดเพิ่มเติม โปรดดูที่ คู่มือสัญลักษณ์การเขียนสคริปต์แบบกำหนดเอง. - อ้างอิงถึง ตัวเลือก 1. การสร้างโซลูชัน Visual Studio: เท็จ สำหรับการกำหนดค่าการสร้างโปรเจกต์.
- เมื่อสร้างโปรเจกต์ สคริปต์ Assets/Hive_SDK_v4/Editor/HivePostprocess.cs จะคัดลอกไฟล์ที่เกี่ยวข้องกับ SDK ไปยังโฟลเดอร์ PlatformHive โดยอัตโนมัติ.
ลบไฟล์ XML ที่ไม่ได้ใช้งาน¶
หากคุณติดตั้งหรืออัปเดต Hive SDK Unity ผ่านทาง แพ็คเกจ Unity แทนที่จะใช้ Hive SDK Manager คุณต้องลบไฟล์ทั้งหมด HIVESDK_{library_name}Dependencies.xml ที่ตั้งอยู่ในเส้นทางด้านล่างก่อนที่จะสร้างแอป
- Assets/Hive_SDK_v4/Dependencies
- Assets/Hive_SDK_v4/Editor
ตัวอย่างไฟล์ที่จะถูกลบมีดังนี้:
- HIVESDK_DefaultDependencies.xml
- HIVESDK_HerculesDependencies.xml
- HIVESDK_HiveAnalyticsConsentModeDependencies.xml
- HIVESDK_HiveDataStoreDependencies.xml
- HIVESDK_HiveDeviceManagementDependencies.xml
- HIVESDK_HiveGoogleInAppReviewDependencies.xml
- HIVESDK_HiveGoogleInAppUpdateDependencies.xml
- HIVESDK_HivePromotionDependencies.xml
- HIVESDK_HiveRealNameVerificationDependencies.xml
- HIVESDK_MarketAmazonDependencies.xml
- HIVESDK_MarketAppleDependencies.xml
- HIVESDK_MarketGoogleDependencies.xml
- HIVESDK_MarketHiveStoreDependencies.xml
- HIVESDK_MarketHuaweiDependencies.xml
- HIVESDK_MarketLebiDependencies.xml
- HIVESDK_MarketOneStoreDependencies.xml
- HIVESDK_MarketSamsungDependencies.xml
- HIVESDK_ProviderAdjustDependencies.xml
- HIVESDK_ProviderAppleDependencies.xml
- HIVESDK_ProviderAppleSignInDependencies.xml
- HIVESDK_ProviderAppsFlyerDependencies.xml
- HIVESDK_ProviderFacebookDependencies.xml
- HIVESDK_ProviderFirebaseDependencies.xml
- HIVESDK_ProviderGoogleDependencies.xml
- HIVESDK_ProviderGooglePlayGamesDependencies.xml
- HIVESDK_ProviderHiveMembershipDependencies.xml
- HIVESDK_ProviderHuaweiDependencies.xml
- HIVESDK_ProviderLineDependencies.xml
- HIVESDK_ProviderQQDependencies.xml
- HIVESDK_ProviderRecaptchaDependencies.xml
- HIVESDK_ProviderSingularDependencies.xml
- HIVESDK_ProviderVKDependencies.xml
- HIVESDK_ProviderWechatDependencies.xml
- HIVESDK_ProviderWeverseDependencies.xml
- HIVESDK_PushAmazonAdmDependencies.xml
- HIVESDK_PushGoogleFcmDependencies.xml