
Research
/Security News
9 Malicious NuGet Packages Deliver Time-Delayed Destructive Payloads
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.
io.extendreality.zinnia.unity
Advanced tools
A collection of design patterns for the Unity software that can be beneficial in (but not limited to) spatial computing development.
Zinnia
A collection of design patterns for solving common problems.
[zin-ee-uh]
Zinnia is a collection of design patterns for the Unity software that can be beneficial in (but not limited to) spatial computing development.
Requires the Unity software version
2018.3.10f1(or above).
2018.3.10f1 (or above), create a new project using the 3D Template or open an existing project.Scripting Runtime Version is set to .NET 4.x Equivalent.
Main Menu -> Edit -> Project Settings to open the Project Settings inspector.Player from the left hand menu in the Project Settings window.Player settings panel expand Other Settings.Scripting Runtime Version is set to .NET 4.x Equivalent.Navigate to the Packages directory of your project.
Adjust the project manifest file manifest.json in a text editor.
https://registry.npmjs.org/ is part of scopedRegistries.
io.extendreality is part of scopes.io.extendreality.zinnia.unity to dependencies, stating the latest version.A minimal example ends up looking like this. Please note that the version X.Y.Z stated here is to be replaced with the latest released version which is currently .
{
"scopedRegistries": [
{
"name": "npmjs",
"url": "https://registry.npmjs.org/",
"scopes": [
"io.extendreality"
]
}
],
"dependencies": {
"io.extendreality.zinnia.unity": "X.Y.Z",
...
}
}
Switch back to the Unity software and wait for it to finish importing the added package.
If you want to run the tests that come with Zinnia please follow these steps.
Because Zinnia is a package tests have to be explicitly enabled for this package, before the Test Runner can pick them up.
Navigate to the Packages directory of your project.
Adjust the project manifest file manifest.json in a text editor.
io.extendreality.zinnia.unity is part of testables.A minimal example ends up looking like this.
{
"scopedRegistries": [
...
],
"testables": [
"io.extendreality.zinnia.unity"
],
"dependencies": {
...
}
}
As noted in the official Unity documentation:
NOTE: You may need to re-import the package, because the test framework doesn't always immediately pick up changes to the
testablesattribute.
Project window expand the Packages node.Zinnia.Unity child node and choose Reimport.In the Unity software select Main Menu -> Window -> Test Runner.
Within the Test Runner window click on the PlayMode tab and the click Run All button.
If all the tests pass then the installation was successful.
Note: The tests are not compatible with the
Run all in playeroption.
The package will show up in the Unity Package Manager UI once the above steps have been carried out. From then on the package can be updated by selecting the package in the Unity Package Manager and clicking on the Update button or using the version selection UI.
There are a collection of custom script define symbols that are included that can affect functionalities provided within Zinnia:
ZINNIA_IGNORE_CUSTOM_COLLAPSIBLE_DRAWER - Disables the collapsible event drawer functionality in the inspector windows.ZINNIA_IGNORE_CUSTOM_INSPECTOR_EDITOR - Disables the custom zinnia inspector that handles automatically updating property values when changed in the inspector.ZINNIA_IGNORE_CUSTOM_LIST_EDITOR - Disables the custom observable list editor in any version of Unity.ZINNIA_IGNORE_PIPELINE_MATERIALS - Prevents the PipelineMaterialApplier from updating materials to match the current render pipeline mode.ZINNIA_USE_CUSTOM_LIST_EDITOR - Force the custom observable list editor in the version of Unity 2020.3 or above.ZINNIA_USE_ISACTIVEANDENABLED - Determines whether to use the behaviour.isActiveAndEnabled property on a behvaiour when calling the CheckIsActiveAndEnabled method instead of using the more robust behaviour.gameObject.activeInHierarchy && behaviour.enabled.Inspired by the Zinnia genus of plants known for their colorful, long lasting flower heads and their great ease to grow from seeds. This repository, much like the Zinnia flower aims to be easy to use and allow your projects to grow and flourish into long lasting, easy to maintain solutions.
Fun Fact: Zinnias have been grown aboard the International Space Station and have demonstrated the capability to blossom in a weightless environment.
Please refer to the Extend Reality Contributing guidelines and the Unity project coding conventions.
Please refer to the Extend Reality Code of Conduct.
Code released under the MIT License.
These materials are not sponsored by or affiliated with Unity Technologies or its affiliates. "Unity" is a trademark or registered trademark of Unity Technologies or its affiliates in the U.S. and elsewhere.
2.16.2 (2024-09-28)
The Restricted Attribute Drawer can thrown an exception when using the Unity Quick Search functionality due to the EditorStyles not being available to assign to static fields.
Instead these fields are now just assigned in the OnGUI method before the properties are changed, this seems to resolve the error.
FAQs
A collection of design patterns for the Unity software that can be beneficial in (but not limited to) spatial computing development.
The npm package io.extendreality.zinnia.unity receives a total of 725 weekly downloads. As such, io.extendreality.zinnia.unity popularity was classified as not popular.
We found that io.extendreality.zinnia.unity demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
/Security News
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.

Security News
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.