Skip to content
CAI
Software that uses CAICheck a score

XINCGer/Unity3DTraining

47.1

Weak · 23 September 2026

52.9k

lines of production code

C#

with C++, Lua, C

5

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This repository is a comprehensive collection of Unity development tutorials, utility scripts, and design pattern implementations, primarily focused on C\# and Lua integration. It provides practical examples for core game systems such as asset bundle management, hot updates, networking with Protocol Buffers, and native platform SDK integration. Additionally, it serves as a reference library for software engineering concepts, containing complete codebases for standard design patterns and various editor extension tools.

How it got here

2016–2017 — Unity training demos and design patterns

94 changes.

This period focused on populating a comprehensive repository of Unity training projects and technical demonstrations, covering game mechanics, UI systems, and performance optimization. It also involved the systematic implementation of standard GoF design patterns in C\# and the exploration of advanced topics like hot updates, native integration, and network programming.

2018–2019 — Unity tooling and framework expansion

40 changes.

This period focused on building a comprehensive suite of Unity editor extensions, asset bundle management frameworks, and data conversion utilities. It also involved developing various demonstration projects for networking, animation, and rendering to support learning and integration efforts.

2020–2021 — Unity editor tooling and automation

6 changes.

This period focused on developing a suite of Unity editor extensions and automation tools, including a UI auto-binding framework and a code exporter for cross-environment communication. Additional features included an asset import pipeline for FBX optimization, a utility for unpacking TexturePacker atlases, and a basic node editor demo. The work also involved scaffolding initial projects for XLS to C\# conversion utilities.

Features

Add Bridge Pattern implementation and documentation

Added a new C\# example demonstrating the Bridge design pattern within the DesignPatterns/BridgePattern project. The code separates an abstraction (department course selection) from its implementation (specific math courses) to allow independent variation, and includes a README explaining the pattern's definition and benefits.

DesignPatterns/BridgePattern · high confidence

Add ColaPlus Lua object-oriented development plugin

Introduced the ColaPlus plugin, a Lua library for advanced object-oriented development. The new ColaPlus.lua module provides utilities for type checking, reflection, and object management, configurable via a separate config module. A README file was also added to document the plugin.

SomeTest/ColaPlus · high confidence

Add Iterator Pattern example implementation

Added a new C\# project demonstrating the Iterator design pattern, including the abstract Aggregate and Iterator interfaces, their concrete implementations, and a Program entry point that iterates over a collection of items. The addition also includes a README explaining the pattern's definition and use cases.

DesignPatterns/IteratorPattern · high confidence

Add KnapsackSystem solution and documentation

Added the KnapsackSystem.sln solution file and README.md documentation for the UGUI Knapsack System. The solution configures the KnapsackSystem.CSharp project for Debug and Release builds, while the README introduces the system's features, including item storage, information tooltips, and drag-and-drop swapping, along with preview images.

UGUITraining/KnapsackSystem · high confidence

Add Mediator Pattern implementation and documentation

Added a new Mediator Pattern example in C\# that demonstrates decoupling object interactions through a central mediator. The solution includes two distinct scenarios: a generic colleague communication model (ColleagueA/ColleagueB via ConcreteMediator) and a customer support simulation (Customer/Techician via CustomerServericeMM). The entry also includes the project solution file, configuration for .NET Framework 4.5.2, and a README explaining the pattern's definition, benefits, and use cases.

DesignPatterns/MediatorPattern · high confidence

Add Memento Pattern demonstration for game state management

Added a new C\# example in the DesignPatterns/MementoPattern directory that implements the Memento design pattern. The solution includes a GameRole class that captures its internal state (level, coordinates, HP, MP, chapter) into a GameState memento, allowing the role to be restored to a previous state via a GameStateCaretaker. It also includes a generic Originator/Memento/Caretaker implementation to demonstrate the pattern's core mechanics.

DesignPatterns/MementoPattern · high confidence

Add Prototype design pattern implementation with shallow and deep copy examples

This change introduces a new C\# project demonstrating the Prototype design pattern. It includes an abstract base class and a concrete prototype for shallow copying, as well as classes illustrating both shallow and deep cloning behaviors for complex objects containing nested reference types.

DesignPatterns/Prototype · high confidence

Add Unity scene and script for rendering quadratic Bezier curves

This change introduces a new Unity project structure for testing Bezier curves, including a dedicated scene (2RankScene.unity) and a C\# script (Bezier.cs). The script implements a quadratic Bezier curve calculation using three control points and renders the resulting path via a Unity LineRenderer component, updating the visual output every frame.

BezierTest · high confidence

Add music demo with interactive audio mixing and pause functionality

The MusicDemo scene now includes a script that allows users to pause and resume the game, which transitions the main audio mixer to a paused state, and a slider to adjust the 'drama' level, switching between different music mixer snapshots. The demo also features eight distinct audio tracks (pads, strings, cymbals, snare, trombones, concert drum) and updates the background color based on the selected drama level.

SomeTest/MusicDemo · high confidence

Add undo/redo capability to text input

The application now supports undo and redo operations on text changes within the main text box. This is implemented using a command pattern where each text modification is recorded as a command, allowing users to reverse or reapply changes via dedicated Undo and Redo buttons.

SomeTest/UnDoReDoByCommand · high confidence

Add xls2csv tool with Python 3.4+ support

The xls2csv utility is introduced to convert .xls and .xlsx files into .csv format. It includes a configuration file (config.ini) for setting input and output paths, and provides two script versions: xls2csv.py for older Python environments and xls2csv\_3.0.py, which is updated to support Python 3.4 and later, featuring proper encoding handling and absolute path resolution.

XlsxTools/xls2csv · high confidence

Added Abstract Factory design pattern example

This change introduces a new C\# project demonstrating the Abstract Factory design pattern. The implementation provides a factory interface (IFactory) that creates families of related objects—in this case, specific types of bread (BlackBread, HoneyBread, WhiteBread) and pizza (BlackPizza, HoneyPizza, WhitePizza)—allowing users to switch between product families (e.g., BlackBreadFactory, HoneyBreadFactory) without specifying their concrete classes.

DesignPatterns/Factory/AbstractFactory · high confidence

Added Adapter pattern demonstration for power port conversion

This location introduces a C\# implementation of the Adapter design pattern, specifically demonstrating how to adapt 110V and 220V power sources for use with a notebook. The code defines interfaces and classes (\PowerPortAdapter\, \Adapter110V\, \Adapter220V\) that bridge the gap between different voltage standards and a \NoteBook\ consumer, along with a generic \Target\/\Adaptee\ example to illustrate the structural pattern.

DesignPatterns/AdapterPattern/AdapterPattern · high confidence

Added Android SDK base integration assets

The SDK base module now includes the necessary Android platform files to support integration within Unity. This adds an AndroidManifest.xml declaring the main activity with the Unity player marker and a no-title-bar theme, alongside a compiled SDKBase.jar plugin, launcher icons, and standard Android resource layouts and styles required for the native Android side of the SDK.

SDK/SDKBase/SDKBase/Assets/Plugins/Android · high confidence

Added Android SDK base module with Unity integration

The \com.mx.sdkbase\ Android library module has been added to the SDK. It provides a \MainActivity\ that extends \UnityPlayerActivity\, enabling bidirectional communication between Unity and Android. The module exposes specific Java methods for Unity to call, including arithmetic operations (\Sum\, \Max\, \AddOne\), UI feedback via Toast (\MakeToast\), and a callback mechanism (\CallUnityFunc\) to send messages back to Unity. The module is configured to target Android API level 17.

SDK/SDKBase/Android, SDK/SDKBase/Android/com.mx.sdkbase · high confidence

Added AssetBundleFrame 5.4 framework with DOTween dependency

This change introduces the AssetBundleFrame 5.4 solution, providing a basic framework for publishing, updating, and loading asset bundles in Unity. The package includes a Visual Studio solution with C\# projects and a set of sample assets (UI prefabs like Loading and MenuUI, and audio files) organized into asset bundles. It also adds the DOTween animation library (including version-specific extensions for Unity 4.3, 4.6, and 5.0) as a dependency to support tweening capabilities within the framework.

HotUpdate/AssetBundleFrame5.4 · high confidence

Added Builder Pattern demonstration with Teacher/Student analogy

