New in Umajin
Faster Renderkit model loading
When adding triangles or quads to your custom mesh, you can now add thousands at one time using the Array extensions.
It is now quicker to update component properties, by allowing editing of multiple components of the same type, when more than one component is selected.
User’s access level for a project can now be seen within Umajin Editor when hovering over their avatar.
Support has been added for svg files.
Minor bug fixes.
Android only fixes for issues finding and connecting to Bluetooth Classic devices.
WebView2 on Windows
The WebView2 upgrade also fixes the operation of the Google Maps component on Windows. In addition, both Mac and Windows now show vector (WebGL) maps from Google, with smoother animation and scaling.
BLE (Bluetooth Low Energy)
We have upgraded the reliability of BLE on iOS and Android, making connectivity more consistent.
LibJS has been enhanced to support all components and has improved help.
Security fixes including logout on password change.
Umajin now supports Spine 3.8 format, allowing you to work with current Spine tools. (If you have used older versions of spine in your projects, re-export them in 3.8 format.)
Database API Improvements
Umajin SQLite database support is much more capable, including named parameters to avoid encoding and SQL injection problems, support for null and BLOB values, and data is now native JS objects instead of JSON, improving performance and simplifying code. See cacheDbSelectRaw for a starting point.
More Native Library Support
- BMP images are now supported in the editor and cloud
- APIs to load and save binary files.
This is a bug fix release only.
- Tweens not working for some properties
- Some menu items disabled incorrectly.
- Error when trying to create empty 3D model in RenderKit.
- File picker is case sensitive, and filters out valid files.
A Welcome Screen
Now when you start up Umajin, a new Welcome screen will show you what’s new in the product as well as allowing you to get to your most recently opened projects even when you are off-line.
There is now an eyedropper tool on all color properties that allows you to sample a color in your application that then becomes the chosen color in the property. This is great for quickly picking an exact branding color from a logo or other imagery for use in other areas.
Umajin now lets you choose royalty free clipart to use in your project. The best thing is that the clipart is only stored with your project when you add it from the library so you still get to keep your application lean.
New project templates now have folders
Templates are now grouped into categories to make it easier to manage which template to use for any task you have. There are also now demo and example templates that you can create to show you how some of the more advanced features of Umajin work and as starters to your own creations.
Improved component selection box
You can now cycle through components that are on top of each other using the CTRL + Left Mouse Click combination. This makes it much easier to get to components that are completely covered by their front most components; such as scroll-panels covered by internal components and the page which is always at the back of all its child components.
New arrow component
The new arrow lets you define an arrow image to use and then tint, curve, rotate and change the thickness of the arrow to your liking. This is great for calling attention to parts of your application or directing the user from one place to another on a page.
Nine slice tinting
The nine-slice component now has the ability to add a tint to the image used. This will add the color of the tint to the existing image so adding a green tint to a yellow image will turn it blue. It is most effective when used on white images to change colors when theming an application.
Overlap warning indicator for text entry while in editor.
Whenever you place any other object over a text entry box, you will see a red OVERLAPPED message indicator on the text entry box so you know that you should move the component that is overlapping it so the user can see what is being entered.
Improved saving speed for large projects
Larger projects have been given a performance increase when saving.
This is a mobile-only (Android and iOS) release to fix problems with text entry, especially in conjunction with scroll panels.
This version has a focus on performance and profiling, but also includes a few other smaller features.
registerEventHandlernow support multiple listeners
- The global event
on_global_button_presshas been renamed to
on_global_button_presswill continue to work for backwards compatibility, but you should use
- New Tools menu bar. Easy access to profiling controls.
- Many performance fixes, mostly targeting Vulkan.
- Fix incorrect caret location issues for Text Entry component on iOS 15.
- Console output is translated to stdout for published app debugging.
- Notification popup when “push to cloud” has completed.
This release is mainly to support Google’s updated Play Store requirements for Android (Application bundles, SDK updates).
It also includes:
- Feed filtering fixes for empty string or multiple possible matches
- Fix hang on synchronising errors in Umajin Lite, and improved error information.
- Sound recording permissions
- Windows code signing support
- Mac code signing and notarization support
- Simplified loading of native libraries. Just give a name, and Umajin will work out the exact filename and location
- WebView for Windows/Mac/iOS additions:
- On URL Change event as a simple data return mechanism
- Inviting guest editors is now done only in the cloud
- Publishing no longer requires the Android feature graphic.
- Streamlined install, especially for updates.
- Text entry component added edit-time properties: text, enabled
- Structural support for publishing from Git repositories.
- Additional folders in the project will be included in published apps.
- Mac/Win: app splash screens and startup window title correctly show
- Mac: Camera and Microphone permissions
- Win: Camera now works
- Fix pre-requisites problem in installer
- Easier-to-read font in text property editor
- The project.u file, package.txt and the various manifest txt files should now stay consistent on each save
- Fix problem creating first project on a new account
- Mac: improved visual quality for scaled-down images (mip-mapping) and angled lines/curves (MSAA)
- JS file handling: New APIs for copyFile, deleteFile, deleteDirectory, bool return codes for IO functions, and better error messages
- New renderkitModelUpdateVisibleTween for performance.
- LibJS: FeedItemView addCustomFeed, and setting custom feed parameters
- iOS: Umajin now requires a minimum of iOS 13, reflecting the change to Vulkan graphics.
- Renderkit – Update image size when changing filename
- renderkitCameraGet – now returns valid JSON
- Android: Crash writing to bluetooth sockets
- Corrected docs for renderkitModelUpdateBlendMode
- iOS: Occasional crash decoding some Jpegs
- Spinner always showing for httpS3Upload, never for httpGetFle
- crashes when handling certain errors on Windows (native library, process)
- global device_id not working on Android, iOS and Mac
- syncing should not include subfolders of temp
- fix a possible infinite loop loading project (multiuser non-responding client)
- missing parameter in doc for addMapMarkerLatLong
- added missing docs for http xxxFromRef functions
- Remove “new compiler” and renderer from Window title; show info in console instead.
- Fix Mac menu application title.
- For developers:
- Fix USB serial operation on Android.
- openUrl supports custom schemes for opening other apps.
- Support for setting content-type in httpAddFormFile
- Support for HTTP Patch method httpPatchHeaders/httpPatchFromRef
Installing Visual C++ runtime
You may be shown the “Prerequisites Wizard” saying that some of the prerequisites needed are missing.
Clicking next will show the Microsoft Visual C++ 2015-2019 Redistributable installer.
If it is already installed, you will only see “Repair” “Uninstall” or “Close”.
Please select close, and then confirm you want to Cancel.
- Added functions for sound playback and record
- RenderKit functions for updating visibility and animation mix
- Pass name to createComponent, and getComponentByName
- Update displayed custom feeds: setCustomFeedSingleRow
- Fix save locking in multiuser
- http put call not running JS callback functions
- Fix opening project as read-only
Improved rendering performance on Windows laptops with discrete GPU
(NVidia Optimus, AMD PowerExpress)
Project “no sync mode” for customers who wish to manage their project files externally to Umajin.
Multiuser syncing and file conflict handling
- requires KDiff3: https://download.kde.org/stable/kdiff3/
- improved syncing flow on project load and multiuser sync
- save button tooltip shows file changes
- improved handling of network errors
Collapse scene tree items
- makes working with complex pages easier
- App Http operations such as downloading files can still work when editor is in offline mode (project option)
- Checks if files can be written to when saving
- Support for different permission profiles
- Click on JS filenames in console to jump to source.
Digital agent features
Voice commands, text-to-speech and digital avatar
- Note: simultaneous text commands and text-to-speech not available for iOS in this release
Desktop App Features
- Support for packaging standalone desktop apps.
- More flexible splash screen
- Improved API for downloading files: httpGetFile
- Additional properties for components in LibJS
- Fix: Http Delete API not working with additional headers (such as AWS S3)
- Enhancement: Sound actions support file:// prefix for loading sounds from locations outside audio folder.
- Fix: httpS3Upload failing when other authorization requests had been sent in the past.
Desktop app improvements
- Allow includes to be used in DirectX shaders. Paths must be relative to source shader file.
- JS APIs and project setting to control window state (window_?? and screen_?? globals, moveWindow)
- on_mouse_down event fixed to work in Editor Lite.
- events such as on_down and on_up now include the modifier for detecting mouse button, shift/control keys etc.
Desktop app improvements
- Added mouse events for JS (down, up, wheel, enter, leave)
- Set desktop window title from JS
- full_project_path getGlobal provides absolute path
Amazon S3 improvements
- Supports latest “v4 Signature”
- JS S3 Upload now supports different regions
- Added S3Link JS function – get an S3 download link
- Support adding spine animations
- Added setting model orientation by quarternion
- Added getting screenspace bb for a model
- Added getting the aabb for a model
- Improved JS error logging
- Fix publishing project effects/shaders and 3d models
- Fixed delays when using editor menu in large projects
- Addition of on_quit_requested JS event and cancelQuit() function.
- Improved database error reporting.
- (Windows only) Renderkit post-process shader improvements
- MSAA anti-aliasing
- Floating point render targets
- Depth buffer replaced with world space co-ordinates.
- Updated splash screens
Offline mode: project option to allow the app to still use HTTP
- Editor and viewer are now notarized so can be launched normally (still has the “downloaded from the internet” confirmation prompt)
- RenderKit Shader pipeline
- Improve performance on project load and window switching
- Improved filtering for data-bound components.
- Android adaptive icon support.
- Improved editor toast messages.
- “Hide on Back” property added to dialogs to stop them closing when back or escape key is pressed.
Internal release only
- Multi-User Improvements;
- Soft page locking and lock timeouts reduces conflicts between users
- Now blocks while saving to cloud
- You have the option to open a project in Read-only mode
- You can now Copy/Paste actions
- Symbol primitive type
- Computed property names in object literals
- HEIC Image format now supported from users photos in iOS
- Improved share action with image composition, desktop preview
- There is a new non-modal dialog type and you can customize the dialog blocker colors
- In Umajin Editor Lite, there is a new method to access the menu which uses a two finger double tap rather than the swipe from the left. This was required to avoid conflict with the new gestures system in Android 10
- UTC Date functions now return the correct date
- Changes to the font type in a Text Entry component will now display correctly
- A white flash on startup on some Android operating systems is gone
- The default app background color will not show through on the right hand side of the screen on some iOS operating system versions now
- Google Maps routing now accepts the new key required for published apps
- Fix offline maps POI clicks not working reliably in Android
- new check beacon status action
- fix map centering when zoomed out
Fix poor performance when fonts missing
Mac: Fix editor not opening when clicking “Open” on the first-time “Run application from the internet” dialog
Mac: Fix crash at startup on Catalina.
Improved performance and reliability:
- Multiuser fixes relating to: masters, changing page names, undo/redo, auto-mapping, etc
- Exiting from play mode back to edit mode is faster
- Fixed short hang every 30 seconds on large projects
- Loading zoom animation removed
Undo/redo is now per-page
- Undoing on one page will not affect other pages.
- Deleted pages can be restored from the new “Deleted pages” button.
Device list updated to remove obsolete devices and add new models.
- HTML Article and Dynamic Article components now select fonts more reliably
- Copying between projects.
- Improved custom feeds performance
- Unsaved changes correctly show when changes made to a project while saving
- Mac: Fix fake GPS location not working
The release of Umajin 3.1 brings with it our new multi-user editing feature. You can now collaborate with your colleagues directly within the Umajin Editor.
The multi-user system allows people to work simultaneously on the same project. A list of users who are currently logged in to the project is displayed in the top right corner of the Umajin Editor. Any time a project member makes a change to components on a page, these changes are immediately (in real-time) synchronized with the other team members. To make use of this system simply update your Umajin Editor to version 3.1 and it will be available.
This major release sees a move to simplified naming of our applications. Umajin App Creator becomes Umajin Editor and Umajin Preview becomes Umajin Editor Lite to reflect the new functions within. A totally new User Interface design and all the features below round out this 3.0 release.
Umajin Editor (formerly Umajin App Creator)
We have gone through the whole application and updated the user interface design of our Umajin Editor to look better on higher resolution displays. The design has then followed on to our Umajin Editor Lite as well. All component and action icons have been updated as well to give a more cohesive experience. There is a project history tab in the Project List so authors can see what has been completed on their project and the list is searchable. You can now drag ‘n’ drop components on the scene tree and in the actions lists in the properties inspector. Guide-wire positions can also be precisely set by clicking on the Guide-wire tab. Project settings can now be edited in the Properties Inspector and can be undone.
Umajin Editor Lite (formerly Umajin Preview)
Notch Support in Android and iOS
The Umajin ecosystem now has notch support on iOS (for iPhone X and later) and Android 9.0 (Pie) devices that have a notch. The status bar can also now be displayed while a project is active as well.
Google Maps now work on desktop (macOS and Windows). This will help with testing maps when authoring new projects. We have improved zoom capabilities and the ability to add a fake user location for testing as well.
Numerous other enhancements
We have updated the permissions systems for both Android and iOS. The Windows Editor is now a 64bit application and we have added macOS Mojave permissions for Camera and Microphone. There is better management of Text entry components. The reliability and consistency of feed components has been improved and many other minor bugs have been resolved.