KDahir247 / UnityTechDemo

Self-teaching on some of the unity's packages and some other plugins. See Read Me

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

UnityTechDemo

Self teaching on some of unity's packages and some other plugin. (Ongoing)
(Going to do more ECS/DOTS Studies and the new input system Studies before working on those features)
Project will now follow the Agile Methodology (UI might bypass some test.)

Unit-Test -> Performance Test -> Integration-Test -> (Optional) Memory-Test alt text


Current Kinematica Package Caveats:
Can't Disable and Re-Enable GameObject with Kinematica or it will throw an assert exception on the SnapShot script and registry script
Can't change binary reference on Kinematica. It will not update Kinematica.
Not fully integrated with DOTS.
Animation must be generic and can't be anything else.

Unity Packages using: Addressables, Burst, Cinemachine, Collection, Entities, Jobs, Kinematica, Mathametics, unity physics, havok physics, and Shadergraph, Universal RP, Device Simulator, Cinemachine, Hybrid Renderer, UI Builder, UI Toolkit and many more look a manifest for full list of packages used.


Packages using UniTask, UniRx, Dotween, ZLogger, ITween, ITweenExtension, Surge, Castle Core, Moq, MagicOnion, GRpc, Ulid, System libraries Microsoft libraries, MasterMemory, MessagePack,and ZString



rebuild the kinematica asset before playing whisch is located in. Assets->KinematicaAsset by opening the Kinematica asset builder and pressing build button on the top left.

Scene and Assets are loaded via by addressable thus requiring them to be release by the addressable. Releasing the asset will also remove it from the scene and free up space. Asset not loaded by addressable should be destroyed and not released by the addressable.
LogManager.cs will store all Editor log in a Log file under Asset->Log by date to file time. LogHelper will remove any Editorlog file in Asset->Log that are 10 days old.

Console will be written in the Editor Log if it uses type Microsoft.Extensions.Logging.ILogger as Logging
ex. private static readonly Microsoft.Extensions.Logging.ILogger Logger = LogManager.GetLogger("SceneLogger"); ex. private readonly Microsoft.Extensions.Logging.ILogger Logger = LogManager.GetLogger("SceneLogger"); (if static class)
or private static readonly Microsoft.Extensions.Logging.ILogger Loggers = LogManager.GetLogger(); (if not static class)
Logger.ZLogError("Print Error in Console and store it in Editor Log");
Logger.ZLogInformation("Print info in Console and store it in Editor Log");
Editor Log can take two format type Exception Format and Prefix Format

Menu Layout

Youtube video on previous development (need to update url) Watch the video



[me



Scene Structure
Core Scene:
MainMenu (Through Scene Addressable Loading)
Creation (Through Scene Addressable Loading)
Game (Game scene will be the only Scene that will have ECS and DOTS Logic to drive it) within Game Scene there will be SubScene (Through Scene Addressable Loading and SubScene with ECS, DOTS)

About

Self-teaching on some of the unity's packages and some other plugins. See Read Me

License:MIT License


Languages

Language:C# 98.7%Language:ShaderLab 1.0%Language:HLSL 0.2%Language:C 0.1%Language:Java 0.0%