Introduced a new Builder Pattern implementation in the DesignPatterns/BuilderPattern directory, featuring a C\# solution targeting .NET Framework 4.5.2. The code demonstrates the pattern using a 'Teacher' (Director) and 'Student' (Builder) analogy to construct complex objects step-by-step, including specific concrete builders (StudentA, StudentB) and a Product class, along with explanatory documentation in README.md.

DesignPatterns/BuilderPattern · high confidence

Added C\# Socket programming demos for client, server, and stream handling

Added a new C\# demonstration project under SomeTest/SocketDemo that includes a solution file and three sub-projects: a SocketClient and SocketServer pair that communicate over TCP on localhost port 6666, and a NetworkStreamDemo that connects to www.baidu.com on port 80 to read incoming data. The project targets .NET Framework 4.5.2 and provides example implementations for synchronous socket operations and network stream reading.

SomeTest/SocketDemo · high confidence

Added C\# singleton pattern implementations

Added five new C\# files demonstrating different singleton pattern variations: AttributeSingleton (property-based), EagerSingleton (eager initialization), LazySingleton (basic lazy initialization), SyncLazySingleton (double-checked locking for thread safety), and UnitySingleton (Unity MonoBehaviour-based). These files provide code examples for users to understand and implement singleton patterns in C\# and Unity contexts.

DesignPatterns/Singleton · high confidence

Added C\# sorting demonstration project

A new C\# console application (ConsoleApplication1) has been added to the SomeTest/SortDemo location. This project demonstrates sorting a list of custom data objects based on an enum state property (MyState) using a custom comparison delegate, targeting the .NET Framework 4.5.2 runtime.

SomeTest/SortDemo · high confidence

Added C\# utility to execute external batch files

A new C\# application (ProcessBat) has been introduced that demonstrates how to launch external .bat and .exe files from a .NET Framework 4.5.2 project. The solution includes a sample batch script (test.bat) and a C\# entry point that uses the System.Diagnostics.Process class to run the script with the console window hidden (CreateNoWindow = true).

SomeTest/ProcessBat · high confidence

Added C++ DLL and Unity demo for native code integration

This change introduces a complete example for calling native C++ code from Unity. It includes the source for a C++ dynamic link library (MyDLL) containing exported functions like Pow2, along with the necessary Visual Studio project files to build it. On the Unity side, it adds the DLLImportDemo project structure, including the MyDLL.dll plugin asset, a Main scene, and a C\# script (DLLImportTest) that uses DllImport to invoke the native Pow2 function at runtime.

SomeTest/DLLImport · high confidence

Added Chain of Responsibility pattern example and documentation

Added a new C\# implementation of the Chain of Responsibility design pattern, including the solution file and a README that explains the pattern's definition, benefits, and use cases in Chinese.

DesignPatterns/ChainofResponsibilityPattern · high confidence

Added Chain of Responsibility pattern implementation

Added a new C\# console application demonstrating the Chain of Responsibility design pattern. The project includes an abstract Handler class with three concrete implementations (ConcreteHandlerA, B, and C) that process integer requests based on specific values, as well as an OfficeHandler hierarchy featuring Prefects and Emperor classes to illustrate a real-world approval chain scenario.

DesignPatterns/ChainofResponsibilityPattern/ChainofResponsibilityPattern · high confidence

Added CodeExporter editor tool for generating C\# binding code

This change introduces a new Unity Editor tool, CodeExporter, which automatically generates C\# binding scripts (modeled after ToLua) to facilitate cross-environment communication. The tool adds an Editor menu item 'CodeExporter/生成代码' that reads a configuration list (CodeExportSetting) and generates wrapper classes (e.g., Controller\_01Bind.cs) in the Assets/Script/Generate directory. These generated files provide a unified Excecute method that accepts string function names and object parameters, handling type conversion for base types (int, bool, double, float) and casting for others, allowing runtime invocation of specific controller methods.

SomeTest/CodeExporter · high confidence

Added Command Pattern implementation with command queuing and cancellation

This location introduces a C\# implementation of the Command design pattern, providing a way to encapsulate requests as objects. The code demonstrates two variations: a simple Invoker/Receiver setup and a Herald-based system that supports queuing multiple commands, executing them in batch, and cancelling specific commands from the queue. This allows users to parameterize objects with different actions, support undo/cancel operations, and decouple the sender from the receiver.

DesignPatterns/CommandPattern · high confidence

Added Composite Pattern demonstration for tree structures and organizational hierarchies

This location introduces a C\# implementation of the Composite design pattern, providing a reusable structure for managing part-whole hierarchies. The code defines an abstract \Component\ base class and a \Department\ abstraction, implemented by \Composite\ (branch nodes that manage child lists) and \Leaf\ classes (\StudentOffice\, \TeachOffice\) that represent terminal nodes. The \Program.cs\ entry point demonstrates two specific use cases: a generic tree structure with named leaves and nodes, and a school organizational hierarchy where a root university department manages student and teaching offices, allowing uniform operations like \Show\ (for tree visualization) and \ReportWork\ across the entire structure.

DesignPatterns/CompositePattern/CompositePattern · high confidence

Added Composite Pattern documentation and solution structure

Added a new README explaining the Composite design pattern, including its definition, key concepts (treating individual objects and compositions uniformly), and use cases like file systems. Also added the Visual Studio solution file to structure the project.

DesignPatterns/CompositePattern · high confidence

Added DOTween animation plugin

The project now includes the DOTween animation library (by Demigiant), providing capabilities for tweening Unity objects such as transforms, UI elements, and audio mixers. This addition introduces core runtime assemblies (DOTween.dll, DOTween43.dll, DOTween46.dll, DOTween50.dll) and corresponding editor tools, enabling developers to create and control animations directly from code.

DoTweenTraining/DoTweenProject/Assets · high confidence

Added Decorator Pattern implementation with actor/stylist example

Added a new C\# project demonstrating the Decorator design pattern. The implementation includes core pattern components (Component, Decorator, ConcreteDecorators) and a practical example using an Actor and Stylist hierarchy to show how behaviors (like makeup and role display) can be dynamically added at runtime.

DesignPatterns/DecoratorPattern · high confidence

Added DoTweenProject solution file

A new Visual Studio solution file (DoTweenProject.sln) has been added to the DoTweenTraining/DoTweenProject directory. This file configures the build environment for the DoTween training project, explicitly defining the Assembly-CSharp.csproj and Assembly-CSharp-Editor.csproj projects and setting Assembly-CSharp.csproj as the startup item for MonoDevelop.

DoTweenTraining/DoTweenProject · high confidence

Added DrawCall performance test project

A new Unity test project named DrawCallTest has been added to demonstrate and measure rendering performance. It includes three scenes (Drawcall1, Drawcall2, Drawcall3) and scripts that instantiate 500 cube objects to test dynamic batching and scaling impacts on draw calls. The project is configured for Unity 2017.3.0f3 and includes a README with preview images of the test results.

SomeTest/DrawCallTest · high confidence

Added Facade Pattern demonstration in C\#

Added a new C\# example demonstrating the Facade design pattern, including a solution file, project configuration for .NET Framework 4.5.2, and source code. The implementation features a generic \Facade\ class that simplifies interactions with subsystems \SubA\, \SubB\, and \SubC\, alongside a specific \FactoryFacade\ example that coordinates \CreamFactory\ and \HoneyFactory\ operations. A README provides an explanation of the pattern's definition, use cases, and benefits in simplifying complex subsystem interfaces.

DesignPatterns/FacadePattern · high confidence

Added Fisher-Yates shuffle implementation with loop variations

The Fisher\_Yates\_Shuffle project now includes a C\# implementation of the Fisher-Yates shuffle algorithm, providing two extension methods for IList\<T\>: ShuffleWithWhileLoop and ShuffleWithForLoop. This allows users to randomly reorder elements in a list using either a while or for loop structure, targeting .NET Framework 4.5.2.

_SomeTest/Fisher\_Yates\Shuffle · high confidence

Added Flyweight Pattern documentation and solution file

Added a new README explaining the Flyweight design pattern, including its definition, use cases (such as managing large numbers of fine-grained objects to reduce memory usage), and implementation details like using a factory for shared access. Also added the corresponding Visual Studio solution file to structure the project.

