Using Desktop Bridge, CELSYS converts CLIP STUDIO PAINT to a Windows UWP app
CLIP STUDIO PAINT is the leading paint tool software that supports creation of animation and manga. The software, developed by CELSYS, is widely used in animation studios and by individuals around the world. It supports multiple languages (Japanese, English, French, Chinese, Portuguese, German, and Korean) and has been the leading paint software for the past two years.
Microsoft worked with a team of CLIP STUDIO PAINT developers to convert their app to Windows UWP, using Desktop Bridge.
The core team:
- Yasushi Nakanishi – Senior Developer, CELSYS
- Noriaki Aoyama – Chief Developer, CELSYS
- Tetsuro Shimada – Manager, CELSYS
- Tomoaki Yokotsuka – General Manager, CELSYS
- Shozo Arai – Technical Evangelist, Microsoft Japan
- Shinobu Takahashi – Technical Evangelist, Microsoft Japan
- Kazuki Tsuguma - App Consultant, Microsoft Japan
CELSYS, Inc. is a Japan-based organization that develops animation and manga production software and provides mobile comics and ebook content services. It develops digital production tools for creating digital content. These tools are used by creators all over the world. CELSYS also provides viewing environments, distribution support, and services supporting communications for the material developed by content creators. Its goal is to provide comprehensive solutions to support creators in the graphics field.
CLIP STUDIO is preinstalled on Windows. Original equipment manufacturers (OEMs) have been asking for a Windows Store version of CLIP STUDIO, resulting in an urgent need to meet this demand. But CELSYS expected that development of a Universal Windows Platform (UWP) app would take significant time and effort to accomplish.
The business challenge was to figure out what form the product should take for the Windows Store because an application already was being sold as a package. To save time to release to the Windows Store, CELSYS decided to use Desktop Bridge to convert its existing Win32 application.
There would be multiple technical challenges during the conversion:
- We cannot perform a typical migration because the application has undergone multistage execution.
- The installer is highly customized for the application, making it impossible to convert the application as is.
- Although the application may be installed to function as a user-created plug-in model, users are unable to run the same functions on the system after the conversion.
- The application behavior may be different when a shell extension is used (this affects uninstallation as well).
Solution, steps, and delivery
To handle these issues, we took the following steps:
- Held a hackfest (intensive technical implementation and coding session) for Desktop Bridge.
- Discussed issues related to running a UWP app of CLIP STUDIO PAINT.
- Published a UWP app to the Windows Store.
1. Hold a hackfest for Desktop Bridge
The hackfest procedure was as follows:
- Conduct a session on how to use Desktop App Converter and Windows SDK tools.
- Provide a sample of an app to convert.
- If an issue arises, discuss and decide how to solve it.
- As required, provide new sample code of script.
2. Discuss issues related to running a UWP app of CLIP STUDIO PAINT
Some questions and answers:
How do you share data between the desktop and UWP?
See ways to use data-sharing methodologies, such as PublisherCacheFolder (see information at https://docs.microsoft.com/en-us/uwp/api/windows.storage.applicationdata#Windows_Storage_ApplicationData_GetPublisherCacheFolder) and Protocol Launch.
How do you get AppUserModelId?
You don’t, because it is not required in a UWP app.
How do you use the external plug-in?
You don’t, because they need to change the plug-in model.
Can you use Google IME on a UWP app?
Yes, but there are issues with Google IME.
How do you set the sales setting on the dashboard?
See information on setting app pricing and availability.
Some issues and solutions:
Issue: How do you use Windows Runtime API with minimum impact to the existing code?
We recommend using the Win32 dynamic link library to encapsulate Windows Runtime API code. Here is the DLL sample code.
Issue: What is a countermeasure against casual hacking?
In the CLIP STUDIO PAINT app, deploy using Xcopy and then launch a clone executable. There are specific behaviors for process type—UWP app or desktop app. How do you determine the process type? We provided this sample code.
Issue: How to show icon of file extension.
Our investigation found this is related to the desktop app, because the app leaves registry sessions behind. Hence, removing it worked well. We provided information on How to use file extension settings.
Issue: Effect on PRI resources of Desktop App Converter v1.0.6 or higher.
Desktop App Converter v1.0.6 requires PRI resources with changed specifications. We demonstrated and provided guidance on How to create PRI resources.
3. Publish a UWP app to the Windows Store
Special thanks to Kazuki Tsuguma (Microsoft App Consultant), who helped to publish the Windows app to the Windows Store.
Opportunities going forward
CELSYS now has the app ready for the Windows Store. Because they are trying to add Surface Dial functions to the app, the app isn’t available to the public yet. As soon as the functions are added, the app will be officially released to the Windows Store.
The CELSYS developer team successfully converted the CLIP STUDIO PAINT app. They expect to have broader customer reach with the Windows Store, and enhanced usability with additional functions with Surface Dial.