Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Synced until Revision 617 #37

Open
wants to merge 624 commits into
base: master
Choose a base branch
from
Open

Synced until Revision 617 #37

wants to merge 624 commits into from

Conversation

z3nth10n
Copy link

@z3nth10n z3nth10n commented Jan 8, 2019

New users that wants to use this wonderful package will think that is abandon, but this not true, this is developed on http://ziosproject.com/Shared/. So, go here to be updated. I only synced this and created a new release for those that didn't realized about this fact.

BradSmithee and others added 30 commits September 8, 2015 10:35
…rtain textures are further imported with NPOT disabled

• Visual Studio 2015 extension is no longer needed, as it is an integrated part of Unity 5.2

git-svn-id: http://ziosproject.com/Shared@377 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- DataMonoBehaviour. Events should now all be removed cleanly.
-- ActionLink/StateLink.  Removed improper event registers.
-- StaticInspector. Now uses EditorPrefs rather than PlayerPrefs.
-- Utility. Fixed naming issue with "On Assets Changed" event.
-- TitleField. State Window. Rebuild Table context menu option for debugging.
-- StateWindow.  Now detects StateTable changes more precisely.  Removed need for lastTarget tracking.

[EditorGUILayout]
-- Label/Toggle editor drawing will now build GUILayout options for width (to resolve display issues).  This needs to be standardized and applied to all shortcut methods.
-- DrawFoldout is now a proper extension class from string.
-- DrawFoldout now uses the applicable Draw method internally (for indention support).
-- DrawLabel should support indention once more.

[StateTable/ActionTable]
-- StateTable. Fixed file whitespace issues.
-- ActionTable. Now will scan child gameobjects for components.
-- Now inherits DataMonoBehaviour for better cohesion, less redundancy, and auto-updating capabilities.
-- "On Refresh" event is now named "On State Refreshed" for clarity.
-- Added "On State Updated" and "On State Refreshed" event calls to serve as completion states for "On State Update" and "On State Refresh"
-- Fixed callback of "On State Refreshed" to no longer call as a global event. This should resolve StateWindow updating issues.

[Events]
-- Listeners that were marked static but no longer have a method target are now caught and ignored.
-- Added EventsEditor for quickly applying debug options or viewing available listeners.
-- Listeners now support Remove function to disable and remove the listener respective collections.
-- Event removal should now be more thorough/concise and prevent callbacks to null/removed events.
-- lastEventName has been replaced with eventHistory and now tracks last 15 events.  Repeat events are incremented and not counted towards event totals.  Event history will only occur if the respective debug option is set.
-- Temporarily disabled automated event cleanup routines to see if manual cleanups are working properly.

git-svn-id: http://ziosproject.com/Shared@379 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Removed previously deprecated ActionStateFreeze component.
-- All warnings concerning Application.isLoadingLevel have now been suppressed until a solution is available.
-- Timer no longer has specific checks for StateLink usability.  This is now handled by the @external requirement.
-- StaticInspector will now attempt to load previous values from EditorPrefs (only when elements are visible in window).
-- VariableMaterialEditor once again removed from a namespace to prevent load issues.
-- EventsListener now displays "unique" checkbox column.  Listener group operations are now offset to events for performance gains (still slow).
-- MonoBehaviourEditor will no longer manually trigger an OnValidate operation for a changed property.  These should occur on their own naturally (*monitor for edge cases*)

[Extensions]
-- EditorGUILayout methods will not force GUILayout width options if the fixedWidth is zero.
-- EditorGUILayout DrawFoldout will now only set the EditorPrefs bool if a change has occurred.
-- GameObject GetPath now early-outs more quickly.
-- MonoBehaviour CanValidate will now return false if the object is null.

[Attribute System]
-- Attribute dirty states are no longer delayed (*monitor for need*).
-- AttributeDrawer now caches sorted attributeNames listing for performance gains.
-- AttributeData will no longer add unnecessary default DataMonoBehaviour Awake events.  Monitor for need of ValidateParent call.
-- AttributeManager and Events now call their Build operations "On Scene Load" as well to ensure consistent existence.

[Utility]
-- EditorDelayCall will no longer add a method that already queued up.
-- DelayedMethods are now stored by assignable key rather than simply by method definition.  This allows unique anonymous methods to exist to prevent extraneous calls.
-- Delayed methods can now be added even while a set of delayedMethods are calling.
-- SetDirty no longer attempts to call in play mode.
-- Skip first IgnoredHierarchyChanged variables/check has been removed (*no longer necessary?*)
-- Added 1 second cooldown to OnHierarchyChanged event to prevent duplicate callbacks.
-- GetInspectorScrollPosition has been simplified to GetInspectorScroll.  Added overload that requires no rect.

[Target]
-- Removed [Owner], [Action], [ActionLink], and [StateLink] special targets.
-- [State] now represents the current component's gameObject.
-- [Controller] now represents the gameobject that controls this component.
-- [ParentController] now represents the gameobject that controls this object's controller.

[Events]
-- Disabled is now an enumeration mask rather than a bool.  Add or Call operations can be disabled separately.
-- Listeners now support the unique bool to allow only a single listener to exist by name at a particular scope.
-- Listener.Remove is now more conscious of its cleanup.
-- Events now support cooldown.  Cooldowns are issued by name/scope and block event calls during the time.
-- Implemented Events.stack to ensure more than 1000 events don't queue without close (will later extend for self-referential cyclic loops).
-- Added "On Events Changed" event call after events have been added/removed.
-- Restructured Events.Call to prevent duplicate checks/log messages.
-- GetTargetName should more accurately retrieve attribute names.
-- GetMethodName refactored to reuse code.
-- Added DelayEvent and CooldownEvent extensions to objects.