DesignPatterns/FlyweightPattern · high confidence

Added Flyweight pattern demonstration using a连连看 (Lianliankan) example

This change introduces a new C\# implementation of the Flyweight design pattern, specifically illustrated through a连连看 (tile-matching) game scenario. The code includes the core Flyweight structure (abstract class, concrete and unshared flyweights, and a factory) alongside a domain-specific example using ImageNode and ImageNodeFactory to manage shared image resources. The Program.cs entry point demonstrates how these shared objects are retrieved and compared to determine if two randomly selected tiles match, effectively showcasing memory optimization through object sharing.

DesignPatterns/FlyweightPattern/FlyweightPattern · high confidence

Added GZipStreamDemo console application for file compression and decompression

A new .NET Framework 4.5.2 console application has been added to the repository that demonstrates file compression and decompression using GZipStream. Users can run the program to input a file path and choose to either compress the file (creating a .gz output) or decompress a .gz file back to its original form.

SomeTest/GZipStreamDemo · high confidence

Added GizmosDrawCircle demo for drawing circles in the Unity Editor

This change introduces a new Unity project demonstrating how to draw circles in the Scene view using Gizmos. It includes a \DrawCircle\ MonoBehaviour script that renders a circle outline based on configurable radius, color, and smoothness parameters, along with a \Demo.unity\ scene to visualize the effect.

SomeTest/GizmosDrawCircle · high confidence

Added Google.Protobuf library and Socket Protobuf demo scene

The project now includes the Google.Protobuf C\# library (containing core serialization components like ByteString, CodedInputStream, and CodedOutputStream) under Assets/Plugins, enabling Protocol Buffer support. Additionally, a new Unity scene named DEMO.unity has been added to demonstrate socket-based Protobuf usage, specifically handling packet framing scenarios such as splitting and sticking.

(repo-wide) · high confidence

Added ILDemo example project demonstrating parameter passing semantics

A new C\# demonstration project (ILDemo) has been added to the repository, featuring a solution file, project configuration targeting .NET Framework 4.5.2, and a README linking to an IL code tutorial. The core example in Program.cs illustrates the behavioral difference between passing an integer by value versus by reference (ref), showing how modifications inside called functions affect the original variable in each case.

SomeTest/ILDemo · high confidence

Added Interpreter Pattern example demonstrating message classification

Introduced a new C\# project illustrating the Interpreter design pattern, featuring a solution file and core classes including AbstractExpression, Context, and Message. The example demonstrates two distinct interpretation scenarios: a generic terminal/non-terminal expression hierarchy and a specific use case for classifying SMS messages as normal or potential spam (rubbish) based on keyword detection, accompanied by a README explaining the pattern's definition and applicability.

DesignPatterns/InterpreterPattern · high confidence

Added IrregularButton test project with alpha-threshold raycast support

This location introduces a new Unity test project (IrregularButton) that enables buttons to respond to clicks only on non-transparent pixels of their sprite. The core logic is provided by the IrregularRaycastMask component, which implements ICanvasRaycastFilter to check pixel alpha against a configurable threshold (alpahThreshold) during raycasting, supporting both Sliced and Simple image types. A simpler alternative, IrregulaButton, is also included, which sets the Image's alphaHitTestMinimumThreshold property. The project includes test scenes (Test1, Test2), a ButtonClickCounter script for logging clicks, and necessary asset metadata.

SomeTest/IrregularButton · high confidence

Added JSON data parsing demo with LitJson and Unity JsonUtility

The JsonDataDemo area now includes a complete example for parsing and generating JSON data in Unity. It introduces the LitJson library (via Plugins/LitJson.dll) alongside Unity's built-in JsonUtility. The demo provides two C\# scripts: JsonDeserialize.cs, which demonstrates parsing JSON into custom model classes (JsonObjectModel, JsonArrayModel) and using the dynamic JsonData API, and JsonUtilityTest.cs, which shows serialization and deserialization using Unity's native JsonUtility. A sample data file (Resources/JsonData.json) containing UI panel configurations is included to support these examples.

NetWorkAndResources/JsonDataDemo · high confidence

Added Lua class simulation with inheritance and polymorphism

Added a new example in SomeTest/Lua\_Class demonstrating how to simulate object-oriented features in Lua. The implementation includes Class.lua for base class definition with metatable-based inheritance, SubClass.lua for derived class support with method overriding, and Main.lua to showcase instantiation and polymorphic behavior.

_SomeTest/Lua\Class · high confidence

Added Lua closure examples and documentation

Added a new Lua script demonstrating closure concepts, including upvalues, independent counters, shared state between closures, and iterator implementation, along with a README explaining C\# and Lua closures.

SomeTest/Closure · high confidence

Added Lua time utility and demo for calculating remaining time

This change introduces a new Lua module (timespan.lua) and a corresponding test/demo script (MyTimeTest.lua) within the SomeTest/os\_time directory. The module provides helper functions to parse time strings and calculate the remaining seconds until a specified time, leveraging Lua's built-in os.time and os.date functions. The demo script illustrates usage of these standard library functions alongside the new utility.

_SomeTest/os\time · high confidence

Added Lua training scripts and extended print functionality

The lua/LuaTraining directory has been populated with a comprehensive set of educational Lua scripts covering core language concepts including variables, data types, control structures, functions, tables, strings, iterators, coroutines, object-oriented programming, modules, metatables, garbage collection, I/O, and error handling. Additionally, a new printExt.lua module was introduced to override the global print function, enabling it to recursively print nested table structures for easier debugging.

lua/LuaTraining · high confidence

Added Mecanim GDC 2013 demo assets and animation clips

The MecanimGDC2013 sample area now includes the core asset structure, featuring a DefaultAvatar model with associated texture maps (normal, color, specular) and an ArmsBodyMask for selective bone animation. Additionally, a set of animation clips has been added to demonstrate character behaviors, including Idle, Run, Dying, Reviving, and HoldLog states.

MacanimSystem/MecanimGDC2013 · high confidence

Added MultiCameraTest scene and assets

Added a new test scene named Camera.unity along with supporting material assets (Blue.mat, Red.mat) and project configuration files to the MultiCameraTest location, establishing the foundation for multi-camera testing scenarios.

SomeTest/MultiCameraTest · high confidence

Added NGUI asset library and example animations

The project now includes the NGUI (Next-Gen UI) asset folder, containing editor preview textures, platform-specific native libraries (FreeType), and a suite of example animation clips for UI elements such as buttons, checkboxes, and window transitions.

_Effective C\#/Delegate\EventTraining · high confidence

Added NGUI-based virtual joystick component

A new Joystick component has been added to the project, providing a virtual joystick implementation built on the NGUI framework. This component supports both directional and location-based input modes, exposes public events for joystick movement start, holding, down, and end states, and allows configuration of the joystick's visual radius and circular movement limits.

SomeTest/NGUI-Joystick · high confidence

Added Observer Pattern implementation and documentation

Added a new C\# example demonstrating the Observer design pattern, including the solution file, project configuration (.NET Framework 4.5.2), and source code for both the classic Subject-Observer structure and a spy-themed variation. The implementation includes abstract base classes for subjects and observers, concrete implementations, and a demonstration program, accompanied by a README explaining the pattern's definition and use cases.

DesignPatterns/ObserverPattern · high confidence

Added Proxy Pattern demonstration code

Added a new C\# example project illustrating the Proxy design pattern. The code includes a basic proxy implementation for a generic subject and a specific example using a website proxy to manage user registration, login, and browsing actions on a social network site.

DesignPatterns/ProxyPattern/ProxyPattern · high confidence

Added Proxy Pattern documentation and solution file

Added a new README explaining the Proxy design pattern, including its definition, use cases (such as controlling access or handling expensive object creation), and implementation tips, along with the corresponding Visual Studio solution file to support the project structure.

DesignPatterns/ProxyPattern · high confidence

Added ScriptableDemo sample for Unity AssetBundle workflows

The SomeTest/ScriptableDemo location now includes a complete Unity C\# sample demonstrating how to create, export, and load ScriptableObject data via AssetBundles. The diff adds a MyData ScriptableObject to hold vector content, a MyExporter editor script to build the AssetBundle from assets, and a Client MonoBehaviour to load and access the bundle at runtime, along with the necessary Unity project files and solution configurations.

