Skip to main content
Skip table of contents

OKO 2023.08

Date: 29th August 2023

Client versions: Unity 1.2.0, Web RC 2.13.1, Unreal OKO Plugin Build number 98091

Here's What's New In This Release For Unreal OKO Plugin

  • Unreal is now able to gracefully express to users when the platform is unavailable with maintenance windows!

  • Editor Extension workflow improvements have been made. 

Maintenance Windows 

If a user opens the editor within an hour of scheduled maintenance they will be met with a module advising them of the start and end times of said maintenance. Similarly, if a user attempts to log in during the scheduled downtime of the system then they will be informed via modul of the scheduled maintenance, indicating when it is scheduled to end and prevented from logging in. Further updates and checks are still ongoing for this new feature so watch this space for any future improvements. 

Maintenance window that appears when opening the editor within an hour of the scheduled maintenance.

Maintenance window that appears when opening the editor during scheduled maintenance.

Editor Extension Workflow Improvements

The team has continued the progress in improving the user experience of the Editor Extension. A new connections system with a flow for entering a space has been integrated. Now if a user is logged into a space and wishes to enter a new one, they will receive a pop-up informing them that they need to exit the space first and asking if they would like to exit the space now. If a user selects ‘Yes’ then it will automatically log them out of their current space and log them into the new one. 

Major Bugs We’ve Fixed…

  • Unreal Editor now successfully re-adds assets deleted from the library by the web client after placement.

  • Public spaces now display correctly as public when editing a space.

  • The Unreal Extension site model now features correct UVs and lighting.

  • Avatars no longer run on other clients when movement stops.

  • Visibility no longer toggles after updating the name or description of a space.

  • The video play component is now functioning as intended. 

  • Fonts in Button/External Link components in UEEE no longer appear pixelated.

Here's What's New In This Release For OKO Web

  • We’ve introduced ticketed access to spaces via Eventbrite! 

  • We now have maintenance windows. 

  • New and improved Web UI.

Space ticketing via Eventbrite 

We are expanding business opportunities for users in OKO by introducing ticketed spaces for users to be able to monetize their spaces and create revenue. Editors can now mark their spaces as ‘ticketed’ and create an event for OKO by connecting their Eventbrite accounts and adding the event URL and ID to their OKO space. 

Users will be able to determine that a space is ticketed via an icon shown in the hub and upon first entry to the space they will be prompted to enter their ticket number. If validated then they will be granted access to the space. However, if invalid then they will be met with an error message and prompted to try entering their ticket number again. 

Maintenance Windows

Following on from the previously created maintenance mode page to indicate to users when services have gone down, now that we have support from CSP for accessing maintenance windows data we have integrated the functionality to display the page on the Web client. 

Web UI & Functionality Upgrade

The team have worked hard on updates to the web client’s user interface, which has led to revising the following:

  • Creator Tools

    • The central toolbar for editors includes the name and author of the space in addition to buttons for accessing map mode, flight mode, and a new speed modifier for moving around in space. It can be further expanded to allow editors access to switching to viewer mode (Control G Shortcut) and changing their visualization mode

  • Hierarchy Panel

    • This panel is a replacement for the Worldbuilder and is available on the left-hand side of the page. It contains all space entities and components within a space,

  • Properties Panel

    • When selecting a space entity/component either in space or via the hierarchy panel, the properties panel should open on the right-hand side of the page and display the relevant properties and thumbnails for the selected item, which editors can modify. 

Major Bugs We’ve Fixed…

  • Users can now interact with Button/External link components in the Web client.

  • Frame rate and performance issues have been addressed when moving around after adding a GLB to a space.

  • Slowdowns and crashes no longer occur when dragging an asset from the asset panel.

  • Entering a public space as a guest on the web no longer creates a new guest user each time.

Here's What's New In This Release For Unity iOS

  • There are several improvements to the Level of Detail (LOD) feature. 

  • Space ticketing has been introduced. 

  • We’ve made some improvements to help asset loading in a space.

  • Fiducial markers allow a user to anchor their space to a real-life object much more accurately than before. 

  • Spaces are now searchable. 

  • The maintenance window feature is now complete. 

  • The iOS application can now also read and write environment parameters in a deep link, and redirect the user where appropriate.

Level of Detail (LOD) 

Following on from the last release’s LOD work, there are several improvements to the feature. We have added visual progress on the generation of assets and a default LOD quality per type of device. We have improved LOD selection based on runtime information and set up assets to load their lowest quality first. This will show assets in a space much earlier. Video here.  

Space Ticketing

Accompanying the Web Client’s Space Ticketing implementation, the Unity iOS Client also provides partial support. If the user is validated, they will be granted access to the ticketed space.

Asset loading

We’ve made some improvements to help asset loading in a space. Improvements include a fallback for async image loading on unsupported platforms and various improvements on loading GLB objects.

Fiducial Marker

Fiducial Markers will allow a user to anchor their space to a real-life object much more accurately than before. We have completed several user stories that unlock allowing a user to designate an image as a fiducial marker. Resolving that will be in the following release.

Major Bugs We’ve Fixed…

  • We’ve updated the comment icon size so it’s now smaller.

  • The space preview panel will now show the Edit button instead of the Share button for the space owner.

  • We’ve fixed the issue where Object Capture was spawn-able before being processed.

  • Components not visible in AR are now downloaded with the correct priority in 3D mode, where they are visible.

  • Fixed issue with dev builds endpoint selector.

  • Fixed issue where videos were failing to play in Unity client if they were toggled on/off by scripts.

  • Fixed various scenarios where the loading bar and spatial loading indicators could show an incorrect loading state.

  • Fixed the issue where Quality Settings were reverting to default when closing the app.

  • Resolved issue where a success notification is missing and letters could be seen as part of creating/editing a Fiducial Marker.

  • Swapped GetAnchorsInAreaAsync for GetAnchorsByAssetCollectionId.

Here’s What’s New in This Release For The Connected Spaces Platform


Check out GitHub for more information on CSP releases 

  • You can now buy and sell items using Shopify in your client applications using CSP and Magnopus Cloud Services.

  • Ticketed spaces via an Eventbrite integration. 

ECommerce

Via a Shopify integration, you can now buy and sell items in your client applications using CSP and Magnopus Cloud Services. The new CSP ECommerce API provides C++, C# and web-based applications with a well-defined strongly-typed API that reasons about stores, carts, and products.

The API affords the client application the ability to connect their space to a single Shopify store. Within a space, a client application can then include ECommerce components that belong to an entity, where each component can describe a different real-world product available from that Shopify store.

Ticketed Spaces

The Connected Spaces Platform API now allows any kind of client application CSP supports to gate user access to spaces on their application, whether the user has purchased a ticket to enter or not.

The CSP API works in concert with Magnopus Cloud Services to interface with an Eventbrite-based ticketing backend, which enables users to connect their spaces up to an Eventbrite-hosted event. Once they’ve been connected, the CSP API allows the application to enable/disable ticketed access without losing the connection.

Fiducial Marker Space Component

The Connected Spaces Platform already affords apps with a means to localize digital content in the real world with high precision via Google Cloud Anchors. Not all connected space use cases can be solved with cloud anchors though, so to that end, we’ve added the concept of fiducial marker tracking to the Connected Spaces Platform API.

Client applications can now support spaces that describe fiducial marker components that belong to entities. Those markers describe the image that they expect to find in the real world, and their transform in the digital space, giving applications everything they need to figure out how to localize all other digital content in the space in reality, relative to the marker.

Codebase Quality Improvements

We continue to improve the quality of the open source codebase this release, with around 100 new automated tests, increasing coverage across our wrapper generation pipeline and our common classes. There's improved logging and error reporting in a variety of scenarios, including detailed and specific information when any service connected to CSP returns with a 400 or 500 error code. 

Major Bugs We’ve Fixed 

  • Fixed frequent memory crashes after entering a space.

  • Resolved periodic crashes in the Web client when adding an asset to the Assets library.

  • Addressed CSP deadlocks occurring sporadically in the Web client.

  • Prevented crashes when calling GetLatestMaintenanceWindow().

  • Prevented users from hitting asserts when there are no current maintenance windows or scheduled in the future.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.