[State System]
-- Completely removed ActionReady, ActionLink, StateLink, and ActionTable classes.  These have been simplified as StateMonoBehaviour and StateTable.
-- Added StateUpdateHelper to help with moving existing tables to the simplified system.  Please use Zios->Process->States->Repair (GUID) before instancing prefabs and then the "Copy Data" and "Remove Deprecated" after the prefab has been instanced to preserve all table data.
-- StateMonoBehaviour. Now integrates behavior and variables from ActionLink and StateLink.

[StateTable]
-- Now stores references to the table's "@Active" rows (the table itself).  This replaces the former "@ready" column ActionReady component in terms of functionality. 
-- The table is now a StateMonoBehaviour in itself and will appear in other tables.
-- The table alias is either the gameObject name or the parent's name (if the current gameObject is named "Main")
-- All tables are now refreshed simultaneously (order of deepest depth first to highest depth) OnHierarchyChange events.  This sorting order ensures that component's have their controller set correctly.
-- Tables will refresh on either Global Hierarchy changes or gameobject Component changes.
-- UpdateTable now correctly uses the @external requirement as based from the current "external" bool.  This is what is set in cases where a table is controlling another table.  Controlled tables will be updated when this value has changed.
-- RepairUnmatched (formerly RemoveUnmatched) now will attempt to id and target attribute issues.
-- RemoveDuplicates will now remove any entries that happen to have two table self references, but different name values (i.e : @Active and <name>).
-- UpdateRequirements will now automatically add @external requirement columns if the table has a controller.  These default as requireOn for the use table, but are not set on the end table and must be manually controlled.
-- UpdateStates will no longer call while not in play mode.
-- UpdateScripts is now a more thorough operation that will deep scan the current hierarchy and stop only when [a] a non-self StateTable is found or [b] a set of StateMonoBehaviours are found.  This allows StateTables to be nested infinitely and control one another as need be.

[State Window]
-- BuildTable now builds headers based on actual requirement data rather than assumed scripts.
-- GroupLabelField. Row visibility now refreshes after collapsing/uncollapsing a group.
-- GroupLabelField. Adjusted group label selection to respond more accurately in situations.
-- HeaderField. First field area no longer has a hover state.
-- LabelField. Context click now responds more immediately when a row is not selected.
-- LabelField. Names are now based on row names rather than script alias'.
-- StateField. Ensures the @external requirement is only visible when the table is set to manual control.
-- TitleField. Allows toggling of manual state.

[DataMonoBehaviour]
-- Now uses a setup bool to prevent OnDisable, OnEnable, OnValidate, and CheckDependents from calling before the object has initialized.
-- Now stores a parentPath & self location string for usage as unique delayed event keys.  These delayed events should help prevent event redundancy in many cases that are called on the same scope by different components.
-- OnValidate now triggers an "On Components Changed" call.


git-svn-id: http://ziosproject.com/Shared@380 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Fixed multiple editor-only compile script issues.
-- Relocated several folders to better describe their focus.
-- Utility.  OnEditorUpdate events no longer call in play mode.
-- AttributeManager.  Editor-specific events no longer call in play mode.
-- Events.  Editor-specific events no longer call in play mode.
-- StateTable.  Tables no longer refresh in play mode.  This solves the initial loading hiccup issue.

git-svn-id: http://ziosproject.com/Shared@382 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Target boxes should once again refresh upon change.
-- Target now only adds special keywords while in editor.
-- AttributeDrawer. Added existence check on id to prevent errors in some cases.
-- StateTable. Will now skip null scripts while processing during Step.
-- StateTable. Repair/Remove operations now pass the list by reference to ensure changes have impact. 

git-svn-id: http://ziosproject.com/Shared@383 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- ShaderGlobalSettings.  Corrected Stepper method target.

git-svn-id: http://ziosproject.com/Shared@384 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- MaterialCleaner.  Rewrote to use a sequential Stepper event rather than hanging during execution.
-- VariableMaterial.  Refresh Material operations now ensure Distinct/Unique materials exist.
-- Events.  Moved Shortcut delegates to Events file for better encapsulation.
-- FileManager.  GetAsset will now result null if an asset is not found rather than attempting to build FileData and failing.

git-svn-id: http://ziosproject.com/Shared@385 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- VariableMaterialEditor. Now based on ShaderGUI (fixes issue with namespaces as CustomEditors.
-- Attribute.  Now does an extra sanity check on attribute data before attempting to getFirst element.  Issues message and returns null if not available.

git-svn-id: http://ziosproject.com/Shared@386 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Fixed versioning of all meta files.

git-svn-id: http://ziosproject.com/Shared@387 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Additional versioning fixes.