SomeTest/ScriptableDemo · high confidence

Added Simple Factory design pattern example for bread production

The SimpleFactory location now includes a complete C\# implementation of the Simple Factory pattern. The solution demonstrates a \BreadFactory\ that instantiates specific bread types (BlackBread, HoneyBread, WhiteBread, and HoneyWhiteBread) based on an enum input, providing a concrete example of how to decouple object creation from usage in .NET applications.

DesignPatterns/Factory/SimpleFactory · high confidence

Added Socket networking sample with Protocol Buffers code generation

This change introduces a complete Socket networking module for Unity, including a C\# client and server implementation, a binary data buffer utility, and a Protocol Buffers code generation toolchain. The sample demonstrates how to use protobuf-net to serialize and deserialize network messages (e.g., login credentials) alongside a custom binary stream format, providing a ready-to-use reference for implementing networked features in Unity projects.

NetWorkAndResources/SampleSocket · high confidence

Added State Pattern implementation and documentation

Added a new State Pattern example in the DesignPatterns/StatePattern directory, including a README explaining the pattern's definition and use cases, a Visual Studio solution file, and C\# source code. The implementation features a basic Context/State structure in State.cs that toggles between ConcreteStateA and ConcreteStateB, alongside a Train.cs file that outlines a train state machine with Start, Fast, Slow, and Run states (noting that SlowState and RunState currently throw NotImplementedException).

DesignPatterns/StatePattern · high confidence

Added Strategy Pattern demonstration with interchangeable algorithms

This location introduces a C\# implementation of the Strategy design pattern, providing a reusable structure for swapping algorithms at runtime. The code defines an abstract \Strategy\ base class and three concrete implementations (A, B, and C) alongside a \Context\ class that delegates execution to the selected strategy. Additionally, it includes a production-specific example (\ProduceStrategy\) that demonstrates seasonal production decisions (summer vs. winter) and integrates a simple factory pattern within the context constructor to select strategies based on an integer input.

DesignPatterns/StrategyPattern · high confidence

Added SystemInfo demo to display device and graphics details

A new Unity demo project (SystemInfoDemo) has been added, featuring a Main scene and a SystemInfoController script. The controller gathers and displays runtime hardware and OS information—including device model, name, type, memory size, operating system, and detailed graphics adapter properties (ID, name, vendor, version, memory, multi-threading support, and render target count)—in a UI text element upon initialization.

SomeTest/SystemInfoDemo · high confidence

Added Template Factory design pattern example

Added a new C\# project demonstrating the Template Factory design pattern, which defines an interface for creating objects but allows subclasses to decide which class to instantiate. The implementation includes an IFactory interface, concrete factories for various bread types (Black, Honey, White, and HoneyWhite), and corresponding BreadMaker classes to illustrate how new product types can be added by simply creating new factory and product classes.

DesignPatterns/Factory/TemplateFactory · high confidence

Added Template Method pattern documentation and solution file

This change introduces the Template Method design pattern to the repository by adding a new README.md file that defines the pattern and outlines its use cases, along with a Visual Studio solution file (TemplatePattern.sln) to structure the project.

DesignPatterns/TemplatePattern · high confidence

Added Template Pattern demonstration examples

Added a new C\# console application demonstrating the Template Method design pattern. The code includes an abstract base class defining a skeleton algorithm with primitive operations, concrete subclasses implementing specific behaviors, and a mobile phone example illustrating how subclasses can customize steps like power-on and dial-up sequences while preserving the overall structure.

DesignPatterns/TemplatePattern/TemplatePattern · high confidence

Added TexturePacker plist unpacking utility

A new Python script, \unpack\_plist.py\, has been added to the \UnityEditorExtension/Python\ directory to extract individual sprite images from TexturePacker atlas files. This tool parses the associated \.plist\ metadata and \.png\ atlas image to reconstruct and save the original sprite frames, handling rotated frames and source size adjustments, which allows users to recover individual assets from bundled texture atlases.

UnityEditorExtension/Python · high confidence

Added Thread and Task demonstration projects

Added two new console application projects, ThreadDemo and TaskDemo, to the solution to demonstrate .NET threading and task-based concurrency patterns. The ThreadDemo project illustrates creating and managing background threads, while the TaskDemo project demonstrates creating and synchronizing multiple tasks using Task.WaitAll.

SomeTest/ThreadDemo · high confidence

Added TimeScale testing utility

A new TimeManager script and associated project files have been added to the timeScaleTest location. This utility allows users to interactively control the Unity Time.timeScale via keyboard inputs (0, 1, 2) and logs timing data across Update, LateUpdate, and FixedUpdate cycles to help verify time-scale behavior.

SomeTest/timeScaleTest · high confidence

Added UI animation assets for training examples

The UIBeta training module now includes a new Animation folder containing Unity Animator Controllers and Animation Clips for several UI components, including a Bunny character, a MainMenu, a Panel, an SF Button, and a Settings window. These assets provide pre-built animation states (such as Open, Closed, and Highlighted) that users can reference to learn how to implement common UI transitions and effects in Unity.

UGUITraining/UIBeta · high confidence

Added UI auto-binding framework with editor exporter

This location introduces a simple UI auto-binding framework for Unity. It adds an editor tool (UIExporter) that scans selected UI prefabs for components like Button, Text, and Image, then generates C\# binding scripts (e.g., UILoginPanel.BindView.cs) that map these components to fields via a UICollection helper. The framework includes base classes (UIBase) for view lifecycle management and a sample implementation (UILoginPanel) demonstrating the generated bindings in action.

UGUITraining/UIViewBindDemo · high confidence

Added Unity Editor debug and menu customization scripts

Added two new editor scripts to the project: DebugUILine, which draws blue gizmo outlines around UI elements with raycast targets to aid in visual debugging, and MenuOptionOverwrite, which customizes the Unity Editor's GameObject \> UI menu to create Image and Text components with raycastTarget disabled by default when a Canvas is selected.

SomeTest/UnityEditorTest · high confidence

Added Unity Technologies AssetBundle Demo with local server and build tools

This location introduces the official Unity Technologies AssetBundle demo project, providing a complete workflow for building, testing, and loading AssetBundles. It includes a C\# AssetBundleServer that serves bundles via HTTP on port 7888, editor menu items for building bundles and players, and the AssetBundleManager high-level API which handles automatic dependency resolution, variant selection, and loading from web, local streaming assets, or iOS on-demand resources.

HotUpdate/UnityTechnologiesAssetbundleDemo · high confidence

Added Unity coroutine screenshot demo

A new Unity project named 'About\_Coroutine' has been added, featuring a demonstration of Unity coroutines. The project includes a 'ScreenShotByCoroutine' scene and a 'ScreenShotScript' component that captures the current screen as a PNG image and saves it to the project directory when the 'C' key is pressed.

_SomeTest/About\Coroutine · high confidence

Added Unity demo for dynamic external file reading on mobile platforms

This location introduces a Unity 5.5 project demonstrating how to dynamically load external files on mobile devices. It includes C\# scripts (\AssetBunbleReader\, \XMLReader\, \XMLReaderStreaming\) that show three methods for accessing data: loading from the StreamingAssets folder via WWW, loading from the Resources folder, and loading AssetBundles. The demo is supported by sample XML files in both StreamingAssets and Resources directories, along with Unity scenes and a README explaining the approach.

NetWorkAndResources/MobilePlatformDynamicReadExternalFiles · high confidence

Added Unity profiler example project with CPU usage demonstration

This change introduces a new example project located at PerformanceOptimization/ProfilerExample, designed to demonstrate how to use the Unity Profiler for performance analysis. The project includes two C\# scripts, BaseProfiler.cs and CPUUsageProfiler.cs, which show how to wrap functions with Profiler.BeginSample and Profiler.EndSample to track execution time. It also provides corresponding Unity scenes (BaseProfiler.unity and CPUUsageProfiler.unity) and a README explaining the usage of the Profiler API for custom function sampling.

PerformanceOptimization/ProfilerExample · high confidence

Added Unity project demonstrating script define symbols

