Kanda SDK 0.6.0
|
This page is mainly intended for software developers to provide essential resources to help you get started with DOTS (Data-Oriented Technology Stack), Netcode, Data-Oriented Design (DOD), and the Kanda SDK. Whether you're transitioning from Quantum to DOTS or new to DOD, this guide will point you to the right learning materials.
If you are not a developer, this video could still provide you with a bit of insight to how DOTS is to use in the Unity Editor, compared to the classic GameObject workflow Debugging and Editor Tools
If you are new to Data-Oriented Design, the following resources will help you grasp the fundamentals and understand why it is a powerful approach for optimizing performance.
This talk challenges traditional object-oriented design approaches by emphasizing the importance of data structures and access patterns. Mike Acton explains why DOD is essential for optimizing performance on modern hardware and how aligning data management with hardware capabilities leads to more efficient, scalable systems.
The talk also touches on how to promote good architecture. A nice quote from Mike is "The only future proof system is a system that is easy to delete".
Scott Meyers provides a detailed explanation of how CPU caches work and why the layout of data in memory can significantly affect performance. This talk is essential for understanding how to structure data for performance-critical systems, helping developers optimize memory and CPU usage.
This book offers a comprehensive guide on optimizing software performance through efficient data organization. It dives deep into memory access patterns, CPU architecture, and the critical role of data locality and parallelism in improving performance, especially for real-time systems like games.
The following resources will help you understand and implement DOTS in your projects.
This short ebook introduces the core concepts of Data-Oriented Design and explains the key DOTS packages and the foundational principles they are built on. It’s a quick and accessible starting point for understanding DOTS architecture.
This course covers the best practices for using DOTS and DOD. It offers a comprehensive overview of how to design efficient data structures and implement performance-optimized systems in Unity, making it ideal for beginners starting with DOTS.
These up-to-date DOTS starter samples are a great way to get hands-on experience with DOTS. The accompanying videos by Brian Will provide in-depth walkthroughs of each sample, making it easier to understand DOTS code structure, patterns, and best practices.
This video explores Unity’s debugging and editor tools specifically designed for DOTS, including the Hierarchy and Inspector views, Profiler modules, Systems window, and entities journaling. It's an invaluable resource for learning how to monitor and optimize DOTS-based systems in the Unity Editor.
This talk from Unite Copenhagen focuses on various methods for handling entity interactions in DOTS. Although some code snippets are slightly outdated, it remains an insightful guide for learning different strategies to manage communication between entities in a DOTS-based architecture.
The official Unity documentation for Netcode provides a solid foundation for learning how to implement multiplayer functionality. It covers core topics like setting up connections, synchronizing data, and managing networking in DOTS and ECS-based systems.
If you want to contribute directly to the Kanda SDK, please check out the Kanda SDK Contribution Guidelines