git-svn-id: http://ziosproject.com/Shared@388 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- DataMonoBehaviour. CheckDependents operations should now more accurately reflect the dependency state.
-- ManagedMonoBehaviour. GetTimeOffset will now properly use fixedDelta on Default update rates.
-- InputHeld. Renamed setup to ownerSetup to prevent inherited field conflicts.
-- InputPressed. Should now properly last one update tick.
-- Play3DAnimation.  Speed/Weight are now [Advanced] fields and default to -1 (no change).
-- AnimationSettingsEditor. Now properly updates prefab (SetDirty) on changes.
-- AttributeGameObject.  Early outs on null (non-initialized) data to prevent errors.
-- Target. Now re-performs searches on hierarchy changes. 
-- Target. Search will now early out when not called while not in Search mode.
-- TargetDrawer. Changes to target field will now call "On Validate" event of target's parent as well as update prefab (SetDirty).
-- MonoBehaviourExtension. CanValidate uses extra EventDetector.loading check to ensure scene changes aren't occurring.  Rewritten for clarity.
-- Utility. SetDirty operations on a null target will always fail (even if forced).
-- Events. Cleanup is no longer called in play mode (still does not resolve script update issues).
-- Events. DelayEvent extension now correctly adds the event name to the key for a unique fingerprint.
-- FileManager. Several options have been excluded to editor only to solve Web build not having the methods in its IO namespace.
-- VariableMaterial. Flatten is now an editor only operation.

[AttributeDrawer]
-- Now properly updates prefab (SetDirty) on changes.
-- Now correctly calls "On Validate" event on data that has changed.
-- Search mode set AttributeGameObject paths will no longer assume value is Target mode.

[StateWindow]
-- HeaderField. Now colorized based on "external" value.
-- StateField. Changes will now manually call table's UpdateStates method.
-- TitleField. Context menu changes will now update the prefab (SetDirty).
-- TitleField. Added support for Update mode switching.
-- StateWindow. Mouse movement is now respected in play mode also (hover updates).
-- StateWindow. Fixed bug where advanced table indexes were not reset when the target changed (resulting in an empty table).

[StateMonoBehaviour]
-- The "inUse" field has been renamed to "active" for consistency/clarity.
-- "Once" occurrence now use proper "dirty" controller marking rather than a forced event call.
-- Controller checks for "Enabled" state broadly rather than just not being null/assigned.

[StateTable]
-- Added alternative update mode. Default update behavior is "Delayed". Alternative is "Instant". In this mode, UpdateStates calls happen as soon as any state has changed rather than queuing them up for once-per-frame updates.
-- External is now turned on at initialization regardless of serialized state.
-- Delayed Apply operations only applied if the new state does not match the "used" state.
-- UpdateStates are now also called when the global RefreshTables operation calls.
-- Renamed UpdateTable "negative" parameter to "endTable" to better describe its meaning.
-- UpdateTable will now assume default "external" controller behavior if manual mode is off.
-- Removed "RemoveEmptyRows" and "RemoveEmptyAlternativeRows" methods to make room for better serialization of state data in the future.
-- Table rows are now organized by name rather than target alias.

git-svn-id: http://ziosproject.com/Shared@389 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Converted most cases of 4 spaces to a tab.
-- Marked many static members as private or [NonSerialized] to prevent serialization.
-- Many static classes no longer uses Prefs storage now that serialization exists.
-- EnumMaskDrawer. Now applies modified properties (since Unity serialized data was changed manually).
-- TargetDrawer. Now calls a delayed OnValidate event if the target's parent is a DataMonoBehaviour. 
-- TargetDrawer. Now marks the prefab dirty.
-- DataMonoBehaviourEditor. Now repaints on "On Validate" events.
-- MonoBehaviourEditor. No longer attempts to pause delayed editor events while sorting defaults (monitor for need).
-- AttributeData. Attribute parent's "On Validate" call is now delayed for less overlap.
-- AttributeDrawer. "On Validate" call is now delayed for less overlap.
-- Shortcuts.  Inserted contents into namespace.
-- Serializer. Should now save and load basic static types more consistently and automatically.
-- Utility. Fixed typographic error on event call for assets changed.
-- Added preliminary SweepCast component as a raycast alternative for performing a sweep using a rigidbody.

[Events]
-- Separated EventListener and EventStepper to unique files for cleaner management.
-- Standardized EventsBooter as EventsHook to separate editor-only behavior.
-- ObjectExtension.DelayEvent now separates key and event name with a slash.
-- Moved Events.Setup to Events.Awake for better clarity.
-- Moved Events.Build to EventsHook.Setup.

[ObjectExtension]
-- StaticFlags constant no longer includes private members.
-- GetVariables now can filter results by ignoring variables with certain attributes (remove support and use LINQ filter as needed?)
-- Removed IsType extension.  Largely unnecessary as "is" keyword does the same.

git-svn-id: http://ziosproject.com/Shared@392 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Removed existing editor templates.
-- Removed old BootSettings component.
-- AnimationSettings. Simplified editor to no longer use list sorting and templates.
-- Attribute. Once again properly serializes its info data.  This will fix the numerous attribute data being lost.
-- AttributeData. Renamed Validate method to Purge for better clarity of functionality.
-- AttributeData. No longer validates parent when Purge occurs.
-- AttributeData. OnValidate will now trigger Purge and parent OnValidate call.
-- AttributeManager. Standardized hook static class.
-- DataMonoBehaviour. Reset/Enable/Disable/Destroy events should no longer trigger during load or play mode changes.
-- EditorFPSEDitor.  No longer triggers an event call error when gameObject is deselected.
-- EventListener. Now has "true" default values for SetPaused, SetPermanent, and SetUnique.
-- EventListener. Fixed potential failed check on cache[events.all].
-- Events. Standardized hook static class.
-- Events. Added special delayed add operations so events added before system initialized aren't lost.
-- Events. Reworked Call debug structure to provide more helpful/precise feedback based on options.
-- EventsDetector. Now catches and marks loading operations more accurately.
-- FileManager. No longer exposes many internal static collections.
-- StateTable. Now catches null components while refreshing tables (necessary sanity check?)