This change introduces a new Unity project (version 5.5.0f3) that serves as a demonstration for using Scripting Define Symbols. It includes a C\# script (ScriptDefineSymbols.cs) and a demo scene (demo.unity) showing how to conditionally execute code based on custom macros (such as SHOEDEBUG, UC, QQ) and Unity editor flags (UNITY\_EDITOR) defined in Player Settings. A Visual Studio solution file and a README linking to a blog post on the topic are also added.

SomeTest/Scripting Define Symbols · high confidence

Added Unity solution and project configuration for Minecraft training

The repository now includes a Visual Studio solution file (Minecraft.sln) that configures the build environment for the Unity project, referencing Assembly-CSharp and its editor variants. This addition establishes the necessary project structure for compiling the Minecraft training assets within the specified development environment (Unity 5.5.0f3 with VS2013).

Minecraft · high confidence

Added Unity test project for material exchange

A new Unity project (version 5.2.1f1) has been added to support testing material swapping. It includes a C\# script (MyScript) that allows exchanging a MeshRenderer's material via an index, along with two sample materials and a test scene.

SomeTest/ExchangeTest · high confidence

Added Unity unit testing example with Editor Test Runner

Added a sample project demonstrating unit testing in Unity using the Editor Test Runner. This includes a \Player\ class with health management logic, a custom \NegativeHealthException\, and corresponding NUnit test cases (\PlayerTest\ and \PlayerTestWrong\) to verify correct and incorrect behavior. The entry also adds necessary project structure files, including a Visual Studio solution, Unity project settings (version 5.5.0f3), and README documentation explaining the tutorial.

Unit4Unity · high confidence

Added Visitor Pattern documentation and solution file

This change introduces the Visitor design pattern to the repository by adding a README.md file that defines the pattern, lists its advantages and disadvantages, and describes suitable use cases. It also adds the corresponding Visual Studio solution file (VisitorPattern.sln) to structure the project for C\# development.

DesignPatterns/VisitorPattern · high confidence

Added Visitor pattern implementation examples

Added a new C\# project demonstrating the Visitor design pattern through two distinct scenarios: a generic object-structure example using \ConcreteElementA\/\B\ and \ConcreteVisitor\, and a business-oriented example where \FinanceDirector\ and \SaleDirector\ visit \FinancialReport\ and \LogisticsReport\ objects. The implementation includes the necessary visitor interfaces, concrete elements, and an object structure to manage and accept visitors.

DesignPatterns/VisitorPattern/VisitorPattern · high confidence

Added WebTest demo for network resource handling

A new Unity project named WebTest has been added to demonstrate network operations. It includes a WebManager script that uses the legacy WWW API to perform GET and POST requests, upload images, and download audio clips and textures. The project also contains a demo scene, a logo asset, and configuration files for Unity 5.2.1.

NetWorkAndResources/WebTest · high confidence

Added Xls2CS demo project scaffold

A new demo project named Xls2CS has been added to the XlsxTools directory, consisting of a Visual Studio solution file and a Program.cs entry point that prints 'Hello World!'. This provides a basic starting point for the tool, though the actual conversion logic is not included in this specific change.

XlsxTools/Xls2CS · high confidence

Added character animation assets and materials for training system

The Macanim\_Training module now includes a set of new animation clips and associated 3D model resources. Specifically, the system adds animation files for 'Dive', 'Dying', 'Idle2Turn2Idle', 'Idles', 'IdlesWave', 'Jump', and 'JumpUpHigh'. These animations are supported by a new 'DudeAvatar' model and a suite of materials (body, eyes, face, skin, suit, teeth) and textures required to render the character correctly within the training environment.

_MacanimSystem/Macanim\Training · high confidence

Added deep copy and paste for Unity GameObject components

This change introduces two new editor tools under the GameObject menu to handle component copying in Unity. The 'Copy Current Components' action copies only the components attached to the selected object, while 'Copy All Components' performs a deep copy, capturing components from the selected object and all its child objects in the hierarchy. This allows users to replicate complex GameObject structures with their full component state onto other targets.

3rdPlugins/CopyAllComponents · high confidence

Added demo for launching QQ group join without SDK integration

A new Unity demo project (SDK/PullUpQQGroupDemo) has been added that demonstrates how to open a QQ group join page directly from a game without integrating the full Tencent SDK. The demo includes a C\# script (MyScript) that handles platform-specific logic: on Android, it calls a native Java method via JNI, and on iOS, it invokes a native Objective-C function via DllImport. The project also contains the necessary Unity scene, assets, and project settings to run this standalone example.

SDK/PullUpQQGroupDemo · high confidence

Added demonstration of robust multicast delegate handling in .NET

A new C\# project targeting .NET Framework 4.6.1 has been added to demonstrate how to handle exceptions and return values in multicast delegates. The code shows that directly invoking a multicast delegate stops execution on the first exception, whereas manually iterating through the invocation list using \GetInvocationList()\ allows the chain to continue and enables aggregation of return values from multiple methods.

SomeTest/MultiDelegateException · high confidence

Added garbage code generator utility

Added a new Lua-based utility in the SomeTest/garbage\_code\_generater directory that generates random, nonsensical C\# code snippets. The tool includes a main script (garbage\_code\_generater.lua) and documentation files (README.md and usage instructions) that explain how to run the generator with command-line arguments to output randomized C\# files.

_SomeTest/garbage\_code\generater · high confidence

Added mobile acceleration debugging tool

A new Unity project has been added to display real-time mobile device acceleration values (X, Y, and Z axes) on the screen via an on-screen GUI overlay, aiding in the testing and verification of motion sensor input.

SomeTest/MobileAcceleration · high confidence

Added multi-window management system with priority-based focus handling

This change introduces a new editor window infrastructure within the MultiEditorWindow extension, consisting of a base class (EditorWindowBase), a manager (EditorWindowMgr), a main interface (MainWindow), and a repeatable popup window (RepeateWindow). The system allows users to open multiple instances of the 'RepeateWindow' via the 'Tools/RepeateWindow' menu. These windows are managed by a central manager that tracks open windows, assigns them priorities, and automatically handles focus stacking when windows gain attention, ensuring the most recently focused window remains active. The main window provides a UI to spawn these repeatable windows, which can also spawn further instances of themselves, with proper cleanup of the window list upon destruction.

UnityEditorExtension/MultiEditorWindow/Assets/Editor · high confidence

Added native tolua plugin binaries for Android, iOS, and Editor

The uLuaDemo project now includes the native tolua library binaries required for cross-platform Lua-C\# interop. This change adds the Android shared library (libtolua.so) for ARMv7, the iOS static library (libtolua.a), the macOS bundle (tolua.bundle), and the Windows/Linux 64-bit DLL (tolua.dll), along with their corresponding Unity plugin importer metadata to ensure they are correctly included in builds for their respective platforms.

(repo-wide) · high confidence

Added player controller with NavMesh pathfinding and jumping support

A new PlayerController component has been added to the Pathfinding/Navmesh module, enabling users to move a character across a NavMesh by clicking on the ground plane. The controller integrates with Unity's NavMeshAgent for navigation and includes logic to handle OffMeshLinks by triggering a physics-based jump animation, allowing seamless traversal of gaps or elevated surfaces within the pathfinding system.

Pathfinding · high confidence

Added prefab metadata for level selection UI components

The UGUITraining/UGUIDemo02 module now includes metadata files for the CloseButton, LevelItem1, and LevelItem2 prefabs. These additions support the level selection interface, enabling the game to properly reference and instantiate the UI elements used for displaying and closing level items.

UGUITraining/UGUIDemo02/Assets/Prefabs · high confidence

Added scene metadata files for the UGUI demo application

The project now includes metadata (.meta) files for eight Unity scenes within the UGUITraining/UGUIDemo02 module: CharacterScene, FrameScene, Login, MainScene, SelectLevel, SettingScene, StartScene, and TaskList. These files register the scenes with the Unity engine, enabling them to be loaded and managed within the application's navigation flow.

UGUITraining/UGUIDemo02/Assets/Scenes · high confidence

Added test scene for Unity IPointerClickHandler behavior

A new Unity project and scene have been added to demonstrate the behavior of the \IPointerClickHandler\ interface within the UGUI event system. The \SampleScene\ includes a UI hierarchy with parent and child elements, each attached to \ParentHandler\ and \ChildHandler\ scripts respectively. These scripts implement \IPointerClickHandler\, \IPointerDownHandler\, and \IPointerUpHandler\ to log pointer events, allowing users to observe how click events propagate through the UI element hierarchy.

