This is a TypeScript-first React library (`react-unity-webgl`) that embeds Unity WebGL builds into React applications. The `module/source` directory contains the actual npm package: a `Unity` forward-ref component that mounts a canvas and manages the Unity instance lifecycle, plus custom hooks (`useUnityContext`, `useUnityLoader`, `useEventSystem`, `useUnityMetricsInfo`) that encapsulate script loading, two-way Unity↔React event bridging, fullscreen/pointer-lock/screenshot controls, and performance metric polling. The repo is a monorepo with a Docusaurus documentation site (versioned v5 through current) and a Vite + React integration-test harness backed by two prebuilt Unity test projects (2022.1 and 6000.1). Architecturally, Unity instances push events to React through a global `dispatchReactUnityEvent` function wired into the hook-level event system; React sends messages back through `UnityInstance.SendMessage`. The library has no runtime dependencies beyond React peer support, relying on Unity's generated loader/framework/wasm output and on browser WebGL, IndexedDB, and sensor APIs. A notable implementation detail is a cleanup-on-unmount routine that swaps in a temporary detached canvas to safely call Unity's `Quit()` method. The codebase is well organized and strongly typed, with clear separation between components, hooks, and types. CI workflows for CodeQL, module validation, and documentation validation are present, and the last commit is recent. However, there are no automated unit tests (only a manual integration app), the lint script is a placeholder, CI uses older action versions, and the Unity version-specific bridge code will need maintenance as Unity evolves.
This repository is a Unity shader asset package (com.llcheesell.led_screen_shader) that provides a high-fidelity, multi-pipeline HLSL shader for simulating LED displays. It supports both HDRP and URP pipelines (with a built-in fallback marked as unsupported), featuring subpixel RGB masking, procedural pattern generation (honeycomb, stripe, rectangle), screen-space density fade for anti-aliasing, cabinet grid with brightness variance, hotspot/glow effects, and TAA ghost prevention via motion vector invalidation. The package includes a custom material inspector GUI with foldable property sections, a migration tool to automatically detect and upgrade legacy Shader Graph materials, sample scenes with post-processing volumes, and detailed textures. The shader is designed for real-time rendering of realistic LED panels in architectural visualization, broadcast, or simulation contexts.
OpenUPM is a community-driven curated registry of Unity packages, hosted as a YAML metadata repository. The repository contains structured package manifests (name, description, license, source URL, topics, etc.) for thousands of Unity UPM packages, organized into released and unreleased categories. It includes a CI pipeline for automated validation of data changes, a PR comment bot for contributor guidance, and issue templates for governance (rename, replace, unpublish). The actual validation logic lives in a separate repository (openupm-next), making this repo primarily a data store with orchestration scripts. While not a traditional data research project with notebooks or models, it exemplifies a well-governed curated dataset with automated quality checks.
RealtimeCSG is a real-time constructive solid geometry (CSG) level design tool for Unity. It operates exclusively as an Editor extension, providing non-destructive boolean operations on brushes (box, sphere, cylinder, stairs, free-draw) with immediate visual feedback in the Scene view. The architecture is manager-driven: `InternalCSGModelManager` orchestrates hierarchy updates, mesh generation, and caching, while a native C++ DLL handles performance-critical CSG calculations. The tool offers multiple edit modes (Generate, Edit, Clip, Place, Surface) each with custom scene tools, handles, and inspector GUIs. It supports material assignment, UV editing, export to FBX or Unity prefab, and includes a full half-edge mesh representation (`ControlMesh`) for local mesh editing (vertex/edge/polygon). The codebase heavily relies on Unity Editor APIs, reflection to access internal Unity systems, and conditionals for cross-version compatibility. It is a production-grade, feature-rich tool used in game development workflows, though the closed-source native core and editor-only architecture limit runtime usage and cross-platform deployment.
This repository contains two distinct Unity projects: the Unity Playground, an educational framework for teaching 2D physics game development through modular scripts and example scenes (Adventure, Defender, Maze, Lander, etc.), and the com.unity.asset-store-tools, an Editor extension for publishing packages to the Unity Asset Store. The Playground provides atomic movement, condition, action, and attribute components that can be combined visually in the Editor, with custom inspectors to guide beginners. The Asset Store Tools implement a full publishing workflow including package validation (30+ automated tests), preview generation (native and custom), package exporting, and upload with authentication and analytics. Both projects are well-structured with clear separation of concerns, but the Asset Store Tools show signs of version-specific conditional compilation and reliance on internal Unity APIs, indicating medium technical drift. The Playground examples are simple but functional, while the tools demonstrate more advanced patterns like service providers and interface-based validation frameworks.
OpenMod is a .NET-based plugin framework designed for extensibility across game servers and applications. It provides core services including dependency injection, event handling, command processing, permission systems, user management, and configuration management. The framework features a modular architecture with platform-specific adapters for games like Unturned and Rust, enabling developers to create plugins that extend functionality without modifying the core. The system uses an event-driven approach for loose coupling and supports self-updating via NuGet package management. While primarily focused on game server modding, the core abstractions are general enough to apply to other extensible application scenarios.
This repository is a Unity-based MMORPG framework that extends the MultiplayerARPG template to support a multi-server architecture with central, map, and database servers. The client provides a full pre-game UI flow (login, registration, server/channel selection, character creation) and in-game features such as guilds, parties, mail, cash shop, gacha, storage, and IAP validation. The server is component-based, with CentralNetworkManager handling authentication and character operations, MapNetworkManager managing per-map gameplay and persistence, and DatabaseNetworkManager abstracting SQLite/MySQL storage. Data flows involve periodic saving of player and building state via data updaters with hash-based change tracking, and caching of social data (parties, guilds) with configurable refresh intervals. External dependencies include LiteNetLib for networking, SQLite/MySQL for databases, and custom ASN.1 parsers for Apple/Google Play receipt validation. The codebase demonstrates modular design through interfaces (IDatabaseClient, IChatProfanityDetector, IIAPReceiptValidator) and reusable utilities (MiniJSON, Asn1Processor).
Il2CppMemoryDumper is a shell script designed to extract Il2Cpp metadata and native libraries from the memory of a running Android process. It operates by scanning the target process's memory maps for regions associated with libil2cpp.so, global-metadata.dat, and split-config APKs, then dumps these regions to files after verifying their content via magic number checks. The script includes logic to merge adjacent memory regions for ELF files and handle anonymous .bss sections, outputting files with naming conventions based on memory offsets. It is intended for use in a rooted Android shell environment and relies solely on standard Linux utilities (awk, bc, dd, grep, etc.) without external dependencies.
FlyDangerous is a Unity-based space flight game featuring multiple game modes such as time trial, free roam, and multiplayer. The game includes a variety of ships (like the Puffin and Calidris) and procedurally generated tracks with different themes. It integrates Steamworks for online leaderboards and multiplayer, and uses the Mirror networking library for multiplayer functionality. The project also incorporates custom UI elements and supports haptic feedback via Bhaptics. The architecture follows a modular structure with separate concerns for core game systems, gameplay mechanics, user interface, and networking. Key systems include a custom input processor suite, a flexible UI framework (FdUI), and an abstraction layer for online services that allows swapping between different backend implementations (e.g., Steam). The game leverages Unity's new Input System and includes various visual and audio enhancements. While the codebase demonstrates solid engineering practices in certain areas—such as the online services abstraction and custom UI controls—it shows signs of technical drift due to bundled dependencies and potential use of outdated third-party libraries. The repository appears to be stale, with no recent commits evident from the provided data, and a high number of open issues suggesting possible maintenance challenges.
This is the Solana.Unity-SDK, a comprehensive Unity package for integrating Solana blockchain functionality into games and applications. It provides multiple wallet connection methods (in-game wallet, Web3Auth social login, Phantom/Solflare deep links, Mobile Wallet Adapter for Android, WebGL browser wallets), transaction signing, NFT minting via Metaplex Candy Machines (including a full editor toolchain for deployment), DEX swap aggregation (Jupiter), domain resolution (.skr), and cross-platform compatibility (Android, iOS, WebGL). The SDK bundles its own async infrastructure (UniTask 2.5.0) and includes sample UI screens for a wallet application. It is architectured around a central Web3 singleton, an abstract WalletBase class with concrete implementations, and platform-specific adapter classes. The codebase is well-structured with clear separation of concerns, but suffers from some monolithic classes (e.g., Web3Auth, CandyMachineController) and reliance on hardcoded endpoints and program IDs. The editor tools are fully functional but tightly coupled to the UnityEditor API. Overall, it is a professional-grade SDK with moderate reusability of its individual components.
This repository is a static website hosted on GitHub Pages that curates resources for multiplayer game networking. It provides a comprehensive list of articles, videos, libraries, and tools related to game netcode, including topics like latency compensation, deterministic simulation, and various networking libraries. The site is built using Jekyll, with the content primarily in the README.md file. The repository also includes a trivial C program that prints a description of the project. While the repository is classified as an application (a static web site), it also functions as a curated data resource. The content is regularly updated, as evidenced by the inclusion of upcoming events (e.g., Bali 2025, Orlando 2025) in the README.md, indicating active maintenance. However, the codebase itself lacks reusable components, consisting mainly of configuration files and trivial code.
This repository is an extensive collection of over 500 standalone shader examples, compute shader implementations, and supporting C# scripts for Unity, authored by Przemysław Zaworski. It covers a wide breadth of real‑time graphics techniques including raymarching, procedural texture generation, vertex/tessellation/geometry shaders, compute‑based physics, image post‑processing (bloom, HDR, SSAO), fluid simulation, grid‑based simulations (Voronoi, Marching Cubes), and advanced rendering like DirectX Raytracing path tracing. The codebase is primarily educational and demonstrative; each file typically implements a single effect or technique in a self‑contained manner, often with references to original Shadertoy sources, ReShade conversions, or published papers. While many examples are functional and well‑structured, others include incomplete fixes or stale comments, and overall the repository serves as a large reference library rather than a production application. The quality is average—many components are boileplate‑heavy ports—but several pieces, such as the Marching Cubes compute shader with indirect draw, the multipass fluid simulation, and the volume rendering tools, exhibit solid craftsmanship and are extractable for reuse.
This repository provides a comprehensive research codebase for AI-driven character animation, spanning multiple SIGGRAPH publications from 2017 to 2024. It includes deep learning model training scripts (TensorFlow for PFNN, MANN, NSM; PyTorch for GNN, PAE, Codebook Matching) and corresponding Unity integration for real-time inference and visualization. The codebase ingests motion capture data (BVH, FBX, TRC), processes it through a Unity-based data pipeline (MotionData, Frame, Modules), trains phase-functioned or mode-adaptive networks, and exports trained weights for runtime use. The repository is hybrid: primarily a research project with both data pipeline (motion capture processing, feature extraction) and application (Unity demos, IK, visualization tools) components. It is not a standalone library but a reference implementation for academic publications, making it valuable for researchers and developers working on character animation, deep learning for motion, and real-time animation systems.
ShaderlabVS is a Visual Studio Extension (VSIX) designed to enhance the development experience for Unity Shaderlab, CG, and HLSL files within the Visual Studio IDE. It provides core editor features including syntax highlighting, code completion, outlining, quick info tooltips, and signature help. The architecture is divided into a core extension project (`ShaderlabVS`) that integrates with the Visual Studio Editor API, a data library (`ShaderlabVS.Data`) that manages keyword and function definitions via a custom `.def` file format, and build tools (`ShaderlabVS.LexTools`) that generate lexer tables using `gplex.exe`. Despite the functionality, the project is effectively stale and superseded. The README explicitly states that ShaderlabVS has been upgraded to "Omni Shader Tools for Unity," which features a completely rewritten parser. The codebase targets Visual Studio 2013, 2015, and 2017, relying on .NET Framework 4.5 and older VSSDK APIs. This makes it incompatible with modern Visual Studio versions (2019/2022) without significant refactoring. While the code demonstrates solid engineering practices for its time (MEF usage, separation of data/logic, unit tests), it is no longer the recommended solution for Unity shader development in Visual Studio. The repository contains a custom lexer generator and a robust data parsing system that could serve as a reference for building language services, but the extension itself is legacy. Users seeking similar functionality should migrate to the Omni Shader Tools project mentioned in the README.
This repository is an 'awesome list' – a curated directory of open-source resources for Unity game development. It categorizes hundreds of links to projects, packages, assets, tools, and educational materials, spanning categories such as 2D, AI, networking, UI, shaders, and more. The primary function is to serve as a reference index, not as an executable application or data pipeline. It contains no code beyond configuration files and a README. The list is actively maintained (last updated in August 2025) and follows standard contribution guidelines. It is a valuable discovery tool but offers no reusable software components or unique data engineering patterns.
This repository is a curated list of open-source Unity projects and tools, organized by categories such as shaders, editor extensions, UI components, scripts, mobile plugins, and more. It contains no source code itself; it serves as a directory of links to external repositories. The list is comprehensive and well-organized, making it a valuable resource for Unity developers seeking reusable components, learning materials, and inspiration. However, as a list, it does not demonstrate any code craftsmanship, architecture, or reusability of its own.
This repository (focus-creative-games/il2cpp_plus) on the main branch contains no source code—only a .gitignore, LICENSE, and README. The README explicitly states that the main branch has no code and instructs users to switch to the correct version. Based on the README, the project is a modification of the il2cpp AOT runtime to support dynamic registration of DLL metadata, and it requires the HybridCLR interpreter to function. However, without any actual code present in this branch, no functional analysis, architecture assessment, or component evaluation is possible. The repository appears to be a placeholder or intentionally empty on this branch, making it impossible to assess quality, maintenance, or reusability from the provided files.