[Serializer]
-- Standardized hook static class.
-- Should more appropriately load/save static members automatically as well as add/remove .static files as need be.
-- Added BuildDetailed, LoadDetailed, and SaveDetailed debug options for a more verbose feedback of the operations.

[Extensions]
-- Array. Now supports HasAny, HasAll, ContainsAny, and ContainsAll for checking for existence of a specific or set of values.
-- Enum. HasAny and HasAll now uses Matches operations internally.
-- Enum. MatchesAny and MatchesAll now properly split by keyword and won't return incorrect partial matches.
-- List. Removed Sort operations.  Use Linq extensions instead.
-- String. Now supports ToContent for returning a GUIContent.
-- String. TrimLeft and TrimRight now support multiple values and will now properly trim more than a single character.
-- GUIStyle. Now supports CreateLayout extensions for returning GUILayoutOption array based on style specifications.
-- Rect. Clicked method will no longer automatically apply a cursor on checking.

[Utility]
-- Added proxy methods for AssetDatabase.ImportAsset and AssetDatabase.DeleteAsset.
-- Added IsBusy method for quickly checking if scene is loading or mode is changing using a variety of approaches.
-- "On Editor Update" events are once again allowed while in play mode (to allow certain methods to work correctly).

[EditorGUI/EditorGUILayout]
-- UnityLabel now supports ToContent for returning a GUIContent.
-- Draw (list) now correctly spaces when no label exists.
-- DrawVector4 now correctly spaces when no label exists.
-- Added commented-out dummy overloads to appease Visual Studio's lack of implicitly typed extensions.
-- Draw operations requiring layout fixes are now generated via style's CreateLayout method.
-- DrawAuto operations for UnityObject generic types are now explicitly typed to fix compiler confusion.

git-svn-id: http://ziosproject.com/Shared@394 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
…e default as Instant causes impractical logic flow.

git-svn-id: http://ziosproject.com/Shared@395 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Attribute. ID Conflicts are now mentioned in the log when AttributeDebug.Issue is active.
-- StaticInspector. Current namespace/type/assembly are now marked static for serialization.
-- Serializer. Static strings are now properly serialized.
-- Serializer. Load operations have better type checking beyond just the current assembly.
-- Serializer. Added debug support for SaveType.
-- Utility.  Moved Object.LoadType as Utility.GetType as it did not rely on an instance value.
-- Locate. Now properly ignores null objects when filtering siblings.
-- EventListener. SetUnique now only adds the listener to the Events.unique collection when the state is true.
-- Events. Serializer. AttributeManager.  Re-structured hook classes for more consistent behaviour.
-- Events. Renamed Validate and ValidateAll methods to Verify and VerifyAll for less confusion with Unity's validate operations.
-- Events. Fixed delayed event adds to preserve unique/permanent flags.
-- FileManager.  No longer marks some operations as editor-only (specifically for deprecated Web builds)

git-svn-id: http://ziosproject.com/Shared@397 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
…g line endings and some whitespace issues.

-- Applied the aforementioned to all existing code files.

git-svn-id: http://ziosproject.com/Shared@398 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
… reading.

-- InputPressed now supports 'manual' intensity float to override button reading.

git-svn-id: http://ziosproject.com/Shared@400 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
…nt null callback.

-- EventListener. Provides more verbose feedback when a null event issue occurs.

git-svn-id: http://ziosproject.com/Shared@401 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Removed formerly deprecated ActionState component.
-- Fixed several editor MenuItem paths to be in the appropriate Zios space.
-- DataMonoBehaviour. Same alias components are now letter sequenced.
-- AttributeBox. Generic form now inherits from a neutral base form for easier handling.
-- Utility.  The Destroy method now early outs in cases where the target is null or where a passed Component's GameObject no longer exists.

[Extension]
-- String. Now supports ToLetterSequence for now mapping a sequential alphabet pattern to string names.
-- Type. Added IsSubclass method for checking if type is based on a specific type (even in cases of generic-only types).
-- Component. GetPath now returns Null in cases where the Component or GameObject no longer exists.

git-svn-id: http://ziosproject.com/Shared@402 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Cleaned several unneeded namespaces in files.
-- DataMonoBehaviour. Renamed 'location' to 'path' for term semantic consistency across classes.
-- DataMonoBehaviourEditor. No longer calls repaint after "On Validate" events.
-- Target. Cleaned several redundant local variables/checks.
-- TargetDrawer. Decoupled Draw operation as a static call to allow easier global callback. (move to Target.Draw extension?)
-- StringExtension. ToVector3, ToInt, ToFloat, ToBool, and ToColor now have early outs in the event of an empty string being passed.
-- Events. Fixed issue with AddEvent in which duplicate events could be added in some situations.

