archoninteractive / swissarmylib Goto Github PK
View Code? Open in Web Editor NEWCollection of helpful utilities we use in our Unity projects.
License: MIT License
Collection of helpful utilities we use in our Unity projects.
License: MIT License
Allo,
Thanks for putting this together. I noticed large memory and performance issues using delegates & events so I decided to give the SwissArmyLib interface approach a shot. After implementing the latest stable release (1.0.56), I noticed a large CPU issue with the new event code.
I used the Deep Profiler to figure out what the issue was and it pointed me towards the Equals comparer being called 750,000~ times. Here's a screenshot from the profiler:
After ripping out the priority code (which our game doesn't require) performance is as smooth as silk. ๐
As title states, if i create a GameObjectPool, and call .Prewarm on it, objects get instantiated, but they are not getting disabled. This makes the GameObjectPool with limited use for using on things such as rapid weapon firing, as the pool would need to get warmed up, and hence stutter while firing first rounds.
Error
INTERNAL_CALL_GetActiveScene is not allowed to be called from a MonoBehaviour constructor (or instance field initializer), call it in Awake or Start instead. Called from MonoBehaviour 'ManagedUpdate' on game object 'ServiceLocator - Multi-scene'. See "Script Serialization" page in the Unity Manual for further details. UnityEngine.SceneManagement.SceneManager:GetActiveScene() Archon.SwissArmyLib.Utils.ServiceLocator:.cctor() (at C:/jenkins/workspace/SwissArmyLib/Archon.SwissArmyLib/Utils/ServiceLocator.cs:42) Archon.SwissArmyLib.Events.ManagedUpdate:.cctor() (at C:/jenkins/workspace/SwissArmyLib/Archon.SwissArmyLib/Events/ManagedUpdate.cs:63) Archon.SwissArmyLib.Events.ManagedUpdate:.cctor() (at C:/jenkins/workspace/SwissArmyLib/Archon.SwissArmyLib/Events/ManagedUpdate.cs:58)
Error
UnityException: INTERNAL_CALL_GetActiveScene is not allowed to be called from a MonoBehaviour constructor (or instance field initializer), call it in Awake or Start instead. Called from MonoBehaviour 'ManagedUpdate' on game object 'ServiceLocator - Multi-scene'. See "Script Serialization" page in the Unity Manual for further details. UnityEngine.SceneManagement.SceneManager.GetActiveScene () (at C:/buildslave/unity/build/artifacts/generated/common/runtime/SceneManagerBindings.gen.cs:37) Archon.SwissArmyLib.Utils.ServiceLocator..cctor () (at C:/jenkins/workspace/SwissArmyLib/Archon.SwissArmyLib/Utils/ServiceLocator.cs:42) Rethrow as TypeInitializationException: An exception was thrown by the type initializer for Archon.SwissArmyLib.Utils.ServiceLocator Archon.SwissArmyLib.Events.ManagedUpdate..cctor () (at C:/jenkins/workspace/SwissArmyLib/Archon.SwissArmyLib/Events/ManagedUpdate.cs:58) Rethrow as TypeInitializationException: An exception was thrown by the type initializer for Archon.SwissArmyLib.Events.ManagedUpdate
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.