_SomeTest/About\IPointerClickHandler · high confidence

Added uLua interop demo with C\#-Lua binding examples

The HotUpdate/uLuaDemo area now includes a complete demonstration of integrating Lua scripting with C\# in Unity. This adds a custom settings configuration (CustomSettings.cs) that defines which Unity types and delegates are exposed to the Lua environment, along with auto-generated wrapper code (Source/Generate/) that binds C\# classes like CSFunctionTest and core UnityEngine components to Lua. The demo provides two C\# test scripts (CSLuaTest.cs and CSLuaTest2.cs) illustrating manual function registration and auto-wrapped binding respectively, alongside Lua entry points (Main.lua) and Unity scenes (RegisterFunctionAuto.unity, RegisterFunctionManual.unity) to showcase bidirectional communication between the two languages.

HotUpdate/uLuaDemo · high confidence

Added xls2json conversion utility

A new Python-based tool has been added to convert Excel (.xls) files into JSON data and C\# mapping classes. The utility reads configuration from \config.ini\ and XML definitions to map Excel columns to specific data types, then outputs the resulting JSON and corresponding C\# classes to specified directories. A batch script is also included to facilitate running the conversion process.

XlsxTools/xls2json · high confidence

Adds Unity editor tools, runtime scripts, and utility samples to SomeTest

This update introduces several new scripts and files into the SomeTest directory. BreakAtlasTool.cs adds an editor utility to split and merge NGUI atlases. DragUI.cs provides a MonoBehaviour for handling UGUI drag-and-drop interactions with pointer events. Laser.cs implements a configurable visual laser effect using LineRenderer with customizable curves and gradients. MyInput.cs offers a basic keyboard input handler for character movement. TestConsole.cs displays error and exception logs in the Unity UI. Additional files include HTML2Text.md for HTML-to-text conversion, UTF8String.lua for UTF-8 string handling in Lua, buildApk.bat for automated Android builds, and peiqi.py, a Python script drawing a pig using the turtle module.

SomeTest · high confidence

Adds text-based localization system for Chinese, English, and Japanese

This change introduces a new localization module that loads language strings from .txt files (Chinese, English, Japanese) using Unity's Resources system. It includes a \LanguageMgr\ singleton to parse key-value pairs from these text assets and a \TextUI\ component that allows UI Text elements to display localized strings by binding to a specific key.

_I18N\_Localization/I18N\_By\Txt · high confidence

Asset import pipeline and demo scene added

The AssetProcessDemo now includes an editor script (FBXPostProcesser) that automatically optimizes imported FBX models by enabling mesh optimization and compressing animation curve values to three decimal places. The project also adds a sample scene with a directional light and camera, along with standard Unity project settings and a sample model asset.

UnityEditorExtension/AssetProcessDemo · high confidence

Expanded documentation library with new technical guides and interview resources

The Doc directory has been significantly populated with new reference materials, including a comprehensive guide to Unity platform-specific preprocessor macros, a detailed breakdown of Unity file operation paths across iOS, Android, Windows, and Mac, and an explanation of special Unity folders like Editor, Resources, and StreamingAssets. Additionally, new entries cover C\# HTML parsing with HtmlAgilityPack, IntelliJ IDEA usage tips, TCP socket programming concepts like sticky packets, and regular expression syntax. The collection also now includes extensive interview preparation materials, featuring a full list of Unity interview questions with answers, a summary of interview tips covering AssetBundles and UGUI optimization, and curated lists of questions for Lua, C\#, C++, algorithms, and design patterns.

Doc · high confidence

Initial AssetBundle demo project with loading infrastructure and editor tools

This change introduces a complete demonstration project for Unity AssetBundle management. It adds a runtime \AssetBundleMgr\ and \AssetBundleLoader\ that support loading bundles from local files, WWW, cache, and UnityWebRequest, along with dependency resolution. Editor-side, a \BundleHelper\ script provides menu commands to automatically assign bundle names and build asset bundles. The project also includes sample scenes (Start, Main), a login UI prefab, and pre-built asset bundles in the StreamingAssets folder to illustrate these capabilities.

HotUpdate/AssetBundleDemo/Assets · high confidence

Initial AssetBundle framework with build, load, and update capabilities