[AttributeManager]
-- Now calls AttributeManager.Refresh operation when AttributeManagerHook resets.
-- Removed 'RemoveVisibleData', 'HideAttributeData', and 'ShowAttributeData' menuItem methods as these MonoBehaviour components no longer exist.
-- Added Refresh method that allows specification of amount of delay before an AttributeRefresh occurs.
-- PerformRefresh now defaults to 0 seconds rather than 1 (monitor for sluggish behaviour)
-- Removed stage 1b during StepAwake in which AttributeData were Purged if no longer valid as the data is now always valid due to being serialized inline cleanly.
-- Removed debug messages relating specifically to AttibuteData.

[AttributeDrawer]
-- No longer passes/changes SerializedProperty/SerializedObject values directly. Presently lacks undo support on AttributeData fields as a result of this.
-- Now correctly calls serializedObject.Update after changes made to ensure data is synced.
-- Now uses a static version of TargetDrawer's OnGUI method to prevent the need for SerializedObject reliance.
-- Properly clears AttributeNames storage after changing from a value that has values to one that does not.
-- Centralized when/where update changes are made.

[AttributeInfo]
-- Added fullPath field for tracking absolute path in the hierarchy. (the other 'path' field is relative)
-- Added tracking of parent Attribute (editor only).
-- Added Contains methods for checking for existing of AttributeData. 

[Attribute]
-- Removed unused properties/fields/methods : length, target, editorStart, Clear.
-- GetFirst method now returns actual DataType rather than pre-boxed one.  Removes need for GetFirstRaw method.
-- AttributeData are now serialized inline rather than referenced.
-- As it is not a serialized type, info.type is now manually set regardless of editor/play mode.
-- FixDuplicates and FixConflicts is no longer called while switching between editor/play mode.
-- FixDuplicates method now ensures duplicate Attribute names do not exist in the same scope.
-- Removed RepairData method as AttributeData component validation no longer necessary.
-- Removed AddScope method to as Attributes should have a single defined scope by design.
-- AttributeData rawValue is now Serialized to a string when changes occur.
-- AttributeData rawCalue is now Deserialized from a string when Attribute is set up.  This operation takes the downcast AttributeData and re-instances the proper upcast type for use.

[AttributeData]
-- No longer based on MonoBehaviours. All related dirty/initialization/destruction data and methods have been removed.
-- Now uses 'rawType' string field to store the fully qualified namespace path to the AttributeData type used.
-- Now uses 'rawValue' string field to store a serialized version of the actual data value from the generic AttributeData type.
-- Added Serialization method to each AttributeData data for appropriate ToString conversion.



git-svn-id: http://ziosproject.com/Shared@403 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Process. Added AttributeDataHelper script.  This has 3 functions.  [1] Convert existing serialized data/dataB/dataC values to intermediary container. [2] Copy old data to new format.  [3] Remove old data.  The first operation needs to be run on an empty scene before prefabs/scenes are opened/saved.  The other two need to run while the prefab/scene is open.  If the previous commit has been applied, you may need to delete your AssetDatabase before beginning for these to work correctly.
-- Scripts. Added OldAttributeData equivalents based on DataMonoBehaviour to help transition old data. Each OldAttributeData uses the meta data from the previous AttributeData setups to preserve scene linkage to the component.
-- Attribute. Added oldDataA/oldDataB/oldDataC as buffers for old serialized values.

[Attribute]
-- GetFirst now ensures that data is prepared in cases where Setup may not have yet been called.
-- Deserialize will now exit gracefully with a warning if no rawType exists in a particular data.

[General]
-- Added FpsConsole component for basic framerate measuring.
-- Action prefabs have been updated to reflect changes (these will need scene fixes also before operational).

git-svn-id: http://ziosproject.com/Shared@404 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
BradSmithee and others added 21 commits March 12, 2018 21:18
-- All asmdef files are now disabled by default.  At the present time, these will only be used when distributing/deploying parts of the system as separate and standalone dlls.
-- AsmDef Enable/Disable scripts now use SVN rename rather than a system rename.
-- `Editor FPS` component folder renamed to `FPS Editor` to avoid accidentally Unity "Editor-only" catches.
-- Renamed existing `Serializer` to `StaticSerializer` to better reflect its purpose/functionality.
-- Added work-in-progress `MeshData` component[s] to handle retrieval/caching of important mesh data such as lists and properties of vertex, normal, triangle, and edges. 
-- Added work-in-progress `Serializer` class as a future alternative to Unity serializer.
-- Added `MeshWrap` class for accessing, caching, and storing Mesh data outside of Unity-specific types/methods.  Includes `GetMeshWrap` extensions for Mesh/GameObject/Component.
-- AnimationSettings. `-` and `+` blendShape sliders no longer require specific export orders.
-- ProgramManager.  Separated properties for vsync and refresh rate.
-- EditorGUILayout. Renamed `DrawMask` method to `DrawMaskField` to distinguish functionality better.
-- EditorGUILayout. `DrawFields` method now supports displaying specific reflected binding flags.
-- Log. Added `Group` method for delaying display of specific entries until a certain group key is shown.
-- Time. Revised `Start` to be based on a singular internal stopwatch instance. 
-- Time. Added `Check` to get current elapsed time from internal stopwatch instance.
-- Console. Added `disable` static field for globally disabling Console functionality.
-- Events. Placed `Repair` anonymous method to a dedicated function.

