This removes some useless code that never worked for the Multiple Zone Selector component used for renderWithZones.
It was using an element variable that wasn't declare and set that was causing the failure of the entire function (since probably the implementation)
the function was call to update the selector with any changes with a zone.
but the selector is rebuild anyway at each click on the Add Zone button. It could also update the list by displaying a deleted zone as unkonwn.
But this was overkill, in addition that it has never worked without causing any real issues.
At least now, it will stop to cause error like this:
[DEBUG] [qml] [FlickableWebViewCore.qml] Web Entity JS message: file:///C:/Program%20Files/Overte%20-%20PR146/scripts/system/create/entityProperties/html/js/entityProperties.js 3988 Uncaught ReferenceError: element is not defined
Fix for Issue #1517
Locked entities were simply ignored and it was still processing their children.
Now it's no more possible to duplicate if the selection and their children contains a locked entities.
It was also unable to add the new parent if the duplicated child entity was locked. Which was causing some other issues.
Error 0 was previously: "URL not well formed"
But actually , this wasn't the exact reason why an error 0 can be returned.
Error 0 means that no server are reachable to even respond.
So I have replaced it by "Server not found".
In the Entity List, there is a column to indicate the presence of script on an entity.
Before that modification, it was only present for entities having a Client Script.
Now it will be present if there is a Client and/or Server Script.
Add a new Zone Selector HDM compliant for renderWithZones.
The previous selector wasn't usable in HMD and it was pratically the last component
that forced us to remove our headset to complete the task.
Safeguard code for Copy/Paste Position/Rotation
The 4 actions has now validations to avoid to only have those validation on the UI.
Making sure there is a single selection to execute these actions:
Copy Position
Copy Rotation
Making sure there is a selection that doesn't contain locked entity and that we have a copied value in order to execute these actions:
Paste Location
Paste Rotation
Add a New Menubar in the create app, just over the toolbar.
The Delete Red button is now back in the toolbar.
The radius search label has been replaced by a radar icon, the space has been recuperated for the menubar.
So we have now space for more menu & menu items, and for more button too. which will help for future addition to this application.
Rename the action: "Rotate as Next Clicked Surface"
for "Snap to Next Clicked Surface"
since it is now doing the rotation and the move to the clicked surface.
Action "Rotate as the Next Clicked Surface"
has been changed for:
"Rotate as Next Clicked Surface"
For now, it will be that.
This feature might evolve soon to include a translation to the clicked surface.
So the name will eventually change again.
1- This adds a new Material icon to identify the material entities that are linked to a parent.
Since those material entities become invisible, this help to figure their presence.
2- The Create App - Preference: "Show Zones in Create Mode"
has been removed, since it was doing nothing for a couple of years now.
the method behind is still in the API, but do nothing.
(abandoned since it was only drawing a box that wasn't useful to figure the shape of the zone)
There was no real value to bring this back in a different way.
3- The Create App - Preference: "Show Lights and Particle Systems in Create Mode"
has been renamed for "Show Icons in Create Mode"
since this setting was also managing all the icons (including Zones and now the Parented Materials)
The objective of the setting is mainly to simplify the display at the edit when a scene is very dense.
(In the future, we might want to make this "à la carte". For now, I think we can try as is. )
Add a new entity in-world edition icon for Material (when not parented)
and new version for the 4 existing icons: Now they are all dark gray (same tone)
with a white border for a better visibility under different lighting.
Previously it was 490px wide (in Desktop)
Now it will be 750 px wide (in Desktop)
The properties tab is now with an acceptable size by default. (which is closer to the landscape display we have in HMD.)
No change in HMD or in-Tablet display.
Excluding EntityShapeVisualizer from Children list
Now a name is given to the EntityShape of the EntityShapeVisualizer (used to display the zone)
so we can now exclude them from the children list when it's time to figure if there are children for an entity.
(This is a better approach than excluding al the local entities)
The name has been used because it gives better results than trying to use the id map that arrive always too late.
The name is unique for a session, it includes a UUID.
Excluding EntityShapeVisualizer from Children list
Now a name is given to the EntityShape of the EntityShapeVisualizer (used to display the zone)
so we can now exclude them from the children list when it's time to figure if there are children for an entity.
(This is a better approach than excluding al the local entities)
The name has been used because it gives better results than trying to use the id map that arrive always too late.
The name is unique for a session, it includes a UUID.
This excludes the local and avatar entities from what is returns by Entities.getChildrenIDs
to avoid the selection tools of the Zone entities to be considered as Children of it.
This was necessary for the display of the hierarchy status, but also for the "Add Children to Selection".
This excludes the local and avatar entities from what is returns by Entities.getChildrenIDs
to avoid the selection tools of the Zone entities to be considered as Children of it.
This was necessary for the display of the hierarchy status, but also for the "Add Children to Selection".
The Create App. Menu Items under the “Edit” menu have been cleaned up.
All the actions being transferred has been removed. (some was not even decently usable from there)
A new sub-menu “Create Application – Preferences” has been implemented to regroup the remaining menu items that are all User Preferences.
Eventually in the future, these might be moved to the Create App. UI. For now, it will be OK, it's already cleaner.
Add a new User Preference for the Default value of the Entity List Radius. This is available in the Edit menu. If changed, this value will be used as default Radius for the next time the script will be loaded.
Add a new User Preference for the Default value of the Entity List Radius. This is available in the Edit menu. If changed, this value will be used as default Radius for the next time the script will be loaded.
Add a new User Preference for the Default value of the Entity List Radius. This is available in the Edit menu. If changed, this value will be used as default Radius for the next time the script will be loaded.
Bug fix: EntityList, CTRL-Click was adding the last selected entity as the first selection the selection stack. The first selected item was systematically the last item of the selection. This was causing unpredictable results with "Parent Entities To The Last Selected". (This bug becomes evident by highlighting the "Last Selected" in the entity list.
This returns "Teleport To Selected Entities" back to the "Selection..." menu.
After having tried a certain time what was suggested (having it under "Actions..." menu)
This is clearly easy to confuse it with "Move Selected Entities to Avatar"
"Teleport To Selected Entities" is about position your-self to see what you have "Selected" (which make this a Selection Tools or an assistant to it)
while "Move Selected Entities to Avatar" is clearly an action. as it moves the entities to a new position.
The last selected entity is now displayed in darker blue in the list (if present per radius search)
This makes clear which entity could become the parent.
(This enlights some weird behavior with the Selection, making this hazardous to figure which one was the true last selected entity. To be addressed later, it's already better now.)
Add in-world selection color for entities that are Parent & Child at the same time.
When 1 entity is selected (in-world):
if the entity is a Top Parent, the selection color of the bounding box is Orange.
if the entity is Parent and Child, the selection color of the bounding box is Majenta.
if the entity is only a Child, then the selection color of the bounding box is Cyan.
If not involved in any parent line, or if the selection is multiple, then the selection color of the bounding box is Light Grey.