This location introduces a complete AssetBundle management system for Unity. It includes an editor tool (\BuildeAssets.cs\) to package assets into bundles with chunk-based compression and generate manifest metadata. At runtime, \BundleManager\ handles loading local bundles, resolving dependencies, and downloading updated manifests and bundles from a configurable HTTP server (\http://192.168.1.111/StreamingAssets/\) to support hot updates. Supporting utilities include \HttpUtil\ for asynchronous downloads, \JsonUtil\ for serialization, and \AssetBundleConfig\ for centralizing paths and server addresses.

HotUpdate/AssetBundleFramework · high confidence

Initial LearnOpenGL demo application with interactive 3D scenes

The LearnOpenGLDemo application has been added, providing a Visual Studio solution and a suite of C++ examples that demonstrate core OpenGL concepts. The codebase includes implementations for rendering basic geometry (triangles, cubes), applying transformations (rotation, scaling), and managing 3D camera movement via mouse and keyboard input. It also features texture loading and blending using the stb\_image library, shader management via a custom Shader class, and matrix math through GLM, allowing users to interactively explore coordinate systems and rendering pipelines.

LearningOpenGL/LearnOpenGLDemo · high confidence

Initial Nightmares demo assets added

The Nightmares\_Demo location now includes the foundational asset structure for the demo, including folder metadata for Animation, Audio, Fonts, and Materials. This adds specific audio effects (e.g., Hellephant Death, Player GunShot), background music, the LuckiestGuy font, and a variety of Unity materials (e.g., ArchesMaterial, BatMaterial, HellephantMaterial) required for the scene's visual and audio presentation.

_UGUITraining/Nightmares\Demo · high confidence

Initial SDK integration scaffolding for Unity and Android

This change introduces the foundational structure for the SDKBase module within a Unity project (version 5.5.0f3). It adds the necessary folder metadata and a C\# script, MessageHandler, which establishes the bridge between Unity and Android. The script enables calling specific Android methods (AddOne, Sum, Max, MakeToast) from Unity and handling callbacks (Receive) from the Android side, effectively wiring the initial communication layer for the SDK.

SDK/SDKBase/SDKBase · high confidence

Initial UGUI Knapsack System with Drag-and-Drop and Item Management

This change introduces the core components for a Unity UGUI-based inventory system. It adds a data model with base Item and specific types (Weapon, Armor, Consumable), a GridPanelUI for managing inventory slots, and GridUI scripts that enable drag-and-drop interactions (including item swapping and discarding). The KnapsackManager orchestrates the system, handling item storage, UI updates, and tooltip display, while an InputDetector provides a debug mechanism to store items via right-click.

UGUITraining/KnapsackSystem/Assets · high confidence

Initial Unity project scaffolding for MultiEditorWindow

The MultiEditorWindow location now includes the foundational Unity project structure, adding the Assets/Editor directory and a full set of ProjectSettings configuration files (Audio, Physics, Graphics, Input, Quality, etc.). This establishes the necessary environment for the editor extension to function within the Unity 2017.3.0f3 editor.

UnityEditorExtension/MultiEditorWindow/Assets, UnityEditorExtension/MultiEditorWindow/ProjectSettings · high confidence

Initial WinForms MVP application scaffolding

This commit introduces the complete source code for a new WinForms application demonstrating the Model-View-Presenter (MVP) pattern. It includes the main form (Form1) which hosts UserAdd and UserList user controls, wired to their respective presenters via a singleton ApplicationFacade. The implementation features a User model with a proxy for data management, interfaces for the views, and presenters that handle user interactions (adding users) and update the list view accordingly.

SomeTest/WinFormMVP · high confidence

Initial XinGeSDK Demo project scaffolding

The SDK/XinGeSDK\_Demo location now contains a complete, default Unity project structure initialized for the XinGeSDK. This includes the standard SampleScene with a Main Camera and Directional Light, along with all necessary ProjectSettings files (Audio, Physics, Graphics, Input, Quality, etc.) configured with default values. This provides the foundational environment required to integrate and test the XinGeSDK.

_SDK/XinGeSDK\Demo · high confidence

Initial asset structure and core gameplay mechanics

This update establishes the foundational assets and scripts for the Minecraft-style game. It introduces a first-person character controller with movement, jumping, and head-bobbing effects, alongside a day-night cycle system that rotates the environment. Players can now destroy blocks by clicking on them, and the game includes a life management system that triggers a game-over state if the player falls below a certain height, with options to restart. The asset library is populated with materials and prefabs for various block types (dirt, grass, stone, glass, gold, etc.), trees, walls, and an environment prefab, along with the necessary UI and scene files to support these features.

Minecraft/Assets · high confidence

Initial asset structure and core gameplay scripts for Fruit Ninja

This change introduces the foundational assets and scripts for the Fruit Ninja game within the Assets directory. It adds the Prefabs folder containing fruit (apple, lemon, watermelon) and bomb variants, along with the Res folder holding 3D models, materials, particle effects, sound effects, and UI textures. Functionally, it implements the core gameplay loop through three new scripts: GameManager (a singleton for audio control and game state), MouseController (handling mouse input, drawing a slash trail via LineRenderer, and casting rays to detect fruit cuts), and DestroyOnTime (auto-destroying objects after a set duration). It also registers the Menu, Play, and GameOver scenes.

_Fruit\Ninja/Assets · high confidence

Initial commit of Adapter Pattern documentation and solution structure

This change introduces the foundational structure for the Adapter Pattern example, including a new Visual Studio solution file and a comprehensive README. The documentation explains the definition, use cases, and distinctions between class and object adapters in Chinese, providing users with the conceptual background and context for the design pattern implementation.

DesignPatterns/AdapterPattern · high confidence

Initial commit of Fruit Ninja Unity project and documentation

The Fruit\_Ninja directory now contains the Visual Studio solution file (.sln) for the Unity project and a README.md file. The documentation specifies the development environment as Unity 5.5.0f3 with Visual Studio 2015 and includes preview images and a download link for the Windows build.

_Fruit\Ninja · high confidence

Initial commit of NodeEditorCollection with a basic node editor demo

This change introduces the NodeEditorCollection repository, which serves as a hub for node editor resources. It includes a basic NodeEditor demo component that provides a draggable editor window with two demo nodes and a visual connection curve, accessible via the Tools menu. The collection also lists several external node editor frameworks (xNode, NodeGraphProcessor, Node\_Editor\_Framework, DialogueGraph) and includes a complete default Unity project structure (ProjectSettings, Assets, etc.) configured for Unity 2017.3.0f3.

UnityEditorExtension/NodeEditorCollection · high confidence

Initial commit of UGUI Demo 02 project structure

This change introduces the foundational project files for the UGUI Demo 02 training module, including the Visual Studio solution file (UGUIDemo02.sln), user preferences, and a README.md documenting the demo's scope (game start screen, skill menu, character panel, inventory, level selection, task list, settings, and login interface).

UGUITraining/UGUIDemo02 · high confidence

Initial commit of UGUI game menu demo project

This change introduces the initial structure for a UGUI game menu training project, including Unity scene files (Demo01.unity, Game.unity), C\# scripts for game management and player rotation, and supporting configuration files like the Visual Studio solution and project settings.

UGUITraining/UGUIDemo01 · high confidence

Initial commit of the GuideSystem project

This change introduces the initial structure for the GuideSystem, a new Unity project designed to implement a beginner's guide feature for games. The commit adds the complete set of default Unity project settings (including audio, physics, graphics, and input configurations), a basic 'Main' scene with a default camera setup, and a README file that links to a tutorial video for the feature.

GuideSystem, HotUpdate/AssetBundleDemo · high confidence

Initial implementation of Lua-based configuration management system

This change introduces the core components for loading and caching Excel-derived configuration data within the Xls2Lua toolchain. It adds a base Class module for object-oriented structure, a ConfigMgr singleton that reads Lua configuration files from the LuaData directory, caches them, and provides fast lookup by ID, along with a Main entry point demonstrating how to retrieve specific configuration items.

XlsxTools/Xls2Lua/ConfigMgr · high confidence

Initial release of MultiEditorWindow extension

This change introduces the MultiEditorWindow Unity Editor extension, providing functionality for managing multiple pop-up editor windows and editor window hierarchy. The commit adds the Visual Studio solution file (.sln) for the project and a README.md file that includes preview images and a link to a tutorial blog post explaining the feature.

UnityEditorExtension/MultiEditorWindow · high confidence

Initial release of SpaceShooter game scripts

This change introduces the core gameplay logic for the SpaceShooter project, adding a complete set of C\# scripts to the Assets directory. The implementation includes player movement and shooting controls (PlayerController), enemy spawning and wave management (GameController), collision and destruction handling (DestroyByContact, DestroyByBoundary, DestroyByTime), and visual behaviors like background scrolling and random rotation (BGScroller, RandomRotator). A README file is also added to document the project and provide preview images.

SpaceShooter · high confidence

Initial release of SpringBone dynamic bone system and UnityChan demo assets

This change introduces the SpringBone component, a new capability for simulating dynamic bone physics (such as hair and clothing movement) in Unity. The \SpringBone.cs\ script implements spring-based physics with configurable stiffness, bounciness, and dampness, and includes a \useSpecifiedRotation\ option to lock rotation when not controlled by an Animator. An accompanying \SpringBoneEditor\ provides a custom inspector for tuning these parameters and a scene gizmo for interactive placement of the bone's end point. To demonstrate the feature, the \SpringBone\ subfolder now includes a UnityChan model with various animations (e.g., AR poses, jumps, damage states) and a demo scene.

DynamicBones · high confidence

Initial release of Xls2Lua Excel-to-Lua conversion tool

This change introduces the Xls2Lua utility, a standalone tool that converts XLS spreadsheet files into Lua data files. The addition includes the Visual Studio solution, project assembly metadata, and documentation explaining the tool's usage, directory structure, and configuration via config.ini.

XlsxTools/Xls2Lua · high confidence

Introduce Lua Event Manager for module decoupling

Added a new Lua-based event center in the lua/LuaEventMgr directory, providing a singleton manager to register, unregister, and dispatch events with optional parameters. This component enables module decoupling and handles scenarios such as network listening by allowing callbacks to receive event data.

lua/LuaEventMgr · high confidence

Introduce Xls2Lua tool for converting Excel spreadsheets to Lua configuration files

A new command-line utility (Xls2Lua) is added to convert .xls files into Lua scripts for game data. The tool reads input and output directory paths from a config.ini file, processes each sheet in the source Excel files, and generates corresponding .lua files in the target directory. It supports various data types (integers, floats, strings, booleans, enums, structs) and array definitions, handling column metadata and content parsing to produce the final Lua output.

XlsxTools/Xls2Lua/Xls2Lua · high confidence

Introduction of a GameObject pooling system for Unity

This change introduces a new object pool implementation within the Unity project to optimize memory usage by reusing GameObjects instead of frequently instantiating and destroying them. The core \GameObjectPool\ class manages a dictionary of pooled objects, providing static methods to retrieve active instances (creating new ones if the pool is empty) and store inactive objects back into the pool. A demonstration scene and script (\PoolTest\) allow users to spawn bullets that are automatically returned to the pool after a short delay via the \AutoDestroy\ component, effectively reducing allocation overhead for repetitive objects like projectiles.

_MemoryPool\ObjectPool/Object Pool2 · high confidence

JSON-based localization system for Unity

This location introduces a complete JSON-based internationalization solution for Unity applications. It includes the LitJson library for parsing, language resource files (Chinese, English, Japanese) stored in Resources, and the core \LanguageMgr\ script that loads these JSON files and provides text lookup by key. The \TextUI\ component demonstrates how to bind UI Text elements to these localized keys, enabling dynamic language switching based on the system language.

_I18N\_Localization/I18N\_By\_Csv, I18N\_Localization/I18N\_By\Json · high confidence

Native 2D platformer game assets added

The 2DPlatformer module now includes a complete set of Unity animation clips for the game's visual elements. This update adds animation data for the player character (Idle, Jump, Falling, Death), environmental objects (Clouds, Fog, Bus), and specific game events (BombLanding, Intro, 100points). These assets provide the motion and visual feedback for the native 2D platformer experience.

2DPlatformer · high confidence

New UI interaction components for toggles, scrolling, and skill cooldowns

This change introduces three new scripts to the UGUIDemo02 training module: MyToggle, which extends the standard Unity Toggle to manage visibility of associated UI elements based on its state; ScrollListener, which adds horizontal snapping behavior to a ScrollRect (automatically aligning to predefined page positions after a drag) and allows Toggles to control the scroll position; and SkillItem, which implements a visual cooldown timer on an image fill amount triggered by a specific key press or click. These components provide the underlying logic for toggle-driven list navigation, smooth scroll snapping, and skill cooldown visualization within this demo.

UGUITraining/UGUIDemo02/Assets/Scripts · high confidence

New documentation on Unity animation compression and UGUI performance optimization

Added \AnimOptimization.md\ to the PerformanceOptimization directory, providing a curated list of resources and tools for reducing Unity animation file sizes and precision overhead. Additionally, introduced \TX工作室UI优化文档.md\, a detailed guide on UGUI performance best practices, covering DrawCall reduction strategies, Canvas rebuild triggers, and efficient UI despawn techniques using CanvasGroup alpha instead of SetActive.

PerformanceOptimization · high confidence

UGUIDemo02 project initialized with Unity 5.2.1

The UGUITraining/UGUIDemo02 project has been created with a specific Unity editor version (5.2.1f1) and standard assets configuration. This establishes the baseline environment for the 'Game Start Screen' training demo.

UGUITraining/UGUIDemo02/ProjectSettings · high confidence

Behavioural changes

1 commit (0 fixes) modifying SomeTest/BirthdayCakeModel

A change to existing behaviour in SomeTest/BirthdayCakeModel — 1 commit, 1 file.

Doc/Git, Doc/HTMLEngine, SomeTest/BirthdayCakeModel · low confidence · unverified

Initial generation of Lua data structures for language and resource path configurations

The Xls2Lua tool has generated initial Lua data files for language strings and resource path configurations. The new Language.lua file provides access to localized text entries (e.g., '测试文字1'), while ResPathConfig.lua defines mappings for UI assets and textures, including their paths, types, and live times. These auto-generated files enable the application to load language data and resolve resource paths directly from Lua.

XlsxTools/Xls2Lua/Excel, XlsxTools/Xls2Lua/LuaData · high confidence

Initial project configuration for Unity 5.5.0f3

A new ProjectVersion.txt file has been added to the Minecraft/ProjectSettings directory, establishing the project's target editor version as Unity 5.5.0f3. This sets the baseline environment for the project's settings and ensures compatibility with this specific version of the Unity engine.

Minecraft/ProjectSettings · high confidence

Dependencies

Added Unity project version file

A new ProjectVersion.txt file has been added to the UGUITraining/KnapsackSystem/ProjectSettings directory, explicitly setting the Unity Editor version to 5.5.0f3. This ensures that the project is recognized and opened with the correct Unity editor version, preventing potential compatibility issues or automatic upgrades.

UGUITraining/KnapsackSystem/ProjectSettings · high confidence

Added build manifests for design pattern and Unity demo projects

Added .csproj build manifests for multiple design pattern implementations (Adapter, Bridge, Builder, Chain of Responsibility, Command, Composite, Decorator, Facade, Factory variants, Flyweight, Interpreter, Iterator, Mediator, Memento) and a Bezier curve test project, enabling these C\# solutions to be built with MSBuild.

(dependencies) · high confidence

Housekeeping

Added HotUpdate resource management and hotfix technology reference guide; Added I18N Localization documentation hub; Added UI asset metadata for UGUIDemo02; Added UML class diagram for soccer steering and ball control systems; Added folder metadata for UGUI Demo 02 assets; PhysicsStudy documentation added.

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.

Score

  • CAI 47 → 47 (-0.1)
  • Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 70 → 75 (+5.6)
  • Architecture 95 → 65 (-29.9)
  • Maturity 62 → 67 (+4.9)
  • Readiness 35 → 35 (+0.0)
  • Security 47 → 49 (+1.8)

Resolved (19)

  • Analyzed solution does not cover the bulk of the repository
  • Build did not complete in the analyzer
  • Duplicated block (14 lines × 2) (Minecraft/Assets/Standard Assets/CrossPlatformInput/Scripts/Joystick.cs)
  • Duplicated block (15 lines × 2) (Minecraft/Assets/Standard Assets/Utility/AutoMobileShaderSwitch.cs)
  • Duplicated block (17 lines × 2) (Minecraft/Assets/Standard Assets/Utility/AutoMobileShaderSwitch.cs)
  • Duplicated block (8 lines × 2) (Minecraft/Assets/Standard Assets/Utility/AutoMobileShaderSwitch.cs)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • LLM evaluation failed
  • Monorepo: only 1 of 71 solutions was scored
  • No exposed public API
  • Off the main sequence: Assembly-CSharp-firstpass
  • Secret: aws-access-token (Effective C#/Delegate_EventTraining/Assets/NGUI/Examples/Models/Orc/Orc Skin (Diffuse).psd)
  • Secret: aws-access-token (Effective C#/Delegate_EventTraining/Assets/NGUI/Examples/Models/Orc/Orc Skin (Diffuse).psd)
  • Test reliability not measured — no test run produced results
  • Tests co-located / outside the solution
  • complexity unreadable for .cs, .fs, .java, .py — churn × complexity hotspots could not be measured
  • dormant codebase — no living knowledge left to concentrate
  • redundant comment (Minecraft/Assets/Scripts/LifeManager.cs)

New (15)

  • Documentation: no installation or build instructions (README.md)
  • Documentation: no project overview (README.md)
  • End-of-life runtime: .NET netcoreapp3.1
  • Medium: security finding (details withheld)
  • Off the main sequence: Delegate_EventTraining.CSharp
  • Projects may be oversized for their cohesion
  • Secret: aws-access-token (Effective C#/Delegate_EventTraining/Assets/NGUI/Examples/Models/Orc/Orc Skin (Diffuse).psd)
  • Secret: aws-access-token (Effective C#/Delegate_EventTraining/Assets/NGUI/Examples/Models/Orc/Orc Skin (Diffuse).psd)
  • Test reliability not measured — test suite did not build
  • Typo in method name: 'GoogMoring' is a misspelling of 'GoodMorning'. Additionally, the delegate type 'MoringDelegate' is misspelled (missing 'n').
  • Typo in property name: 'ambigious' is a misspelling of 'ambiguous'.
  • XML-doc coverage: Delegate_EventTraining.CSharp (Effective C#/Delegate_EventTraining/Delegate_EventTraining.CSharp.csproj)
  • XML-doc coverage: Delegate_EventTraining.CSharp.Editor (Effective C#/Delegate_EventTraining/Delegate_EventTraining.CSharp.Editor.csproj)
  • redundant comment (Effective C#/Delegate_EventTraining/Assets/NGUI/Scripts/Editor/NGUIEditorTools.cs)
  • redundant comment (Effective C#/Delegate_EventTraining/Assets/NGUI/Scripts/UI/UIPanel.cs)

Changes since last survey

  • 9 commits — 9 feature/other, 0 fixes

By area

  • AI/README.md — 7 commits
  • 3rdPlugins/README.md — 1 commit
  • CPlusPlus/README.md — 1 commit

Notable commits

  • change: DeepWiki
  • change: HyperLPR - 高性能中国车牌识别框架
  • change: azure-sdk-for-net
  • change: bifrost - Fastest enterprise AI gateway (50x faster than LiteLLM)
  • change: claude-video - Give Claude the ability to watch any video
  • change: deepwiki-open Open Source DeepWiki: AI-Powered Wiki Generator for GitHub/Gitlab/Bitbucket Repositories
  • change: grok-build
  • change: nano-vllm - A lightweight vLLM implementation built from scratch
  • change: scriptc - TypeScript-to-Native Compiler

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

XINCGer/Unity3DTraining was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 23 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 016f98412ea5e11756b286736f479b66ab6216d5 — the exact code this score is about.
  • Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-955b9cee9818.