[File]
-- Renamed `WriteFile` static method to a more terse `Write`.  Overloaded to support passing of bytes, string, or an array of strings (lines).
-- Added `ReadBytes`, `ReadText`, and `ReadLines` static methods for retrieving data from a path in various forms.
-- Added `AddNew` static method to either find or create a specific path/file.
-- FileData. Renamed `Get` file methods to `Read` to match static shortcut methods.

[Reflection]
-- Fixed issue where `GetMethods` was storing methods by name.  This prevented overloaded methods from being detected.
-- Added `declaredFlags` and `allDeclaredFlags` that include BindingFlags.DeclaredOnly. This will ensure only the specific target's fields/methods are reflected (discluding those that are inherited).
-- Added `GetGenerics` method for retrieving generic arguments from a specific object/type. 
-- Added overloads for `GetVariables` that do not require passing `withoutAttributes` array.
-- Rewrote `GetAttributesVariables` to correctly retrieve fields with specific matching attributes.

[Extensions]
-- All `Serialize` extension methods now have the option for ignoring default values.
-- SerializeAuto/DeserializeAuto methods now allow passing of separator term.
-- Array. Optimized `Resize` method to provide resized array more quickly.
-- Float. Added `Divide`, `Subtract`, `Add`, and `Multiply` operations for performing basic math operations between each element in two float collections.
-- Object. Added `IsEnum`, `IsArray`, `IsList`, and `IsDictionary` methods for determining type of object. 
-- Object. Added `AsType` for getting the current type of the object (or returning itself if it is already a Type).
-- Object. Added `Default` proxy for returning `default(Type)`.
-- String. Added `ToEnum` for converting string to a specific Enum type.
-- Delegate. Renamed `Add` method to `AddNew` for better functionality clarity.
-- StringBuilder. Added `Append` and `Prepend` inline methods for quickly adding any number strings to the beginning or end of a StringBuilder.

[Worker]
-- Now correctly returns useful stacktrace information about thread errors/exceptions.
-- Added `Worker.mainThread` static field to always point to the initial thread of the program.
-- `Worker.Create` no longer automatically will build/start the worker.
-- `Worker.Create` methods now have fewer parameters passed and rely on parameter keywords.

[Worker Extensions]
-- Added `OnStep`, `OnEnd`, `Threads`, and `Async` flag methods for setting previous worker parameters.
-- Added `Monitor` flag method for marking a worker as asynchronous, but also managed by a monitor check each frame (to allow async support for Handoff)
-- Added `Group` flag method for marking a worker as part of a distinct keyed group.
-- Added `Quit` flag method for ending a worker prematurely.  `Worker.Quit` static method may also be passed on an entire worker group.
-- Added `Finalize` flag method for determining if a worker will call its end function if prematurely quit.
-- Added `Build` method for initializing and starting worker threads.  Automatic/Dynamic thread counts should more correctly utilize number of available threads.

[Unity Extensions]
-- GameObject. Added `Destroy<Type>` and `Remove<Type>` methods to removing a component inside the gameobject.
-- GameObject. Added `Has<Type>` and `Get<Type>` shortcut proxy methods for `HasComponent<Type>` and `GetComponent<Type>`.
-- Component/GameObject. Added `Destroy` and `Remove` methods for removing the current object.
-- Component/GameObject. Added `GetMesh` and `GetMeshes` methods for locating mesh/meshes that the target object contains in its children.
-- Component. Added `Get<Type>` method as a proxy to `GetComponent<Type>`.
-- GUIStyle/Rect. Added `Center` method for centering coordinates based on Screen.width and object width.
-- Mesh. Revised `Copy` method to better handle copying all mesh features intact.
-- SkinnedMeshRenderer. Added `ResetBlendShapes` for zeroing out all renderer blendshape values.
-- Vector3. Added `Divide`, `Subtract`, `Add`, and `Multiply` operations for performing basic math operations between each element in two Vector3 collections.
-- Vector3. Added `Distance` for returning the distance between each element in two Vector3 collections.

[MeshSource]
-- Now caches results based on target GameObject provided.
-- Now searches for components in children as well.
-- `GetMesh` method now offers 'baked' flag for skinnedRenderers for baking the current animation blendshapes/skeleton frame into the mesh before returning.
-- Revised `MeshSource.Get` method can now can return null (via exists bool).
-- Added `MeshSource.GetAll` for returning *all* children that have a mesh source.
-- Added `GetMeshSource` and `GetMeshSources` extensions for GameObject and Component.

[MeshOperations]
-- Created as editor (`Zios > Window > MeshOperations`) to house various vertex, normal, and edge manipulation/viewing operations.
-- Allows displaying of selected mesh vertexes as well as vertex overlap between different objects.
-- Allows `Right Click > Split > Blend States` on gameobjects to separate a mesh as snapshots of its individual blendstates.
-- Allows `Right Click > Merge > As Blend States` on gameobjects to combine multiple same vertex count/id gameobject meshes as unique blend states.

git-svn-id: http://ziosproject.com/Shared@599 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Began switching instances of `Time.Get()` to `Time.Start()` for better non-Unity-dependent code.
-- Inlined all existing `Worker.OnStep()` anonymous methods for more terseness.
-- Events. EventDetector initialization is now performed outside of Event's static constructor to avoid warnings.
-- File. Renamed `GetPath()` to `GetAssetPath()` for better return type/usage clarity.
-- Time. Added `Passed()` to perform a `Time.Check()` on the active stopwatch while also appending "seconds" term.
-- MeshOperations. Added debug bool for feedback performance messages.
-- Themes. Texture updating/creation no longer requires manually re-writing to disk or re-importing.
-- ThemeSystem. Removed and revised many unused internal fields for improved purpose.
-- Worker. Fixed issue where concurrent threads could sometimes skip entries due to non-locked execution step delegate.
-- Worker. Added `WorkerCall` type for simple asynchronous method calling until false is returned.

