1. Neos VR
  2. News
  3. 2020.7.17.1288 - Initial (untested!) Vive Cosmos support, storage usage report

2020.7.17.1288 - Initial (untested!) Vive Cosmos support, storage usage report

Fixing Mikktspace generation for multi-submesh meshes, initial (UNSTESTED!!! Please try it out if you have the headset and controllers) support for Vive Cosmos, some new commands to help with analyzing your storage usage (they're very technical right now, but should help in some cases if you really need to use them)

[h2]New Features:[/h2]
- Added initial support for Vive Cosmos Controllers (requested by @I wont shut up about reflections and @Zalno)
-- This includes input bindings and handling controller inputs for Neos interactions
-- CURRENTLY UNTESTED!!! I'll make any fixes and tweaks as necessary based on this build
-- LogiX nodes for accessing Cosmos-specific inputs aren't included yet
- Added /requestRecordUsageReport command to the Neos account in your friends list, which will generate a basic storage usage report for your account and send it to your email
-- This list includes all records (worlds, items...) on your account that use any storage, sorted by sum of the sizes of their assets
-- This doesn't take into account assets that are shared across records. The raw sum of all records is very likely going to be much higher than your actual storage usage, because shared assets are only counted once
-- Conversely if you delete a world/item, your storage won't necessarily go down by the amount reported, but only by how many unique assets it has. If the assets are used by other records, your storage won't go down by the full amount
-- Additionally some assets are "free", like various Neos assets (e.g. some stuff you find in public Neos inventory) and will be counted in the report, but doesn't actually contribute to your storage
-- The report includes name, path, ID, record type (and whether it's message item) and public status of each record
- Added /deleteRecord command to the Neos account, which allows you to delete any record from your account by its ID
-- IMPORTANT! It doesn't ask for confirmation, double check you've got the right Record ID as this action is mostly irreversible.
-- You can use this to delete some message-item records for the time being. For inventory items and worlds I strongly recommend using in-game UI
- Added "AdminX" utility in the "Tools" folder in Neos installation
-- This lets you conveniently run the above Neos commands outside of Neos from command-line interface after logging into your account
-- When running commands through this tool, don't include the initial slash in the message
-- You can use echo command for testing
-- This tool requires .NET Core 3.x runtime installed

[h2]Optimizations:[/h2]
- Removed all memory allocations when enumerating mesh submeshes
-- This severely reduces memory allocations for functions that do this often, e.g. fetching faces by their global index or triangle index (used for fetching hit triangle from raycast or during Mikktspace calculation)

[h2]Bugfixes:[/h2]
- Fixed incorrect global mesh face/triangle indexing, particularly when there are multiple submeshes
-- This fixes the Mikktspace algorithm producing incorrect results, making some parts of meshes appear black (reported by @Aegis_Wolf | Art Director, @Dante, @Sykes, @Ubes and others)
-- You can recalculate tangents on already imported meshes using Mikktspace through the inspector to fix the wrong tangents (I STRONGLY recommend doing this if you already recalculated using simple one, as the mesh might've ended up with a weird mix of tangents)
- Fixed Headless client/server not updating Thumbnails and other behaviors properly (reported by @Enverex)
- Added more diagnostics for canvas update cycles to help diagnose bug reported by @KierDran