- 两位主创:Niklas Frykholm, Tobias Persson
- 八卦:Niklas Frykholm 最近改名 Niklas Gray,应该是结婚了 :-)
- Tricia Gray 如何加入他们,可以看:Our Origin Story
- 2017年,Stingray 解散,两位主创连同 Tricia Gray 开始创建 The Machinery
- 2014年,Bitsquid 被 Autodesk 买了,改名 Stingray
- 2010年,Bitsquid 的 Direct3D 11 技术演示 Stone Giant Demo
Development Philosophy
- 2017.03.03 - Physical Design of The Machinery
- 2017.03.18 - Our Development Methodology
- 2017.03.24 - One-button Source Code Builds
- 2017.06.26 - Defaulting to Zero
- 2017.09.05 - Moving away from GitFlow
Data Structure
- 2018.01.08 - Minimalist container library in C (part 1)
- 2018.01.29 - Minimalist container library in C (part 2)
- 2019.07.23 - Data Structures Part 1: Bulk Data
- 2019.08.14 - Data Structures Part 2: Indices
- 2019.09.18 - Data Structures Part 3: Arrays of arrays
Engine Architecture
- 2017.03.27 - Fiber-based Job System
- 2017.05.16 - Little Machines Working Together (Part 1)
- 2017.06.05 - Little Machines Working Together (Part 2)
- 2017.08.14 - DLL Hot Reloading in Theory and Practice
- 2017.11.27 - Should entities support multiple instances of the same component?
- 2018.02.18 - The Document Model and The Machinery
- 2019.04.17 - Referencing Objects: Names vs GUIDs
- 2019.07.08 - Syncing a data-oriented ECS with a stateful external system
- 2020.03.27 - Recording Statistics - An Exercise in Minimalism
- 2020.07.29 - Prototypes in The Machinery
The Truth - Multi-Threading Data Model
- 2017.10.16 - Multi-Threading The Truth
- 2017.11.06 - Virtual Memory Tricks
- 2018.11.07 - The Story behind The Truth: Designing a Data Model
Rendering Pipeline
- 2017.05.09 - A Modern Rendering Architecture
- 2017.05.30 - Efficient Binding of Shader Resources
- 2017.08.28 - High-Level Rendering Using Render Graphs
- 2017.08.18 - Simple Parallel Rendering
- 2017.10.08 - It's All About The Data
- 2018.01.22 - Explicit Multi-GPU Programming
- 2018.10.23 - Entity-Component-Systems and Rendering
- 2018.12.05 - The Anti-Feature Dream
- 2019.04.04 - Creation Graphs
- 2019.05.29 - The Machinery Asset Pipeline
- 2019.09.17 - Vertex Assembly and Skinning
- 2019.12.02 - More on Creation Graphs
- 2020.03.06 - Borderland between Rendering and Editor - Part 1
- 2020.04.14 - GPU Simulation
- 2020.05.26 - Borderland between Rendering and Editor - Part 2
- 2020.07.15 - Subgraphs and Function Graphs
- 2020.09.22 - Borderland between Rendering and Editor — Part 3: Selection Highlighting
Renderer - Shader System
- 2018.02.12 - The Machinery Shader System (part 1)
- 2018.04.17 - The Machinery Shader System (part 2)
- 2018.05.29 - The Machinery Shader System (part 3)
Renderer Backend - Vulkan
- 2017.10.30 - Vulkan: Descriptor Sets Management
- 2017.11.20 - Vulkan: Command Buffer Management
- 2017.12.11 - Vulkan: Pipelines and Render States
- 2018.08.29 - Device Memory Management
GUI
- 2017.06.09 - UI Rendering using Primitive Buffers
- 2017.07.17 - One Draw-call UI
- 2017.08.07 - DPI-aware IMGUI
- 2017.09.25 - Keyboard Focus and Event Trickling in Immediate Mode GUIs
- 2018.05.01 - Implementing drag-and-drop in an IMGUI
- 2018.07.11 - Making the move/rotate/scale gizmos work with any component
- 2019.01.14 - Localization in The Machinery's UI
Sound
Misc
Marketing
- 2017.09.11 - How to Marketing (A 10-Part Mini Series)
- 2017.10.24 - Marketing Miniseries: Part 2 User Groups and User Conferences
- 2017.11.13 - Marketing Mini Series Part 3: Branding
- 2017.12.04 - Marketing Mini Series Part 4: PR (Public Relations)
- 2018.01.16 - Marketing Mini Series Part 5: Demos
- 2018.02.05 - Marketing Mini Series Part 6: Co-Marketing/Partner Efforts
- 2018.02.27 - Marketing Mini Series Part 7: Websites
- 2018.05.17 - Marketing Mini Series Part 8: Online Marketing 101: The Four Pillars
- 2018.06.28 - Marketing Mini Series Part 9: Internal Marketing
- 2018.10.02 - Marketing Mini Series Part 10: Community Management
Work & Life
- 2017.03.22 - Day 1 Blog
- 2017.04.10 - Our Origin Story
- 2017.05.01 - Quality Life, Quality Work
- 2017.05.22 - Finding Alignment
- 2017.06.12 - The Importance of Diversity
- 2017.07.05 - Interviewing Part 1: The Interviewee
- 2017.07.24 - Interviewing Part 2: The Interviewer
- 2017.08.21 - Let's All Go to the Conference
Release Notes
- 2021.08.26 - The Machinery (version 2021.8)
- 2021.07.29 - The Machinery (version 2021.7)
- 2021.05.31 - The Machinery Beta (version 2021.6)
- 2021.05.31 - The Machinery Beta (version 2021.5)
- 2021.04.29 - The Machinery Beta (version 2021.4)
- 2021.03.31 - The Machinery Beta (version 2021.3)
- 2021.02.26 - The Machinery Beta (version 2021.2)
- 2021.01.28 - The Machinery Beta (version 2021.1)
- 2020.12.16 - The Machinery Beta (version 2020.12)
- 2020.11.20 - The Machinery Beta (version 2020.11)
- 2020.09.30 - The Machinery Beta (version 2020.9)
- 2020.08.28 - The Machinery Beta (version 2020.8)
- 2020.07.20 - The Machinery Beta (version 2020.7)
- 2020.06.17 - The Machinery Beta (version 2020.6)
- 2020.05.15 - The Machinery Beta (version 2020.5)
- 2020.04.10 - The Machinery Beta (version 2020.4)
- 2020.03.18 - The Machinery Beta (version 2020.3)
- 2020 - GDC - Writing Tools Faster - Design Decisions to Accelerate Tool Development
- The Machinery - An Incredibly Unique New Game Engine
- Youtube Video by Niklas
- Stingray Engine Code Walkthrough
- Blog by Tobias
- Overview
- Resources & Resource Contexts
- Render Contexts
- Sorting
- RenderDevice
- RenderInterface
- Data-driven rendering
- stingray-renderer & mini-renderer
- 2014 - GDC - Scripting Particles: Getting Native Speed from a Virtual Machine
- 2013 - GDC - Working Together: Solutions for Collaborative Asset Creation
- 2012 - GDC - Cutting the Pipe: Achieving Sub-Second Iteration Times
- 2012 - GDC - Flexible Rendering for Multiple Platforms
- 2012 - GDC - Advanced Visual Effects with DirectX 11 (Practice Particle Rendering)
- Flow - Data-Oriented Implementation of a Visual Scripting Language
- Bitsquid: Behind the Scene