git-svn-id: http://ziosproject.com/Shared@600 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Removed asmdef meta files.
-- Replaced instances of `UNITY_THEMES` with `ZIOS_MINIMAL` compile flag to offer broader use.
-- Most project MenuItem are no longer included is `ZIOS_MINIMAL` flag is specified.
-- Undo. RecordStart/RecordEnd now allow passing of any object (not just static types).
-- EditorGUI/Layout. DrawMaskField syntax now branched based on Unity version.
-- IEnumerable. Added `ToBitFlags` extension to convert a collection to a packed int bitflag based on position of each item and passed bool predicate.
-- Mesh. IndexFormat now only copied in newer versions of Unity's (as it did not exist in previous ones).
-- Singleton. Singleton's are no longer automatically generated if they do not exist.  This must be done via the `Zios/Singleton/Create All` menu item.
-- Singleton. Now allows code-specifiable storagePath when creating rather than forcing `Asstes/Settings` folder.
-- Singleton. Asset file names now use type name rather than full namespace notation.
-- EditorEvents. Moved direct `Unity.Call.CheckDelayed` hooks as `On Editor Update` events in `CallEvents.cs`
-- ProxyEditor. Added `AddModeChange` and `RemoveModeChange` for direct manipulation of `EditorApplication.playModeStateChanged` in multiple Unity versions.
-- Worker. Started support for `Stepper` flag. This marks a worker as `Monitor`, sets `Threads` to 1 and wraps all steps inside a `Worker.MainThread` call to simulate `Stepper` class behavior from a separate thread.

[Console]
-- Moved skin/material/image assets to `Appearence` subfolder.
-- Console. Moved `OnValidate` setup process inline to `OnEnable` due to singular call.
-- ConsoleConfigs. `LoadConfig` now relies on File methods rather than direct C#.

[Themes]
-- ThemeSkinset. `Dump/GUISkin` menu items are now placed under the `Dump/Active` subfolder to better reflect their functionality.
-- ThemeWindow. Simplified EditorWindow creation/destruction.

[ThemeSystem]
-- Removed several events used for managing the ThemeWindow.
-- Singletons used by the themes are now stored in the `Theme/Settings` subfolder if deployed with `ZIOS_MINIMAL` flag.
-- Renamed `needsVariantUpdate` to `needsVariantReset` to better reflect functionality.
-- Variant menu in Preferences is now displayed as a mask toggle dropdown rather than a foldout for better exposure.
-- Fixed several undo operations from theme setting changes.
-- RecordAction now allows passing of an optional undoCallback.
-- Standardized all `needs` bools as method sets for easier event/undo callback.

[.Solutions]
-- Moved Unity-version-specific dlls to `Versions` subfolder.
-- Replaced old compile bat files with `Compile Themes` python script (work in progress)
-- Updated `CSProj Unifier` to remove and restructure some additional content.

git-svn-id: http://ziosproject.com/Shared@602 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
…syForms` to properly enable.

-- Updated Default GUIContent iconsets to Unity 2017.3.1 defaults.
-- Updated Default.guiSkin skinset to Unity 2017.3.1 defaults. 
-- Added Simplicity `SelectionRect` GUIStyle and assets for editor window selection box display.

git-svn-id: http://ziosproject.com/Shared@603 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
…y Proxy and ProxyEditor

git-svn-id: http://ziosproject.com/Shared@604 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
…ctWindowChanged has been changed to ProxyEditor.ProjectChanged() and ProxyEditor.HierarchyChanged

-- ProxyEditor.RegisterSceneUndo has a first parameter that takes the current Object, which is being ignored in pre-Unity 4.3 builds
-- Currently ConvertBitStream class is available/usable only if it's not on the IL2CPP scripting backend and on older than Unity 2018.2 builds

git-svn-id: http://ziosproject.com/Shared@605 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Fixed whitespace/typos in several utility shaders.
-- Added unfinished classes for `Reference`, `Variable`, and the `MeshSmooth` system.  These may be removed at a later date.
-- MeshOperations. Changed `RefreshDisplay` to `RefreshSceneView` to better describe its operation.
-- Megashader. Default values for parameters adjusted to be more immediately usable.
-- Worker. Build behavior now treats 0 or less threads to match thread limit.
-- ZiosInspector. Now more closely mirrors default Unity Inspector window.
-- ProxyEditor. `HierarchyWindowChanged` method changed to `HierarchyChanged` for consistency.

[ThemeSystem]
-- Added GDot Palette as new theme system default.
-- ControlLabel active/hover style in Simplicity now uses `Text` color rather than `TextBorder`.
-- Preferences. Combined Colors expansion and context menu to be grouped under Palette.
-- Preferences. Combined Fonts expansion and context menu to be grouped under Fontset.

[UI]
-- Moved several members into other UI files for better grouping.
-- UI. EditorMenu items starting with `/` are now automatically converted to separators.
-- EditorGUILayout. Added `DrawLabel()` overload that allows overriding of the label value.
-- EditorGUILayout. Added `DrawPrefix()` to use a label as a PrefixLabel.
-- EditorGUILayout. Renamed `DrawMaskField()` to `DrawFlags()` for better clarity with newer Unity API.
-- EditorGUILayout. Added `DrawFlags()` overload that accepts a string collection and bool collection (for active state).
-- EditorGUILayout. Added `PadStart()` as shorthand to set label size, start a horizontal layout, and add padding.
-- EditorGUILayout. Added `PadEnd()` as proxy to end a horizontal layout.
-- EditorGUILayout. Added `LabelStyle()` to change the label style for the next drawn element.
-- EditorGUILayout. Added `LabelToggle()` to create visuals for a label with a foldout based on a particular key name.
-- EditorGUILayout. Added `LabelToggleEnd()` handles click behavior on a labelToggle.  Returns open state.
-- EditorGUILayout. Adjusted `SetFieldSize()` to properly use nextOnly bool parameter.
-- EditorGUILayout. Added `SetSpace()` as a proxy to EditorUI.space.

[Extensions]
-- Array. Added `Append()` proxy method for `Array.Add()`.
-- Array. Added `Prepend()` method to create a new array with the element added at the beginning.
-- GUIStyle. Added `Copy()` method to duplicate current GUIStyle.
-- List. Added `Unshift()` to automatically insert an element to the beginning of a list.
-- IEnumerable. Added `Map()` to pass each value from two different lists to a method.
-- Convert/Int. Added `ToFlags()` to convert an integer (bitmask) to an array of bools.
-- Convert/IEnumerable. Added `ToBitFlags()` proxy to convert bool IEnumerable<bool> to bitflags.

git-svn-id: http://ziosproject.com/Shared@606 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Updated meta files to use `sRGBTexture` flag for proper appearance in Unity 2018.
-- Renamed `UnityEditor.TimeArea.styles` to `UnityEditor.TimeArea.timeAreaStyles` to match new Unity 2018 naming.


git-svn-id: http://ziosproject.com/Shared@607 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Meta files updates to Unity 2018.2.2f1.
-- All import warnings should not be suppressed/hidden for the time being.
-- Added unfinished `Data`, `DataController`, `LogicController`, and `State` classes.
-- Fixed several whitespace issues in recently committed files.
-- InitializeOnLoad. Reworked attribute to manually call static class constructors that are marked (even outside UnityEditor).

[Reflection]
-- Added `FindTypes()` to automatically scan loaded assemblies and build an overall list (`Reflection.types`) and keyed (`Reflection.namedTypes`) collection. Use `GetNamedTypes()` and `GetTypes()` methods to retrieve.
-- Fixed `GetSubTypes()` to properly retrieve inherited classes of a type.
-- Fixed `GetType()` to properly retrieve a class by its qualified `type.FullName` string.
-- Simplified `CallPath()` to rely on new `GetTypes()` operations.
-- Added `HasAttribute()` to check if an object has a specific C# Attribute (by string name or Type).
-- Modified `ListAttributes()` to allow passing no string to retrieve all attributes of object.

git-svn-id: http://ziosproject.com/Shared@608 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
…Themes within Theme.cs file

-- Updated theme texture assets .meta files to Unity 2018.2.2f1 basis

git-svn-id: http://ziosproject.com/Shared@609 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Added missing references to Zios.Reflection namespace for EditorGUILayout for proper non-editor compilation

git-svn-id: http://ziosproject.com/Shared@610 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
…type in non-editor environment fir EditorGUILayout

-- Added Unity Package Manager manifest file (package.json) into the root folder for testing purposes

git-svn-id: http://ziosproject.com/Shared@611 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Storage path now discovered based on the directory of `Default.unitytheme`.
-- Will now correctly disable if `Default.unitytheme` is not found.

[General]
-- File.  Now scans and sorts `Packages` project folder.
-- StringExtension.  GetAssetPath() now recognizes and correctly paths files in packages.
-- ProxyEditor. Fixed empty `AddModeChange` method when used outside Unity editor.

git-svn-id: http://ziosproject.com/Shared@612 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
…to a larger array, and copying the elements from the smaller array.

git-svn-id: http://ziosproject.com/Shared@613 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- ThemeSystem. Removed ZIOS_MINIMAL conditional to put `Settings` files in Themes folder when deployed as standalone.  This should no longer be needed as future versions can be deployed as a Package.
-- ThemeWindow. Moved repaint call from `OnGUI` to `ShowWindow` to solve Unity skipping operation while popup/dropdown menus are open.

[General]
-- Array. Resize operation changed to internally rely on C#'s standard Resize method.

git-svn-id: http://ziosproject.com/Shared@614 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
-- Standardized EditorPref path names for better grouping.
-- Changed default Simplicity.unitytheme variants and palette.
-- Added Roboto fontset.

git-svn-id: http://ziosproject.com/Shared@616 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
…in ProxyEditor

-- SpriteWindow and Operations now references to ProxyEditor PrefabUtility methods

git-svn-id: http://ziosproject.com/Shared@617 ee7e34eb-f0ec-4b85-9eae-efee4cd27b06
@z3nth10n z3nth10n changed the title Updated to r617 Synced until Revision 617 Jan 8, 2019
@CuteWaterBeary
Copy link

CuteWaterBeary commented Aug 21, 2023

The site is down...

Edit: apparently it is abandoned: #39

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants