diff --git a/src/data/roadmaps/game-developer/content/100-game-developer-roadmap-note.md b/src/data/roadmaps/game-developer/content/100-game-developer-roadmap-note.md deleted file mode 100644 index 08cce0bcf..000000000 --- a/src/data/roadmaps/game-developer/content/100-game-developer-roadmap-note.md +++ /dev/null @@ -1,3 +0,0 @@ -# Note - -These roadmaps cover everything that is there to learn for the paths listed below. Don't feel overwhelmed, you don't need to learn it all in the beginning if you are just getting started. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/101-reflection/diffuse.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/101-reflection/diffuse.md deleted file mode 100644 index adf16d419..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/101-reflection/diffuse.md +++ /dev/null @@ -1,3 +0,0 @@ -# Diffuse - -**Diffuse** shading is one of the fundamental aspects within a game's graphics system. It is a property of light that allows it to scatter in an infinite number of directions after striking a surface, resulting in a soft, washed-out, and non-specular appearance. This type of reflection is visible from all angles regardless of the viewer's perspective, giving objects in video games a more realistic, three-dimensional look. It's essential for modeling the way light hits flat, matte, or non-shiny surfaces like cloth or rough stone. Factors such as the angle of incidence and the light's intensity do influence the brightness of the diffuse reflection. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/101-reflection/specular.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/101-reflection/specular.md deleted file mode 100644 index fe54d8986..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/101-reflection/specular.md +++ /dev/null @@ -1,3 +0,0 @@ -# Specular - -Specular reflection, often referred to simply as "specularity", pertains to the glossiness of a gaming object's surface. It represents the mirror-like reflection of light from the surface, providing that shiny, polished appearance on the objects. The specular value details how much of the light hitting the object is reflected directly into the viewer's eyes, creating a bright, shiny spot. This reflective value can be fine-tuned using the specular color and intensity settings to match specific object properties – like the reflectiveness of plastic versus metal. In practice, this is often used to simulate the subtle reflections from the rough surface, offering a greater sense of realism in the game's visual representation. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/bump.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/bump.md deleted file mode 100644 index 1f1cd04d1..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/bump.md +++ /dev/null @@ -1,3 +0,0 @@ -# Bump - -Bump mapping is a technique in computer graphics for simulating bumps and wrinkles on the surface of an object. This is achieved by modifying the surface normals of the object and using the modified normals during lighting calculations. The result is an apparently bumpy surface rather than a smooth surface, despite the surface geometry being unchanged. Normal maps, which are a type of bump map, store the perturbations of the surface normals in an RGB image. When applied to a model, they can greatly enhance the level of perceived detail without increasing the polygon count. To emphasize, bump mapping doesn't change the geometry of the model, only the lighting calculations across its surface. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/horizon.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/horizon.md deleted file mode 100644 index 3d27e5d42..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/horizon.md +++ /dev/null @@ -1,3 +0,0 @@ -# Horizon - -In the context of game development, "horizon" is typically referred to as the farthest point visible in a game's terrain, map, or landscape. It's where the sky meets the ground from the player's perspective. The manipulation of the horizon can greatly influence the immersion and realism of a game world. For instance, developers often use techniques like "Horizon Mapping" or "SkyBox" to visually represent the horizon and far-off scenery. A detailed and well-designed horizon can add vastness into the world, even if the playable area is limited. However, the horizon also poses performance considerations, as rendering vast landscapes can lead to extensive processing demands and memory consumption. Therefore, techniques like fogging, level of detail (LOD) reduction, and horizon occlusion are often used to manage the performance. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/parallax.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/parallax.md deleted file mode 100644 index 9c93d183b..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/parallax.md +++ /dev/null @@ -1,3 +0,0 @@ -# Parallax - -Parallax is a powerful technique employed in game development to establish depth in 2D games. The term 'Parallax' comes from the Greek word 'parallaxis', which means alteration. In game development, parallax creates an illusion of depth by making background images move slower compared to the foreground images when the player moves. This is due to the phenomenon where objects that are farther away seem to move at a slower speed compared to closer ones. There are different types of parallax techniques like the traditional parallax scrolling, multi-layered parallax, and parallax mapping. Parallax Mapping, also known as offset mapping or virtual displacement mapping, is a method used to fake details on a surface to give the illusion of depth or surface irregularities. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/texture.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/texture.md deleted file mode 100644 index e0553d13d..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/texture.md +++ /dev/null @@ -1,4 +0,0 @@ -# Texture - - -**Texture** refers to the 2D artwork added on a 3D model to give it a convincing and detailed appearance in video games. These textures can represent various properties like color, reflectivity, light absorption, transparency, etc., depending on the needs of the game. Textures can be created through various methods like drawing, painting, or photography and then manipulated digitally. Depending on the topological structure of the 3D model, it can be directly textured (in case of UV maps) or through procedural methods. Different types of textures like albedo/diffuse, specular, normal/bump, displacement are used to achieve different visual effects. The texturing process is a crucial step in game development as it greatly enhances the realism and appeal of the 3D environment and characters. diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/101-shadow-map/2d.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/101-shadow-map/2d.md deleted file mode 100644 index 8ac757dbf..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/101-shadow-map/2d.md +++ /dev/null @@ -1,3 +0,0 @@ -# 2D - -2D, or two-dimensional, refers to games or elements that are designed on a two-dimensional plane. It's a classic method in game development and it's primarily used for platformers, puzzles, RPGs (Role-playing Games), and arcade games. In 2D games, the graphics are typically a bit simpler since they only deal with height and width, disregarding depth. Examples of graphical assets used in 2D game development are sprites and tilemaps. For coding and physics, it uses simpler mathematics compared to 3D. Some of the popular 2D game development engines are `Unity 2D`, `Godot`, and `GameMaker Studio 2`. These engines simplify the process of developing 2D games, providing tools and features such as 2D physics, sprite manipulation, and AI (Artificial Intelligence) pathfinding specific for two-dimensions. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/101-shadow-map/cascaded.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/101-shadow-map/cascaded.md deleted file mode 100644 index 4cfde2875..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/101-shadow-map/cascaded.md +++ /dev/null @@ -1,3 +0,0 @@ -# Cascaded - -"Cascaded" refers to the Cascaded Shadow Maps (CSM) technique implemented in graphical computations. It involves the procedure of dividing the view frustum, the portion of a 3D space visualized on the screen, into several sub-frustums or "cascades". Each cascade corresponds to a different shadow map, allowing various levels of details for shadows in a single render. Each cascade uses a different region of the shadow map texture, facilitating the ability to provide finer shadow detail close to the camera and coarser detail as the distance from the camera increases. This technique helps in the efficient utilization of shadow map resolution and improves visual quality by reducing aliasing artifacts in the distance. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/101-shadow-map/cube.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/101-shadow-map/cube.md deleted file mode 100644 index 88ec73615..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/101-shadow-map/cube.md +++ /dev/null @@ -1,3 +0,0 @@ -# Cube - -A **Cube** is a three-dimensional geometric figure known for its symmetric and box-like shape. It is also characterized by its equal length, width, and height dimensions. In game development, cubes can be the starting point for creating more complex 3D models. They are utilized in numerous ways such as creating physical objects, defining environments, constructing characters, and more. Furthermore, in the context of a shadow map, a cube map can be generated to deal with omnidirectional light sources. Cube mapping, a process that uses a six-sided cube as the map shape, is particularly useful for creating reflections and applying textures on 3D models. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/directional-light.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/directional-light.md deleted file mode 100644 index 98e7ae6da..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/directional-light.md +++ /dev/null @@ -1,3 +0,0 @@ -# Directional Light - -`Directional light` is a type of light commonly utilized in 3D game development. As the name suggests, this form of light appears to be coming from a specific direction, much as sunlight does in reality. In actuality, it extends infinitely in a single direction and doesn't emanate from a specific source like point or spotlights do. This property allows it to illuminate all objects within a scene uniformly. Directional light is particularly useful for replicating large and distant light sources such as the sun or moon. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/infinite-light.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/infinite-light.md deleted file mode 100644 index a39637dbc..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/infinite-light.md +++ /dev/null @@ -1,3 +0,0 @@ -# Infinite Light - -`Infinite light` in game development refers to a type of light source that emits light rays in parallel. This source is assumed to be located at an infinite distance away, hence the term 'infinite light'. Each ray of light coming from the source is regarded as a straight line. This is especially useful for simulating sunlight or far off light sources in outdoor scenes as the light rays from these sources, when received on earth, can be safely assumed to be parallel to each other. However, keep in mind that infinite light does not produce any localized lighting effects or shadows, as it dispenses even lighting throughout your scene. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/point-light.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/point-light.md deleted file mode 100644 index 7ae043abe..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/point-light.md +++ /dev/null @@ -1,3 +0,0 @@ -# Point Light - -A `Point Light` is a common light source within game development. It simulates a light radiating from a single point equally in all directions, like a light bulb in a room. Because it emits light in all directions, a point light affects every object, regardless of its orientation towards the light source. Additionally, a point light has a location in space and no directional vector, unlike a directional or spot light. It's worth noting that although point lights have an associated range or radius beyond which their intensity is zero, they can consume more computation resources compared to other types of light sources due to their influence over a larger area of the scene. Hence, careful planning is required when using point lights. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/spot-light.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/spot-light.md deleted file mode 100644 index 69268cc06..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/spot-light.md +++ /dev/null @@ -1,3 +0,0 @@ -# Spot Light - -A **Spot Light** is a type of light source used in game development, often utilized to create focused, directional lighting within a specific radius, imitating real-world sources like a flashlight or a stage spotlight. The two primary properties of a spot light are its cone angle and its fall-off. The cone angle determines the size of the illuminated area, while the fall-off controls how quickly the light diminishes towards the edges of the light cone. Spotlights can create dramatic effects and are essential in driving attention towards specific game elements or areas due to their constrained, targeted lighting. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/100-occluder/fog.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/100-occluder/fog.md deleted file mode 100644 index 637e662ed..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/100-occluder/fog.md +++ /dev/null @@ -1,3 +0,0 @@ -# Fog - -In the framework of game development, **fog** is a visual technique applied effectively for various artistic and optimization purposes. Aesthetically, it's used to simulate different atmospheric effects such as smoke, fog, mist, and dust. Fog can also be utilized to conceal or lessen the details of distant objects, hence reducing the rendering load on the system. This technique is often called "distance fog". Moreover, specialized types of fog like "volumetric fog" add a three-dimensional feel to the game, making the lighting atmosphere more immersive and realistic. Note that fog settings and effects can be adjusted based on different game engines, such as Unreal Engine, Unity, or Godot. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/101-culling/frustum.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/101-culling/frustum.md deleted file mode 100644 index f340ad28b..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/101-culling/frustum.md +++ /dev/null @@ -1,3 +0,0 @@ -# Frustum - -`Frustum` is a term commonly used in the game development industry and is intensely associated with the concept of "culling". It is the field of view of the camera, or more specifically, the portion of the world that is currently visible to your camera in the game. Shaped like a truncated pyramid (or a pyramid with its top cut off), the frustum's small end is where your camera sits, and the larger end is far away from the camera stretching outwards. Objects within this frustum are what the player sees on their screen, and ones outside are not rendered, which helps increase the performance of the game. Frustum culling, thus, is a computational process to determine which objects are within the frustum and should be drawn. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/101-culling/light.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/101-culling/light.md deleted file mode 100644 index 7cf50001d..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/101-culling/light.md +++ /dev/null @@ -1,3 +0,0 @@ -# Light - -Lighting in game development is crucial for creating an immersive and realistic gaming experience. There are several types of light sources, including directional light, point light, and spotlights. Directional light simulates sun or moonlight with parallel rays illuminating the game world. Point light emanates from a single point in all directions, similar to a light bulb. Spotlights produce a cone of light, similar to a flashlight or a stage spotlight. Then, there's Ambient light which creates a base level of light that hits every surface equally, regardless of its orientation or position, making sure no area is ever in complete darkness. These different sources of light can be manipulated to create the desired mood and aesthetic in a scene. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/101-culling/shadow.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/101-culling/shadow.md deleted file mode 100644 index c9a9b4138..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/101-culling/shadow.md +++ /dev/null @@ -1,3 +0,0 @@ -# Shadow - -Shadows contribute significantly to the realism of a virtual scene in gaming. They play a pivotal role in determining an object's position relative to other objects and surfaces. Shadows are largely incorporated through two major techniques in game development: 'Shadow Mapping' and 'Shadow Volumes'. Shadow Mapping is a process that involves creating a depth map from the light source's point of view. Shadow Volumes, on the other hand, use stencil buffers to draw shadows onto scenes. These are computationally intense processes which can be optimized using various techniques such as Cascaded Shadow Maps, and Umbra and Penumbra calculations. Furthermore, developers have the challenge to implement dynamic shadows that react to changing light sources and positions, as well as static shadows for non-moving objects. It's essential that developers learn how to implement, optimize and balance shadows effectively to provide immersive and dynamic game play experiences. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/102-clipping/polygon.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/102-clipping/polygon.md deleted file mode 100644 index 80c3488ad..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/102-clipping/polygon.md +++ /dev/null @@ -1,3 +0,0 @@ -# Polygon - -`Polygon` is a fundamental term used in computer graphics and game development. It is a plane figure that is described by a finite number of straight line segments connected to form a closed polygonal chain or polygonal circuit. The segments that form a polygon are known as its edges or sides, and the points where the edges meet are the polygon's vertices. In 3D modeling, polygons are used to create the surfaces of objects. Triangles, rectangles, pentagons, hexagons are examples of polygons. Complex 3D models are made up of numerous polygons. Polygons are crucial to determining the detail of 3D models in games; higher polygon counts usually mean higher detail. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/102-clipping/polyhedron.md b/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/102-clipping/polyhedron.md deleted file mode 100644 index c043bc754..000000000 --- a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/102-clipping/polyhedron.md +++ /dev/null @@ -1,3 +0,0 @@ -# Polyhedron - -A **Polyhedron** is a three-dimensional geometric shape, whose faces are polygons. These are bound by straight lines creating a closed shape with flat surfaces and straight edges. Each of the corners or vertices of these shapes meets an equal number of edges. Some common examples include the cube, the pyramid, and the prism. Each polyhedron has a set of properties including volume, surface area and the number of vertices, edges, and faces. The sum of the angles of the polygonal faces gives the total angular defect of the polyhedron. These are fundamental elements in 3D modeling and graphics rendering within the field of game development. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/2d@Wq8siopWTD7sylNi0575X.md b/src/data/roadmaps/game-developer/content/2d@Wq8siopWTD7sylNi0575X.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/bounding-volume/aabb.md b/src/data/roadmaps/game-developer/content/aabb@aTeYGd4JlPr5txNPyBezn.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/bounding-volume/aabb.md rename to src/data/roadmaps/game-developer/content/aabb@aTeYGd4JlPr5txNPyBezn.md diff --git a/src/data/roadmaps/game-developer/content/107-game-api/102-board-game/101-ab-pruning.md b/src/data/roadmaps/game-developer/content/ab-pruning@KYCi4d475zZfNwlj6HZVD.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/102-board-game/101-ab-pruning.md rename to src/data/roadmaps/game-developer/content/ab-pruning@KYCi4d475zZfNwlj6HZVD.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/101-acceleration.md b/src/data/roadmaps/game-developer/content/acceleration@ejZMnxZ0QrN-jBqo9Vrj8.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/101-acceleration.md rename to src/data/roadmaps/game-developer/content/acceleration@ejZMnxZ0QrN-jBqo9Vrj8.md diff --git a/src/data/roadmaps/game-developer/content/109-advanced-rendering/index.md b/src/data/roadmaps/game-developer/content/advanced-rendering@CDYszS1U4v95GozB_drbt.md similarity index 100% rename from src/data/roadmaps/game-developer/content/109-advanced-rendering/index.md rename to src/data/roadmaps/game-developer/content/advanced-rendering@CDYszS1U4v95GozB_drbt.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/105-affine-space.md b/src/data/roadmaps/game-developer/content/affine-space@r5TcXQsU9s4NlAQIPvZ3U.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/105-affine-space.md rename to src/data/roadmaps/game-developer/content/affine-space@r5TcXQsU9s4NlAQIPvZ3U.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/105-affine-transformation.md b/src/data/roadmaps/game-developer/content/affine-transformation@SkCreb6g4i-OFtJWhRYqO.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/105-affine-transformation.md rename to src/data/roadmaps/game-developer/content/affine-transformation@SkCreb6g4i-OFtJWhRYqO.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/103-angular-velocity.md b/src/data/roadmaps/game-developer/content/angular-velocity@Y7HYY5eq7OG42V9yQz0Q1.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/103-angular-velocity.md rename to src/data/roadmaps/game-developer/content/angular-velocity@Y7HYY5eq7OG42V9yQz0Q1.md diff --git a/src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/104-artificial-neural-network.md b/src/data/roadmaps/game-developer/content/artificial-neural-network@AoH2r4EOHyZd8YaV24rBk.md similarity index 100% rename from src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/104-artificial-neural-network.md rename to src/data/roadmaps/game-developer/content/artificial-neural-network@AoH2r4EOHyZd8YaV24rBk.md diff --git a/src/data/roadmaps/game-developer/content/104-programming-languages/102-assembly.md b/src/data/roadmaps/game-developer/content/assembly@AaRZiItRcn8fYb5R62vfT.md similarity index 100% rename from src/data/roadmaps/game-developer/content/104-programming-languages/102-assembly.md rename to src/data/roadmaps/game-developer/content/assembly@AaRZiItRcn8fYb5R62vfT.md diff --git a/src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/102-behavior-tree.md b/src/data/roadmaps/game-developer/content/behavior-tree@ztoW8fBY73Es624A_tjd7.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/102-behavior-tree.md rename to src/data/roadmaps/game-developer/content/behavior-tree@ztoW8fBY73Es624A_tjd7.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/102-bezier.md b/src/data/roadmaps/game-developer/content/bezier@DUEEm9sAaZqSI-W-PFZ8f.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/102-bezier.md rename to src/data/roadmaps/game-developer/content/bezier@DUEEm9sAaZqSI-W-PFZ8f.md diff --git a/src/data/roadmaps/game-developer/content/107-game-api/102-board-game/index.md b/src/data/roadmaps/game-developer/content/board-game@eoK70YRCz73GmzbNhh5kg.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/102-board-game/index.md rename to src/data/roadmaps/game-developer/content/board-game@eoK70YRCz73GmzbNhh5kg.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/bounding-volume/index.md b/src/data/roadmaps/game-developer/content/bounding-volume@PLR_4yoRifoTzkOR4c7ym.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/bounding-volume/index.md rename to src/data/roadmaps/game-developer/content/bounding-volume@PLR_4yoRifoTzkOR4c7ym.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/index.md b/src/data/roadmaps/game-developer/content/broad-phase@AKd2UpITqBZV7cZszSRps.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/index.md rename to src/data/roadmaps/game-developer/content/broad-phase@AKd2UpITqBZV7cZszSRps.md diff --git a/src/data/roadmaps/game-developer/content/bump@r4UkMd5QURbvJ3Jlr_H9H.md b/src/data/roadmaps/game-developer/content/bump@r4UkMd5QURbvJ3Jlr_H9H.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/108-buoyancy.md b/src/data/roadmaps/game-developer/content/buoyancy@WzcmdW_fKHv3gwdBnvI0_.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/108-buoyancy.md rename to src/data/roadmaps/game-developer/content/buoyancy@WzcmdW_fKHv3gwdBnvI0_.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/spatial-partitioning/bvh/index.md b/src/data/roadmaps/game-developer/content/bvh@FCc5xwb_G3VsDRXOcg3hV.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/spatial-partitioning/bvh/index.md rename to src/data/roadmaps/game-developer/content/bvh@FCc5xwb_G3VsDRXOcg3hV.md diff --git a/src/data/roadmaps/game-developer/content/104-programming-languages/101-csharp.md b/src/data/roadmaps/game-developer/content/c@Ph3ZqmSnwwzUBUC-6dgf-.md similarity index 100% rename from src/data/roadmaps/game-developer/content/104-programming-languages/101-csharp.md rename to src/data/roadmaps/game-developer/content/c@Ph3ZqmSnwwzUBUC-6dgf-.md diff --git a/src/data/roadmaps/game-developer/content/cascaded@Lu38SfZ38y89BffLRMmGk.md b/src/data/roadmaps/game-developer/content/cascaded@Lu38SfZ38y89BffLRMmGk.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/103-catmull-rom.md b/src/data/roadmaps/game-developer/content/catmull-rom@N9GoA3YvOaKwYjljj6NZv.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/103-catmull-rom.md rename to src/data/roadmaps/game-developer/content/catmull-rom@N9GoA3YvOaKwYjljj6NZv.md diff --git a/src/data/roadmaps/game-developer/content/104-programming-languages/100-c-cpp.md b/src/data/roadmaps/game-developer/content/cc@jsq0UXnIIC0Z_nbK2w48f.md similarity index 100% rename from src/data/roadmaps/game-developer/content/104-programming-languages/100-c-cpp.md rename to src/data/roadmaps/game-developer/content/cc@jsq0UXnIIC0Z_nbK2w48f.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/100-ccd.md b/src/data/roadmaps/game-developer/content/ccd@1yK8TH4Pn7Ag8VQoug54i.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/100-ccd.md rename to src/data/roadmaps/game-developer/content/ccd@1yK8TH4Pn7Ag8VQoug54i.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/100-center-of-mass.md b/src/data/roadmaps/game-developer/content/center-of-mass@HWtU4q-YPXxSi64t43VNF.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/100-center-of-mass.md rename to src/data/roadmaps/game-developer/content/center-of-mass@HWtU4q-YPXxSi64t43VNF.md diff --git a/src/data/roadmaps/game-developer/content/100-client-side.md b/src/data/roadmaps/game-developer/content/client-side-development@rQArtuVKGVgLn_fw9yO3b.md similarity index 100% rename from src/data/roadmaps/game-developer/content/100-client-side.md rename to src/data/roadmaps/game-developer/content/client-side-development@rQArtuVKGVgLn_fw9yO3b.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/102-clipping/index.md b/src/data/roadmaps/game-developer/content/clipping@xP_VDMu1z9jiVnZaBFKJQ.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/102-clipping/index.md rename to src/data/roadmaps/game-developer/content/clipping@xP_VDMu1z9jiVnZaBFKJQ.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/index.md b/src/data/roadmaps/game-developer/content/collision-detection@AdOfOJtLtNgDwuABb6orE.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/index.md rename to src/data/roadmaps/game-developer/content/collision-detection@AdOfOJtLtNgDwuABb6orE.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/105-color.md b/src/data/roadmaps/game-developer/content/color@WK6fLWJq9Vh2ySVrSqd-U.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/105-color.md rename to src/data/roadmaps/game-developer/content/color@WK6fLWJq9Vh2ySVrSqd-U.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/104-computer-animation.md b/src/data/roadmaps/game-developer/content/computer-animation@1RdyzTI_TXqmct2bIbNh9.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/104-computer-animation.md rename to src/data/roadmaps/game-developer/content/computer-animation@1RdyzTI_TXqmct2bIbNh9.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/index.md b/src/data/roadmaps/game-developer/content/computer-graphics@lIb5MeDoqVj6HycveOgTS.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/index.md rename to src/data/roadmaps/game-developer/content/computer-graphics@lIb5MeDoqVj6HycveOgTS.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/convexity/concave/index.md b/src/data/roadmaps/game-developer/content/concave@jslk7Gy58VspO1uXGDgBp.md similarity index 91% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/convexity/concave/index.md rename to src/data/roadmaps/game-developer/content/concave@jslk7Gy58VspO1uXGDgBp.md index 254409c6f..430fac1af 100644 --- a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/convexity/concave/index.md +++ b/src/data/roadmaps/game-developer/content/concave@jslk7Gy58VspO1uXGDgBp.md @@ -1,5 +1,3 @@ # Concave -# Concave - In game development, a shape is said to be "concave" if it has an interior angle greater than 180 degrees. In simpler terms, if the shape has a portion "inwards curved" or a "cave-like" indentation, it's concave. Unlike convex shapes, a straight line drawn within a concave shape may not entirely lie within the boundaries of the shape. Concave shapes add complexity in game physics, especially in collision detection, as there are more points and angles to consider compared to convex shapes. These shapes are commonly seen in game elements like terrains, mazes, game level boundaries and gaming characters. Let's remember that the practical application of concave shapes largely depends on the gameplay requirements and the level of realism needed in the game. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/109-advanced-rendering/101-physically-based-rendering/101-translucency-and-transparency.md b/src/data/roadmaps/game-developer/content/conservation-of-energy@H3hkafXO9zqEnWuwHa38P.md similarity index 100% rename from src/data/roadmaps/game-developer/content/109-advanced-rendering/101-physically-based-rendering/101-translucency-and-transparency.md rename to src/data/roadmaps/game-developer/content/conservation-of-energy@H3hkafXO9zqEnWuwHa38P.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/convexity/concave/convex-decomposition.md b/src/data/roadmaps/game-developer/content/convex-decomposition@bgP9NpD0DJGqN4VCt65xP.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/convexity/concave/convex-decomposition.md rename to src/data/roadmaps/game-developer/content/convex-decomposition@bgP9NpD0DJGqN4VCt65xP.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/convexity/convex/convex-hull.md b/src/data/roadmaps/game-developer/content/convex-hull@jixffcPBELkhoG0e7Te8g.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/convexity/convex/convex-hull.md rename to src/data/roadmaps/game-developer/content/convex-hull@jixffcPBELkhoG0e7Te8g.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/convexity/convex/index.md b/src/data/roadmaps/game-developer/content/convex@pG_V12qhS4HevoP_KHTvh.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/convexity/convex/index.md rename to src/data/roadmaps/game-developer/content/convex@pG_V12qhS4HevoP_KHTvh.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/convexity/index.md b/src/data/roadmaps/game-developer/content/convexity@YLusnwCba7BIdKOYUoY6F.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/convexity/index.md rename to src/data/roadmaps/game-developer/content/convexity@YLusnwCba7BIdKOYUoY6F.md diff --git a/src/data/roadmaps/game-developer/content/cube@cv1-AwewuqJsZDBI3h84G.md b/src/data/roadmaps/game-developer/content/cube@cv1-AwewuqJsZDBI3h84G.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/101-culling/index.md b/src/data/roadmaps/game-developer/content/culling@1gdDeUPBRco10LpOxug4k.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/101-culling/index.md rename to src/data/roadmaps/game-developer/content/culling@1gdDeUPBRco10LpOxug4k.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/106-curve.md b/src/data/roadmaps/game-developer/content/curve@YTkOF_33oL1ZkA-loc_DP.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/106-curve.md rename to src/data/roadmaps/game-developer/content/curve@YTkOF_33oL1ZkA-loc_DP.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/spatial-partitioning/bvh/dbvt.md b/src/data/roadmaps/game-developer/content/dbvt@XHFV4d6Ab4kWQ3-XcZTyT.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/spatial-partitioning/bvh/dbvt.md rename to src/data/roadmaps/game-developer/content/dbvt@XHFV4d6Ab4kWQ3-XcZTyT.md diff --git a/src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/100-decision-learning.md b/src/data/roadmaps/game-developer/content/decision-learning@ul5XnVwQCwr4ZaL4kBNpd.md similarity index 100% rename from src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/100-decision-learning.md rename to src/data/roadmaps/game-developer/content/decision-learning@ul5XnVwQCwr4ZaL4kBNpd.md diff --git a/src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/index.md b/src/data/roadmaps/game-developer/content/decision-making@Ky-95ipdgyPZGAIdqwMCk.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/index.md rename to src/data/roadmaps/game-developer/content/decision-making@Ky-95ipdgyPZGAIdqwMCk.md diff --git a/src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/102-decision-tree-learning.md b/src/data/roadmaps/game-developer/content/decision-tree-learning@sz1047M8_kScjth84yPwU.md similarity index 100% rename from src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/102-decision-tree-learning.md rename to src/data/roadmaps/game-developer/content/decision-tree-learning@sz1047M8_kScjth84yPwU.md diff --git a/src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/100-decision-tree.md b/src/data/roadmaps/game-developer/content/decision-tree@rwGivalwv2ozdSlVMSc4U.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/100-decision-tree.md rename to src/data/roadmaps/game-developer/content/decision-tree@rwGivalwv2ozdSlVMSc4U.md diff --git a/src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/103-deep-learning.md b/src/data/roadmaps/game-developer/content/deep-learning@ltkEyfuDxExs7knqs79ya.md similarity index 100% rename from src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/103-deep-learning.md rename to src/data/roadmaps/game-developer/content/deep-learning@ltkEyfuDxExs7knqs79ya.md diff --git a/src/data/roadmaps/game-developer/content/diffuse@0g1z5G2dsF4PTIfFAG984.md b/src/data/roadmaps/game-developer/content/diffuse@0g1z5G2dsF4PTIfFAG984.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/directional@foD8K7V0yIxgeXwl687Bv.md b/src/data/roadmaps/game-developer/content/directional@foD8K7V0yIxgeXwl687Bv.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/109-advanced-rendering/100-real-time-ray-tracing/100-directx-ray-tracing.md b/src/data/roadmaps/game-developer/content/directx-ray-tracing@qoIkw9o8iMx7MzUyVYoR2.md similarity index 100% rename from src/data/roadmaps/game-developer/content/109-advanced-rendering/100-real-time-ray-tracing/100-directx-ray-tracing.md rename to src/data/roadmaps/game-developer/content/directx-ray-tracing@qoIkw9o8iMx7MzUyVYoR2.md diff --git a/src/data/roadmaps/game-developer/content/106-graphics-api/100-direct-x/index.md b/src/data/roadmaps/game-developer/content/directx@bgWFV09AtDv1yJS5t0EaB.md similarity index 100% rename from src/data/roadmaps/game-developer/content/106-graphics-api/100-direct-x/index.md rename to src/data/roadmaps/game-developer/content/directx@bgWFV09AtDv1yJS5t0EaB.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/index.md b/src/data/roadmaps/game-developer/content/dynamics@0D7KQlF-9ylmILTBBVxot.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/index.md rename to src/data/roadmaps/game-developer/content/dynamics@0D7KQlF-9ylmILTBBVxot.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/intersection/epa.md b/src/data/roadmaps/game-developer/content/epa@vWLKYK2KUzV1fO-vQunzW.md similarity index 94% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/intersection/epa.md rename to src/data/roadmaps/game-developer/content/epa@vWLKYK2KUzV1fO-vQunzW.md index 370b328b1..1c01e4947 100644 --- a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/intersection/epa.md +++ b/src/data/roadmaps/game-developer/content/epa@vWLKYK2KUzV1fO-vQunzW.md @@ -1,3 +1,3 @@ # EPA -The **EPA**, also known as the *Environmental Protection Agency*, is not typically related to game development or the concept of intersection within this context. However, in game development, EPA might refer to an 'Event-driven Process chain Architecture' or some other game-specific acronym. In this domain, different terminologies and acronyms are often used to express complex architectures, designs, or functionalities. If you have encountered EPA in a game development context, it might be best to refer to the specific documentation or guide where it was described for a better understanding. Understanding the context is key to untangle the meaning of such abbreviations. +The **EPA**, also known as the *Environmental Protection Agency*, is not typically related to game development or the concept of intersection within this context. However, in game development, EPA might refer to an 'Event-driven Process chain Architecture' or some other game-specific acronym. In this domain, different terminologies and acronyms are often used to express complex architectures, designs, or functionalities. If you have encountered EPA in a game development context, it might be best to refer to the specific documentation or guide where it was described for a better understanding. Understanding the context is key to untangle the meaning of such abbreviations. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/101-euler-angle.md b/src/data/roadmaps/game-developer/content/euler-angle@L0J2kvveJNsmN9ueXhqKf.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/101-euler-angle.md rename to src/data/roadmaps/game-developer/content/euler-angle@L0J2kvveJNsmN9ueXhqKf.md diff --git a/src/data/roadmaps/game-developer/content/fog@2ocwC0P1-ZFmjA9EmA1lV.md b/src/data/roadmaps/game-developer/content/fog@2ocwC0P1-ZFmjA9EmA1lV.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/102-force.md b/src/data/roadmaps/game-developer/content/force@qduFRhmrzJ2sn0g7L-tza.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/102-force.md rename to src/data/roadmaps/game-developer/content/force@qduFRhmrzJ2sn0g7L-tza.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/109-friction.md b/src/data/roadmaps/game-developer/content/friction@Hz9R4YGYtD0jAur8rYist.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/109-friction.md rename to src/data/roadmaps/game-developer/content/friction@Hz9R4YGYtD0jAur8rYist.md diff --git a/src/data/roadmaps/game-developer/content/frustum@UcLGWYu41Ok2NYdLNIY5C.md b/src/data/roadmaps/game-developer/content/frustum@UcLGWYu41Ok2NYdLNIY5C.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/103-fuzzy-logic.md b/src/data/roadmaps/game-developer/content/fuzzy-logic@4ZCVUpYrCT14d_JULulLe.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/103-fuzzy-logic.md rename to src/data/roadmaps/game-developer/content/fuzzy-logic@4ZCVUpYrCT14d_JULulLe.md diff --git a/src/data/roadmaps/game-developer/content/107-game-api/index.md b/src/data/roadmaps/game-developer/content/game-ai@Hpf_CPmLpCSP8Qo07Kq1X.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/index.md rename to src/data/roadmaps/game-developer/content/game-ai@Hpf_CPmLpCSP8Qo07Kq1X.md diff --git a/src/data/roadmaps/game-developer/content/108-game-api-2/index.md b/src/data/roadmaps/game-developer/content/game-ai@Hpk8eOaOepERMmOvUgkxa.md similarity index 100% rename from src/data/roadmaps/game-developer/content/108-game-api-2/index.md rename to src/data/roadmaps/game-developer/content/game-ai@Hpk8eOaOepERMmOvUgkxa.md diff --git a/src/data/roadmaps/game-developer/content/103-game-engine/index.md b/src/data/roadmaps/game-developer/content/game-engine@fv5tivGad2P9GRZOodfn2.md similarity index 100% rename from src/data/roadmaps/game-developer/content/103-game-engine/index.md rename to src/data/roadmaps/game-developer/content/game-engine@fv5tivGad2P9GRZOodfn2.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/index.md b/src/data/roadmaps/game-developer/content/game-mathematics@m1wX27XBWKXZcTMH2U1xp.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/index.md rename to src/data/roadmaps/game-developer/content/game-mathematics@m1wX27XBWKXZcTMH2U1xp.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/index.md b/src/data/roadmaps/game-developer/content/game-physics@UTBnrQiZ6Bf96yJYIUf3b.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/index.md rename to src/data/roadmaps/game-developer/content/game-physics@UTBnrQiZ6Bf96yJYIUf3b.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/103-geometry.md b/src/data/roadmaps/game-developer/content/geometry@XWxW2ZBw3LcQ4DRk4tgAG.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/103-geometry.md rename to src/data/roadmaps/game-developer/content/geometry@XWxW2ZBw3LcQ4DRk4tgAG.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/intersection/gjk.md b/src/data/roadmaps/game-developer/content/gjk@lwd3Gz9bJEKCIwhXD6m-v.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/intersection/gjk.md rename to src/data/roadmaps/game-developer/content/gjk@lwd3Gz9bJEKCIwhXD6m-v.md diff --git a/src/data/roadmaps/game-developer/content/106-graphics-api/101-open-gl/100-glsl.md b/src/data/roadmaps/game-developer/content/glsl@j8mWMFMQCEIPUzegDDsm1.md similarity index 100% rename from src/data/roadmaps/game-developer/content/106-graphics-api/101-open-gl/100-glsl.md rename to src/data/roadmaps/game-developer/content/glsl@j8mWMFMQCEIPUzegDDsm1.md diff --git a/src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/105-goal-oriented-behavior.md b/src/data/roadmaps/game-developer/content/goal-oriented-behavior@Cuc0xvCAkVyUtwOxO_Uua.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/105-goal-oriented-behavior.md rename to src/data/roadmaps/game-developer/content/goal-oriented-behavior@Cuc0xvCAkVyUtwOxO_Uua.md diff --git a/src/data/roadmaps/game-developer/content/103-game-engine/100-godot.md b/src/data/roadmaps/game-developer/content/godot@7OffO2mBmfBKqPBTZ9ngI.md similarity index 100% rename from src/data/roadmaps/game-developer/content/103-game-engine/100-godot.md rename to src/data/roadmaps/game-developer/content/godot@7OffO2mBmfBKqPBTZ9ngI.md diff --git a/src/data/roadmaps/game-developer/content/106-graphics-api/index.md b/src/data/roadmaps/game-developer/content/graphics-api@Kx7O7RLp7aPGtOvK8e314.md similarity index 100% rename from src/data/roadmaps/game-developer/content/106-graphics-api/index.md rename to src/data/roadmaps/game-developer/content/graphics-api@Kx7O7RLp7aPGtOvK8e314.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/102-graphics-pipeline.md b/src/data/roadmaps/game-developer/content/graphics-pipeline@shSRnMf4NONuZ3TGPAoQc.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/102-graphics-pipeline.md rename to src/data/roadmaps/game-developer/content/graphics-pipeline@shSRnMf4NONuZ3TGPAoQc.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/101-hermite.md b/src/data/roadmaps/game-developer/content/hermite@m4AuHjEBnHS0wyATG-I1Z.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/101-hermite.md rename to src/data/roadmaps/game-developer/content/hermite@m4AuHjEBnHS0wyATG-I1Z.md diff --git a/src/data/roadmaps/game-developer/content/106-graphics-api/100-direct-x/100-hlsl.md b/src/data/roadmaps/game-developer/content/hlsl@wYUDJb-q1rtM4w2QV3Wr1.md similarity index 100% rename from src/data/roadmaps/game-developer/content/106-graphics-api/100-direct-x/100-hlsl.md rename to src/data/roadmaps/game-developer/content/hlsl@wYUDJb-q1rtM4w2QV3Wr1.md diff --git a/src/data/roadmaps/game-developer/content/horizon@9cBOfj58I4hBlxlQIyV9g.md b/src/data/roadmaps/game-developer/content/horizon@9cBOfj58I4hBlxlQIyV9g.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/index.md b/src/data/roadmaps/game-developer/content/index.md deleted file mode 100644 index 4e768b56d..000000000 --- a/src/data/roadmaps/game-developer/content/index.md +++ /dev/null @@ -1 +0,0 @@ -# \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/infinite@sC3omOmL2DOyTSvET5cDa.md b/src/data/roadmaps/game-developer/content/infinite@sC3omOmL2DOyTSvET5cDa.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/intersection/index.md b/src/data/roadmaps/game-developer/content/intersection@vmRYaXNVCe0N73xG8bsEK.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/intersection/index.md rename to src/data/roadmaps/game-developer/content/intersection@vmRYaXNVCe0N73xG8bsEK.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/106-joints.md b/src/data/roadmaps/game-developer/content/joints@m2_wUW2VHMCXHnn5B91qr.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/106-joints.md rename to src/data/roadmaps/game-developer/content/joints@m2_wUW2VHMCXHnn5B91qr.md diff --git a/src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/index.md b/src/data/roadmaps/game-developer/content/learning@9_OcZ9rzedDFfwEYxAghh.md similarity index 100% rename from src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/index.md rename to src/data/roadmaps/game-developer/content/learning@9_OcZ9rzedDFfwEYxAghh.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/index.md b/src/data/roadmaps/game-developer/content/light-source@VLrcBE1vb6N5fw5YESCge.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/102-light-source/index.md rename to src/data/roadmaps/game-developer/content/light-source@VLrcBE1vb6N5fw5YESCge.md diff --git a/src/data/roadmaps/game-developer/content/light@_1LkU258hzizSIgXipE0b.md b/src/data/roadmaps/game-developer/content/light@_1LkU258hzizSIgXipE0b.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/index.md b/src/data/roadmaps/game-developer/content/lighting-and-shadow@DDN3mn0LTueBhjRzXFcbU.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/index.md rename to src/data/roadmaps/game-developer/content/lighting-and-shadow@DDN3mn0LTueBhjRzXFcbU.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/100-linear-algebra.md b/src/data/roadmaps/game-developer/content/linear-algebra@grRf-MmaXimDB4iODOV47.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/100-linear-algebra.md rename to src/data/roadmaps/game-developer/content/linear-algebra@grRf-MmaXimDB4iODOV47.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/104-linear-transformation.md b/src/data/roadmaps/game-developer/content/linear-transformation@XABzEU9owCx9-zw1id9xU.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/104-linear-transformation.md rename to src/data/roadmaps/game-developer/content/linear-transformation@XABzEU9owCx9-zw1id9xU.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/104-linear-velocity.md b/src/data/roadmaps/game-developer/content/linear-velocity@Z_U6abGV_wVkTGZ2LVkFK.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/104-linear-velocity.md rename to src/data/roadmaps/game-developer/content/linear-velocity@Z_U6abGV_wVkTGZ2LVkFK.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/index.md b/src/data/roadmaps/game-developer/content/mapping@THMmnx8p_P0X-dSPoHvst.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/102-mapping/index.md rename to src/data/roadmaps/game-developer/content/mapping@THMmnx8p_P0X-dSPoHvst.md diff --git a/src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/104-markov-system.md b/src/data/roadmaps/game-developer/content/markov-system@c6j-30p84vk3MZEF1R2hN.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/104-markov-system.md rename to src/data/roadmaps/game-developer/content/markov-system@c6j-30p84vk3MZEF1R2hN.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/102-matrix.md b/src/data/roadmaps/game-developer/content/matrix@Kg6Mg9ieUUGXWX9Lai7B0.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/102-matrix.md rename to src/data/roadmaps/game-developer/content/matrix@Kg6Mg9ieUUGXWX9Lai7B0.md diff --git a/src/data/roadmaps/game-developer/content/107-game-api/102-board-game/102-mcts.md b/src/data/roadmaps/game-developer/content/mcts@QD9TfZn3yhGPVwiyJ6d0V.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/102-board-game/102-mcts.md rename to src/data/roadmaps/game-developer/content/mcts@QD9TfZn3yhGPVwiyJ6d0V.md diff --git a/src/data/roadmaps/game-developer/content/106-graphics-api/104-metal.md b/src/data/roadmaps/game-developer/content/metal@oEznLciLxZJaulMlBGgg4.md similarity index 100% rename from src/data/roadmaps/game-developer/content/106-graphics-api/104-metal.md rename to src/data/roadmaps/game-developer/content/metal@oEznLciLxZJaulMlBGgg4.md diff --git a/src/data/roadmaps/game-developer/content/109-advanced-rendering/101-physically-based-rendering/102-metallicity.md b/src/data/roadmaps/game-developer/content/metallicity@olY1ibR7kw1yJ58TfU-37.md similarity index 100% rename from src/data/roadmaps/game-developer/content/109-advanced-rendering/101-physically-based-rendering/102-metallicity.md rename to src/data/roadmaps/game-developer/content/metallicity@olY1ibR7kw1yJ58TfU-37.md diff --git a/src/data/roadmaps/game-developer/content/109-advanced-rendering/101-physically-based-rendering/103-microsurface-scattering.md b/src/data/roadmaps/game-developer/content/microsurface-scattering@YrQgfjsdLCIUxrwflpEHO.md similarity index 100% rename from src/data/roadmaps/game-developer/content/109-advanced-rendering/101-physically-based-rendering/103-microsurface-scattering.md rename to src/data/roadmaps/game-developer/content/microsurface-scattering@YrQgfjsdLCIUxrwflpEHO.md diff --git a/src/data/roadmaps/game-developer/content/107-game-api/102-board-game/100-minimax.md b/src/data/roadmaps/game-developer/content/minimax@oOjGqicW3eqRwWyIwJdBA.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/102-board-game/100-minimax.md rename to src/data/roadmaps/game-developer/content/minimax@oOjGqicW3eqRwWyIwJdBA.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/105-moment-of-inertia.md b/src/data/roadmaps/game-developer/content/moment-of-inertia@6E2mkXuAzoYnrT1SEIA16.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/105-moment-of-inertia.md rename to src/data/roadmaps/game-developer/content/moment-of-inertia@6E2mkXuAzoYnrT1SEIA16.md diff --git a/src/data/roadmaps/game-developer/content/107-game-api/101-movement.md b/src/data/roadmaps/game-developer/content/movement@mUyzX-DXnIKDl-r9o8d38.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/101-movement.md rename to src/data/roadmaps/game-developer/content/movement@mUyzX-DXnIKDl-r9o8d38.md diff --git a/src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/101-naive-bayes-classifier.md b/src/data/roadmaps/game-developer/content/naive-bayes-classifier@aw1BAGqrdBBmUwB6vMF_A.md similarity index 100% rename from src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/101-naive-bayes-classifier.md rename to src/data/roadmaps/game-developer/content/naive-bayes-classifier@aw1BAGqrdBBmUwB6vMF_A.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/index.md b/src/data/roadmaps/game-developer/content/narrow-phase@SuemqQuiePab0Qpm2EGy9.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/index.md rename to src/data/roadmaps/game-developer/content/narrow-phase@SuemqQuiePab0Qpm2EGy9.md diff --git a/src/data/roadmaps/game-developer/content/103-game-engine/102-native.md b/src/data/roadmaps/game-developer/content/native@CeAUEN233L4IoFSZtIvvl.md similarity index 100% rename from src/data/roadmaps/game-developer/content/103-game-engine/102-native.md rename to src/data/roadmaps/game-developer/content/native@CeAUEN233L4IoFSZtIvvl.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/bounding-volume/obb.md b/src/data/roadmaps/game-developer/content/obb@7nGtvbxoEAheiF4IPMfPf.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/bounding-volume/obb.md rename to src/data/roadmaps/game-developer/content/obb@7nGtvbxoEAheiF4IPMfPf.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/100-occluder/index.md b/src/data/roadmaps/game-developer/content/occluder@MlLYqO_8JDNOwKRvaM-bf.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/100-occluder/index.md rename to src/data/roadmaps/game-developer/content/occluder@MlLYqO_8JDNOwKRvaM-bf.md diff --git a/src/data/roadmaps/game-developer/content/106-graphics-api/103-opengl-es.md b/src/data/roadmaps/game-developer/content/opengl-es@EVOiWAeZsIvjLTt3EYu-6.md similarity index 100% rename from src/data/roadmaps/game-developer/content/106-graphics-api/103-opengl-es.md rename to src/data/roadmaps/game-developer/content/opengl-es@EVOiWAeZsIvjLTt3EYu-6.md diff --git a/src/data/roadmaps/game-developer/content/106-graphics-api/101-open-gl/index.md b/src/data/roadmaps/game-developer/content/opengl@ffa5-YxRhE3zhWg7KXQ4r.md similarity index 100% rename from src/data/roadmaps/game-developer/content/106-graphics-api/101-open-gl/index.md rename to src/data/roadmaps/game-developer/content/opengl@ffa5-YxRhE3zhWg7KXQ4r.md diff --git a/src/data/roadmaps/game-developer/content/109-advanced-rendering/100-real-time-ray-tracing/102-optix.md b/src/data/roadmaps/game-developer/content/optix@GDLysy3__cbYidEaOmFze.md similarity index 100% rename from src/data/roadmaps/game-developer/content/109-advanced-rendering/100-real-time-ray-tracing/102-optix.md rename to src/data/roadmaps/game-developer/content/optix@GDLysy3__cbYidEaOmFze.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/index.md b/src/data/roadmaps/game-developer/content/orientation@iIWEjpkNFBj4R5wQ0mcWY.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/index.md rename to src/data/roadmaps/game-developer/content/orientation@iIWEjpkNFBj4R5wQ0mcWY.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/107-projection/101-orthogonal.md b/src/data/roadmaps/game-developer/content/orthogonal@d6C1qFv-Tad3AtMBDLI6r.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/107-projection/101-orthogonal.md rename to src/data/roadmaps/game-developer/content/orthogonal@d6C1qFv-Tad3AtMBDLI6r.md diff --git a/src/data/roadmaps/game-developer/content/parallax@YGeGleEN203nokiZIYJN8.md b/src/data/roadmaps/game-developer/content/parallax@YGeGleEN203nokiZIYJN8.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/107-projection/100-perspective.md b/src/data/roadmaps/game-developer/content/perspective@LEJymJ2EaAW5FM5LgKW38.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/107-projection/100-perspective.md rename to src/data/roadmaps/game-developer/content/perspective@LEJymJ2EaAW5FM5LgKW38.md diff --git a/src/data/roadmaps/game-developer/content/109-advanced-rendering/101-physically-based-rendering/index.md b/src/data/roadmaps/game-developer/content/physically-based-rendering@XvFtMHrYsBREmuerE7CGc.md similarity index 100% rename from src/data/roadmaps/game-developer/content/109-advanced-rendering/101-physically-based-rendering/index.md rename to src/data/roadmaps/game-developer/content/physically-based-rendering@XvFtMHrYsBREmuerE7CGc.md diff --git a/src/data/roadmaps/game-developer/content/point@aNhyXWW2b7yKTv8y14zk9.md b/src/data/roadmaps/game-developer/content/point@aNhyXWW2b7yKTv8y14zk9.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/polygon@-r15srXTBLnUGokpXKclH.md b/src/data/roadmaps/game-developer/content/polygon@-r15srXTBLnUGokpXKclH.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/polyhedron@GHfLMtgmc36OCvjQvW_Su.md b/src/data/roadmaps/game-developer/content/polyhedron@GHfLMtgmc36OCvjQvW_Su.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/104-programming-languages/index.md b/src/data/roadmaps/game-developer/content/programming-languages@4YgbrXLXf5mfaL2tlYkzk.md similarity index 100% rename from src/data/roadmaps/game-developer/content/104-programming-languages/index.md rename to src/data/roadmaps/game-developer/content/programming-languages@4YgbrXLXf5mfaL2tlYkzk.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/107-projection/index.md b/src/data/roadmaps/game-developer/content/projection@5qfoD77wU4ETI7rUSy4Nc.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/107-projection/index.md rename to src/data/roadmaps/game-developer/content/projection@5qfoD77wU4ETI7rUSy4Nc.md diff --git a/src/data/roadmaps/game-developer/content/104-programming-languages/104-python.md b/src/data/roadmaps/game-developer/content/python@AJp_QRLgSG5ETXDIjUjmm.md similarity index 100% rename from src/data/roadmaps/game-developer/content/104-programming-languages/104-python.md rename to src/data/roadmaps/game-developer/content/python@AJp_QRLgSG5ETXDIjUjmm.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/100-quaternion.md b/src/data/roadmaps/game-developer/content/quaternion@zPs_LlDvkfxvvCrk5fXB2.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/100-quaternion.md rename to src/data/roadmaps/game-developer/content/quaternion@zPs_LlDvkfxvvCrk5fXB2.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/101-rasterization.md b/src/data/roadmaps/game-developer/content/rasterization@vYNj9nzu90e9xlrzHULnP.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/101-rasterization.md rename to src/data/roadmaps/game-developer/content/rasterization@vYNj9nzu90e9xlrzHULnP.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/100-ray-tracing.md b/src/data/roadmaps/game-developer/content/ray-tracing@JW5c_0JEtO-OiBoXUia6A.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/100-ray-tracing.md rename to src/data/roadmaps/game-developer/content/ray-tracing@JW5c_0JEtO-OiBoXUia6A.md diff --git a/src/data/roadmaps/game-developer/content/109-advanced-rendering/100-real-time-ray-tracing/index.md b/src/data/roadmaps/game-developer/content/real-time-ray-tracing@_i7BXZq-iLxQc3QZRMees.md similarity index 100% rename from src/data/roadmaps/game-developer/content/109-advanced-rendering/100-real-time-ray-tracing/index.md rename to src/data/roadmaps/game-developer/content/real-time-ray-tracing@_i7BXZq-iLxQc3QZRMees.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/101-reflection/index.md b/src/data/roadmaps/game-developer/content/reflection@eI2jym4AAz3ani-lreSKE.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/101-reflection/index.md rename to src/data/roadmaps/game-developer/content/reflection@eI2jym4AAz3ani-lreSKE.md diff --git a/src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/105-reinforcements-learning.md b/src/data/roadmaps/game-developer/content/reinforcements-learning@rGEHTfdNeBAX3_XqC-vvI.md similarity index 100% rename from src/data/roadmaps/game-developer/content/108-game-api-2/100-learning/105-reinforcements-learning.md rename to src/data/roadmaps/game-developer/content/reinforcements-learning@rGEHTfdNeBAX3_XqC-vvI.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/100-render-equation.md b/src/data/roadmaps/game-developer/content/rendering-equation@WVgozaQPFbYthZLWMbNUg.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/100-render-equation.md rename to src/data/roadmaps/game-developer/content/rendering-equation@WVgozaQPFbYthZLWMbNUg.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/107-restitution.md b/src/data/roadmaps/game-developer/content/restitution@egOcxFTQP7vPIGrxcieuk.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/100-dynamics/107-restitution.md rename to src/data/roadmaps/game-developer/content/restitution@egOcxFTQP7vPIGrxcieuk.md diff --git a/src/data/roadmaps/game-developer/content/104-programming-languages/103-rust.md b/src/data/roadmaps/game-developer/content/rust@ts9pWxUimvFqfNJYCmNNw.md similarity index 100% rename from src/data/roadmaps/game-developer/content/104-programming-languages/103-rust.md rename to src/data/roadmaps/game-developer/content/rust@ts9pWxUimvFqfNJYCmNNw.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/103-sampling.md b/src/data/roadmaps/game-developer/content/sampling@rmtxybcavWV6A53R4ZWgc.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/103-sampling.md rename to src/data/roadmaps/game-developer/content/sampling@rmtxybcavWV6A53R4ZWgc.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/intersection/sat.md b/src/data/roadmaps/game-developer/content/sat@kSMz7mZ243qMKtT_YD3AD.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/101-narrow-phase/intersection/sat.md rename to src/data/roadmaps/game-developer/content/sat@kSMz7mZ243qMKtT_YD3AD.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/index.md b/src/data/roadmaps/game-developer/content/shader@qIrePusMuvcUva9LMDmDx.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/108-shader/index.md rename to src/data/roadmaps/game-developer/content/shader@qIrePusMuvcUva9LMDmDx.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/101-shadow-map/index.md b/src/data/roadmaps/game-developer/content/shadow-map@ygtru6fqQ3gpFZRN_I8rP.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/101-shadow-map/index.md rename to src/data/roadmaps/game-developer/content/shadow-map@ygtru6fqQ3gpFZRN_I8rP.md diff --git a/src/data/roadmaps/game-developer/content/shadow@lqfW8hkuN3vWtacrqBBtI.md b/src/data/roadmaps/game-developer/content/shadow@lqfW8hkuN3vWtacrqBBtI.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/spatial-partitioning/sort-and-sweep.md b/src/data/roadmaps/game-developer/content/sort--sweep@STdvFYM9V0a36IkPXjvrB.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/spatial-partitioning/sort-and-sweep.md rename to src/data/roadmaps/game-developer/content/sort--sweep@STdvFYM9V0a36IkPXjvrB.md diff --git a/src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/spatial-partitioning/index.md b/src/data/roadmaps/game-developer/content/spatial-partitioning@9Fk3XSINBr2NNdbMtwsIK.md similarity index 100% rename from src/data/roadmaps/game-developer/content/102-game-physics/101-collision-detection/102-broad-phase/spatial-partitioning/index.md rename to src/data/roadmaps/game-developer/content/spatial-partitioning@9Fk3XSINBr2NNdbMtwsIK.md diff --git a/src/data/roadmaps/game-developer/content/specular@odfZWKtPbb-lC35oeTCNV.md b/src/data/roadmaps/game-developer/content/specular@odfZWKtPbb-lC35oeTCNV.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/106-graphics-api/105-vulkan/100-spirv.md b/src/data/roadmaps/game-developer/content/spir-v@DvV32n3NoXNEej8Fsqqs2.md similarity index 100% rename from src/data/roadmaps/game-developer/content/106-graphics-api/105-vulkan/100-spirv.md rename to src/data/roadmaps/game-developer/content/spir-v@DvV32n3NoXNEej8Fsqqs2.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/100-spline.md b/src/data/roadmaps/game-developer/content/spline@nTiHZXRh2j3_FsBotmlGf.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/106-orientation/100-spline.md rename to src/data/roadmaps/game-developer/content/spline@nTiHZXRh2j3_FsBotmlGf.md diff --git a/src/data/roadmaps/game-developer/content/spot@FetbhcK1RDt4izZ6NEUEP.md b/src/data/roadmaps/game-developer/content/spot@FetbhcK1RDt4izZ6NEUEP.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/101-state-machine.md b/src/data/roadmaps/game-developer/content/state-machine@aJa_2xkZuSjQ5bt6Kj5oe.md similarity index 100% rename from src/data/roadmaps/game-developer/content/107-game-api/100-decision-making/101-state-machine.md rename to src/data/roadmaps/game-developer/content/state-machine@aJa_2xkZuSjQ5bt6Kj5oe.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/100-stencil-shadow.md b/src/data/roadmaps/game-developer/content/stencil-shadow@AEAVc8Ih4fctSGGVJG0Np.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/109-lightning-and-shadow/100-stencil-shadow.md rename to src/data/roadmaps/game-developer/content/stencil-shadow@AEAVc8Ih4fctSGGVJG0Np.md diff --git a/src/data/roadmaps/game-developer/content/texture@iBZ1JsEWI0xuLgUvfWfl-.md b/src/data/roadmaps/game-developer/content/texture@iBZ1JsEWI0xuLgUvfWfl-.md new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/107-tone-reproduction.md b/src/data/roadmaps/game-developer/content/tone-reproduction@RgC9TOc0wbr2QSuvrpIDV.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/107-tone-reproduction.md rename to src/data/roadmaps/game-developer/content/tone-reproduction@RgC9TOc0wbr2QSuvrpIDV.md diff --git a/src/data/roadmaps/game-developer/content/translucency--transparency@PuhXaRZ-Ql5PCqzMyz3en.md b/src/data/roadmaps/game-developer/content/translucency--transparency@PuhXaRZ-Ql5PCqzMyz3en.md new file mode 100644 index 000000000..34adb03af --- /dev/null +++ b/src/data/roadmaps/game-developer/content/translucency--transparency@PuhXaRZ-Ql5PCqzMyz3en.md @@ -0,0 +1,3 @@ +# Conservation of Energy + +In the realm of physically-based rendering, **translucency** and **transparency** act as key aspects in creating visually authentic and compelling images. Transparency refers to the property of an object that allows light to pass through it unhindered, hence making the object clear or invisible. This is commonly seen in materials such as glass, clear plastic, and water. On the other hand, translucency describes how light interacts with a semi-transparent object. Instead of passing directly through, light enters the object, travels within for some distance and then exits at a different location. Common examples of such surfaces include human skin, marble, milk, or wax, which exhibit a soft, diffused lighting effect when light rays pass through them. The technique to achieve this effect in graphics involves subsurface scattering, where incoming light is scattered beneath the object's surface, illuminated it in a way that showcases the material's internal structure. \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/content/103-game-engine/103-unity-3d.md b/src/data/roadmaps/game-developer/content/unity-3d@rNeOti8DDyWTMP9FB9kJ_.md similarity index 100% rename from src/data/roadmaps/game-developer/content/103-game-engine/103-unity-3d.md rename to src/data/roadmaps/game-developer/content/unity-3d@rNeOti8DDyWTMP9FB9kJ_.md diff --git a/src/data/roadmaps/game-developer/content/103-game-engine/101-unreal-engine.md b/src/data/roadmaps/game-developer/content/unreal-engine@a6H-cZtp3A_fB8jnfMxBR.md similarity index 100% rename from src/data/roadmaps/game-developer/content/103-game-engine/101-unreal-engine.md rename to src/data/roadmaps/game-developer/content/unreal-engine@a6H-cZtp3A_fB8jnfMxBR.md diff --git a/src/data/roadmaps/game-developer/content/101-game-mathematics/101-vector.md b/src/data/roadmaps/game-developer/content/vector@yLEyh5XJ3sl8eHD-PoSvJ.md similarity index 100% rename from src/data/roadmaps/game-developer/content/101-game-mathematics/101-vector.md rename to src/data/roadmaps/game-developer/content/vector@yLEyh5XJ3sl8eHD-PoSvJ.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/index.md b/src/data/roadmaps/game-developer/content/visibility-and-occlusion@OcxesFnB5wO6VXrHYnhz-.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/110-visibility-and-occlusion/index.md rename to src/data/roadmaps/game-developer/content/visibility-and-occlusion@OcxesFnB5wO6VXrHYnhz-.md diff --git a/src/data/roadmaps/game-developer/content/105-computer-graphics/106-visual-perception.md b/src/data/roadmaps/game-developer/content/visual-perception@1S1qPogijW2SQCiF7KLZe.md similarity index 100% rename from src/data/roadmaps/game-developer/content/105-computer-graphics/106-visual-perception.md rename to src/data/roadmaps/game-developer/content/visual-perception@1S1qPogijW2SQCiF7KLZe.md diff --git a/src/data/roadmaps/game-developer/content/109-advanced-rendering/100-real-time-ray-tracing/101-vulkan-ray-tracing.md b/src/data/roadmaps/game-developer/content/vulkan-ray-tracing@tDGnV8dGIFr_diz4HcEjr.md similarity index 100% rename from src/data/roadmaps/game-developer/content/109-advanced-rendering/100-real-time-ray-tracing/101-vulkan-ray-tracing.md rename to src/data/roadmaps/game-developer/content/vulkan-ray-tracing@tDGnV8dGIFr_diz4HcEjr.md diff --git a/src/data/roadmaps/game-developer/content/106-graphics-api/105-vulkan/index.md b/src/data/roadmaps/game-developer/content/vulkan@yPfhJSTFS7a72UcqF1ROK.md similarity index 100% rename from src/data/roadmaps/game-developer/content/106-graphics-api/105-vulkan/index.md rename to src/data/roadmaps/game-developer/content/vulkan@yPfhJSTFS7a72UcqF1ROK.md diff --git a/src/data/roadmaps/game-developer/content/106-graphics-api/102-web-gl.md b/src/data/roadmaps/game-developer/content/webgl@CeydBMwckqKll-2AgOlyd.md similarity index 100% rename from src/data/roadmaps/game-developer/content/106-graphics-api/102-web-gl.md rename to src/data/roadmaps/game-developer/content/webgl@CeydBMwckqKll-2AgOlyd.md diff --git a/src/data/roadmaps/game-developer/game-developer.json b/src/data/roadmaps/game-developer/game-developer.json index 327c53046..6cc9913e3 100644 --- a/src/data/roadmaps/game-developer/game-developer.json +++ b/src/data/roadmaps/game-developer/game-developer.json @@ -1,9440 +1,6439 @@ { - "mockup": { - "controls": { - "control": [ - { - "ID": "148", - "typeID": "Arrow", - "zOrder": "0", - "w": "94", - "h": "309", - "measuredW": "150", - "measuredH": "100", - "x": "945", - "y": "695", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 94.55237316378884, - "y": 309.12960297758445 - }, - "p1": { - "x": 0.32720961824863903, - "y": 0.1573176613439762 - }, - "p2": { - "x": 3.256894659371028, - "y": 0.1296029775844545 - } - } - }, - { - "ID": "149", - "typeID": "Arrow", - "zOrder": "1", - "w": "84", - "h": "45", - "measuredW": "150", - "measuredH": "100", - "x": "520", - "y": "2604", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 84, - "y": 45 - }, - "p1": { - "x": 0.48886606604610855, - "y": -0.10630136468091549 - }, - "p2": { - "x": 0, - "y": 0 - } - } - }, - { - "ID": "150", - "typeID": "Arrow", - "zOrder": "2", - "w": "81", - "h": "52", - "measuredW": "150", - "measuredH": "100", - "x": "523", - "y": "2528", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 81, - "y": 0 - }, - "p1": { - "x": 0.48782687110513556, - "y": 0.16986748583415065 - }, - "p2": { - "x": 0, - "y": 52 - } - } - }, - { - "ID": "151", - "typeID": "Arrow", - "zOrder": "3", - "w": "158", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "478", - "y": "2592", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 157.69852662683581, - "y": 0 - }, - "p1": { - "x": 0.4438624012549726, - "y": -0.0000840383214746112 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "152", - "typeID": "Arrow", - "zOrder": "4", - "w": "1", - "h": "125", - "measuredW": "150", - "measuredH": "100", - "x": "406", - "y": "2580", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 125.37208052301366 - }, - "p1": { - "x": 0.44386240125497256, - "y": -0.00008403832147461106 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "153", - "typeID": "Arrow", - "zOrder": "5", - "w": "1", - "h": "195", - "measuredW": "150", - "measuredH": "100", - "x": "406", - "y": "2706", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 194.5 - }, - "p1": { - "x": 0.44386240125497256, - "y": -0.00008403832147461109 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "154", - "typeID": "Arrow", - "zOrder": "6", - "w": "562", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "200", - "y": "2711", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 562.4466428129421, - "y": 0 - }, - "p1": { - "x": 0.44386240125497195, - "y": -0.00008403832147459168 - }, - "p2": { - "x": 0.41537919583601024, - "y": 0 - } - } - }, - { - "ID": "155", - "typeID": "Arrow", - "zOrder": "7", - "w": "1", - "h": "93", - "measuredW": "150", - "measuredH": "100", - "x": "349", - "y": "2257", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 93.43627444823528 - }, - "p1": { - "x": 0.44386240125497256, - "y": -0.00008403832147461125 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "156", - "typeID": "Arrow", - "zOrder": "8", - "w": "1", - "h": "93", - "measuredW": "150", - "measuredH": "100", - "x": "450", - "y": "2258", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 93.43627444823528 - }, - "p1": { - "x": 0.44386240125497256, - "y": -0.00008403832147461125 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "157", - "typeID": "Arrow", - "zOrder": "9", - "w": "1", - "h": "93", - "measuredW": "150", - "measuredH": "100", - "x": "395", - "y": "2351", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 93.43627444823528 - }, - "p1": { - "x": 0.44386240125497256, - "y": -0.00008403832147461125 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "158", - "typeID": "Arrow", - "zOrder": "10", - "w": "1", - "h": "74", - "measuredW": "150", - "measuredH": "100", - "x": "1309", - "y": "1938", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 73.91527990020245 - }, - "p1": { - "x": 0.4438624012549726, - "y": -0.00008403832147461112 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0.010132013956535957 - } - } - }, - { - "ID": "159", - "typeID": "__group__", - "zOrder": "11", - "measuredW": "127", - "measuredH": "50", - "w": "127", - "h": "50", - "x": "1249", - "y": "2182", - "properties": { - "controlName": "102-game-api:board-game:mcts" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "127", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "48", - "measuredH": "25", - "x": "40", - "y": "12", - "properties": { - "size": "17", - "text": "MCTS" - } - } - ] - } - } - }, - { - "ID": "160", - "typeID": "__group__", - "zOrder": "12", - "measuredW": "127", - "measuredH": "50", - "w": "127", - "h": "50", - "x": "1249", - "y": "2135", - "properties": { - "controlName": "101-game-api:board-game:ab-pruning" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "127", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "86", - "measuredH": "25", - "x": "21", - "y": "12", - "properties": { - "size": "17", - "text": "AB Pruning" - } - } - ] - } - } - }, - { - "ID": "161", - "typeID": "__group__", - "zOrder": "13", - "measuredW": "127", - "measuredH": "50", - "w": "127", - "h": "50", - "x": "1249", - "y": "2088", - "properties": { - "controlName": "100-game-api:board-game:minimax" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "127", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "64", - "measuredH": "25", - "x": "32", - "y": "12", - "properties": { - "size": "17", - "text": "Minimax" - } - } - ] - } - } - }, - { - "ID": "162", - "typeID": "Arrow", - "zOrder": "14", - "w": "1", - "h": "74", - "measuredW": "150", - "measuredH": "100", - "x": "1140", - "y": "1940", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 73.91527990020245 - }, - "p1": { - "x": 0.4438624012549726, - "y": -0.00008403832147461112 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0.010132013956535957 - } - } - }, - { - "ID": "163", - "typeID": "__group__", - "zOrder": "15", - "measuredW": "217", - "measuredH": "50", - "w": "217", - "h": "50", - "x": "1017", - "y": "2264", - "properties": { - "controlName": "105-game-api:decision-making:goal-oriented-behavior" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "217", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "182", - "measuredH": "25", - "x": "18", - "y": "12", - "properties": { - "size": "17", - "text": "Goal Oriented Behavior" - } - } - ] - } - } - }, - { - "ID": "164", - "typeID": "__group__", - "zOrder": "16", - "measuredW": "217", - "measuredH": "50", - "w": "217", - "h": "50", - "x": "1017", - "y": "2219", - "properties": { - "controlName": "104-game-api:decision-making:markov-system" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "217", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "117", - "measuredH": "25", - "x": "50", - "y": "12", - "properties": { - "size": "17", - "text": "Markov System" - } - } - ] - } - } - }, - { - "ID": "165", - "typeID": "__group__", - "zOrder": "17", - "measuredW": "217", - "measuredH": "50", - "w": "217", - "h": "50", - "x": "1017", - "y": "2172", - "properties": { - "controlName": "103-game-api:decision-making:fuzzy-logic" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "217", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "89", - "measuredH": "25", - "x": "64", - "y": "12", - "properties": { - "size": "17", - "text": "Fuzzy Logic" - } - } - ] - } - } - }, - { - "ID": "166", - "typeID": "__group__", - "zOrder": "18", - "measuredW": "217", - "measuredH": "50", - "w": "217", - "h": "50", - "x": "1017", - "y": "2125", - "properties": { - "controlName": "102-game-api:decision-making:behavior-tree" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "217", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "109", - "measuredH": "25", - "x": "54", - "y": "12", - "properties": { - "size": "17", - "text": "Behavior Tree" - } - } - ] - } - } - }, - { - "ID": "167", - "typeID": "__group__", - "zOrder": "19", - "measuredW": "217", - "measuredH": "50", - "w": "217", - "h": "50", - "x": "1017", - "y": "2078", - "properties": { - "controlName": "101-game-api:decision-making:state-machine" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "217", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "112", - "measuredH": "25", - "x": "53", - "y": "12", - "properties": { - "size": "17", - "text": "State Machine" - } - } - ] - } - } - }, - { - "ID": "168", - "typeID": "__group__", - "zOrder": "20", - "measuredW": "217", - "measuredH": "50", - "w": "217", - "h": "50", - "x": "1017", - "y": "2031", - "properties": { - "controlName": "100-game-api:decision-making:decision-tree" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "217", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "107", - "measuredH": "25", - "x": "55", - "y": "12", - "properties": { - "size": "17", - "text": "Decision Tree" - } - } - ] - } - } - }, - { - "ID": "169", - "typeID": "Arrow", - "zOrder": "21", - "w": "1", - "h": "93", - "measuredW": "150", - "measuredH": "100", - "x": "705", - "y": "1933", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 93.43627444823528 - }, - "p1": { - "x": 0.44386240125497256, - "y": -0.00008403832147461125 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "170", - "typeID": "Arrow", - "zOrder": "22", - "w": "1", - "h": "93", - "measuredW": "150", - "measuredH": "100", - "x": "810", - "y": "1943", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 93.43627444823528 - }, - "p1": { - "x": 0.44386240125497256, - "y": -0.00008403832147461125 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "171", - "typeID": "Arrow", - "zOrder": "23", - "w": "1", - "h": "67", - "measuredW": "150", - "measuredH": "100", - "x": "922", - "y": "1943", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 67.09259983712082 - }, - "p1": { - "x": 0.44386240125497256, - "y": -0.00008403832147461093 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "172", - "typeID": "__group__", - "zOrder": "24", - "measuredW": "101", - "measuredH": "50", - "w": "101", - "h": "50", - "x": "760", - "y": "2135", - "properties": { - "controlName": "100-graphics-api:vulkan:spirv" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "101", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "55", - "measuredH": "25", - "x": "23", - "y": "12", - "properties": { - "size": "17", - "text": "SPIR-V" - } - } - ] - } - } - }, - { - "ID": "173", - "typeID": "__group__", - "zOrder": "25", - "measuredW": "101", - "measuredH": "50", - "w": "101", - "h": "50", - "x": "761", - "y": "2032", - "properties": { - "controlName": "100-graphics-api:open-gl:glsl" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "101", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "43", - "measuredH": "25", - "x": "29", - "y": "12", - "properties": { - "size": "17", - "text": "GLSL" - } - } - ] - } - } - }, - { - "ID": "174", - "typeID": "__group__", - "zOrder": "26", - "measuredW": "101", - "measuredH": "50", - "w": "101", - "h": "50", - "x": "654", - "y": "2031", - "properties": { - "controlName": "100-graphics-api:direct-x:hlsl" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "101", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "43", - "measuredH": "25", - "x": "29", - "y": "12", - "properties": { - "size": "17", - "text": "HLSL" - } - } - ] - } - } - }, - { - "ID": "175", - "typeID": "Arrow", - "zOrder": "27", - "w": "34", - "h": "253", - "measuredW": "150", - "measuredH": "100", - "x": "763", - "y": "1576", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 33.76135263824085, - "y": 253.15568525622507 - }, - "p1": { - "x": 0.48398222014170533, - "y": 0.13414417330645678 - }, - "p2": { - "x": 33.76135263824085, - "y": 0 - } - } - }, - { - "ID": "176", - "typeID": "Arrow", - "zOrder": "28", - "w": "1", - "h": "378", - "measuredW": "150", - "measuredH": "100", - "x": "726", - "y": "1566", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0, - "y": 0 - }, - "p1": { - "x": 0.4438624012549724, - "y": -0.00008403832147459163 - }, - "p2": { - "x": 0, - "y": 377.76381837688314 - } - } - }, - { - "ID": "177", - "typeID": "Arrow", - "zOrder": "29", - "w": "1", - "h": "67", - "measuredW": "150", - "measuredH": "100", - "x": "1390", - "y": "1567", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 67.35037924820449 - }, - "p1": { - "x": 0.4438624012549725, - "y": -0.00008403832147461127 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "178", - "typeID": "Arrow", - "zOrder": "30", - "w": "1", - "h": "67", - "measuredW": "150", - "measuredH": "100", - "x": "1278", - "y": "1567", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 67.35037924820449 - }, - "p1": { - "x": 0.4438624012549725, - "y": -0.00008403832147461127 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "179", - "typeID": "Arrow", - "zOrder": "31", - "w": "1", - "h": "67", - "measuredW": "150", - "measuredH": "100", - "x": "1176", - "y": "1567", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 67.35037924820449 - }, - "p1": { - "x": 0.4438624012549725, - "y": -0.00008403832147461127 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "180", - "typeID": "Arrow", - "zOrder": "32", - "w": "1", - "h": "67", - "measuredW": "150", - "measuredH": "100", - "x": "1032", - "y": "1571", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 67.35037924820449 - }, - "p1": { - "x": 0.4438624012549725, - "y": -0.00008403832147461127 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "181", - "typeID": "Arrow", - "zOrder": "33", - "w": "1", - "h": "67", - "measuredW": "150", - "measuredH": "100", - "x": "866", - "y": "1571", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 67.35037924820449 - }, - "p1": { - "x": 0.4438624012549725, - "y": -0.00008403832147461127 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "182", - "typeID": "Arrow", - "zOrder": "34", - "w": "487", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "736", - "y": "1563", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 486.7271915059323, - "y": 0 - }, - "p1": { - "x": 0.4438624012549723, - "y": -0.0000840383214745917 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "183", - "typeID": "Arrow", - "zOrder": "35", - "w": "1", - "h": "86", - "measuredW": "150", - "measuredH": "100", - "x": "593", - "y": "1562", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 85.45548331960799 - }, - "p1": { - "x": 0.44386240125497245, - "y": -0.0000840383214745912 - }, - "p2": { - "x": -0.23864736175914913, - "y": -0.484116944617881 - } - } - }, - { - "ID": "184", - "typeID": "Arrow", - "zOrder": "36", - "w": "185", - "h": "53", - "measuredW": "150", - "measuredH": "100", - "x": "367", - "y": "1560", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 184.20415004429788, - "y": 2 - }, - "p1": { - "x": 0.6540065691033662, - "y": -0.14244363216817862 - }, - "p2": { - "x": -0.3439039675369031, - "y": 52.82947919350977 - } - } - }, - { - "ID": "185", - "typeID": "Arrow", - "zOrder": "37", - "w": "125", - "h": "58", - "measuredW": "150", - "measuredH": "100", - "x": "411", - "y": "2000", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 124.9672306120716, - "y": 57.93382044561304 - }, - "p1": { - "x": 0.46397998123011774, - "y": -0.11726580478500946 - }, - "p2": { - "x": 0.4219761225704133, - "y": -0.36395825160025197 - } - } - }, - { - "ID": "186", - "typeID": "Arrow", - "zOrder": "38", - "w": "118", - "h": "16", - "measuredW": "150", - "measuredH": "100", - "x": "419", - "y": "1989", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 118.29218012791739, - "y": 15.935839811782671 - }, - "p1": { - "x": 0.4156891499819245, - "y": -0.03977023291944042 - }, - "p2": { - "x": 0.3716732176449682, - "y": 0.03644562163367482 - } - } - }, - { - "ID": "187", - "typeID": "Arrow", - "zOrder": "39", - "w": "107", - "h": "29", - "measuredW": "150", - "measuredH": "100", - "x": "427", - "y": "1948", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 107.64228109622593, - "y": -0.03698936958471677 - }, - "p1": { - "x": 0.454287317953676, - "y": 0.0835138777161951 - }, - "p2": { - "x": 0.3213703127195231, - "y": 29.111899979021928 - } - } - }, - { - "ID": "188", - "typeID": "Arrow", - "zOrder": "40", - "w": "107", - "h": "76", - "measuredW": "150", - "measuredH": "100", - "x": "429", - "y": "1891", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 106.9672306120716, - "y": -0.009818550952331861 - }, - "p1": { - "x": 0.43732772703949074, - "y": 0.1047088218284806 - }, - "p2": { - "x": -0.35368017143474617, - "y": 75.51230385225585 - } - } - }, - { - "ID": "189", - "typeID": "Arrow", - "zOrder": "41", - "w": "73", - "h": "24", - "measuredW": "150", - "measuredH": "100", - "x": "212", - "y": "1906", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 72.98990316915149, - "y": 21.7763941031144 - }, - "p1": { - "x": 0.45377269349841665, - "y": 0.11684764246966417 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "190", - "typeID": "Arrow", - "zOrder": "42", - "w": "69", - "h": "24", - "measuredW": "150", - "measuredH": "100", - "x": "219", - "y": "1942", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 68.63980220084301, - "y": 0.35083877741772085 - }, - "p1": { - "x": 0.5792602377807132, - "y": -0.10435931307793934 - }, - "p2": { - "x": -0.25757262313638307, - "y": 24.199930062641442 - } - } - }, - { - "ID": "191", - "typeID": "Arrow", - "zOrder": "43", - "w": "136", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "421", - "y": "1322", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 136.20415004429788, - "y": 0 - }, - "p1": { - "x": 0.44386240125497245, - "y": -0.0000840383214745917 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - }, - "stroke": "dotted" - } - }, - { - "ID": "192", - "typeID": "Arrow", - "zOrder": "44", - "w": "117", - "h": "51", - "measuredW": "150", - "measuredH": "100", - "x": "429", - "y": "1330", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 116.27960440168602, - "y": 0.37507117145423763 - }, - "p1": { - "x": 0.44871927243216764, - "y": -0.09261927144404047 - }, - "p2": { - "x": -0.23864736175914913, - "y": 51 - }, - "stroke": "dotted" - } - }, - { - "ID": "193", - "typeID": "Arrow", - "zOrder": "45", - "w": "102", - "h": "34", - "measuredW": "150", - "measuredH": "100", - "x": "434", - "y": "1275", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 102.00495779076573, - "y": 32.85092940207619 - }, - "p1": { - "x": 0.46622126330094704, - "y": 0.09908814502346464 - }, - "p2": { - "x": -0.016154929357583114, - "y": -0.2728084940677036 - }, - "stroke": "dotted" - } - }, - { - "ID": "194", - "typeID": "Arrow", - "zOrder": "46", - "w": "1", - "h": "445", - "measuredW": "150", - "measuredH": "100", - "x": "640", - "y": "1122", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0, - "y": 0 - }, - "p1": { - "x": 0.4438624012549724, - "y": -0.00008403832147459163 - }, - "p2": { - "x": 0, - "y": 444.81568111876504 - } - } - }, - { - "ID": "195", - "typeID": "Arrow", - "zOrder": "47", - "w": "91", - "h": "22", - "measuredW": "150", - "measuredH": "100", - "x": "438", - "y": "1122", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 90.41907219719837, - "y": 0.960438539808365 - }, - "p1": { - "x": 0.5009131510756337, - "y": -0.08729633143328676 - }, - "p2": { - "x": -0.23864736175914913, - "y": 22 - }, - "stroke": "dotted" - } - }, - { - "ID": "196", - "typeID": "Arrow", - "zOrder": "48", - "w": "98", - "h": "20", - "measuredW": "150", - "measuredH": "100", - "x": "438", - "y": "1088", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 98.29379228120649, - "y": 16.586091677122795 - }, - "p1": { - "x": 0.48964445978598525, - "y": 0.09820503969623767 - }, - "p2": { - "x": -0.14020876889446754, - "y": -0.47580183822810795 - }, - "stroke": "dotted" - } - }, - { - "ID": "197", - "typeID": "Arrow", - "zOrder": "49", - "w": "1", - "h": "408", - "measuredW": "150", - "measuredH": "100", - "x": "898", - "y": "702", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0, - "y": 0 - }, - "p1": { - "x": 0.4438624012549725, - "y": -0.00008403832147459167 - }, - "p2": { - "x": 0, - "y": 407.83590506646146 - } - } - }, - { - "ID": "198", - "typeID": "Arrow", - "zOrder": "50", - "w": "97", - "h": "174", - "measuredW": "150", - "measuredH": "100", - "x": "1327", - "y": "1084", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 97.52976400258217, - "y": 174.10504059617097 - }, - "p1": { - "x": 0.609455438688369, - "y": -0.19413336212295101 - }, - "p2": { - "x": 0.10658823776634563, - "y": 0.2430647934352237 - } - } - }, - { - "ID": "199", - "typeID": "Arrow", - "zOrder": "51", - "w": "1", - "h": "74", - "measuredW": "150", - "measuredH": "100", - "x": "1403", - "y": "1327", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 0.25689465937102796, - "y": 74 - }, - "p1": { - "x": 0.4438624012549724, - "y": -0.00008403832147462036 - }, - "p2": { - "x": 0.25689465937102796, - "y": 0.04693405035095566 - } - } - }, - { - "ID": "200", - "typeID": "__group__", - "zOrder": "52", - "measuredW": "165", - "measuredH": "50", - "w": "165", - "h": "50", - "x": "1201", - "y": "1295", - "properties": { - "controlName": "100-game-physics:collision-detection:broad-phase:spatial-partitioning:sort-and-sweep" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "165", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "121", - "measuredH": "25", - "x": "20", - "y": "12", - "properties": { - "size": "17", - "text": "Sort and Sweep" - } - } - ] - } - } - }, - { - "ID": "201", - "typeID": "Arrow", - "zOrder": "53", - "w": "138", - "h": "245", - "measuredW": "150", - "measuredH": "100", - "x": "898", - "y": "1084", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 0.5, - "y": 244.5 - }, - "p1": { - "x": 0.6056482312916567, - "y": 0.2146100241561168 - }, - "p2": { - "x": 138.5, - "y": -0.5 - } - } - }, - { - "ID": "202", - "typeID": "Arrow", - "zOrder": "54", - "w": "1", - "h": "141", - "measuredW": "150", - "measuredH": "100", - "x": "1279", - "y": "1008", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 0.25689465937102796, - "y": 140 - }, - "p1": { - "x": 0.44386240125497234, - "y": -0.00008403832147462014 - }, - "p2": { - "x": 0.25689465937102796, - "y": -0.5 - } - } - }, - { - "ID": "203", - "typeID": "Arrow", - "zOrder": "55", - "w": "1", - "h": "149", - "measuredW": "150", - "measuredH": "100", - "x": "1096", - "y": "1004", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 0.25689465937102796, - "y": 149.5 - }, - "p1": { - "x": 0.44386240125497234, - "y": -0.00008403832147462013 - }, - "p2": { - "x": 0.25689465937102796, - "y": 0.1296029775844545 - } - } - }, - { - "ID": "204", - "typeID": "Arrow", - "zOrder": "56", - "w": "99", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "1283", - "y": "1007", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 99.5, - "y": 0 - }, - "p1": { - "x": 0.44386240125497234, - "y": -0.00008403832147459171 - }, - "p2": { - "x": 0.25689465937091427, - "y": 0 - } - } - }, - { - "ID": "205", - "typeID": "Arrow", - "zOrder": "57", - "w": "153", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "969", - "y": "694", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": 153.00619469824142, - "y": 0 - }, - "p1": { - "x": 0.4438624012549724, - "y": -0.00008403832147459171 - }, - "p2": { - "x": 0.25689465937091427, - "y": 0 - } - } - }, - { - "ID": "206", - "typeID": "__group__", - "zOrder": "58", - "measuredW": "173", - "measuredH": "50", - "w": "173", - "h": "50", - "x": "1023", - "y": "762", - "properties": { - "controlName": "101-game-physics:dynamics:acceleration" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "173", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "96", - "measuredH": "25", - "x": "39", - "y": "12", - "properties": { - "size": "17", - "text": "Acceleration" - } - } - ] - } - } - }, - { - "ID": "207", - "typeID": "__group__", - "zOrder": "59", - "measuredW": "182", - "measuredH": "50", - "w": "182", - "h": "50", - "x": "1187", - "y": "762", - "properties": { - "controlName": "106-game-physics:dynamics:joints" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "182", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "46", - "measuredH": "25", - "x": "68", - "y": "12", - "properties": { - "size": "17", - "text": "Joints" - } - } - ] - } - } - }, - { - "ID": "208", - "typeID": "__group__", - "zOrder": "60", - "measuredW": "173", - "measuredH": "50", - "w": "173", - "h": "50", - "x": "1023", - "y": "807", - "properties": { - "controlName": "102-game-physics:dynamics:force" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "173", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "45", - "measuredH": "25", - "x": "64", - "y": "12", - "properties": { - "size": "17", - "text": "Force" - } - } - ] - } - } - }, - { - "ID": "209", - "typeID": "__group__", - "zOrder": "61", - "measuredW": "173", - "measuredH": "50", - "w": "173", - "h": "50", - "x": "1023", - "y": "715", - "properties": { - "controlName": "100-game-physics:dynamics:center-of-mass" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "173", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "119", - "measuredH": "25", - "x": "27", - "y": "12", - "properties": { - "size": "17", - "text": "Center of Mass" - } - } - ] - } - } - }, - { - "ID": "210", - "typeID": "__group__", - "zOrder": "62", - "measuredW": "182", - "measuredH": "50", - "w": "182", - "h": "50", - "x": "1187", - "y": "715", - "properties": { - "controlName": "105-game-physics:dynamics:moment-of-inertia" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "182", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "138", - "measuredH": "25", - "x": "22", - "y": "12", - "properties": { - "size": "17", - "text": "Moment of Inertia" - } - } - ] - } - } - }, - { - "ID": "211", - "typeID": "__group__", - "zOrder": "63", - "measuredW": "182", - "measuredH": "50", - "w": "182", - "h": "50", - "x": "1187", - "y": "807", - "properties": { - "controlName": "107-game-physics:dynamics:restitution" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "182", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "83", - "measuredH": "25", - "x": "49", - "y": "12", - "properties": { - "size": "17", - "text": "Restitution" - } - } - ] - } - } - }, - { - "ID": "212", - "typeID": "Arrow", - "zOrder": "64", - "w": "261", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "629", - "y": "693", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 261.46728049769126, - "y": 0 - }, - "p1": { - "x": 0.4438624012549723, - "y": -0.00008403832147459167 - }, - "p2": { - "x": 0.25689465937091427, - "y": 0 - } - } - }, - { - "ID": "213", - "typeID": "Arrow", - "zOrder": "65", - "w": "1", - "h": "137", - "measuredW": "150", - "measuredH": "100", - "x": "626", - "y": "701", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0.25689465937091427, - "y": 136.31451321982706 - }, - "p1": { - "x": 0.4438624012549723, - "y": -0.00008403832147459187 - }, - "p2": { - "x": 0.25689465937091427, - "y": -0.2145155532066383 - }, - "stroke": "dotted" - } - }, - { - "ID": "214", - "typeID": "Arrow", - "zOrder": "66", - "w": "1", - "h": "137", - "measuredW": "150", - "measuredH": "100", - "x": "493", - "y": "701", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0.25689465937091427, - "y": 136.31451321982706 - }, - "p1": { - "x": 0.4438624012549723, - "y": -0.00008403832147459187 - }, - "p2": { - "x": 0.25689465937091427, - "y": -0.2145155532066383 - }, - "stroke": "dotted" - } - }, - { - "ID": "215", - "typeID": "Arrow", - "zOrder": "67", - "w": "148", - "h": "71", - "measuredW": "150", - "measuredH": "100", - "x": "348", - "y": "710", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 147.80240047508187, - "y": -0.20427010390062605 - }, - "p1": { - "x": 0.45231745742261575, - "y": -0.09614961454764198 - }, - "p2": { - "x": 0.25689465937091427, - "y": 71 - }, - "stroke": "dotted" - } - }, - { - "ID": "216", - "typeID": "Arrow", - "zOrder": "68", - "w": "119", - "h": "24", - "measuredW": "150", - "measuredH": "100", - "x": "348", - "y": "703", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 119.2699565522795, - "y": 2.290607171446368 - }, - "p1": { - "x": 0.41519692025766836, - "y": -0.07573683845887558 - }, - "p2": { - "x": 0.25689465937091427, - "y": 24 - }, - "stroke": "dotted" - } - }, - { - "ID": "217", - "typeID": "Arrow", - "zOrder": "69", - "w": "115", - "h": "13", - "measuredW": "150", - "measuredH": "100", - "x": "346", - "y": "673", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 115.26312625274215, - "y": 12.768408697950008 - }, - "p1": { - "x": 0.5059105783799109, - "y": 0.030052787850858634 - }, - "p2": { - "x": 0.25689465937091427, - "y": 0 - }, - "stroke": "dotted" - } - }, - { - "ID": "218", - "typeID": "Arrow", - "zOrder": "70", - "w": "130", - "h": "52", - "measuredW": "150", - "measuredH": "100", - "x": "346", - "y": "620", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 130.2802020015855, - "y": 52.25304052399099 - }, - "p1": { - "x": 0.47348328491970937, - "y": 0.08633508353112267 - }, - "p2": { - "x": 0.25689465937091427, - "y": 0 - }, - "stroke": "dotted" - } - }, - { - "ID": "219", - "typeID": "Arrow", - "zOrder": "71", - "w": "130", - "h": "102", - "measuredW": "150", - "measuredH": "100", - "x": "355", - "y": "567", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 130.29044745089152, - "y": 102.24962537422232 - }, - "p1": { - "x": 0.446103928214201, - "y": 0.10826513744395756 - }, - "p2": { - "x": 0.25689465937091427, - "y": 0 - }, - "stroke": "dotted" - } - }, - { - "ID": "220", - "typeID": "Arrow", - "zOrder": "72", - "w": "153", - "h": "162", - "measuredW": "150", - "measuredH": "100", - "x": "356", - "y": "512", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 153.31776864904083, - "y": 161.75474809887533 - }, - "p1": { - "x": 0.4366735826462758, - "y": 0.07884072282709702 - }, - "p2": { - "x": 0.25689465937091427, - "y": 0 - }, - "stroke": "dotted" - } - }, - { - "ID": "221", - "typeID": "Arrow", - "zOrder": "73", - "w": "1", - "h": "200", - "measuredW": "150", - "measuredH": "100", - "x": "555", - "y": "514", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0, - "y": 0 - }, - "p1": { - "x": 0.44386240125497245, - "y": -0.00008403832147459165 - }, - "p2": { - "x": 0, - "y": 200.30085262075238 - } - } - }, - { - "ID": "222", - "typeID": "Arrow", - "zOrder": "74", - "w": "331", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "1089", - "y": "512", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 330.8922047754186, - "y": 0 - }, - "p1": { - "x": 0.4438624012549723, - "y": -0.0000840383214745917 - }, - "p2": { - "x": 0.25689465937091427, - "y": 0 - }, - "stroke": "dotted" - } - }, - { - "ID": "223", - "typeID": "Label", - "zOrder": "75", - "measuredW": "247", - "measuredH": "40", - "x": "690", - "y": "334", - "properties": { - "size": "32", - "text": "Game Developer" - } - }, - { - "ID": "224", - "typeID": "__group__", - "zOrder": "76", - "measuredW": "373", - "measuredH": "151", - "w": "373", - "h": "151", - "x": "1079", - "y": "226", - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "373", - "h": "151", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "333", - "measuredH": "26", - "x": "18", - "y": "19", - "properties": { - "text": "Find the detailed version of this roadmap", - "size": "18" - } - }, - { - "ID": "3", - "typeID": "__group__", - "zOrder": "2", - "measuredW": "339", - "measuredH": "47", - "w": "339", - "h": "47", - "x": "18", - "y": "88", - "properties": { - "controlName": "ext_link:roadmap.sh" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "339", - "h": "47", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0", - "properties": { - "borderColor": "4273622", - "color": "4273622" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "155", - "measuredH": "26", - "x": "92", - "y": "11", - "properties": { - "color": "16777215", - "text": "https://roadmap.sh", - "size": "18" - } - } - ] - } - } - }, - { - "ID": "5", - "typeID": "Label", - "zOrder": "3", - "measuredW": "337", - "measuredH": "26", - "x": "18", - "y": "48", - "properties": { - "size": "18", - "text": "Along with resources and more roadmaps" - } - } - ] - } - } - }, - { - "ID": "225", - "typeID": "Arrow", - "zOrder": "77", - "w": "1", - "h": "74", - "measuredW": "150", - "measuredH": "100", - "x": "815", - "y": "243", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0, - "y": 0 - }, - "p1": { - "x": 0.4438624012549725, - "y": -0.00008403832147459165 - }, - "p2": { - "x": 0, - "y": 74.15918378573792 - }, - "stroke": "dotted" - } - }, - { - "ID": "226", - "typeID": "Arrow", - "zOrder": "78", - "w": "1", - "h": "115", - "measuredW": "150", - "measuredH": "100", - "x": "815", - "y": "395", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0, - "y": 0 - }, - "p1": { - "x": 0.44386240125497245, - "y": -0.00008403832147459165 - }, - "p2": { - "x": 0, - "y": 114.87761494930675 - } - } - }, - { - "ID": "227", - "typeID": "__group__", - "zOrder": "79", - "measuredW": "394", - "measuredH": "198", - "w": "394", - "h": "198", - "x": "141", - "y": "221", - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "394", - "h": "198", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0" - }, - { - "ID": "5", - "typeID": "Label", - "zOrder": "1", - "measuredW": "338", - "measuredH": "26", - "x": "26", - "y": "72", - "properties": { - "size": "18", - "text": "Original roadmap was made by Chris Ohk." - } - }, - { - "ID": "7", - "typeID": "Label", - "zOrder": "2", - "measuredW": "308", - "measuredH": "26", - "x": "26", - "y": "102", - "properties": { - "size": "18", - "text": "You can find him using the links below:" - } - }, - { - "ID": "11", - "typeID": "Label", - "zOrder": "3", - "measuredW": "169", - "measuredH": "32", - "x": "26", - "y": "29", - "properties": { - "size": "24", - "text": "Special Thanks!" - } - }, - { - "ID": "16", - "typeID": "Label", - "zOrder": "5", - "measuredW": "13", - "measuredH": "26", - "x": "148", - "y": "144", - "properties": { - "size": "18", - "text": "+" - } - }, - { - "ID": "18", - "typeID": "__group__", - "zOrder": "4", - "measuredW": "113", - "measuredH": "26", - "w": "113", - "h": "26", - "x": "26", - "y": "144", - "properties": { - "controlName": "ext_link:github.com/utilForever" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Label", - "zOrder": "0", - "measuredW": "113", - "measuredH": "26", - "x": "0", - "y": "0", - "properties": { - "size": "18", - "text": "GitHub Profile", - "color": "10027263" - } - } - ] - } - } - }, - { - "ID": "19", - "typeID": "__group__", - "zOrder": "6", - "measuredW": "110", - "measuredH": "26", - "w": "110", - "h": "26", - "x": "176", - "y": "144", - "properties": { - "controlName": "ext_link:twitter.com/utilForever" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Label", - "zOrder": "0", - "measuredW": "110", - "measuredH": "26", - "x": "0", - "y": "0", - "properties": { - "size": "18", - "text": "Twitter Profile", - "color": "10027263" - } - } - ] - } - } - } - ] - } - } - }, - { - "ID": "228", - "typeID": "Arrow", - "zOrder": "80", - "w": "101", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "764", - "y": "214", - "properties": { - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "color": "16777215", - "p0": { - "x": 100.57841492806233, - "y": 0.15918378573792324 - }, - "p1": { - "x": 0.4438624012549726, - "y": -0.00008403832147459165 - }, - "p2": { - "x": 0, - "y": 0.15918378573792324 - } - } - }, - { - "ID": "229", - "typeID": "Arrow", - "zOrder": "81", - "w": "101", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "689", - "y": "3096", - "properties": { - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "color": "16777215", - "p0": { - "x": 100.57841492806233, - "y": 0.15918378573792324 - }, - "p1": { - "x": 0.4438624012549726, - "y": -0.00008403832147459165 - }, - "p2": { - "x": 0, - "y": 0.15918378573792324 - } - } - }, - { - "ID": "230", - "typeID": "Arrow", - "zOrder": "82", - "w": "594", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "549", - "y": "512", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 594.0697673807772, - "y": 0 - }, - "p1": { - "x": 0.4438624012549723, - "y": -0.00008403832147459167 - }, - "p2": { - "x": 0.25689465937091427, - "y": 0 - } - } - }, - { - "ID": "231", - "typeID": "__group__", - "zOrder": "83", - "measuredW": "204", - "measuredH": "50", - "w": "204", - "h": "50", - "x": "455", - "y": "488", - "properties": { - "controlName": "100-client-side" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "204", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16776960" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "84", - "measuredH": "25", - "x": "60", - "y": "13", - "properties": { - "size": "17", - "text": "Client Side" - } - } - ] - } - } - }, - { - "ID": "232", - "typeID": "__group__", - "zOrder": "84", - "measuredW": "309", - "measuredH": "50", - "w": "309", - "h": "50", - "x": "977", - "y": "486", - "properties": { - "controlName": "ext_link:roadmap.sh/server-side-game-developer" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "309", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "90", - "measuredH": "25", - "x": "112", - "y": "13", - "properties": { - "size": "17", - "text": "Server Side" - } - } - ] - } - } - }, - { - "ID": "233", - "typeID": "Label", - "zOrder": "85", - "measuredW": "310", - "measuredH": "25", - "x": "978", - "y": "547", - "properties": { - "size": "17", - "text": "Click to navigate to server side roadmap" - } - }, - { - "ID": "234", - "typeID": "__group__", - "zOrder": "86", - "measuredW": "204", - "measuredH": "50", - "w": "204", - "h": "50", - "x": "455", - "y": "667", - "properties": { - "controlName": "101-game-mathematics" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "204", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16776960" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "151", - "measuredH": "25", - "x": "26", - "y": "13", - "properties": { - "size": "17", - "text": "Game Mathematics" - } - } - ] - } - } - }, - { - "ID": "235", - "typeID": "__group__", - "zOrder": "87", - "measuredW": "214", - "measuredH": "50", - "w": "214", - "h": "50", - "x": "145", - "y": "487", - "properties": { - "controlName": "100-game-mathematics:linear-algebra" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "214", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "113", - "measuredH": "25", - "x": "50", - "y": "13", - "properties": { - "size": "17", - "text": "Linear Algebra" - } - } - ] - } - } - }, - { - "ID": "236", - "typeID": "__group__", - "zOrder": "88", - "measuredW": "214", - "measuredH": "50", - "w": "214", - "h": "50", - "x": "145", - "y": "541", - "properties": { - "controlName": "101-game-mathematics:vector" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "214", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "50", - "measuredH": "25", - "x": "82", - "y": "13", - "properties": { - "size": "17", - "text": "Vector" - } - } - ] - } - } - }, - { - "ID": "237", - "typeID": "__group__", - "zOrder": "89", - "measuredW": "214", - "measuredH": "50", - "w": "214", - "h": "50", - "x": "145", - "y": "595", - "properties": { - "controlName": "102-game-mathematics:matrix" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "214", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "48", - "measuredH": "25", - "x": "83", - "y": "13", - "properties": { - "size": "17", - "text": "Matrix" - } - } - ] - } - } - }, - { - "ID": "238", - "typeID": "__group__", - "zOrder": "90", - "measuredW": "214", - "measuredH": "50", - "w": "214", - "h": "50", - "x": "145", - "y": "648", - "properties": { - "controlName": "103-game-mathematics:geometry" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "214", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "77", - "measuredH": "25", - "x": "68", - "y": "13", - "properties": { - "size": "17", - "text": "Geometry" - } - } - ] - } - } - }, - { - "ID": "239", - "typeID": "__group__", - "zOrder": "91", - "measuredW": "214", - "measuredH": "50", - "w": "214", - "h": "50", - "x": "145", - "y": "702", - "properties": { - "controlName": "104-game-mathematics:linear-transformation" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "214", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "169", - "measuredH": "25", - "x": "22", - "y": "13", - "properties": { - "size": "17", - "text": "Linear Transformation" - } - } - ] - } - } - }, - { - "ID": "240", - "typeID": "__group__", - "zOrder": "92", - "measuredW": "214", - "measuredH": "50", - "w": "214", - "h": "50", - "x": "145", - "y": "756", - "properties": { - "controlName": "105-game-mathematics:affine-space" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "214", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "96", - "measuredH": "25", - "x": "59", - "y": "13", - "properties": { - "size": "17", - "text": "Affine Space" - } - } - ] - } - } - }, - { - "ID": "241", - "typeID": "__group__", - "zOrder": "93", - "measuredW": "214", - "measuredH": "50", - "w": "214", - "h": "50", - "x": "145", - "y": "810", - "properties": { - "controlName": "105-game-mathematics:affine-transformation" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "214", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "162", - "measuredH": "25", - "x": "26", - "y": "13", - "properties": { - "size": "17", - "text": "Affine Transformation" - } - } - ] - } - } - }, - { - "ID": "242", - "typeID": "__group__", - "zOrder": "94", - "measuredW": "214", - "measuredH": "144", - "w": "214", - "h": "144", - "x": "145", - "y": "865", - "properties": { - "controlName": "106-game-mathematics:orientation" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "214", - "h": "144", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "86", - "measuredH": "25", - "x": "64", - "y": "14", - "properties": { - "size": "17", - "text": "Orientation" - } - } - ] - } - } - }, - { - "ID": "243", - "typeID": "__group__", - "zOrder": "95", - "measuredW": "214", - "measuredH": "50", - "w": "214", - "h": "50", - "x": "145", - "y": "912", - "properties": { - "controlName": "100-game-mathematics:orientation:quaternion" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "214", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "87", - "measuredH": "25", - "x": "63", - "y": "13", - "properties": { - "size": "17", - "text": "Quaternion" - } - } - ] - } - } - }, - { - "ID": "244", - "typeID": "__group__", - "zOrder": "96", - "measuredW": "197", - "measuredH": "193", - "w": "197", - "h": "193", - "x": "375", - "y": "820", - "properties": { - "controlName": "106-game-mathematics:curve" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "197", - "h": "193", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "46", - "measuredH": "25", - "x": "76", - "y": "14", - "properties": { - "size": "17", - "text": "Curve" - } - } - ] - } - } - }, - { - "ID": "245", - "typeID": "__group__", - "zOrder": "97", - "measuredW": "101", - "measuredH": "50", - "w": "101", - "h": "50", - "x": "375", - "y": "869", - "properties": { - "controlName": "100-game-mathematics:orientation:spline" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "101", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "48", - "measuredH": "25", - "x": "27", - "y": "13", - "properties": { - "size": "17", - "text": "Spline" - } - } - ] - } - } - }, - { - "ID": "246", - "typeID": "__group__", - "zOrder": "98", - "measuredW": "214", - "measuredH": "50", - "w": "214", - "h": "50", - "x": "145", - "y": "959", - "properties": { - "controlName": "101-game-mathematics:orientation:euler-angle" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "214", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "89", - "measuredH": "25", - "x": "62", - "y": "13", - "properties": { - "size": "17", - "text": "Euler Angle" - } - } - ] - } - } - }, - { - "ID": "247", - "typeID": "__group__", - "zOrder": "99", - "measuredW": "100", - "measuredH": "50", - "w": "100", - "h": "50", - "x": "472", - "y": "869", - "properties": { - "controlName": "101-game-mathematics:orientation:hermite" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "100", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "62", - "measuredH": "25", - "x": "19", - "y": "13", - "properties": { - "size": "17", - "text": "Hermite" - } - } - ] - } - } - }, - { - "ID": "248", - "typeID": "__group__", - "zOrder": "100", - "measuredW": "197", - "measuredH": "50", - "w": "197", - "h": "50", - "x": "375", - "y": "916", - "properties": { - "controlName": "102-game-mathematics:orientation:bezier" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "197", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "51", - "measuredH": "25", - "x": "73", - "y": "13", - "properties": { - "size": "17", - "text": "Bezier" - } - } - ] - } - } - }, - { - "ID": "249", - "typeID": "__group__", - "zOrder": "101", - "measuredW": "197", - "measuredH": "50", - "w": "197", - "h": "50", - "x": "375", - "y": "963", - "properties": { - "controlName": "103-game-mathematics:orientation:catmull-rom" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "197", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "100", - "measuredH": "25", - "x": "49", - "y": "13", - "properties": { - "size": "17", - "text": "Catmull-Rom" - } - } - ] - } - } - }, - { - "ID": "250", - "typeID": "__group__", - "zOrder": "102", - "measuredW": "197", - "measuredH": "144", - "w": "197", - "h": "144", - "x": "569", - "y": "820", - "properties": { - "controlName": "107-game-mathematics:projection" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "197", - "h": "144", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "78", - "measuredH": "25", - "x": "60", - "y": "14", - "properties": { - "size": "17", - "text": "Projection" - } - } - ] - } - } - }, - { - "ID": "251", - "typeID": "__group__", - "zOrder": "103", - "measuredW": "197", - "measuredH": "50", - "w": "197", - "h": "50", - "x": "569", - "y": "869", - "properties": { - "controlName": "100-game-mathematics:projection:perspective" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "197", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "91", - "measuredH": "25", - "x": "53", - "y": "13", - "properties": { - "size": "17", - "text": "Perspective" - } - } - ] - } - } - }, - { - "ID": "252", - "typeID": "__group__", - "zOrder": "104", - "measuredW": "197", - "measuredH": "50", - "w": "197", - "h": "50", - "x": "569", - "y": "916", - "properties": { - "controlName": "101-game-mathematics:projection:orthogonal" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "197", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "87", - "measuredH": "25", - "x": "55", - "y": "13", - "properties": { - "size": "17", - "text": "Orthogonal" - } - } - ] - } - } - }, - { - "ID": "253", - "typeID": "__group__", - "zOrder": "105", - "measuredW": "172", - "measuredH": "50", - "w": "172", - "h": "50", - "x": "801", - "y": "668", - "properties": { - "controlName": "102-game-physics" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "172", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16776960" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "109", - "measuredH": "25", - "x": "31", - "y": "13", - "properties": { - "size": "17", - "text": "Game Physics" - } - } - ] - } - } - }, - { - "ID": "254", - "typeID": "__group__", - "zOrder": "106", - "measuredW": "347", - "measuredH": "50", - "w": "347", - "h": "50", - "x": "1023", - "y": "668", - "properties": { - "controlName": "100-game-physics:dynamics" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "347", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "75", - "measuredH": "25", - "x": "136", - "y": "13", - "properties": { - "size": "17", - "text": "Dynamics" - } - } - ] - } - } - }, - { - "ID": "255", - "typeID": "__group__", - "zOrder": "107", - "measuredW": "173", - "measuredH": "50", - "w": "173", - "h": "50", - "x": "1023", - "y": "853", - "properties": { - "controlName": "103-game-physics:dynamics:angular-velocity" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "173", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "122", - "measuredH": "25", - "x": "26", - "y": "12", - "properties": { - "size": "17", - "text": "Angular Velocity" - } - } - ] - } - } - }, - { - "ID": "256", - "typeID": "__group__", - "zOrder": "108", - "measuredW": "182", - "measuredH": "50", - "w": "182", - "h": "50", - "x": "1187", - "y": "853", - "properties": { - "controlName": "108-game-physics:dynamics:buoyancy" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "182", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "74", - "measuredH": "25", - "x": "54", - "y": "12", - "properties": { - "size": "17", - "text": "Buoyancy" - } - } - ] - } - } - }, - { - "ID": "257", - "typeID": "__group__", - "zOrder": "109", - "measuredW": "173", - "measuredH": "50", - "w": "173", - "h": "50", - "x": "1023", - "y": "897", - "properties": { - "controlName": "104-game-physics:dynamics:linear-velocity" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "173", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "112", - "measuredH": "25", - "x": "31", - "y": "12", - "properties": { - "size": "17", - "text": "Linear Velocity" - } - } - ] - } - } - }, - { - "ID": "258", - "typeID": "__group__", - "zOrder": "110", - "measuredW": "182", - "measuredH": "50", - "w": "182", - "h": "50", - "x": "1187", - "y": "897", - "properties": { - "controlName": "109-game-physics:dynamics:friction" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "182", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "58", - "measuredH": "25", - "x": "62", - "y": "12", - "properties": { - "size": "17", - "text": "Friction" - } - } - ] - } - } - }, - { - "ID": "259", - "typeID": "__group__", - "zOrder": "111", - "measuredW": "291", - "measuredH": "50", - "w": "291", - "h": "50", - "x": "1022", - "y": "982", - "properties": { - "controlName": "101-game-physics:collision-detection" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "291", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "145", - "measuredH": "25", - "x": "83", - "y": "13", - "properties": { - "size": "17", - "text": "Collision Detection" - } - } - ] - } - } - }, - { - "ID": "260", - "typeID": "__group__", - "zOrder": "112", - "measuredW": "64", - "measuredH": "50", - "w": "64", - "h": "50", - "x": "1343", - "y": "983", - "properties": { - "controlName": "100-game-physics:collision-detection:ccd" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "64", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "37", - "measuredH": "25", - "x": "13", - "y": "12", - "properties": { - "size": "17", - "text": "CCD" - } - } - ] - } - } - }, - { - "ID": "261", - "typeID": "__group__", - "zOrder": "113", - "measuredW": "155", - "measuredH": "50", - "w": "155", - "h": "50", - "x": "1022", - "y": "1059", - "properties": { - "controlName": "101-game-physics:collision-detection:narrow-phase" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "155", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "109", - "measuredH": "25", - "x": "23", - "y": "12", - "properties": { - "size": "17", - "text": "Narrow Phase" - } - } - ] - } - } - }, - { - "ID": "262", - "typeID": "__group__", - "zOrder": "114", - "measuredW": "130", - "measuredH": "50", - "w": "130", - "h": "50", - "x": "1201", - "y": "1059", - "properties": { - "controlName": "102-game-physics:collision-detection:broad-phase" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "130", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "100", - "measuredH": "25", - "x": "15", - "y": "12", - "properties": { - "size": "17", - "text": "Broad Phase" - } - } - ] - } - } - }, - { - "ID": "263", - "typeID": "__group__", - "zOrder": "115", - "measuredW": "79", - "measuredH": "50", - "w": "79", - "h": "50", - "x": "1022", - "y": "1175", - "properties": { - "controlName": "100-game-physics:collision-detection:narrow-phase:intersection:sat" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "79", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "30", - "measuredH": "25", - "x": "25", - "y": "12", - "properties": { - "size": "17", - "text": "SAT" - } - } - ] - } - } - }, - { - "ID": "264", - "typeID": "__group__", - "zOrder": "116", - "measuredW": "155", - "measuredH": "50", - "w": "155", - "h": "50", - "x": "1022", - "y": "1222", - "properties": { - "controlName": "102-game-physics:collision-detection:narrow-phase:intersection:epa" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "155", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "32", - "measuredH": "25", - "x": "62", - "y": "12", - "properties": { - "size": "17", - "text": "EPA" - } - } - ] - } - } - }, - { - "ID": "265", - "typeID": "__group__", - "zOrder": "117", - "measuredW": "79", - "measuredH": "50", - "w": "79", - "h": "50", - "x": "1098", - "y": "1175", - "properties": { - "controlName": "101-game-physics:collision-detection:narrow-phase:intersection:gjk" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "79", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "33", - "measuredH": "25", - "x": "23", - "y": "12", - "properties": { - "size": "17", - "text": "GJK" - } - } - ] - } - } - }, - { - "ID": "266", - "typeID": "__group__", - "zOrder": "118", - "measuredW": "155", - "measuredH": "48", - "w": "155", - "h": "48", - "x": "1022", - "y": "1130", - "properties": { - "controlName": "101-game-physics:collision-detection:narrow-phase:intersection" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "155", - "h": "48", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "93", - "measuredH": "25", - "x": "32", - "y": "10", - "properties": { - "size": "17", - "text": "Intersection" - } - } - ] - } - } - }, - { - "ID": "267", - "typeID": "__group__", - "zOrder": "119", - "measuredW": "129", - "measuredH": "50", - "w": "129", - "h": "50", - "x": "839", - "y": "1344", - "properties": { - "controlName": "100-game-physics:collision-detection:narrow-phase:convexity:convex" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "129", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "58", - "measuredH": "25", - "x": "36", - "y": "12", - "properties": { - "size": "17", - "text": "Convex" - } - } - ] - } - } - }, - { - "ID": "268", - "typeID": "__group__", - "zOrder": "120", - "measuredW": "129", - "measuredH": "50", - "w": "129", - "h": "50", - "x": "839", - "y": "1391", - "properties": { - "controlName": "101-game-physics:collision-detection:narrow-phase:convexity:convex:convex-hull" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "129", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "92", - "measuredH": "25", - "x": "18", - "y": "12", - "properties": { - "size": "17", - "text": "Convex Hull" - } - } - ] - } - } - }, - { - "ID": "269", - "typeID": "__group__", - "zOrder": "121", - "measuredW": "213", - "measuredH": "50", - "w": "213", - "h": "50", - "x": "964", - "y": "1344", - "properties": { - "controlName": "101-game-physics:collision-detection:narrow-phase:convexity:concave" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "213", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "69", - "measuredH": "25", - "x": "72", - "y": "12", - "properties": { - "size": "17", - "text": "Concave" - } - } - ] - } - } - }, - { - "ID": "270", - "typeID": "__group__", - "zOrder": "122", - "measuredW": "213", - "measuredH": "50", - "w": "213", - "h": "50", - "x": "964", - "y": "1391", - "properties": { - "controlName": "100-game-physics:collision-detection:narrow-phase:convexity:concave:convex-decomposition" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "213", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "178", - "measuredH": "25", - "x": "18", - "y": "12", - "properties": { - "size": "17", - "text": "Convex Decomposition" - } - } - ] - } - } - }, - { - "ID": "271", - "typeID": "__group__", - "zOrder": "123", - "measuredW": "338", - "measuredH": "48", - "w": "338", - "h": "48", - "x": "839", - "y": "1300", - "properties": { - "controlName": "100-game-physics:collision-detection:narrow-phase:convexity" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "338", - "h": "48", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "75", - "measuredH": "25", - "x": "131", - "y": "10", - "properties": { - "size": "17", - "text": "Convexity" - } - } - ] - } - } - }, - { - "ID": "272", - "typeID": "__group__", - "zOrder": "124", - "measuredW": "84", - "measuredH": "50", - "w": "84", - "h": "50", - "x": "1201", - "y": "1175", - "properties": { - "controlName": "100-game-physics:collision-detection:broad-phase:bounding-volume:aabb" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "84", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "45", - "measuredH": "25", - "x": "19", - "y": "12", - "properties": { - "size": "17", - "text": "AABB" - } - } - ] - } - } - }, - { - "ID": "273", - "typeID": "__group__", - "zOrder": "125", - "measuredW": "84", - "measuredH": "50", - "w": "84", - "h": "50", - "x": "1282", - "y": "1175", - "properties": { - "controlName": "101-game-physics:collision-detection:broad-phase:bounding-volume:obb" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "84", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "37", - "measuredH": "25", - "x": "23", - "y": "12", - "properties": { - "size": "17", - "text": "OBB" - } - } - ] - } - } - }, - { - "ID": "274", - "typeID": "__group__", - "zOrder": "126", - "measuredW": "165", - "measuredH": "48", - "w": "165", - "h": "48", - "x": "1201", - "y": "1130", - "properties": { - "controlName": "100-game-physics:collision-detection:broad-phase:bounding-volume" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "165", - "h": "48", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "134", - "measuredH": "25", - "x": "16", - "y": "10", - "properties": { - "size": "17", - "text": "Bounding Volume" - } - } - ] - } - } - }, - { - "ID": "275", - "typeID": "__group__", - "zOrder": "127", - "measuredW": "83", - "measuredH": "50", - "w": "83", - "h": "50", - "x": "1361", - "y": "1295", - "properties": { - "controlName": "101-game-physics:collision-detection:broad-phase:spatial-partitioning:bvh" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "83", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "34", - "measuredH": "25", - "x": "25", - "y": "12", - "properties": { - "size": "17", - "text": "BVH" - } - } - ] - } - } - }, - { - "ID": "276", - "typeID": "__group__", - "zOrder": "128", - "measuredW": "243", - "measuredH": "48", - "w": "243", - "h": "48", - "x": "1201", - "y": "1250", - "properties": { - "controlName": "101-game-physics:collision-detection:broad-phase:spatial-partitioning" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "243", - "h": "48", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "144", - "measuredH": "25", - "x": "50", - "y": "11", - "properties": { - "size": "17", - "text": "Spatial Partitioning" - } - } - ] - } - } - }, - { - "ID": "277", - "typeID": "__group__", - "zOrder": "129", - "measuredW": "83", - "measuredH": "50", - "w": "83", - "h": "50", - "x": "1363", - "y": "1381", - "properties": { - "controlName": "100-game-physics:collision-detection:broad-phase:spatial-partitioning:bvh:dbvt" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "83", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "45", - "measuredH": "25", - "x": "20", - "y": "12", - "properties": { - "size": "17", - "text": "DBVT" - } - } - ] - } - } - }, - { - "ID": "278", - "typeID": "Arrow", - "zOrder": "130", - "w": "327", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "570", - "y": "1110", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 326.28605400996094, - "y": 0 - }, - "p1": { - "x": 0.4438624012549723, - "y": -0.00008403832147459168 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "279", - "typeID": "__group__", - "zOrder": "131", - "measuredW": "246", - "measuredH": "50", - "w": "246", - "h": "50", - "x": "518", - "y": "1086", - "properties": { - "controlName": "103-game-engine" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "246", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16776960" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "106", - "measuredH": "25", - "x": "70", - "y": "13", - "properties": { - "size": "17", - "text": "Game Engine" - } - } - ] - } - } - }, - { - "ID": "280", - "typeID": "__group__", - "zOrder": "132", - "measuredW": "157", - "measuredH": "50", - "w": "157", - "h": "50", - "x": "291", - "y": "1065", - "properties": { - "controlName": "101-game-engine:unreal-engine" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "157", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "111", - "measuredH": "25", - "x": "23", - "y": "12", - "properties": { - "size": "17", - "text": "Unreal Engine" - } - } - ] - } - } - }, - { - "ID": "281", - "typeID": "__group__", - "zOrder": "133", - "measuredW": "157", - "measuredH": "50", - "w": "157", - "h": "50", - "x": "291", - "y": "1119", - "properties": { - "controlName": "103-game-engine:unity-3d" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "157", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "66", - "measuredH": "25", - "x": "46", - "y": "12", - "properties": { - "size": "17", - "text": "Unity 3D" - } - } - ] - } - } - }, - { - "ID": "282", - "typeID": "__group__", - "zOrder": "134", - "measuredW": "120", - "measuredH": "50", - "w": "120", - "h": "50", - "x": "167", - "y": "1065", - "properties": { - "controlName": "100-game-engine:godot" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "120", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "47", - "measuredH": "25", - "x": "36", - "y": "12", - "properties": { - "size": "17", - "text": "Godot" - } - } - ] - } - } - }, - { - "ID": "283", - "typeID": "__group__", - "zOrder": "135", - "measuredW": "120", - "measuredH": "50", - "w": "120", - "h": "50", - "x": "167", - "y": "1119", - "properties": { - "controlName": "102-game-engine:native" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "120", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "50", - "measuredH": "25", - "x": "35", - "y": "12", - "properties": { - "size": "17", - "text": "Native" - } - } - ] - } - } - }, - { - "ID": "284", - "typeID": "Label", - "zOrder": "136", - "measuredW": "146", - "measuredH": "25", - "x": "224", - "y": "1177", - "properties": { - "size": "17", - "text": "Pick one from here" - } - }, - { - "ID": "285", - "typeID": "__group__", - "zOrder": "137", - "measuredW": "246", - "measuredH": "50", - "w": "246", - "h": "50", - "x": "518", - "y": "1296", - "properties": { - "controlName": "104-programming-languages" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "246", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16776960" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "194", - "measuredH": "25", - "x": "26", - "y": "12", - "properties": { - "size": "17", - "text": "Programming Languages" - } - } - ] - } - } - }, - { - "ID": "286", - "typeID": "__group__", - "zOrder": "138", - "measuredW": "170", - "measuredH": "50", - "w": "170", - "h": "50", - "x": "274", - "y": "1298", - "properties": { - "controlName": "102-programming-languages:assembly" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "170", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "72", - "measuredH": "25", - "x": "49", - "y": "12", - "properties": { - "size": "17", - "text": "Assembly" - } - } - ] - } - } - }, - { - "ID": "287", - "typeID": "__group__", - "zOrder": "139", - "measuredW": "96", - "measuredH": "50", - "w": "96", - "h": "50", - "x": "274", - "y": "1245", - "properties": { - "controlName": "100-programming-languages:c-cpp" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "96", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "64", - "measuredH": "25", - "x": "16", - "y": "12", - "properties": { - "size": "17", - "text": "C / C++" - } - } - ] - } - } - }, - { - "ID": "288", - "typeID": "__group__", - "zOrder": "140", - "measuredW": "71", - "measuredH": "50", - "w": "71", - "h": "50", - "x": "373", - "y": "1245", - "properties": { - "controlName": "101-programming-languages:csharp" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "71", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "24", - "measuredH": "25", - "x": "24", - "y": "12", - "properties": { - "size": "17", - "text": "C#" - } - } - ] - } - } - }, - { - "ID": "289", - "typeID": "__group__", - "zOrder": "141", - "measuredW": "77", - "measuredH": "50", - "w": "77", - "h": "50", - "x": "274", - "y": "1350", - "properties": { - "controlName": "103-programming-languages:rust" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "77", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "36", - "measuredH": "25", - "x": "21", - "y": "12", - "properties": { - "size": "17", - "text": "Rust" - } - } - ] - } - } - }, - { - "ID": "290", - "typeID": "__group__", - "zOrder": "142", - "measuredW": "88", - "measuredH": "50", - "w": "88", - "h": "50", - "x": "357", - "y": "1351", - "properties": { - "controlName": "104-programming-languages:python" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "88", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "53", - "measuredH": "25", - "x": "17", - "y": "11", - "properties": { - "size": "17", - "text": "Python" - } - } - ] - } - } - }, - { - "ID": "291", - "typeID": "Arrow", - "zOrder": "143", - "w": "292", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "361", - "y": "1458", - "properties": { - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 292.10198439749036, - "y": 0.16578208707346676 - }, - "p1": { - "x": 0.4438624012549725, - "y": -0.00008403832147455509 - }, - "p2": { - "x": 0, - "y": 0.16578208707346676 - } - } - }, - { - "ID": "292", - "typeID": "Arrow", - "zOrder": "144", - "w": "29", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "624", - "y": "1462", - "properties": { - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 29.101984397490355, - "y": 0.16578208707346676 - }, - "p1": { - "x": 0.4438624012549724, - "y": -0.00008403832147455411 - }, - "p2": { - "x": -0.13539456394892113, - "y": 0.16578208707346676 - } - } - }, - { - "ID": "293", - "typeID": "Arrow", - "zOrder": "145", - "w": "29", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "624", - "y": "1465", - "properties": { - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 29.101984397490355, - "y": 0.16578208707346676 - }, - "p1": { - "x": 0.4438624012549724, - "y": -0.00008403832147455411 - }, - "p2": { - "x": -0.13539456394892113, - "y": 0.16578208707346676 - } - } - }, - { - "ID": "294", - "typeID": "Label", - "zOrder": "146", - "measuredW": "141", - "measuredH": "28", - "x": "433", - "y": "1471", - "properties": { - "size": "20", - "text": "Getting Deeper" - } - }, - { - "ID": "295", - "typeID": "__group__", - "zOrder": "147", - "measuredW": "246", - "measuredH": "50", - "w": "246", - "h": "50", - "x": "499", - "y": "1538", - "properties": { - "controlName": "105-computer-graphics" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "246", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16776960" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "150", - "measuredH": "25", - "x": "48", - "y": "13", - "properties": { - "size": "17", - "text": "Computer Graphics" - } - } - ] - } - } - }, - { - "ID": "296", - "typeID": "__group__", - "zOrder": "148", - "measuredW": "175", - "measuredH": "50", - "w": "175", - "h": "50", - "x": "275", - "y": "1605", - "properties": { - "controlName": "100-computer-graphics:ray-tracing" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "175", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "90", - "measuredH": "25", - "x": "36", - "y": "12", - "properties": { - "size": "17", - "text": "Ray Tracing" - } - } - ] - } - } - }, - { - "ID": "297", - "typeID": "__group__", - "zOrder": "149", - "measuredW": "175", - "measuredH": "50", - "w": "175", - "h": "50", - "x": "275", - "y": "1658", - "properties": { - "controlName": "101-computer-graphics:rasterization" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "175", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "102", - "measuredH": "25", - "x": "36", - "y": "12", - "properties": { - "size": "17", - "text": "Rasterization" - } - } - ] - } - } - }, - { - "ID": "298", - "typeID": "__group__", - "zOrder": "150", - "measuredW": "175", - "measuredH": "50", - "w": "175", - "h": "50", - "x": "275", - "y": "1711", - "properties": { - "controlName": "102-computer-graphics:graphics-pipeline" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "175", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "136", - "measuredH": "25", - "x": "19", - "y": "12", - "properties": { - "size": "17", - "text": "Graphics Pipeline" - } - } - ] - } - } - }, - { - "ID": "299", - "typeID": "__group__", - "zOrder": "151", - "measuredW": "175", - "measuredH": "50", - "w": "175", - "h": "50", - "x": "275", - "y": "1764", - "properties": { - "controlName": "103-computer-graphics:sampling" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "175", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "71", - "measuredH": "25", - "x": "50", - "y": "12", - "properties": { - "size": "17", - "text": "Sampling" - } - } - ] - } - } - }, - { - "ID": "300", - "typeID": "__group__", - "zOrder": "152", - "measuredW": "175", - "measuredH": "50", - "w": "175", - "h": "50", - "x": "275", - "y": "1818", - "properties": { - "controlName": "108-computer-graphics:shader" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "175", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "56", - "measuredH": "25", - "x": "50", - "y": "12", - "properties": { - "size": "17", - "text": "Shader" - } - } - ] - } - } - }, - { - "ID": "301", - "typeID": "__group__", - "zOrder": "153", - "measuredW": "175", - "measuredH": "50", - "w": "175", - "h": "50", - "x": "275", - "y": "1863", - "properties": { - "controlName": "100-computer-graphics:shader:render-equation" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "175", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "155", - "measuredH": "25", - "x": "12", - "y": "12", - "properties": { - "size": "17", - "text": "Rendering Equation" - } - } - ] - } - } - }, - { - "ID": "302", - "typeID": "__group__", - "zOrder": "154", - "measuredW": "175", - "measuredH": "50", - "w": "175", - "h": "50", - "x": "275", - "y": "1910", - "properties": { - "controlName": "101-computer-graphics:shader:reflection" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "175", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "78", - "measuredH": "25", - "x": "49", - "y": "12", - "properties": { - "size": "17", - "text": "Reflection" - } - } - ] - } - } - }, - { - "ID": "303", - "typeID": "__group__", - "zOrder": "155", - "measuredW": "175", - "measuredH": "50", - "w": "175", - "h": "50", - "x": "275", - "y": "1957", - "properties": { - "controlName": "102-computer-graphics:shader:mapping" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "175", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "68", - "measuredH": "25", - "x": "54", - "y": "12", - "properties": { - "size": "17", - "text": "Mapping" - } - } - ] - } - } - }, - { - "ID": "304", - "typeID": "__group__", - "zOrder": "156", - "measuredW": "94", - "measuredH": "50", - "w": "94", - "h": "50", - "x": "131", - "y": "1886", - "properties": { - "controlName": "100-computer-graphics:shader:reflection:diffuse" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "94", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "54", - "measuredH": "25", - "x": "20", - "y": "12", - "properties": { - "size": "17", - "text": "Diffuse" - } - } - ] - } - } - }, - { - "ID": "305", - "typeID": "__group__", - "zOrder": "157", - "measuredW": "94", - "measuredH": "50", - "w": "94", - "h": "50", - "x": "131", - "y": "1940", - "properties": { - "controlName": "101-computer-graphics:shader:reflection:specular" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "94", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "69", - "measuredH": "25", - "x": "12", - "y": "12", - "properties": { - "size": "17", - "text": "Specular" - } - } - ] - } - } - }, - { - "ID": "306", - "typeID": "__group__", - "zOrder": "158", - "measuredW": "94", - "measuredH": "50", - "w": "94", - "h": "50", - "x": "529", - "y": "1871", - "properties": { - "controlName": "100-computer-graphics:shader:mapping:texture" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "94", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "57", - "measuredH": "25", - "x": "18", - "y": "12", - "properties": { - "size": "17", - "text": "Texture" - } - } - ] - } - } - }, - { - "ID": "307", - "typeID": "__group__", - "zOrder": "159", - "measuredW": "94", - "measuredH": "50", - "w": "94", - "h": "50", - "x": "529", - "y": "1925", - "properties": { - "controlName": "101-computer-graphics:shader:mapping:bump" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "94", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "46", - "measuredH": "25", - "x": "24", - "y": "12", - "properties": { - "size": "17", - "text": "Bump" - } - } - ] - } - } - }, - { - "ID": "308", - "typeID": "__group__", - "zOrder": "160", - "measuredW": "94", - "measuredH": "50", - "w": "94", - "h": "50", - "x": "529", - "y": "1978", - "properties": { - "controlName": "102-computer-graphics:shader:mapping:parallax" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "94", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "61", - "measuredH": "25", - "x": "16", - "y": "12", - "properties": { - "size": "17", - "text": "Parallax" - } - } - ] - } - } - }, - { - "ID": "309", - "typeID": "__group__", - "zOrder": "161", - "measuredW": "94", - "measuredH": "50", - "w": "94", - "h": "50", - "x": "529", - "y": "2031", - "properties": { - "controlName": "103-computer-graphics:shader:mapping:horizon" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "94", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "60", - "measuredH": "25", - "x": "17", - "y": "12", - "properties": { - "size": "17", - "text": "Horizon" - } - } - ] - } - } - }, - { - "ID": "310", - "typeID": "__group__", - "zOrder": "162", - "measuredW": "186", - "measuredH": "50", - "w": "186", - "h": "50", - "x": "501", - "y": "1627", - "properties": { - "controlName": "104-computer-graphics:computer-animation" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "186", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "158", - "measuredH": "25", - "x": "14", - "y": "12", - "properties": { - "size": "17", - "text": "Computer Animation" - } - } - ] - } - } - }, - { - "ID": "311", - "typeID": "__group__", - "zOrder": "163", - "measuredW": "186", - "measuredH": "50", - "w": "186", - "h": "50", - "x": "501", - "y": "1680", - "properties": { - "controlName": "105-computer-graphics:color" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "186", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "42", - "measuredH": "25", - "x": "72", - "y": "12", - "properties": { - "size": "17", - "text": "Color" - } - } - ] - } - } - }, - { - "ID": "312", - "typeID": "__group__", - "zOrder": "164", - "measuredW": "186", - "measuredH": "50", - "w": "186", - "h": "50", - "x": "501", - "y": "1733", - "properties": { - "controlName": "106-computer-graphics:visual-perception" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "186", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "134", - "measuredH": "25", - "x": "26", - "y": "12", - "properties": { - "size": "17", - "text": "Visual Perception" - } - } - ] - } - } - }, - { - "ID": "313", - "typeID": "__group__", - "zOrder": "165", - "measuredW": "186", - "measuredH": "50", - "w": "186", - "h": "50", - "x": "501", - "y": "1786", - "properties": { - "controlName": "107-computer-graphics:tone-reproduction" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "186", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "147", - "measuredH": "25", - "x": "19", - "y": "12", - "properties": { - "size": "17", - "text": "Tone Reproduction" - } - } - ] - } - } - }, - { - "ID": "314", - "typeID": "__group__", - "zOrder": "166", - "measuredW": "308", - "measuredH": "50", - "w": "308", - "h": "50", - "x": "794", - "y": "1539", - "properties": { - "controlName": "109-computer-graphics:lightning-and-shadow" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "308", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "160", - "measuredH": "25", - "x": "74", - "y": "12", - "properties": { - "size": "17", - "text": "Lighting and Shadow" - } - } - ] - } - } - }, - { - "ID": "315", - "typeID": "__group__", - "zOrder": "167", - "measuredW": "322", - "measuredH": "50", - "w": "322", - "h": "50", - "x": "1129", - "y": "1539", - "properties": { - "controlName": "110-computer-graphics:visibility-and-occlusion" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "322", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "174", - "measuredH": "25", - "x": "74", - "y": "12", - "properties": { - "size": "17", - "text": "Visibility and Occlusion" - } - } - ] - } - } - }, - { - "ID": "316", - "typeID": "__group__", - "zOrder": "168", - "measuredW": "148", - "measuredH": "50", - "w": "148", - "h": "50", - "x": "794", - "y": "1619", - "properties": { - "controlName": "101-computer-graphics:lightning-and-shadow:shadow-map" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "148", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "99", - "measuredH": "25", - "x": "26", - "y": "12", - "properties": { - "size": "17", - "text": "Shadow Map" - } - } - ] - } - } - }, - { - "ID": "317", - "typeID": "__group__", - "zOrder": "169", - "measuredW": "149", - "measuredH": "50", - "w": "149", - "h": "50", - "x": "953", - "y": "1619", - "properties": { - "controlName": "102-computer-graphics:lightning-and-shadow:light-source" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "149", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "97", - "measuredH": "25", - "x": "26", - "y": "12", - "properties": { - "size": "17", - "text": "Light Source" - } - } - ] - } - } - }, - { - "ID": "318", - "typeID": "__group__", - "zOrder": "170", - "measuredW": "149", - "measuredH": "50", - "w": "149", - "h": "50", - "x": "793", - "y": "1807", - "properties": { - "controlName": "100-computer-graphics:lightning-and-shadow:stencil-shadow" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "149", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "117", - "measuredH": "25", - "x": "16", - "y": "12", - "properties": { - "size": "17", - "text": "Stencil Shadow" - } - } - ] - } - } - }, - { - "ID": "319", - "typeID": "__group__", - "zOrder": "171", - "measuredW": "64", - "measuredH": "50", - "w": "64", - "h": "50", - "x": "794", - "y": "1666", - "properties": { - "controlName": "100-computer-graphics:lightning-and-shadow:shadow-map:2d" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "64", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "23", - "measuredH": "25", - "x": "20", - "y": "12", - "properties": { - "size": "17", - "text": "2D" - } - } - ] - } - } - }, - { - "ID": "320", - "typeID": "__group__", - "zOrder": "172", - "measuredW": "90", - "measuredH": "50", - "w": "90", - "h": "50", - "x": "852", - "y": "1666", - "properties": { - "controlName": "101-computer-graphics:lightning-and-shadow:shadow-map:cube" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "90", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "42", - "measuredH": "25", - "x": "24", - "y": "12", - "properties": { - "size": "17", - "text": "Cube" - } - } - ] - } - } - }, - { - "ID": "321", - "typeID": "__group__", - "zOrder": "173", - "measuredW": "148", - "measuredH": "50", - "w": "148", - "h": "50", - "x": "794", - "y": "1713", - "properties": { - "controlName": "102-computer-graphics:lightning-and-shadow:shadow-map:cascaded" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "148", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "79", - "measuredH": "25", - "x": "34", - "y": "12", - "properties": { - "size": "17", - "text": "Cascaded" - } - } - ] - } - } - }, - { - "ID": "322", - "typeID": "__group__", - "zOrder": "174", - "measuredW": "149", - "measuredH": "50", - "w": "149", - "h": "50", - "x": "953", - "y": "1666", - "properties": { - "controlName": "100-computer-graphics:lightning-and-shadow:light-source:directional-light" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "149", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "126", - "measuredH": "25", - "x": "12", - "y": "12", - "properties": { - "size": "17", - "text": "Directional Light" - } - } - ] - } - } - }, - { - "ID": "323", - "typeID": "__group__", - "zOrder": "175", - "measuredW": "149", - "measuredH": "50", - "w": "149", - "h": "50", - "x": "953", - "y": "1713", - "properties": { - "controlName": "101-computer-graphics:lightning-and-shadow:light-source:point-light" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "149", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "82", - "measuredH": "25", - "x": "34", - "y": "12", - "properties": { - "size": "17", - "text": "Point Light" - } - } - ] - } - } - }, - { - "ID": "324", - "typeID": "__group__", - "zOrder": "176", - "measuredW": "149", - "measuredH": "50", - "w": "149", - "h": "50", - "x": "953", - "y": "1760", - "properties": { - "controlName": "102-computer-graphics:lightning-and-shadow:light-source:spot-light" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "149", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "78", - "measuredH": "25", - "x": "36", - "y": "12", - "properties": { - "size": "17", - "text": "Spot Light" - } - } - ] - } - } - }, - { - "ID": "325", - "typeID": "__group__", - "zOrder": "177", - "measuredW": "149", - "measuredH": "50", - "w": "149", - "h": "50", - "x": "953", - "y": "1807", - "properties": { - "controlName": "103-computer-graphics:lightning-and-shadow:light-source:infinite-light" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "149", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "95", - "measuredH": "25", - "x": "27", - "y": "12", - "properties": { - "size": "17", - "text": "Infinite Light" - } - } - ] - } - } - }, - { - "ID": "326", - "typeID": "__group__", - "zOrder": "178", - "measuredW": "94", - "measuredH": "50", - "w": "94", - "h": "50", - "x": "1130", - "y": "1619", - "properties": { - "controlName": "100-computer-graphics:visibility-and-occlusion:occluder" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "94", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "71", - "measuredH": "25", - "x": "11", - "y": "12", - "properties": { - "size": "17", - "text": "Occluder" - } - } - ] - } - } - }, - { - "ID": "327", - "typeID": "__group__", - "zOrder": "179", - "measuredW": "93", - "measuredH": "50", - "w": "93", - "h": "50", - "x": "1232", - "y": "1619", - "properties": { - "controlName": "101-computer-graphics:visibility-and-occlusion:culling" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "93", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "53", - "measuredH": "25", - "x": "20", - "y": "12", - "properties": { - "size": "17", - "text": "Culling" - } - } - ] - } - } - }, - { - "ID": "328", - "typeID": "__group__", - "zOrder": "180", - "measuredW": "114", - "measuredH": "50", - "w": "114", - "h": "50", - "x": "1334", - "y": "1619", - "properties": { - "controlName": "102-computer-graphics:visibility-and-occlusion:clipping" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "114", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "63", - "measuredH": "25", - "x": "25", - "y": "12", - "properties": { - "size": "17", - "text": "Clipping" - } - } - ] - } - } - }, - { - "ID": "329", - "typeID": "__group__", - "zOrder": "181", - "measuredW": "95", - "measuredH": "50", - "w": "95", - "h": "50", - "x": "1129", - "y": "1666", - "properties": { - "controlName": "100-computer-graphics:visibility-and-occlusion:occluder:fog" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "95", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "30", - "measuredH": "25", - "x": "33", - "y": "12", - "properties": { - "size": "17", - "text": "Fog" - } - } - ] - } - } - }, - { - "ID": "330", - "typeID": "__group__", - "zOrder": "182", - "measuredW": "94", - "measuredH": "50", - "w": "94", - "h": "50", - "x": "1232", - "y": "1666", - "properties": { - "controlName": "100-computer-graphics:visibility-and-occlusion:culling:frustum" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "94", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "63", - "measuredH": "25", - "x": "15", - "y": "12", - "properties": { - "size": "17", - "text": "Frustum" - } - } - ] - } - } - }, - { - "ID": "331", - "typeID": "__group__", - "zOrder": "183", - "measuredW": "94", - "measuredH": "50", - "w": "94", - "h": "50", - "x": "1232", - "y": "1713", - "properties": { - "controlName": "101-computer-graphics:visibility-and-occlusion:culling:light" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "94", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "39", - "measuredH": "25", - "x": "27", - "y": "12", - "properties": { - "size": "17", - "text": "Light" - } - } - ] - } - } - }, - { - "ID": "332", - "typeID": "__group__", - "zOrder": "184", - "measuredW": "94", - "measuredH": "50", - "w": "94", - "h": "50", - "x": "1232", - "y": "1759", - "properties": { - "controlName": "102-computer-graphics:visibility-and-occlusion:culling:shadow" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "94", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "61", - "measuredH": "25", - "x": "16", - "y": "12", - "properties": { - "size": "17", - "text": "Shadow" - } - } - ] - } - } - }, - { - "ID": "333", - "typeID": "__group__", - "zOrder": "185", - "measuredW": "115", - "measuredH": "50", - "w": "115", - "h": "50", - "x": "1333", - "y": "1666", - "properties": { - "controlName": "100-computer-graphics:visibility-and-occlusion:clipping:polygon" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "115", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "60", - "measuredH": "25", - "x": "28", - "y": "12", - "properties": { - "size": "17", - "text": "Polygon" - } - } - ] - } - } - }, - { - "ID": "334", - "typeID": "__group__", - "zOrder": "186", - "measuredW": "115", - "measuredH": "50", - "w": "115", - "h": "50", - "x": "1333", - "y": "1712", - "properties": { - "controlName": "101-computer-graphics:visibility-and-occlusion:clipping:polyhedron" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "115", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "86", - "measuredH": "25", - "x": "15", - "y": "12", - "properties": { - "size": "17", - "text": "Polyhedron" - } - } - ] - } - } - }, - { - "ID": "335", - "typeID": "Arrow", - "zOrder": "187", - "w": "724", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "702", - "y": "1933", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 724.4163636871738, - "y": 0 - }, - "p1": { - "x": 0.44386240125497206, - "y": -0.00008403832147459168 - }, - "p2": { - "x": 0.23910021871586196, - "y": 0 - } - } - }, - { - "ID": "336", - "typeID": "__group__", - "zOrder": "188", - "measuredW": "337", - "measuredH": "50", - "w": "337", - "h": "50", - "x": "654", - "y": "1909", - "properties": { - "controlName": "106-graphics-api" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "337", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16776960" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "100", - "measuredH": "25", - "x": "109", - "y": "13", - "properties": { - "size": "17", - "text": "Graphics API" - } - } - ] - } - } - }, - { - "ID": "337", - "typeID": "__group__", - "zOrder": "189", - "measuredW": "101", - "measuredH": "50", - "w": "101", - "h": "50", - "x": "654", - "y": "1986", - "properties": { - "controlName": "100-graphics-api:direct-x" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "101", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "57", - "measuredH": "25", - "x": "22", - "y": "12", - "properties": { - "size": "17", - "text": "DirectX" - } - } - ] - } - } - }, - { - "ID": "338", - "typeID": "__group__", - "zOrder": "190", - "measuredW": "101", - "measuredH": "50", - "w": "101", - "h": "50", - "x": "761", - "y": "1986", - "properties": { - "controlName": "101-graphics-api:open-gl" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "101", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "66", - "measuredH": "25", - "x": "18", - "y": "12", - "properties": { - "size": "17", - "text": "OpenGL" - } - } - ] - } - } - }, - { - "ID": "339", - "typeID": "__group__", - "zOrder": "191", - "measuredW": "101", - "measuredH": "50", - "w": "101", - "h": "50", - "x": "760", - "y": "2088", - "properties": { - "controlName": "105-graphics-api:vulkan" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "101", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "51", - "measuredH": "25", - "x": "25", - "y": "12", - "properties": { - "size": "17", - "text": "Vulkan" - } - } - ] - } - } - }, - { - "ID": "340", - "typeID": "__group__", - "zOrder": "192", - "measuredW": "116", - "measuredH": "50", - "w": "116", - "h": "50", - "x": "867", - "y": "1986", - "properties": { - "controlName": "102-graphics-api:web-gl" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "116", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "57", - "measuredH": "25", - "x": "29", - "y": "12", - "properties": { - "size": "17", - "text": "WebGL" - } - } - ] - } - } - }, - { - "ID": "341", - "typeID": "__group__", - "zOrder": "193", - "measuredW": "116", - "measuredH": "50", - "w": "116", - "h": "50", - "x": "867", - "y": "2039", - "properties": { - "controlName": "103-graphics-api:opengl-es" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "116", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "92", - "measuredH": "25", - "x": "12", - "y": "12", - "properties": { - "size": "17", - "text": "OpenGL ES" - } - } - ] - } - } - }, - { - "ID": "342", - "typeID": "__group__", - "zOrder": "194", - "measuredW": "116", - "measuredH": "50", - "w": "116", - "h": "50", - "x": "867", - "y": "2093", - "properties": { - "controlName": "104-graphics-api:metal" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "116", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "44", - "measuredH": "25", - "x": "36", - "y": "12", - "properties": { - "size": "17", - "text": "Metal" - } - } - ] - } - } - }, - { - "ID": "343", - "typeID": "__group__", - "zOrder": "195", - "measuredW": "279", - "measuredH": "50", - "w": "279", - "h": "50", - "x": "1096", - "y": "1908", - "properties": { - "controlName": "107-game-api" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "279", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16776960" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "67", - "measuredH": "25", - "x": "106", - "y": "12", - "properties": { - "size": "17", - "text": "Game AI" - } - } - ] - } - } - }, - { - "ID": "344", - "typeID": "__group__", - "zOrder": "196", - "measuredW": "217", - "measuredH": "50", - "w": "217", - "h": "50", - "x": "1017", - "y": "1986", - "properties": { - "controlName": "100-game-api:decision-making" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "217", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "128", - "measuredH": "25", - "x": "45", - "y": "12", - "properties": { - "size": "17", - "text": "Decision Making" - } - } - ] - } - } - }, - { - "ID": "345", - "typeID": "__group__", - "zOrder": "197", - "measuredW": "126", - "measuredH": "50", - "w": "126", - "h": "50", - "x": "1249", - "y": "1986", - "properties": { - "controlName": "101-game-api:movement" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "126", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "82", - "measuredH": "25", - "x": "22", - "y": "12", - "properties": { - "size": "17", - "text": "Movement" - } - } - ] - } - } - }, - { - "ID": "346", - "typeID": "__group__", - "zOrder": "198", - "measuredW": "126", - "measuredH": "50", - "w": "126", - "h": "50", - "x": "1249", - "y": "2041", - "properties": { - "controlName": "102-game-api:board-game" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "126", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "98", - "measuredH": "25", - "x": "12", - "y": "12", - "properties": { - "size": "17", - "text": "Board Game" - } - } - ] - } - } - }, - { - "ID": "347", - "typeID": "Arrow", - "zOrder": "199", - "w": "1", - "h": "512", - "measuredW": "150", - "measuredH": "100", - "x": "1427", - "y": "1933", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0, - "y": 0 - }, - "p1": { - "x": 0.4438624012549724, - "y": -0.00008403832147459163 - }, - "p2": { - "x": 0, - "y": 512.0472001830349 - } - } - }, - { - "ID": "348", - "typeID": "Arrow", - "zOrder": "200", - "w": "1227", - "h": "1", - "measuredW": "150", - "measuredH": "100", - "x": "200", - "y": "2444", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 1227.4163636871738, - "y": 0 - }, - "p1": { - "x": 0.44386240125497206, - "y": -0.0000840383214745917 - }, - "p2": { - "x": 0.41537919583601024, - "y": 0 - } - } - }, - { - "ID": "349", - "typeID": "Arrow", - "zOrder": "201", - "w": "1", - "h": "206", - "measuredW": "150", - "measuredH": "100", - "x": "762", - "y": "2249", - "properties": { - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0, - "y": 206.01221488520832 - }, - "p1": { - "x": 0.4438624012549725, - "y": -0.00008403832147455508 - }, - "p2": { - "x": 0, - "y": 0.11860965287360159 - } - } - }, - { - "ID": "350", - "typeID": "Arrow", - "zOrder": "202", - "w": "1", - "h": "27", - "measuredW": "150", - "measuredH": "100", - "x": "766", - "y": "2428", - "properties": { - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0, - "y": 27.012214885208323 - }, - "p1": { - "x": 0.44386240125497256, - "y": -0.0000840383214745551 - }, - "p2": { - "x": 0, - "y": -0.3404268200670231 - } - } - }, - { - "ID": "351", - "typeID": "Arrow", - "zOrder": "203", - "w": "1", - "h": "27", - "measuredW": "150", - "measuredH": "100", - "x": "770", - "y": "2428", - "properties": { - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0, - "y": 27.012214885208323 - }, - "p1": { - "x": 0.44386240125497256, - "y": -0.0000840383214745551 - }, - "p2": { - "x": 0, - "y": -0.3404268200670231 - } - } - }, - { - "ID": "352", - "typeID": "Label", - "zOrder": "204", - "measuredW": "178", - "measuredH": "28", - "x": "783", - "y": "2322", - "properties": { - "size": "20", - "text": "Maximise your skills" - } - }, - { - "ID": "353", - "typeID": "__group__", - "zOrder": "205", - "measuredW": "181", - "measuredH": "50", - "w": "181", - "h": "50", - "x": "305", - "y": "2420", - "properties": { - "controlName": "108-game-api-2" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "181", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16776960" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "67", - "measuredH": "25", - "x": "57", - "y": "12", - "properties": { - "size": "17", - "text": "Game AI" - } - } - ] - } - } - }, - { - "ID": "354", - "typeID": "__group__", - "zOrder": "206", - "measuredW": "179", - "measuredH": "50", - "w": "179", - "h": "50", - "x": "306", - "y": "2320", - "properties": { - "controlName": "100-game-api-2:learning" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "179", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "69", - "measuredH": "25", - "x": "55", - "y": "12", - "properties": { - "size": "17", - "text": "Learning" - } - } - ] - } - } - }, - { - "ID": "355", - "typeID": "__group__", - "zOrder": "207", - "measuredW": "242", - "measuredH": "50", - "w": "242", - "h": "50", - "x": "418", - "y": "2234", - "properties": { - "controlName": "105-game-api-2:learning:reinforcements-learning" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "242", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "196", - "measuredH": "25", - "x": "25", - "y": "12", - "properties": { - "size": "17", - "text": "Reinforcements Learning" - } - } - ] - } - } - }, - { - "ID": "356", - "typeID": "__group__", - "zOrder": "208", - "measuredW": "242", - "measuredH": "50", - "w": "242", - "h": "50", - "x": "418", - "y": "2187", - "properties": { - "controlName": "104-game-api-2:learning:artificial-neural-network" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "242", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "191", - "measuredH": "25", - "x": "27", - "y": "12", - "properties": { - "size": "17", - "text": "Artificial Neutral Network" - } - } - ] - } - } - }, - { - "ID": "357", - "typeID": "__group__", - "zOrder": "209", - "measuredW": "242", - "measuredH": "50", - "w": "242", - "h": "50", - "x": "418", - "y": "2140", - "properties": { - "controlName": "103-game-api-2:learning:deep-learning" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "242", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "115", - "measuredH": "25", - "x": "65", - "y": "12", - "properties": { - "size": "17", - "text": "Deep Learning" - } - } - ] - } - } - }, - { - "ID": "358", - "typeID": "__group__", - "zOrder": "210", - "measuredW": "224", - "measuredH": "50", - "w": "224", - "h": "50", - "x": "174", - "y": "2234", - "properties": { - "controlName": "102-game-api-2:learning:decision-tree-learning" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "224", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "179", - "measuredH": "25", - "x": "23", - "y": "12", - "properties": { - "size": "17", - "text": "Decision Tree Learning" - } - } - ] - } - } - }, - { - "ID": "359", - "typeID": "__group__", - "zOrder": "211", - "measuredW": "224", - "measuredH": "50", - "w": "224", - "h": "50", - "x": "174", - "y": "2187", - "properties": { - "controlName": "101-game-api-2:learning:naive-bayes-classifier" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "224", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "171", - "measuredH": "25", - "x": "27", - "y": "12", - "properties": { - "size": "17", - "text": "Naive Bayes Classifier" - } - } - ] - } - } - }, - { - "ID": "360", - "typeID": "__group__", - "zOrder": "212", - "measuredW": "224", - "measuredH": "50", - "w": "224", - "h": "50", - "x": "174", - "y": "2140", - "properties": { - "controlName": "100-game-api-2:learning:decision-learning" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "224", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "140", - "measuredH": "25", - "x": "43", - "y": "12", - "properties": { - "size": "17", - "text": "Decision Learning" - } - } - ] - } - } - }, - { - "ID": "361", - "typeID": "Arrow", - "zOrder": "213", - "w": "1", - "h": "264", - "measuredW": "150", - "measuredH": "100", - "x": "200", - "y": "2444", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0, - "y": 0 - }, - "p1": { - "x": 0.44386240125497245, - "y": -0.00008403832147459167 - }, - "p2": { - "x": 0, - "y": 264.0498808177572 - } - } - }, - { - "ID": "362", - "typeID": "__group__", - "zOrder": "214", - "measuredW": "253", - "measuredH": "50", - "w": "253", - "h": "50", - "x": "280", - "y": "2687", - "properties": { - "controlName": "109-advanced-rendering" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "253", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16776960" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "162", - "measuredH": "25", - "x": "46", - "y": "12", - "properties": { - "size": "17", - "text": "Advanced Rendering" - } - } - ] - } - } - }, - { - "ID": "363", - "typeID": "__group__", - "zOrder": "215", - "measuredW": "251", - "measuredH": "50", - "w": "251", - "h": "50", - "x": "281", - "y": "2568", - "properties": { - "controlName": "100-advanced-rendering:real-time-ray-tracing" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "251", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "173", - "measuredH": "25", - "x": "39", - "y": "12", - "properties": { - "size": "17", - "text": "Real-Time Ray Tracing" - } - } - ] - } - } - }, - { - "ID": "364", - "typeID": "__group__", - "zOrder": "216", - "measuredW": "199", - "measuredH": "50", - "w": "199", - "h": "50", - "x": "598", - "y": "2510", - "properties": { - "controlName": "100-advanced-rendering:real-time-ray-tracing:directx-ray-tracing" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "199", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "151", - "measuredH": "25", - "x": "24", - "y": "12", - "properties": { - "size": "17", - "text": "DirectX Ray Tracing" - } - } - ] - } - } - }, - { - "ID": "365", - "typeID": "__group__", - "zOrder": "217", - "measuredW": "199", - "measuredH": "50", - "w": "199", - "h": "50", - "x": "598", - "y": "2565", - "properties": { - "controlName": "101-advanced-rendering:real-time-ray-tracing:vulkan-ray-tracing" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "199", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "145", - "measuredH": "25", - "x": "27", - "y": "12", - "properties": { - "size": "17", - "text": "Vulkan Ray Tracing" - } - } - ] - } - } - }, - { - "ID": "366", - "typeID": "__group__", - "zOrder": "218", - "measuredW": "199", - "measuredH": "50", - "w": "199", - "h": "50", - "x": "598", - "y": "2620", - "properties": { - "controlName": "102-advanced-rendering:real-time-ray-tracing:optix" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "199", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "42", - "measuredH": "25", - "x": "79", - "y": "12", - "properties": { - "size": "17", - "text": "OptiX" - } - } - ] - } - } - }, - { - "ID": "367", - "typeID": "__group__", - "zOrder": "219", - "measuredW": "251", - "measuredH": "50", - "w": "251", - "h": "50", - "x": "281", - "y": "2769", - "properties": { - "controlName": "101-advanced-rendering:physically-based-rendering" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "251", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "216", - "measuredH": "25", - "x": "18", - "y": "12", - "properties": { - "size": "17", - "text": "Physically-Based Rendering" - } - } - ] - } - } - }, - { - "ID": "368", - "typeID": "__group__", - "zOrder": "220", - "measuredW": "272", - "measuredH": "50", - "w": "272", - "h": "50", - "x": "281", - "y": "2846", - "properties": { - "controlName": "100-advanced-rendering:physically-based-rendering:translucency-and-transparency" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "272", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "243", - "measuredH": "25", - "x": "14", - "y": "12", - "properties": { - "size": "17", - "text": "Translucency and Transparency" - } - } - ] - } - } - }, - { - "ID": "369", - "typeID": "__group__", - "zOrder": "221", - "measuredW": "272", - "measuredH": "50", - "w": "272", - "h": "50", - "x": "281", - "y": "2899", - "properties": { - "controlName": "101-advanced-rendering:physically-based-rendering:translucency-and-transparency" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "272", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "181", - "measuredH": "25", - "x": "45", - "y": "12", - "properties": { - "size": "17", - "text": "Conservation of Energy" - } - } - ] - } - } - }, - { - "ID": "370", - "typeID": "__group__", - "zOrder": "222", - "measuredW": "272", - "measuredH": "50", - "w": "272", - "h": "50", - "x": "281", - "y": "2952", - "properties": { - "controlName": "102-advanced-rendering:physically-based-rendering:metallicity" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "272", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "77", - "measuredH": "25", - "x": "97", - "y": "12", - "properties": { - "size": "17", - "text": "Metallicity" - } - } - ] - } - } - }, - { - "ID": "371", - "typeID": "__group__", - "zOrder": "223", - "measuredW": "272", - "measuredH": "50", - "w": "272", - "h": "50", - "x": "281", - "y": "3005", - "properties": { - "controlName": "103-advanced-rendering:physically-based-rendering:microsurface-scattering" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "272", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "184", - "measuredH": "25", - "x": "44", - "y": "12", - "properties": { - "size": "17", - "text": "Microsurface Scattering" - } - } - ] - } - } - }, - { - "ID": "372", - "typeID": "Arrow", - "zOrder": "224", - "w": "1", - "h": "139", - "measuredW": "150", - "measuredH": "100", - "x": "761", - "y": "2711", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "p0": { - "x": 0, - "y": 0 - }, - "p1": { - "x": 0.44386240125497245, - "y": -0.00008403832147459167 - }, - "p2": { - "x": 0, - "y": 138.5388820076132 - } - } - }, - { - "ID": "373", - "typeID": "Label", - "zOrder": "225", - "measuredW": "134", - "measuredH": "28", - "x": "695", - "y": "2871", - "properties": { - "size": "20", - "text": "Keep Learning" - } - }, - { - "ID": "374", - "typeID": "Arrow", - "zOrder": "226", - "w": "1", - "h": "93", - "measuredW": "150", - "measuredH": "100", - "x": "759", - "y": "2930", - "properties": { - "color": "2848996", - "curvature": "-1", - "direction": "bottom", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "p0": { - "x": -0.23864736175914913, - "y": 93.43627444823528 - }, - "p1": { - "x": 0.44386240125497256, - "y": -0.00008403832147461125 - }, - "p2": { - "x": -0.23864736175914913, - "y": 0 - } - } - }, - { - "ID": "375", - "typeID": "__group__", - "zOrder": "227", - "measuredW": "375", - "measuredH": "54", - "w": "375", - "h": "54", - "x": "1078", - "y": "397", - "properties": { - "controlName": "100-game-developer-roadmap-note" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "375", - "h": "54", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0" - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "224", - "measuredH": "26", - "x": "50", - "y": "14", - "properties": { - "size": "18", - "text": "Important Note / Click here" - } - }, - { - "ID": "2", - "typeID": "__group__", - "zOrder": "2", - "measuredW": "24", - "measuredH": "24", - "w": "24", - "h": "24", - "x": "18", - "y": "18", - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Icon", - "zOrder": "0", - "measuredW": "24", - "measuredH": "24", - "x": "0", - "y": "0", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - } - }, - { - "ID": "1", - "typeID": "Icon", - "zOrder": "1", - "measuredW": "24", - "measuredH": "24", - "x": "0", - "y": "0", - "properties": { - "icon": { - "ID": "check-circle", - "size": "small" - }, - "color": "13576743" - } - } - ] - } - } - } - ] - } - } - } - ] - }, - "attributes": { - "name": "New Wireframe 1", - "order": 1000000, - "parentID": null, - "notes": "" - }, - "branchID": "Master", - "resourceID": "5A30BFEF-684E-429E-9C5D-BAAAC1A8339A", - "mockupH": "2883", - "mockupW": "1322", - "measuredW": "1453", - "measuredH": "3097", - "version": "1.0", - "calloutsOffset": { - "x": 131, - "y": 212.1507313445708 - } - }, - "groupOffset": { - "x": 0, - "y": 0 - }, - "dependencies": [], - "projectID": "file:///Users/dan/Library/Application%20Support/Balsamiq%20Wireframes/UnsavedFiles/New%20Project%201.bmpr" + "nodes": [ + { + "id": "o3PyFTPgsW83BXocJQsDJ", + "type": "horizontal", + "position": { + "x": -260.4072387161244, + "y": 1919.7076829543832 + }, + "selected": false, + "data": { + "label": "horizontal node", + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2B78E4" + } + }, + "zIndex": 999, + "width": 245, + "height": 20, + "style": { + "width": 245, + "height": 20 + }, + "positionAbsolute": { + "x": -260.4072387161244, + "y": 1919.7076829543832 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "77ufRs9I5bQ6-3oqeVEeP", + "type": "horizontal", + "position": { + "x": -203.23195037554086, + "y": 1717.215711596427 + }, + "selected": false, + "data": { + "label": "horizontal node", + "style": { + "stroke": "#2B78E4", + "strokeWidth": 3.5 + } + }, + "zIndex": 999, + "width": 152, + "height": 20, + "style": { + "width": 152, + "height": 20 + }, + "positionAbsolute": { + "x": -203.23195037554086, + "y": 1717.215711596427 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "4Z4RnLqpSbDJRqzA18Z5k", + "type": "vertical", + "position": { + "x": 448.241338239984, + "y": 1722.928855367065 + }, + "selected": false, + "data": { + "label": "vertical node", + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2B78E4" + } + }, + "zIndex": 999, + "width": 20, + "height": 109, + "style": { + "width": 20, + "height": 109 + }, + "positionAbsolute": { + "x": 448.241338239984, + "y": 1722.928855367065 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "Z3SBDE-j5lYzk4Qy5ncS7", + "type": "vertical", + "position": { + "x": 39.214820522490754, + "y": 1396.7939445578397 + }, + "selected": false, + "data": { + "label": "vertical node", + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2B78E4" + } + }, + "zIndex": 999, + "width": 20, + "height": 99, + "style": { + "width": 20, + "height": 99 + }, + "positionAbsolute": { + "x": 39.214820522490754, + "y": 1396.7939445578397 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "EL9CPU70hF4x9ouOQ66Rm", + "type": "vertical", + "position": { + "x": -57.08852226085975, + "y": 1396.7939445578397 + }, + "selected": false, + "data": { + "label": "vertical node", + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2B78E4" + }, + "oldId": "Z3SBDE-j5lYzk4Qy5ncS7" + }, + "zIndex": 999, + "width": 20, + "height": 170, + "style": { + "width": 20, + "height": 170 + }, + "positionAbsolute": { + "x": -57.08852226085975, + "y": 1396.7939445578397 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "vGVyQfjMJB9sxFRshpV5A", + "type": "vertical", + "position": { + "x": -143.58852226085975, + "y": 1396.7939445578397 + }, + "selected": false, + "data": { + "label": "vertical node", + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2B78E4" + }, + "oldId": "Z3SBDE-j5lYzk4Qy5ncS7" + }, + "zIndex": 999, + "width": 20, + "height": 99, + "style": { + "width": 20, + "height": 99 + }, + "positionAbsolute": { + "x": -143.58852226085975, + "y": 1396.7939445578397 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "bYFNueU1BFB3eAQ8HXh7n", + "type": "horizontal", + "position": { + "x": 3.062543592821953, + "y": 1253.7939445578397 + }, + "selected": false, + "data": { + "label": "horizontal node", + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.9, + "stroke": "#2B78E4" + } + }, + "zIndex": 999, + "width": 194, + "height": 20, + "style": { + "width": 194, + "height": 20 + }, + "positionAbsolute": { + "x": 3.062543592821953, + "y": 1253.7939445578397 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "x1LxhiMT_mbWJZnoeLcnz", + "type": "vertical", + "position": { + "x": 446.89009638382095, + "y": 1100.6993653585232 + }, + "selected": false, + "data": { + "label": "vertical node", + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2B78E4" + } + }, + "zIndex": 999, + "width": 20, + "height": 77, + "style": { + "width": 20, + "height": 77 + }, + "dragging": false, + "resizing": false, + "positionAbsolute": { + "x": 446.89009638382095, + "y": 1100.6993653585232 + }, + "selectable": true, + "focusable": true + }, + { + "id": "Ee7D0WF54YreyzBG9MKIh", + "type": "vertical", + "position": { + "x": -95.90430753953456, + "y": 1191.3406441617572 + }, + "selected": false, + "data": { + "label": "vertical node", + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2B78E4" + } + }, + "zIndex": 999, + "width": 20, + "height": 66, + "style": { + "width": 20, + "height": 66 + }, + "positionAbsolute": { + "x": -95.90430753953456, + "y": 1191.3406441617572 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "G7_iBEFY0b2FmvLVr0gti", + "type": "vertical", + "position": { + "x": -212.09789095083502, + "y": 543.2157115964269 + }, + "selected": false, + "data": { + "label": "vertical node", + "style": { + "stroke": "#2B78E4", + "strokeWidth": 3.5 + } + }, + "zIndex": 999, + "width": 20, + "height": 1184, + "style": { + "width": 20, + "height": 1184 + }, + "positionAbsolute": { + "x": -212.09789095083502, + "y": 543.2157115964269 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "width": 255, + "height": 68, + "id": "iogwMmOvub2ZF4zgg6WyF", + "type": "title", + "position": { + "x": -128.73195037554086, + "y": -184.83998521803062 + }, + "selected": false, + "data": { + "label": "Game Developer", + "style": { + "fontSize": 28, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "9nxw2PEl-_eQPW0FHNPq2" + }, + "zIndex": 999, + "dragging": false, + "positionAbsolute": { + "x": -128.73195037554086, + "y": -184.83998521803062 + }, + "focusable": true, + "selectable": true + }, + { + "width": 20, + "height": 64, + "id": "LEijbLyxg4RyutKEM2Y5g", + "type": "vertical", + "position": { + "x": -11.231950375540862, + "y": -243.55566976101449 + }, + "selected": false, + "data": { + "label": "vertical node", + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#0A33FF" + }, + "oldId": "xD07fJ1NmNeAarVCEfubU" + }, + "zIndex": 999, + "positionAbsolute": { + "x": -11.231950375540862, + "y": -243.55566976101449 + }, + "dragging": false, + "focusable": true, + "style": { + "width": 20, + "height": 64 + }, + "resizing": true, + "selectable": true + }, + { + "id": "yHmHXymPNWwu8p1vvqD3o", + "type": "paragraph", + "position": { + "x": 179.8414717224867, + "y": -232.76957062917046 + }, + "selected": false, + "data": { + "label": "Find the detailed version of this roadmap along with other similar roadmaps", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "left", + "borderColor": "#000000", + "backgroundColor": "#FFFFFf" + } + }, + "zIndex": 999, + "width": 354, + "height": 143, + "positionAbsolute": { + "x": 179.8414717224867, + "y": -232.76957062917046 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "style": { + "width": 354, + "height": 143 + }, + "resizing": false + }, + { + "id": "R_Fs6rdl2XtQ9aLOubMqL", + "type": "button", + "position": { + "x": 193.04484613528683, + "y": -150.78400721142515 + }, + "selected": false, + "data": { + "label": "roadmap.sh", + "href": "https://roadmap.sh", + "color": "#ffffff", + "backgroundColor": "#4136D6", + "style": { + "fontSize": 17 + }, + "oldId": "2zqZkyVgigifcRS1H7F_b" + }, + "zIndex": 999, + "width": 329, + "height": 49, + "dragging": false, + "style": { + "width": 329, + "height": 49 + }, + "resizing": false, + "positionAbsolute": { + "x": 193.04484613528683, + "y": -150.78400721142515 + }, + "selectable": true, + "focusable": true + }, + { + "id": "xwpc_KxehAruFM0pCQnie", + "type": "vertical", + "position": { + "x": -5.808218001963041, + "y": 2335.039079314256 + }, + "selected": false, + "data": { + "label": "vertical node", + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#4136D4" + }, + "oldId": "Ju00mr0KLGN2BV6yEQGPt" + }, + "zIndex": 999, + "width": 20, + "height": 104, + "positionAbsolute": { + "x": -5.808218001963041, + "y": 2335.039079314256 + }, + "dragging": false, + "style": { + "width": 20, + "height": 104 + }, + "resizing": false, + "focusable": true, + "selectable": true + }, + { + "width": 346, + "height": 120, + "id": "GV_zWF6rSWg5bqgiXhOEf", + "type": "paragraph", + "position": { + "x": -168.80821800196304, + "y": 2247.683054538901 + }, + "selected": false, + "data": { + "label": "Visit the following relevant roadmaps", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "borderColor": "#000000", + "backgroundColor": "#ffffff" + }, + "oldId": "sVXZrBCsiSzWBBYWTm-nQ" + }, + "zIndex": 999, + "positionAbsolute": { + "x": -168.80821800196304, + "y": 2247.683054538901 + }, + "dragging": false, + "style": { + "width": 346, + "height": 120 + }, + "resizing": false, + "focusable": true, + "selectable": true + }, + { + "width": 158, + "height": 49, + "id": "P5IZjP0g1_fnvHy3YTR4q", + "type": "button", + "position": { + "x": -154.23195037554086, + "y": 2303.3819660369822 + }, + "selected": false, + "data": { + "label": "Backend", + "href": "https://roadmap.sh/backend", + "color": "#FFFFFf", + "backgroundColor": "#4136D4", + "style": { + "fontSize": 17 + }, + "borderColor": "#4136D4", + "oldId": "dlGf3ZdFXYx0Z6Viu2x-l" + }, + "zIndex": 999, + "dragging": false, + "positionAbsolute": { + "x": -154.23195037554086, + "y": 2303.3819660369822 + }, + "style": { + "width": 158, + "height": 49 + }, + "focusable": true, + "resizing": false, + "selectable": true + }, + { + "id": "SIvQYH0q1H29NgbtLq3L8", + "type": "button", + "position": { + "x": 323.241338239984, + "y": -56.48985085377855 + }, + "selected": false, + "data": { + "label": "Server Side", + "href": "https://roadmap.sh/server-side-game-developer", + "color": "#ffffff", + "backgroundColor": "#4036d6", + "style": { + "fontSize": 17 + }, + "borderColor": "#4036D6" + }, + "zIndex": 999, + "width": 212, + "height": 49, + "style": { + "width": 212, + "height": 49 + }, + "resizing": false, + "positionAbsolute": { + "x": 323.241338239984, + "y": -56.48985085377855 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "j46wg2LkFjjWj3hi3Q2mJ", + "type": "label", + "position": { + "x": 324.741338239984, + "y": -1.3239971003396818 + }, + "selected": false, + "data": { + "label": "Click to visit the roadmap", + "href": "", + "color": "#000000", + "style": { + "fontSize": 17 + } + }, + "zIndex": 999, + "width": 209, + "height": 36, + "style": {}, + "positionAbsolute": { + "x": 324.741338239984, + "y": -1.3239971003396818 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "rQArtuVKGVgLn_fw9yO3b", + "type": "topic", + "position": { + "x": -122.23195037554086, + "y": -55.32399710033968 + }, + "selected": false, + "data": { + "label": "Client Side Development", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "m1wX27XBWKXZcTMH2U1xp" + }, + "zIndex": 999, + "width": 242, + "height": 49, + "style": { + "width": 242, + "height": 49 + }, + "positionAbsolute": { + "x": -122.23195037554086, + "y": -55.32399710033968 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "m1wX27XBWKXZcTMH2U1xp", + "type": "topic", + "position": { + "x": -122.23195037554086, + "y": 174.17600289966032 + }, + "selected": false, + "data": { + "label": "Game Mathematics", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "wruw4qef0bf74oiA5JqHo" + }, + "zIndex": 999, + "width": 242, + "height": 49, + "style": { + "width": 242, + "height": 49 + }, + "positionAbsolute": { + "x": -122.23195037554086, + "y": 174.17600289966032 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "grRf-MmaXimDB4iODOV47", + "type": "subtopic", + "position": { + "x": -519.0712461079418, + "y": 18.010149146221465 + }, + "selected": false, + "data": { + "label": "Linear Algebra", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 288, + "height": 49, + "style": { + "width": 288, + "height": 49 + }, + "positionAbsolute": { + "x": -519.0712461079418, + "y": 18.010149146221465 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "yLEyh5XJ3sl8eHD-PoSvJ", + "type": "subtopic", + "position": { + "x": -520.0712461079418, + "y": 72.01014914622147 + }, + "selected": false, + "data": { + "label": "Vector", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 142, + "height": 49, + "style": { + "width": 142, + "height": 49 + }, + "positionAbsolute": { + "x": -520.0712461079418, + "y": 72.01014914622147 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "Kg6Mg9ieUUGXWX9Lai7B0", + "type": "subtopic", + "position": { + "x": -374.07124610794176, + "y": 71.01014914622147 + }, + "selected": false, + "data": { + "label": "Matrix", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 143, + "height": 49, + "style": { + "width": 143, + "height": 49 + }, + "positionAbsolute": { + "x": -374.07124610794176, + "y": 71.01014914622147 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "XWxW2ZBw3LcQ4DRk4tgAG", + "type": "subtopic", + "position": { + "x": -520.0712461079418, + "y": 177.01014914622147 + }, + "selected": false, + "data": { + "label": "Geometry", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 143, + "height": 49, + "style": { + "width": 143, + "height": 49 + }, + "positionAbsolute": { + "x": -520.0712461079418, + "y": 177.01014914622147 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "XABzEU9owCx9-zw1id9xU", + "type": "subtopic", + "position": { + "x": -520.0712461079418, + "y": 124.01014914622147 + }, + "selected": false, + "data": { + "label": "Linear Transformation", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "r5TcXQsU9s4NlAQIPvZ3U" + }, + "zIndex": 999, + "width": 288, + "height": 49, + "style": { + "width": 288, + "height": 49 + }, + "positionAbsolute": { + "x": -520.0712461079418, + "y": 124.01014914622147 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "r5TcXQsU9s4NlAQIPvZ3U", + "type": "subtopic", + "position": { + "x": -373.07124610794176, + "y": 177.01014914622147 + }, + "selected": false, + "data": { + "label": "Affine Space", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 142, + "height": 49, + "style": { + "width": 142, + "height": 49 + }, + "positionAbsolute": { + "x": -373.07124610794176, + "y": 177.01014914622147 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "SkCreb6g4i-OFtJWhRYqO", + "type": "subtopic", + "position": { + "x": -520.0712461079418, + "y": 230.01014914622147 + }, + "selected": false, + "data": { + "label": "Affine Transformation", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 289, + "height": 49, + "style": { + "width": 289, + "height": 49 + }, + "positionAbsolute": { + "x": -520.0712461079418, + "y": 230.01014914622147 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "iIWEjpkNFBj4R5wQ0mcWY", + "type": "topic", + "position": { + "x": -378.07124610794176, + "y": 286.51014914622147 + }, + "selected": false, + "data": { + "label": "Orientation", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 144, + "height": 49, + "style": { + "width": 144, + "height": 49 + }, + "positionAbsolute": { + "x": -378.07124610794176, + "y": 286.51014914622147 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "zPs_LlDvkfxvvCrk5fXB2", + "type": "subtopic", + "position": { + "x": -378.07124610794176, + "y": 339.51014914622147 + }, + "selected": false, + "data": { + "label": "Quaternion", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 144, + "height": 49, + "style": { + "width": 144 + }, + "positionAbsolute": { + "x": -378.07124610794176, + "y": 339.51014914622147 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "L0J2kvveJNsmN9ueXhqKf", + "type": "subtopic", + "position": { + "x": -378.07124610794176, + "y": 392.51014914622147 + }, + "selected": false, + "data": { + "label": "Euler Angle", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 144, + "height": 49, + "style": { + "width": 144, + "height": 49 + }, + "positionAbsolute": { + "x": -378.07124610794176, + "y": 392.51014914622147 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "YTkOF_33oL1ZkA-loc_DP", + "type": "topic", + "position": { + "x": -122.23195037554086, + "y": 291.6760028996603 + }, + "selected": false, + "data": { + "label": "Curve", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 242, + "height": 49, + "style": { + "width": 242, + "height": 49 + }, + "positionAbsolute": { + "x": -122.23195037554086, + "y": 291.6760028996603 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "nTiHZXRh2j3_FsBotmlGf", + "type": "subtopic", + "position": { + "x": -122.2319503755408, + "y": 345.81015303721455 + }, + "selected": false, + "data": { + "label": "Spline", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 89, + "height": 49, + "style": { + "width": 89, + "height": 49 + }, + "positionAbsolute": { + "x": -122.2319503755408, + "y": 345.81015303721455 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "m4AuHjEBnHS0wyATG-I1Z", + "type": "subtopic", + "position": { + "x": -28.231950375540805, + "y": 345.81015303721455 + }, + "selected": false, + "data": { + "label": "Hermite", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 148, + "height": 49, + "style": { + "width": 148, + "height": 49 + }, + "positionAbsolute": { + "x": -28.231950375540805, + "y": 345.81015303721455 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "DUEEm9sAaZqSI-W-PFZ8f", + "type": "subtopic", + "position": { + "x": -122.2319503755408, + "y": 398.81015303721455 + }, + "selected": false, + "data": { + "label": "Bezier", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 89, + "height": 49, + "style": { + "width": 89, + "height": 49 + }, + "positionAbsolute": { + "x": -122.2319503755408, + "y": 398.81015303721455 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "N9GoA3YvOaKwYjljj6NZv", + "type": "subtopic", + "position": { + "x": -28.231950375540805, + "y": 398.81015303721455 + }, + "selected": false, + "data": { + "label": "Catmull-Rom", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 148, + "height": 49, + "style": { + "width": 148, + "height": 49 + }, + "positionAbsolute": { + "x": -28.231950375540805, + "y": 398.81015303721455 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "5qfoD77wU4ETI7rUSy4Nc", + "type": "topic", + "position": { + "x": -517.0712461079418, + "y": 285.51014914622147 + }, + "selected": false, + "data": { + "label": "Projection", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 135, + "height": 49, + "style": { + "width": 135 + }, + "positionAbsolute": { + "x": -517.0712461079418, + "y": 285.51014914622147 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "LEJymJ2EaAW5FM5LgKW38", + "type": "subtopic", + "position": { + "x": -517.0712461079418, + "y": 338.51014914622147 + }, + "selected": false, + "data": { + "label": "Perspective", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 135, + "height": 49, + "style": { + "width": 135 + }, + "positionAbsolute": { + "x": -517.0712461079418, + "y": 338.51014914622147 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "d6C1qFv-Tad3AtMBDLI6r", + "type": "subtopic", + "position": { + "x": -517.0712461079418, + "y": 391.51014914622147 + }, + "selected": false, + "data": { + "label": "Orthogonal", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 135, + "height": 49, + "style": { + "width": 135 + }, + "positionAbsolute": { + "x": -517.0712461079418, + "y": 391.51014914622147 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "UTBnrQiZ6Bf96yJYIUf3b", + "type": "topic", + "position": { + "x": 330.39009638382095, + "y": 516.4583152599474 + }, + "selected": false, + "data": { + "label": "Game Physics", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "4YgbrXLXf5mfaL2tlYkzk" + }, + "zIndex": 999, + "width": 190, + "height": 49, + "style": { + "width": 190, + "height": 49 + }, + "positionAbsolute": { + "x": 330.39009638382095, + "y": 516.4583152599474 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "0D7KQlF-9ylmILTBBVxot", + "type": "topic", + "position": { + "x": 312.39009638382095, + "y": 429.5296064989004 + }, + "selected": false, + "data": { + "label": "Dynamics", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 226, + "height": 49, + "style": { + "width": 226, + "height": 49 + }, + "positionAbsolute": { + "x": 312.39009638382095, + "y": 429.5296064989004 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "HWtU4q-YPXxSi64t43VNF", + "type": "subtopic", + "position": { + "x": 312.39009638382095, + "y": 64.52960649890042 + }, + "selected": false, + "data": { + "label": "Center of Mass", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 225, + "height": 49, + "style": { + "width": 225, + "height": 49 + }, + "positionAbsolute": { + "x": 312.39009638382095, + "y": 64.52960649890042 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "6E2mkXuAzoYnrT1SEIA16", + "type": "subtopic", + "position": { + "x": 312.39009638382095, + "y": 116.52960649890042 + }, + "selected": false, + "data": { + "label": "Moment of Inertia", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 225, + "height": 49, + "style": { + "width": 225, + "height": 49 + }, + "positionAbsolute": { + "x": 312.39009638382095, + "y": 116.52960649890042 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "ejZMnxZ0QrN-jBqo9Vrj8", + "type": "subtopic", + "position": { + "x": 312.39009638382095, + "y": 168.52960649890042 + }, + "selected": false, + "data": { + "label": "Acceleration", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 121, + "height": 49, + "style": { + "width": 121, + "height": 49 + }, + "positionAbsolute": { + "x": 312.39009638382095, + "y": 168.52960649890042 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "m2_wUW2VHMCXHnn5B91qr", + "type": "subtopic", + "position": { + "x": 436.39009638382095, + "y": 168.52960649890042 + }, + "selected": false, + "data": { + "label": "Joints", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 100, + "height": 49, + "style": { + "width": 100, + "height": 49 + }, + "positionAbsolute": { + "x": 436.39009638382095, + "y": 168.52960649890042 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "qduFRhmrzJ2sn0g7L-tza", + "type": "subtopic", + "position": { + "x": 436.39009638382095, + "y": 220.52960649890042 + }, + "selected": false, + "data": { + "label": "Force", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 100, + "height": 49, + "style": { + "width": 100, + "height": 49 + }, + "positionAbsolute": { + "x": 436.39009638382095, + "y": 220.52960649890042 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "egOcxFTQP7vPIGrxcieuk", + "type": "subtopic", + "position": { + "x": 313.39009638382095, + "y": 220.52960649890042 + }, + "selected": false, + "data": { + "label": "Restitution", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 120, + "height": 49, + "style": { + "width": 120, + "height": 49 + }, + "positionAbsolute": { + "x": 313.39009638382095, + "y": 220.52960649890042 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "Y7HYY5eq7OG42V9yQz0Q1", + "type": "subtopic", + "position": { + "x": 313.39009638382095, + "y": 272.5296064989004 + }, + "selected": false, + "data": { + "label": "Angular Velocity", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 224, + "height": 49, + "style": { + "width": 224, + "height": 49 + }, + "positionAbsolute": { + "x": 313.39009638382095, + "y": 272.5296064989004 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "WzcmdW_fKHv3gwdBnvI0_", + "type": "subtopic", + "position": { + "x": 312.39009638382095, + "y": 324.5296064989004 + }, + "selected": false, + "data": { + "label": "Buoyancy", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 121, + "height": 49, + "style": { + "width": 121, + "height": 49 + }, + "positionAbsolute": { + "x": 312.39009638382095, + "y": 324.5296064989004 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "Z_U6abGV_wVkTGZ2LVkFK", + "type": "subtopic", + "position": { + "x": 312.39009638382095, + "y": 376.5296064989004 + }, + "selected": false, + "data": { + "label": "Linear Velocity", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 226, + "height": 49, + "style": { + "width": 226, + "height": 49 + }, + "positionAbsolute": { + "x": 312.39009638382095, + "y": 376.5296064989004 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "Hz9R4YGYtD0jAur8rYist", + "type": "subtopic", + "position": { + "x": 436.39009638382095, + "y": 324.5296064989004 + }, + "selected": false, + "data": { + "label": "Friction", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 100, + "height": 49, + "style": { + "width": 100, + "height": 49 + }, + "positionAbsolute": { + "x": 436.39009638382095, + "y": 324.5296064989004 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "AdOfOJtLtNgDwuABb6orE", + "type": "topic", + "position": { + "x": 328.9857878718208, + "y": 617.9812781501682 + }, + "selected": false, + "data": { + "label": "Collision Detection", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 190, + "height": 49, + "style": { + "width": 190, + "height": 49 + }, + "positionAbsolute": { + "x": 328.9857878718208, + "y": 617.9812781501682 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": true + }, + { + "id": "SuemqQuiePab0Qpm2EGy9", + "type": "subtopic", + "position": { + "x": 328.9857878718208, + "y": 724.5601890981626 + }, + "selected": false, + "data": { + "label": "Narrow Phase", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 190, + "height": 49, + "style": { + "width": 190, + "height": 49 + }, + "resizing": false, + "positionAbsolute": { + "x": 328.9857878718208, + "y": 724.5601890981626 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "AKd2UpITqBZV7cZszSRps", + "type": "subtopic", + "position": { + "x": 328.9857878718208, + "y": 777.5601890981626 + }, + "selected": false, + "data": { + "label": "Broad Phase", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 190, + "height": 49, + "style": { + "width": 190, + "height": 49 + }, + "positionAbsolute": { + "x": 328.9857878718208, + "y": 777.5601890981626 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "YLusnwCba7BIdKOYUoY6F", + "type": "subtopic", + "position": { + "x": 134.06254359282195, + "y": 724.6479448168348 + }, + "selected": false, + "data": { + "label": "Convexity", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + }, + "oldId": "vmRYaXNVCe0N73xG8bsEK" + }, + "zIndex": 999, + "width": 136, + "height": 49, + "style": { + "width": 136, + "height": 49 + }, + "positionAbsolute": { + "x": 134.06254359282195, + "y": 724.6479448168348 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "pG_V12qhS4HevoP_KHTvh", + "type": "subtopic", + "position": { + "x": 134.06254359282195, + "y": 799.2235652019868 + }, + "selected": false, + "data": { + "label": "Convex", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 136, + "height": 49, + "style": { + "width": 136, + "height": 49 + }, + "positionAbsolute": { + "x": 134.06254359282195, + "y": 799.2235652019868 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "jslk7Gy58VspO1uXGDgBp", + "type": "subtopic", + "position": { + "x": 134.06254359282195, + "y": 853.340644161757 + }, + "selected": false, + "data": { + "label": "Concave", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 136, + "height": 49, + "style": { + "width": 136, + "height": 49 + }, + "positionAbsolute": { + "x": 134.06254359282195, + "y": 853.340644161757 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "jixffcPBELkhoG0e7Te8g", + "type": "subtopic", + "position": { + "x": -115.74983529021279, + "y": 799.2235652019868 + }, + "selected": false, + "data": { + "label": "Convex Hull", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 224, + "height": 49, + "style": { + "width": 224, + "height": 49 + }, + "positionAbsolute": { + "x": -115.74983529021279, + "y": 799.2235652019868 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "bgP9NpD0DJGqN4VCt65xP", + "type": "subtopic", + "position": { + "x": -115.74983529021279, + "y": 853.340644161757 + }, + "selected": false, + "data": { + "label": "Convex Decomposition", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 224, + "height": 49, + "style": { + "width": 224, + "height": 49 + }, + "positionAbsolute": { + "x": -115.74983529021279, + "y": 853.340644161757 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "vmRYaXNVCe0N73xG8bsEK", + "type": "subtopic", + "position": { + "x": 134.06254359282195, + "y": 671.5601890981626 + }, + "selected": false, + "data": { + "label": "Intersection", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 136, + "height": 49, + "style": { + "width": 136, + "height": 49 + }, + "positionAbsolute": { + "x": 134.06254359282195, + "y": 671.5601890981626 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "kSMz7mZ243qMKtT_YD3AD", + "type": "subtopic", + "position": { + "x": -22.517250963174092, + "y": 618.6479448168349 + }, + "selected": false, + "data": { + "label": "SAT", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 78, + "height": 49, + "style": { + "width": 78 + }, + "positionAbsolute": { + "x": -22.517250963174092, + "y": 618.6479448168349 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "lwd3Gz9bJEKCIwhXD6m-v", + "type": "subtopic", + "position": { + "x": -22.517250963174092, + "y": 671.6479448168349 + }, + "selected": false, + "data": { + "label": "GJK", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 78, + "height": 49, + "style": { + "width": 78 + }, + "positionAbsolute": { + "x": -22.517250963174092, + "y": 671.6479448168349 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "vWLKYK2KUzV1fO-vQunzW", + "type": "subtopic", + "position": { + "x": -22.517250963174092, + "y": 724.6479448168348 + }, + "selected": false, + "data": { + "label": "EPA", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 78, + "height": 49, + "style": { + "width": 78 + }, + "positionAbsolute": { + "x": -22.517250963174092, + "y": 724.6479448168348 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "PLR_4yoRifoTzkOR4c7ym", + "type": "subtopic", + "position": { + "x": 327.9857878718208, + "y": 918.2235652019868 + }, + "selected": false, + "data": { + "label": "Bounding Volume", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + }, + "oldId": "1yK8TH4Pn7Ag8VQoug54i" + }, + "zIndex": 999, + "width": 192, + "height": 49, + "style": { + "width": 192, + "height": 49 + }, + "resizing": false, + "positionAbsolute": { + "x": 327.9857878718208, + "y": 918.2235652019868 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "aTeYGd4JlPr5txNPyBezn", + "type": "subtopic", + "position": { + "x": 177.11202169501337, + "y": 918.2235652019866 + }, + "selected": false, + "data": { + "label": "AABB", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 90, + "height": 49, + "style": { + "width": 90, + "height": 49 + }, + "positionAbsolute": { + "x": 177.11202169501337, + "y": 918.2235652019866 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "7nGtvbxoEAheiF4IPMfPf", + "type": "subtopic", + "position": { + "x": 108.11202169501337, + "y": 918.2235652019866 + }, + "selected": false, + "data": { + "label": "OBB", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 65, + "height": 49, + "style": { + "width": 65, + "height": 49 + }, + "positionAbsolute": { + "x": 108.11202169501337, + "y": 918.2235652019866 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "9Fk3XSINBr2NNdbMtwsIK", + "type": "subtopic", + "position": { + "x": 327.9857878718208, + "y": 974.6723516686346 + }, + "selected": false, + "data": { + "label": "Spatial Partitioning", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 192, + "height": 49, + "style": { + "width": 192, + "height": 49 + }, + "positionAbsolute": { + "x": 327.9857878718208, + "y": 974.6723516686346 + }, + "dragging": false, + "resizing": true, + "selectable": true, + "focusable": true + }, + { + "id": "STdvFYM9V0a36IkPXjvrB", + "type": "subtopic", + "position": { + "x": 109.27787544845216, + "y": 974.6723516686346 + }, + "selected": false, + "data": { + "label": "Sort & Sweep", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 159, + "height": 49, + "style": { + "width": 159, + "height": 49 + }, + "positionAbsolute": { + "x": 109.27787544845216, + "y": 974.6723516686346 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "FCc5xwb_G3VsDRXOcg3hV", + "type": "subtopic", + "position": { + "x": 208.27787544845216, + "y": 1027.6723516686347 + }, + "selected": false, + "data": { + "label": "BVH", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 60, + "height": 49, + "style": { + "width": 60, + "height": 49 + }, + "positionAbsolute": { + "x": 208.27787544845216, + "y": 1027.6723516686347 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "XHFV4d6Ab4kWQ3-XcZTyT", + "type": "subtopic", + "position": { + "x": 109.1830419521774, + "y": 1027.6723516686347 + }, + "selected": false, + "data": { + "label": "DBVT", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 65, + "height": 49, + "style": { + "width": 65, + "height": 49 + }, + "positionAbsolute": { + "x": 109.1830419521774, + "y": 1027.6723516686347 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "1yK8TH4Pn7Ag8VQoug54i", + "type": "subtopic", + "position": { + "x": 328.9857878718208, + "y": 670.9812781501682 + }, + "selected": false, + "data": { + "label": "CCD", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "c" + } + }, + "zIndex": 999, + "width": 190, + "height": 49, + "style": { + "width": 190, + "height": 49 + }, + "resizing": false, + "positionAbsolute": { + "x": 328.9857878718208, + "y": 670.9812781501682 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "fv5tivGad2P9GRZOodfn2", + "type": "topic", + "position": { + "x": -270.90430753953456, + "y": 516.4583152599474 + }, + "selected": false, + "data": { + "label": "Game Engine", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "4YgbrXLXf5mfaL2tlYkzk" + }, + "zIndex": 999, + "width": 190, + "height": 49, + "style": { + "width": 190, + "height": 49 + }, + "positionAbsolute": { + "x": -270.90430753953456, + "y": 516.4583152599474 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "7OffO2mBmfBKqPBTZ9ngI", + "type": "subtopic", + "position": { + "x": -519.86850729745, + "y": 616.7966982100413 + }, + "selected": false, + "data": { + "label": "Godot", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 158, + "height": 49, + "style": { + "width": 158 + }, + "positionAbsolute": { + "x": -519.86850729745, + "y": 616.7966982100413 + }, + "selectable": true, + "focusable": true, + "dragging": false + }, + { + "id": "a6H-cZtp3A_fB8jnfMxBR", + "type": "subtopic", + "position": { + "x": -519.86850729745, + "y": 517.7966982100413 + }, + "selected": false, + "data": { + "label": "Unreal Engine", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 158, + "height": 49, + "style": { + "width": 158, + "height": 49 + }, + "positionAbsolute": { + "x": -519.86850729745, + "y": 517.7966982100413 + }, + "selectable": true, + "focusable": true, + "dragging": false, + "resizing": false + }, + { + "id": "CeAUEN233L4IoFSZtIvvl", + "type": "subtopic", + "position": { + "x": -519.86850729745, + "y": 570.7966982100413 + }, + "selected": false, + "data": { + "label": "Native", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 158, + "height": 42, + "style": { + "width": 158, + "height": 42.029266357421875 + }, + "positionAbsolute": { + "x": -519.86850729745, + "y": 570.7966982100413 + }, + "selectable": true, + "focusable": true, + "dragging": false + }, + { + "id": "rNeOti8DDyWTMP9FB9kJ_", + "type": "subtopic", + "position": { + "x": -519.86850729745, + "y": 464.7966982100413 + }, + "selected": false, + "data": { + "label": "Unity 3D", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 158, + "height": 49, + "style": { + "width": 158 + }, + "positionAbsolute": { + "x": -519.86850729745, + "y": 464.7966982100413 + }, + "selectable": true, + "focusable": true, + "dragging": false + }, + { + "id": "4YgbrXLXf5mfaL2tlYkzk", + "type": "topic", + "position": { + "x": -299.40430753953456, + "y": 718.8829068777812 + }, + "selected": false, + "data": { + "label": "Programming Languages", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 247, + "height": 49, + "style": { + "width": 247, + "height": 49 + }, + "positionAbsolute": { + "x": -299.40430753953456, + "y": 718.8829068777812 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "jsq0UXnIIC0Z_nbK2w48f", + "type": "subtopic", + "position": { + "x": -425.84276797402634, + "y": 718.8829068777814 + }, + "selected": false, + "data": { + "label": "C/C++", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 90, + "height": 49, + "style": { + "width": 90, + "height": 49 + }, + "resizing": false, + "positionAbsolute": { + "x": -425.84276797402634, + "y": 718.8829068777814 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "Ph3ZqmSnwwzUBUC-6dgf-", + "type": "subtopic", + "position": { + "x": -519.8427679740262, + "y": 718.8829068777812 + }, + "selected": false, + "data": { + "label": "C#", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 90, + "height": 49, + "style": { + "width": 90, + "height": 49 + }, + "positionAbsolute": { + "x": -519.8427679740262, + "y": 718.8829068777812 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "AaRZiItRcn8fYb5R62vfT", + "type": "subtopic", + "position": { + "x": -518.3608206359495, + "y": 824.8829068777812 + }, + "selected": false, + "data": { + "label": "Assembly", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 184, + "height": 49, + "style": { + "width": 184, + "height": 49 + }, + "positionAbsolute": { + "x": -518.3608206359495, + "y": 824.8829068777812 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "ts9pWxUimvFqfNJYCmNNw", + "type": "subtopic", + "position": { + "x": -519.8427679740262, + "y": 771.8829068777812 + }, + "selected": false, + "data": { + "label": "Rust", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 90, + "height": 49, + "style": { + "width": 90, + "height": 49 + }, + "positionAbsolute": { + "x": -519.8427679740262, + "y": 771.8829068777812 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "AJp_QRLgSG5ETXDIjUjmm", + "type": "subtopic", + "position": { + "x": -425.84276797402634, + "y": 771.8829068777812 + }, + "selected": false, + "data": { + "label": "Python", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 90, + "height": 49, + "style": { + "width": 90, + "height": 49 + }, + "positionAbsolute": { + "x": -425.84276797402634, + "y": 771.8829068777812 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "lIb5MeDoqVj6HycveOgTS", + "type": "topic", + "position": { + "x": -224.23195037554086, + "y": 1238.7939445578397 + }, + "selected": false, + "data": { + "label": "Computer Graphics", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "CDYszS1U4v95GozB_drbt" + }, + "zIndex": 999, + "width": 248, + "height": 50, + "style": { + "width": 248, + "height": 50 + }, + "positionAbsolute": { + "x": -224.23195037554086, + "y": 1238.7939445578397 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "JW5c_0JEtO-OiBoXUia6A", + "type": "subtopic", + "position": { + "x": -516.9565121239493, + "y": 1078.9347422218125 + }, + "selected": false, + "data": { + "label": "Ray Tracing", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 203, + "height": 49, + "style": { + "width": 203, + "height": 49 + }, + "positionAbsolute": { + "x": -516.9565121239493, + "y": 1078.9347422218125 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "vYNj9nzu90e9xlrzHULnP", + "type": "subtopic", + "position": { + "x": -516.9565121239493, + "y": 1131.9347422218125 + }, + "selected": false, + "data": { + "label": "Rasterization", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 203, + "height": 49, + "style": { + "width": 203, + "height": 49 + }, + "positionAbsolute": { + "x": -516.9565121239493, + "y": 1131.9347422218125 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "shSRnMf4NONuZ3TGPAoQc", + "type": "subtopic", + "position": { + "x": -516.9565121239493, + "y": 1184.9347422218125 + }, + "selected": false, + "data": { + "label": "Graphics Pipeline", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 203, + "height": 49, + "style": { + "width": 203, + "height": 49 + }, + "positionAbsolute": { + "x": -516.9565121239493, + "y": 1184.9347422218125 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "rmtxybcavWV6A53R4ZWgc", + "type": "subtopic", + "position": { + "x": -516.9565121239493, + "y": 1237.9347422218125 + }, + "selected": false, + "data": { + "label": "Sampling", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 203, + "height": 49, + "style": { + "width": 203, + "height": 49 + }, + "positionAbsolute": { + "x": -516.9565121239493, + "y": 1237.9347422218125 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "qIrePusMuvcUva9LMDmDx", + "type": "subtopic", + "position": { + "x": -516.9565121239493, + "y": 1293.7939445578397 + }, + "selected": false, + "data": { + "label": "Shader", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 203, + "height": 49, + "style": { + "width": 203, + "height": 49 + }, + "positionAbsolute": { + "x": -516.9565121239493, + "y": 1293.7939445578397 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "WVgozaQPFbYthZLWMbNUg", + "type": "subtopic", + "position": { + "x": -516.9565121239493, + "y": 1347.7939445578397 + }, + "selected": false, + "data": { + "label": "Rendering Equation", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 203, + "height": 49, + "style": { + "width": 203, + "height": 49 + }, + "positionAbsolute": { + "x": -516.9565121239493, + "y": 1347.7939445578397 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "eI2jym4AAz3ani-lreSKE", + "type": "subtopic", + "position": { + "x": -419.9565121239493, + "y": 1402.7939445578397 + }, + "selected": false, + "data": { + "label": "Reflection", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + }, + "oldId": "THMmnx8p_P0X-dSPoHvst" + }, + "zIndex": 999, + "width": 106, + "height": 49, + "style": { + "width": 106, + "height": 49 + }, + "positionAbsolute": { + "x": -419.9565121239493, + "y": 1402.7939445578397 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "0g1z5G2dsF4PTIfFAG984", + "type": "subtopic", + "position": { + "x": -416.9565121239493, + "y": 1475.952242669871 + }, + "selected": false, + "data": { + "label": "Diffuse", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 100, + "height": 49, + "style": { + "width": 100, + "height": 49 + }, + "positionAbsolute": { + "x": -416.9565121239493, + "y": 1475.952242669871 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "odfZWKtPbb-lC35oeTCNV", + "type": "subtopic", + "position": { + "x": -416.9565121239493, + "y": 1528.7393171338706 + }, + "selected": false, + "data": { + "label": "Specular", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 100, + "height": 49, + "style": { + "width": 100, + "height": 49 + }, + "positionAbsolute": { + "x": -416.9565121239493, + "y": 1528.7393171338706 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "THMmnx8p_P0X-dSPoHvst", + "type": "subtopic", + "position": { + "x": -518.5116185559558, + "y": 1402.7939445578397 + }, + "selected": false, + "data": { + "label": "Mapping", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 95, + "height": 49, + "style": { + "width": 95, + "height": 49 + }, + "positionAbsolute": { + "x": -518.5116185559558, + "y": 1402.7939445578397 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "iBZ1JsEWI0xuLgUvfWfl-", + "type": "subtopic", + "position": { + "x": -518.5116185559558, + "y": 1475.952242669871 + }, + "selected": false, + "data": { + "label": "Texture", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 95, + "height": 49, + "style": { + "width": 95, + "height": 49 + }, + "positionAbsolute": { + "x": -518.5116185559558, + "y": 1475.952242669871 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "r4UkMd5QURbvJ3Jlr_H9H", + "type": "subtopic", + "position": { + "x": -518.5116185559558, + "y": 1528.952242669871 + }, + "selected": false, + "data": { + "label": "Bump", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 95, + "height": 49, + "style": { + "width": 95, + "height": 49 + }, + "positionAbsolute": { + "x": -518.5116185559558, + "y": 1528.952242669871 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "YGeGleEN203nokiZIYJN8", + "type": "subtopic", + "position": { + "x": -518.5116185559558, + "y": 1581.952242669871 + }, + "selected": false, + "data": { + "label": "Parallax", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 95, + "height": 49, + "style": { + "width": 95, + "height": 49 + }, + "positionAbsolute": { + "x": -518.5116185559558, + "y": 1581.952242669871 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "9cBOfj58I4hBlxlQIyV9g", + "type": "subtopic", + "position": { + "x": -518.5116185559558, + "y": 1634.952242669871 + }, + "selected": false, + "data": { + "label": "Horizon", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 95, + "height": 49, + "style": { + "width": 95, + "height": 49 + }, + "positionAbsolute": { + "x": -518.5116185559558, + "y": 1634.952242669871 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "1RdyzTI_TXqmct2bIbNh9", + "type": "subtopic", + "position": { + "x": -129.0221800907267, + "y": 998.6993653585232 + }, + "selected": false, + "data": { + "label": "Computer Animation", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 204, + "height": 49, + "style": { + "width": 204, + "height": 49 + }, + "positionAbsolute": { + "x": -129.0221800907267, + "y": 998.6993653585232 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "WK6fLWJq9Vh2ySVrSqd-U", + "type": "subtopic", + "position": { + "x": -129.0221800907267, + "y": 1051.6993653585232 + }, + "selected": false, + "data": { + "label": "Color", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 204, + "height": 49, + "style": { + "width": 204, + "height": 49 + }, + "positionAbsolute": { + "x": -129.0221800907267, + "y": 1051.6993653585232 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "1S1qPogijW2SQCiF7KLZe", + "type": "subtopic", + "position": { + "x": -129.0221800907267, + "y": 1104.6993653585232 + }, + "selected": false, + "data": { + "label": "Visual Perception", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 204, + "height": 49, + "style": { + "width": 204, + "height": 49 + }, + "positionAbsolute": { + "x": -129.0221800907267, + "y": 1104.6993653585232 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "RgC9TOc0wbr2QSuvrpIDV", + "type": "subtopic", + "position": { + "x": -129.0221800907267, + "y": 1157.6993653585232 + }, + "selected": false, + "data": { + "label": "Tone Reproduction", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 204, + "height": 49, + "style": { + "width": 204, + "height": 49 + }, + "positionAbsolute": { + "x": -129.0221800907267, + "y": 1157.6993653585232 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "lNKSnx79jCQW0AM1bFITr", + "type": "horizontal", + "position": { + "x": -452.07124610794176, + "y": 947.7235652019866 + }, + "selected": false, + "data": { + "label": "horizontal node", + "style": { + "stroke": "#000000", + "strokeWidth": 4 + } + }, + "zIndex": 999, + "width": 322, + "height": 20, + "style": { + "width": 322, + "height": 20 + }, + "positionAbsolute": { + "x": -452.07124610794176, + "y": 947.7235652019866 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "bEF-DIgaMpKyRTw2uAB8R", + "type": "label", + "position": { + "x": -453.40430753953456, + "y": 911.7235652019866 + }, + "selected": false, + "data": { + "label": "Getting deeper", + "href": "", + "color": "#000000", + "style": { + "fontSize": 20 + } + }, + "zIndex": 999, + "width": 154, + "height": 36, + "style": {}, + "positionAbsolute": { + "x": -453.40430753953456, + "y": 911.7235652019866 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "DDN3mn0LTueBhjRzXFcbU", + "type": "subtopic", + "position": { + "x": 217.39905342267605, + "y": 1145.5450031343512 + }, + "selected": false, + "data": { + "label": "Lighting and Shadow", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 319, + "height": 49, + "style": { + "width": 319, + "height": 49 + }, + "positionAbsolute": { + "x": 217.39905342267605, + "y": 1145.5450031343512 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "ygtru6fqQ3gpFZRN_I8rP", + "type": "subtopic", + "position": { + "x": 216.131124908341, + "y": 1198.5450031343512 + }, + "selected": false, + "data": { + "label": "Shadow Map", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 144, + "height": 49, + "style": { + "width": 144, + "height": 49 + }, + "positionAbsolute": { + "x": 216.131124908341, + "y": 1198.5450031343512 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "Wq8siopWTD7sylNi0575X", + "type": "subtopic", + "position": { + "x": 216.131124908341, + "y": 1251.5450031343512 + }, + "selected": false, + "data": { + "label": "2D", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 50, + "height": 49, + "style": { + "width": 50, + "height": 49 + }, + "positionAbsolute": { + "x": 216.131124908341, + "y": 1251.5450031343512 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "cv1-AwewuqJsZDBI3h84G", + "type": "subtopic", + "position": { + "x": 270.131124908341, + "y": 1251.5450031343512 + }, + "selected": false, + "data": { + "label": "Cube", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 89, + "height": 49, + "style": { + "width": 89, + "height": 49 + }, + "positionAbsolute": { + "x": 270.131124908341, + "y": 1251.5450031343512 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "Lu38SfZ38y89BffLRMmGk", + "type": "subtopic", + "position": { + "x": 216.131124908341, + "y": 1304.5450031343512 + }, + "selected": false, + "data": { + "label": "Cascaded", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 144, + "height": 49, + "style": { + "width": 144, + "height": 49 + }, + "positionAbsolute": { + "x": 216.131124908341, + "y": 1304.5450031343512 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "VLrcBE1vb6N5fw5YESCge", + "type": "subtopic", + "position": { + "x": 364.7557147875399, + "y": 1198.5450031343512 + }, + "selected": false, + "data": { + "label": "Light Source", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 173, + "height": 49, + "style": { + "width": 173, + "height": 49 + }, + "positionAbsolute": { + "x": 364.7557147875399, + "y": 1198.5450031343512 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "foD8K7V0yIxgeXwl687Bv", + "type": "subtopic", + "position": { + "x": 364.7557147875399, + "y": 1251.5450031343512 + }, + "selected": false, + "data": { + "label": "Directional", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 111, + "height": 49, + "style": { + "width": 111, + "height": 49 + }, + "positionAbsolute": { + "x": 364.7557147875399, + "y": 1251.5450031343512 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "aNhyXWW2b7yKTv8y14zk9", + "type": "subtopic", + "position": { + "x": 478.7557147875399, + "y": 1304.5450031343512 + }, + "selected": false, + "data": { + "label": "Point", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 60, + "height": 49, + "style": { + "width": 60, + "height": 49 + }, + "positionAbsolute": { + "x": 478.7557147875399, + "y": 1304.5450031343512 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "FetbhcK1RDt4izZ6NEUEP", + "type": "subtopic", + "position": { + "x": 478.7557147875399, + "y": 1251.5450031343512 + }, + "selected": false, + "data": { + "label": "Spot", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 60, + "height": 49, + "style": { + "width": 60, + "height": 49 + }, + "positionAbsolute": { + "x": 478.7557147875399, + "y": 1251.5450031343512 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "sC3omOmL2DOyTSvET5cDa", + "type": "subtopic", + "position": { + "x": 364.7557147875399, + "y": 1304.5450031343512 + }, + "selected": false, + "data": { + "label": "Infinite", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 111, + "height": 49, + "style": { + "width": 111, + "height": 49 + }, + "positionAbsolute": { + "x": 364.7557147875399, + "y": 1304.5450031343512 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "OcxesFnB5wO6VXrHYnhz-", + "type": "subtopic", + "position": { + "x": 219.4111613103055, + "y": 1373.480291360171 + }, + "selected": false, + "data": { + "label": "Visibility and Occlusion", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 319, + "height": 49, + "style": { + "width": 319, + "height": 49 + }, + "positionAbsolute": { + "x": 219.4111613103055, + "y": 1373.480291360171 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "MlLYqO_8JDNOwKRvaM-bf", + "type": "subtopic", + "position": { + "x": 219.196019138284, + "y": 1426.480291360171 + }, + "selected": false, + "data": { + "label": "Occluder", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 107, + "height": 49, + "style": { + "width": 107, + "height": 49 + }, + "positionAbsolute": { + "x": 219.196019138284, + "y": 1426.480291360171 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "1gdDeUPBRco10LpOxug4k", + "type": "subtopic", + "position": { + "x": 329.67908982464064, + "y": 1426.480291360171 + }, + "selected": false, + "data": { + "label": "Culling", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 90, + "height": 49, + "style": { + "width": 90, + "height": 49 + }, + "positionAbsolute": { + "x": 329.67908982464064, + "y": 1426.480291360171 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "xP_VDMu1z9jiVnZaBFKJQ", + "type": "subtopic", + "position": { + "x": 423.6790898246407, + "y": 1426.480291360171 + }, + "selected": false, + "data": { + "label": "Clipping", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 116, + "height": 49, + "style": { + "width": 116, + "height": 49 + }, + "positionAbsolute": { + "x": 423.6790898246407, + "y": 1426.480291360171 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "2ocwC0P1-ZFmjA9EmA1lV", + "type": "subtopic", + "position": { + "x": 219.196019138284, + "y": 1479.480291360171 + }, + "selected": false, + "data": { + "label": "Fog", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 107, + "height": 49, + "style": { + "width": 107, + "height": 49 + }, + "positionAbsolute": { + "x": 219.196019138284, + "y": 1479.480291360171 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "UcLGWYu41Ok2NYdLNIY5C", + "type": "subtopic", + "position": { + "x": 330.8563765666081, + "y": 1479.480291360171 + }, + "selected": false, + "data": { + "label": "Frustum", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 90, + "height": 49, + "style": { + "width": 90, + "height": 49 + }, + "positionAbsolute": { + "x": 330.8563765666081, + "y": 1479.480291360171 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "_1LkU258hzizSIgXipE0b", + "type": "subtopic", + "position": { + "x": 330.8563765666081, + "y": 1532.480291360171 + }, + "selected": false, + "data": { + "label": "Light", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 90, + "height": 49, + "style": { + "width": 90, + "height": 49 + }, + "positionAbsolute": { + "x": 330.8563765666081, + "y": 1532.480291360171 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "lqfW8hkuN3vWtacrqBBtI", + "type": "subtopic", + "position": { + "x": 330.8563765666081, + "y": 1585.480291360171 + }, + "selected": false, + "data": { + "label": "Shadow", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 90, + "height": 49, + "style": { + "width": 90, + "height": 49 + }, + "positionAbsolute": { + "x": 330.8563765666081, + "y": 1585.480291360171 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "-r15srXTBLnUGokpXKclH", + "type": "subtopic", + "position": { + "x": 423.6790898246407, + "y": 1479.480291360171 + }, + "selected": false, + "data": { + "label": "Polygon", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 116, + "height": 49, + "style": { + "width": 116, + "height": 49 + }, + "positionAbsolute": { + "x": 423.6790898246407, + "y": 1479.480291360171 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "GHfLMtgmc36OCvjQvW_Su", + "type": "subtopic", + "position": { + "x": 423.6790898246407, + "y": 1532.480291360171 + }, + "selected": false, + "data": { + "label": "Polyhedron", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 116, + "height": 49, + "style": { + "width": 116, + "height": 49 + }, + "positionAbsolute": { + "x": 423.6790898246407, + "y": 1532.480291360171 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "AEAVc8Ih4fctSGGVJG0Np", + "type": "subtopic", + "position": { + "x": 376.39009638382095, + "y": 1070.9347422218125 + }, + "selected": false, + "data": { + "label": "Stencil Shadow", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 161, + "height": 49, + "style": {}, + "positionAbsolute": { + "x": 376.39009638382095, + "y": 1070.9347422218125 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "5ZdQrL9tPyQ4Ho1hecKLD", + "type": "vertical", + "position": { + "x": 188.10474936274625, + "y": 1143.952242669871 + }, + "selected": false, + "data": { + "label": "vertical node", + "style": { + "stroke": "#2B78E4", + "strokeWidth": 3.5 + }, + "oldId": "-QCv_s22wvTQ-OeQYgBUA" + }, + "zIndex": 999, + "width": 20, + "height": 509, + "style": { + "width": 20, + "height": 509 + }, + "positionAbsolute": { + "x": 188.10474936274625, + "y": 1143.952242669871 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "Kx7O7RLp7aPGtOvK8e314", + "type": "topic", + "position": { + "x": -227.23195037554086, + "y": 1469.952242669871 + }, + "selected": false, + "data": { + "label": "Graphics API", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "CDYszS1U4v95GozB_drbt" + }, + "zIndex": 999, + "width": 320, + "height": 49, + "style": { + "width": 320, + "height": 49 + }, + "positionAbsolute": { + "x": -227.23195037554086, + "y": 1469.952242669871 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "bgWFV09AtDv1yJS5t0EaB", + "type": "subtopic", + "position": { + "x": -173.58852226085975, + "y": 1392.283891636011 + }, + "selected": false, + "data": { + "label": "DirectX", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + }, + "oldId": "yPfhJSTFS7a72UcqF1ROK" + }, + "zIndex": 999, + "width": 80, + "height": 49, + "style": { + "width": 80, + "height": 49 + }, + "positionAbsolute": { + "x": -173.58852226085975, + "y": 1392.283891636011 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "ffa5-YxRhE3zhWg7KXQ4r", + "type": "subtopic", + "position": { + "x": -89.58852226085975, + "y": 1392.283891636011 + }, + "selected": false, + "data": { + "label": "OpenGL", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + }, + "oldId": "yPfhJSTFS7a72UcqF1ROK" + }, + "zIndex": 999, + "width": 85, + "height": 49, + "style": { + "width": 85, + "height": 49 + }, + "positionAbsolute": { + "x": -89.58852226085975, + "y": 1392.283891636011 + }, + "dragging": false, + "resizing": true, + "selectable": true, + "focusable": true + }, + { + "id": "CeydBMwckqKll-2AgOlyd", + "type": "subtopic", + "position": { + "x": -40.415232321660085, + "y": 1594.409509249386 + }, + "selected": false, + "data": { + "label": "WebGL", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + }, + "oldId": "oEznLciLxZJaulMlBGgg4" + }, + "zIndex": 999, + "width": 80, + "height": 49, + "style": { + "width": 80, + "height": 49 + }, + "positionAbsolute": { + "x": -40.415232321660085, + "y": 1594.409509249386 + }, + "dragging": false, + "resizing": true, + "selectable": true, + "focusable": true + }, + { + "id": "wYUDJb-q1rtM4w2QV3Wr1", + "type": "subtopic", + "position": { + "x": -173.58852226085975, + "y": 1339.283891636011 + }, + "selected": false, + "data": { + "label": "HLSL", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 80, + "height": 49, + "style": { + "width": 80, + "height": 49 + }, + "positionAbsolute": { + "x": -173.58852226085975, + "y": 1339.283891636011 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "j8mWMFMQCEIPUzegDDsm1", + "type": "subtopic", + "position": { + "x": -89.58852226085975, + "y": 1339.4861622120663 + }, + "selected": false, + "data": { + "label": "GLSL", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "DvV32n3NoXNEej8Fsqqs2" + }, + "zIndex": 999, + "width": 85, + "height": 49, + "style": { + "width": 85, + "height": 49 + }, + "positionAbsolute": { + "x": -89.58852226085975, + "y": 1339.4861622120663 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "EVOiWAeZsIvjLTt3EYu-6", + "type": "subtopic", + "position": { + "x": -125.40723871612443, + "y": 1541.409509249386 + }, + "selected": false, + "data": { + "label": "OpenGL ES", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + }, + "oldId": "yPfhJSTFS7a72UcqF1ROK" + }, + "zIndex": 999, + "width": 165, + "height": 49, + "style": { + "width": 165, + "height": 49 + }, + "positionAbsolute": { + "x": -125.40723871612443, + "y": 1541.409509249386 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "oEznLciLxZJaulMlBGgg4", + "type": "subtopic", + "position": { + "x": -124.41523232166008, + "y": 1594.409509249386 + }, + "selected": false, + "data": { + "label": "Metal", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + }, + "oldId": "EVOiWAeZsIvjLTt3EYu-6" + }, + "zIndex": 999, + "width": 80, + "height": 49, + "style": { + "width": 80, + "height": 49 + }, + "positionAbsolute": { + "x": -124.41523232166008, + "y": 1594.409509249386 + }, + "dragging": false, + "resizing": true, + "selectable": true, + "focusable": true + }, + { + "id": "yPfhJSTFS7a72UcqF1ROK", + "type": "subtopic", + "position": { + "x": -0.7851794775092458, + "y": 1392.4861622120663 + }, + "selected": false, + "data": { + "label": "Vulkan", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 100, + "height": 49, + "style": { + "width": 100, + "height": 49 + }, + "positionAbsolute": { + "x": -0.7851794775092458, + "y": 1392.4861622120663 + }, + "dragging": false, + "resizing": true, + "selectable": true, + "focusable": true + }, + { + "id": "DvV32n3NoXNEej8Fsqqs2", + "type": "subtopic", + "position": { + "x": -0.7851794775092458, + "y": 1339.4861622120663 + }, + "selected": false, + "data": { + "label": "SPIR-V", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 100, + "height": 49, + "style": { + "width": 100, + "height": 49 + }, + "positionAbsolute": { + "x": -0.7851794775092458, + "y": 1339.4861622120663 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "Hpf_CPmLpCSP8Qo07Kq1X", + "type": "topic", + "position": { + "x": -84.04934274317372, + "y": 1702.215711596427 + }, + "selected": false, + "data": { + "label": "Game AI", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "CDYszS1U4v95GozB_drbt" + }, + "zIndex": 999, + "width": 178, + "height": 49, + "style": { + "width": 178, + "height": 49 + }, + "positionAbsolute": { + "x": -84.04934274317372, + "y": 1702.215711596427 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "Ky-95ipdgyPZGAIdqwMCk", + "type": "subtopic", + "position": { + "x": 147.45497250681115, + "y": 1702.215711596427 + }, + "selected": false, + "data": { + "label": "Decision Making", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + }, + "oldId": "mUyzX-DXnIKDl-r9o8d38" + }, + "zIndex": 999, + "width": 230, + "height": 49, + "style": { + "width": 230, + "height": 49 + }, + "positionAbsolute": { + "x": 147.45497250681115, + "y": 1702.215711596427 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "rwGivalwv2ozdSlVMSc4U", + "type": "subtopic", + "position": { + "x": 146.4323839005565, + "y": 1755.215711596427 + }, + "selected": false, + "data": { + "label": "Decision Tree", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 230, + "height": 49, + "style": { + "width": 230, + "height": 49 + }, + "positionAbsolute": { + "x": 146.4323839005565, + "y": 1755.215711596427 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "aJa_2xkZuSjQ5bt6Kj5oe", + "type": "subtopic", + "position": { + "x": 146.4323839005565, + "y": 1808.215711596427 + }, + "selected": false, + "data": { + "label": "State Machine", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 230, + "height": 49, + "style": { + "width": 230 + }, + "positionAbsolute": { + "x": 146.4323839005565, + "y": 1808.215711596427 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "ztoW8fBY73Es624A_tjd7", + "type": "subtopic", + "position": { + "x": 146.4323839005565, + "y": 1861.215711596427 + }, + "selected": false, + "data": { + "label": "Behavior Tree", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 230, + "height": 49, + "style": { + "width": 230 + }, + "positionAbsolute": { + "x": 146.4323839005565, + "y": 1861.215711596427 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "4ZCVUpYrCT14d_JULulLe", + "type": "subtopic", + "position": { + "x": 146.4323839005565, + "y": 1914.215711596427 + }, + "selected": false, + "data": { + "label": "Fuzzy Logic", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 230, + "height": 49, + "style": { + "width": 230 + }, + "positionAbsolute": { + "x": 146.4323839005565, + "y": 1914.215711596427 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "c6j-30p84vk3MZEF1R2hN", + "type": "subtopic", + "position": { + "x": 146.4323839005565, + "y": 1967.215711596427 + }, + "selected": false, + "data": { + "label": "Markov System", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 230, + "height": 49, + "style": { + "width": 230 + }, + "positionAbsolute": { + "x": 146.4323839005565, + "y": 1967.215711596427 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "Cuc0xvCAkVyUtwOxO_Uua", + "type": "subtopic", + "position": { + "x": 146.4323839005565, + "y": 2020.215711596427 + }, + "selected": false, + "data": { + "label": "Goal Oriented Behavior", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 230, + "height": 49, + "style": { + "width": 230, + "height": 49 + }, + "positionAbsolute": { + "x": 146.4323839005565, + "y": 2020.215711596427 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "mUyzX-DXnIKDl-r9o8d38", + "type": "subtopic", + "position": { + "x": 386.89905342267605, + "y": 1702.215711596427 + }, + "selected": false, + "data": { + "label": "Movement", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 145, + "height": 50, + "style": { + "width": 145, + "height": 50 + }, + "positionAbsolute": { + "x": 386.89905342267605, + "y": 1702.215711596427 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "eoK70YRCz73GmzbNhh5kg", + "type": "subtopic", + "position": { + "x": 387.89905342267605, + "y": 1804.215711596427 + }, + "selected": false, + "data": { + "label": "Board Game", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + }, + "oldId": "QD9TfZn3yhGPVwiyJ6d0V" + }, + "zIndex": 999, + "width": 143, + "height": 49, + "style": { + "width": 143 + }, + "positionAbsolute": { + "x": 387.89905342267605, + "y": 1804.215711596427 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "oOjGqicW3eqRwWyIwJdBA", + "type": "subtopic", + "position": { + "x": 387.89905342267605, + "y": 1859.1290666268271 + }, + "selected": false, + "data": { + "label": "Minimax", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "QD9TfZn3yhGPVwiyJ6d0V" + }, + "zIndex": 999, + "width": 143, + "height": 49, + "style": { + "width": 143 + }, + "positionAbsolute": { + "x": 387.89905342267605, + "y": 1859.1290666268271 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "KYCi4d475zZfNwlj6HZVD", + "type": "subtopic", + "position": { + "x": 387.89905342267605, + "y": 1912.1290666268271 + }, + "selected": false, + "data": { + "label": "AB Pruning", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "QD9TfZn3yhGPVwiyJ6d0V" + }, + "zIndex": 999, + "width": 143, + "height": 49, + "style": { + "width": 143 + }, + "positionAbsolute": { + "x": 387.89905342267605, + "y": 1912.1290666268271 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "QD9TfZn3yhGPVwiyJ6d0V", + "type": "subtopic", + "position": { + "x": 387.89905342267605, + "y": 1965.1290666268271 + }, + "selected": false, + "data": { + "label": "MCTS", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 143, + "height": 49, + "style": { + "width": 143 + }, + "positionAbsolute": { + "x": 387.89905342267605, + "y": 1965.1290666268271 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "Hpk8eOaOepERMmOvUgkxa", + "type": "topic", + "position": { + "x": -84.04934274317372, + "y": 1905.2076829543832 + }, + "selected": false, + "data": { + "label": "Game AI", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "CDYszS1U4v95GozB_drbt" + }, + "zIndex": 999, + "width": 178, + "height": 49, + "style": { + "width": 178, + "height": 49 + }, + "positionAbsolute": { + "x": -84.04934274317372, + "y": 1905.2076829543832 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "1G4wQLJCBBN0ynvbpc9DG", + "type": "horizontal", + "position": { + "x": -204.93174897756708, + "y": 1824.5505297319055 + }, + "selected": false, + "data": { + "label": "horizontal node", + "style": { + "stroke": "#000000", + "strokeWidth": 3.5 + } + }, + "zIndex": 999, + "width": 300, + "height": 20, + "style": {}, + "positionAbsolute": { + "x": -204.93174897756708, + "y": 1824.5505297319055 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "laGrI97zR5SEwbYims5E5", + "type": "label", + "position": { + "x": -204.93174897756708, + "y": 1796.8373859612675 + }, + "selected": false, + "data": { + "label": "Maximise your skills", + "href": "", + "color": "#000000", + "style": { + "fontSize": 17 + } + }, + "zIndex": 999, + "width": 167, + "height": 36, + "style": {}, + "positionAbsolute": { + "x": -204.93174897756708, + "y": 1796.8373859612675 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "ul5XnVwQCwr4ZaL4kBNpd", + "type": "subtopic", + "position": { + "x": -524.0349097293682, + "y": 1790.5591247226812 + }, + "selected": false, + "data": { + "label": "Decision Learning", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 245, + "height": 49, + "style": { + "width": 245, + "height": 49 + }, + "positionAbsolute": { + "x": -524.0349097293682, + "y": 1790.5591247226812 + }, + "selectable": true, + "focusable": true, + "dragging": false, + "resizing": false + }, + { + "id": "aw1BAGqrdBBmUwB6vMF_A", + "type": "subtopic", + "position": { + "x": -524.0349097293682, + "y": 1737.5591247226812 + }, + "selected": false, + "data": { + "label": "Naive Bayes Classifier", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 245, + "height": 49, + "style": { + "width": 245, + "height": 49 + }, + "positionAbsolute": { + "x": -524.0349097293682, + "y": 1737.5591247226812 + }, + "selectable": true, + "focusable": true, + "dragging": false, + "resizing": false + }, + { + "id": "sz1047M8_kScjth84yPwU", + "type": "subtopic", + "position": { + "x": -524.0349097293682, + "y": 1896.5591247226812 + }, + "selected": false, + "data": { + "label": "Decision Tree Learning", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 245, + "height": 49, + "style": { + "width": 245, + "height": 49 + }, + "positionAbsolute": { + "x": -524.0349097293682, + "y": 1896.5591247226812 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "ltkEyfuDxExs7knqs79ya", + "type": "subtopic", + "position": { + "x": -524.0349097293682, + "y": 1949.5591247226812 + }, + "selected": false, + "data": { + "label": "Deep Learning", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 245, + "height": 49, + "style": { + "width": 245, + "height": 49 + }, + "positionAbsolute": { + "x": -524.0349097293682, + "y": 1949.5591247226812 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "AoH2r4EOHyZd8YaV24rBk", + "type": "subtopic", + "position": { + "x": -524.0349097293682, + "y": 2002.5591247226812 + }, + "selected": false, + "data": { + "label": "Artificial Neural Network", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 245, + "height": 49, + "style": { + "width": 245, + "height": 49 + }, + "positionAbsolute": { + "x": -524.0349097293682, + "y": 2002.5591247226812 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "rGEHTfdNeBAX3_XqC-vvI", + "type": "subtopic", + "position": { + "x": -524.0349097293682, + "y": 1843.5591247226812 + }, + "selected": false, + "data": { + "label": "Reinforcements Learning", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 245, + "height": 49, + "style": { + "width": 245, + "height": 49 + }, + "dragging": false, + "resizing": false, + "positionAbsolute": { + "x": -524.0349097293682, + "y": 1843.5591247226812 + }, + "selectable": true, + "focusable": true + }, + { + "id": "-QCv_s22wvTQ-OeQYgBUA", + "type": "vertical", + "position": { + "x": -270.90430753953456, + "y": 1737.215711596427 + }, + "selected": false, + "data": { + "label": "vertical node", + "style": { + "stroke": "#2B78E4", + "strokeWidth": 3.5 + } + }, + "zIndex": 999, + "width": 20, + "height": 313, + "style": { + "width": 20, + "height": 313 + }, + "positionAbsolute": { + "x": -270.90430753953456, + "y": 1737.215711596427 + }, + "dragging": false, + "resizing": false, + "selectable": true, + "focusable": true + }, + { + "id": "9_OcZ9rzedDFfwEYxAghh", + "type": "subtopic", + "position": { + "x": -228.74983529021276, + "y": 1905.2076829543832 + }, + "selected": false, + "data": { + "label": "Learning", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 113, + "height": 49, + "style": {}, + "positionAbsolute": { + "x": -228.74983529021276, + "y": 1905.2076829543832 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "CDYszS1U4v95GozB_drbt", + "type": "topic", + "position": { + "x": -99.30821800196304, + "y": 2105.233172893317 + }, + "selected": false, + "data": { + "label": "Advanced Rendering", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 207, + "height": 49, + "style": {}, + "positionAbsolute": { + "x": -99.30821800196304, + "y": 2105.233172893317 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "_i7BXZq-iLxQc3QZRMees", + "type": "subtopic", + "position": { + "x": 302.23120414171314, + "y": 2105.233172893317 + }, + "selected": false, + "data": { + "label": "Real-time Ray Tracing", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + }, + "oldId": "XvFtMHrYsBREmuerE7CGc" + }, + "zIndex": 999, + "width": 216, + "height": 49, + "style": { + "width": 216, + "height": 49 + }, + "positionAbsolute": { + "x": 302.23120414171314, + "y": 2105.233172893317 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "qoIkw9o8iMx7MzUyVYoR2", + "type": "subtopic", + "position": { + "x": 302.23120414171314, + "y": 2199.3409871463487 + }, + "selected": false, + "data": { + "label": "DirectX Ray Tracing", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 216, + "height": 49, + "style": { + "width": 216 + }, + "positionAbsolute": { + "x": 302.23120414171314, + "y": 2199.3409871463487 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "tDGnV8dGIFr_diz4HcEjr", + "type": "subtopic", + "position": { + "x": 302.23120414171314, + "y": 2252.3409871463487 + }, + "selected": false, + "data": { + "label": "Vulkan Ray Tracing", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + }, + "oldId": "GDLysy3__cbYidEaOmFze" + }, + "zIndex": 999, + "width": 216, + "height": 49, + "style": { + "width": 216 + }, + "positionAbsolute": { + "x": 302.23120414171314, + "y": 2252.3409871463487 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "GDLysy3__cbYidEaOmFze", + "type": "subtopic", + "position": { + "x": 302.23120414171314, + "y": 2305.3409871463487 + }, + "selected": false, + "data": { + "label": "OptiX", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 216, + "height": 49, + "style": { + "width": 216 + }, + "positionAbsolute": { + "x": 302.23120414171314, + "y": 2305.3409871463487 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "XvFtMHrYsBREmuerE7CGc", + "type": "subtopic", + "position": { + "x": -511.38874871773237, + "y": 2105.233172893317 + }, + "selected": false, + "data": { + "label": "Physically-Based Rendering", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center", + "colorType": "h" + } + }, + "zIndex": 999, + "width": 261, + "height": 49, + "style": {}, + "positionAbsolute": { + "x": -511.38874871773237, + "y": 2105.233172893317 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "PuhXaRZ-Ql5PCqzMyz3en", + "type": "subtopic", + "position": { + "x": -515.8887487177324, + "y": 2247.4742913383143 + }, + "selected": false, + "data": { + "label": "Translucency & Transparency", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 270, + "height": 49, + "style": { + "width": 270 + }, + "positionAbsolute": { + "x": -515.8887487177324, + "y": 2247.4742913383143 + }, + "dragging": false, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "H3hkafXO9zqEnWuwHa38P", + "type": "subtopic", + "position": { + "x": -515.8887487177324, + "y": 2300.4742913383143 + }, + "selected": false, + "data": { + "label": "Conservation of Energy", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 270, + "height": 49, + "style": { + "width": 270 + }, + "positionAbsolute": { + "x": -515.8887487177324, + "y": 2300.4742913383143 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "olY1ibR7kw1yJ58TfU-37", + "type": "subtopic", + "position": { + "x": -515.8887487177324, + "y": 2353.4742913383143 + }, + "selected": false, + "data": { + "label": "Metallicity", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 270, + "height": 49, + "style": { + "width": 270 + }, + "dragging": false, + "positionAbsolute": { + "x": -515.8887487177324, + "y": 2353.4742913383143 + }, + "selectable": true, + "focusable": true + }, + { + "id": "YrQgfjsdLCIUxrwflpEHO", + "type": "subtopic", + "position": { + "x": -515.8887487177324, + "y": 2194.4742913383143 + }, + "selected": false, + "data": { + "label": "Microsurface Scattering", + "style": { + "fontSize": 17, + "justifyContent": "flex-start", + "textAlign": "center" + } + }, + "zIndex": 999, + "width": 270, + "height": 49, + "style": { + "width": 270 + }, + "positionAbsolute": { + "x": -515.8887487177324, + "y": 2194.4742913383143 + }, + "dragging": false, + "selectable": true, + "focusable": true + }, + { + "id": "FbfHP9hFBuISrGzKaX-qm", + "type": "paragraph", + "position": { + "x": -520.8639110926986, + "y": -233.1028359109968 + }, + "selected": false, + "data": { + "label": "Shout out to Chris Ohk who helped make the initial version of this roadmap.", + "style": { + "fontSize": 17, + "borderColor": "#000000", + "backgroundColor": "#ffffff", + "color": "#000000", + "textAlign": "left", + "justifyContent": "flex-start", + "padding": 16 + } + }, + "zIndex": 999, + "width": 347, + "height": 148, + "style": { + "width": 347, + "height": 148 + }, + "dragging": false, + "positionAbsolute": { + "x": -520.8639110926986, + "y": -233.1028359109968 + }, + "selectable": true, + "focusable": true, + "resizing": false + }, + { + "id": "2zqZkyVgigifcRS1H7F_b", + "type": "button", + "position": { + "x": -505.86391109269846, + "y": -152.09530466580176 + }, + "selected": false, + "data": { + "label": "Visit his GitHub", + "href": "https://github.com/utilForever", + "color": "#000000", + "backgroundColor": "#dedede", + "style": { + "fontSize": 17 + } + }, + "zIndex": 999, + "width": 317, + "height": 49, + "dragging": false, + "style": { + "width": 317, + "height": 49 + }, + "resizing": false, + "positionAbsolute": { + "x": -505.86391109269846, + "y": -152.09530466580176 + }, + "selectable": true, + "focusable": true + }, + { + "width": 157, + "height": 49, + "id": "dlGf3ZdFXYx0Z6Viu2x-l", + "type": "button", + "position": { + "x": 8.768049624459138, + "y": 2303.3819660369822 + }, + "selected": false, + "data": { + "label": "API Design", + "href": "https://roadmap.sh/api-design", + "color": "#FFFFFf", + "backgroundColor": "#4136D4", + "style": { + "fontSize": 17 + }, + "borderColor": "#4136D4", + "oldId": "gC8lsIdYLRzo3HzwVqtm1" + }, + "zIndex": 999, + "dragging": false, + "positionAbsolute": { + "x": 8.768049624459138, + "y": 2303.3819660369822 + }, + "style": { + "width": 157, + "height": 49 + }, + "focusable": true, + "resizing": false, + "selectable": true + } + ], + "edges": [ + { + "style": { + "strokeDasharray": "0", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "sourceHandle": "x2", + "target": "GV_zWF6rSWg5bqgiXhOEf", + "targetHandle": "w1", + "data": { + "edgeStyle": "solid" + }, + "id": "M0aRyhxjzTWUOW95D1g1y", + "selected": false, + "type": "smoothstep", + "focusable": true, + "selectable": true + }, + { + "style": { + "strokeDasharray": "0", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "sourceHandle": "x2", + "target": "GV_zWF6rSWg5bqgiXhOEf", + "targetHandle": "w1", + "data": { + "edgeStyle": "solid" + }, + "id": "Xw4lLz2zWuTkNu8r4oheF", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "sourceHandle": "x2", + "target": "GV_zWF6rSWg5bqgiXhOEf", + "targetHandle": "w1", + "data": { + "edgeStyle": "solid" + }, + "id": "mbCXMk97_HKXG3d4TxBOC", + "selected": false, + "focusable": true, + "selectable": true + }, + { + "style": { + "strokeDasharray": "0", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "rQArtuVKGVgLn_fw9yO3b", + "sourceHandle": "z2", + "target": "SIvQYH0q1H29NgbtLq3L8", + "targetHandle": "y1", + "data": { + "edgeStyle": "solid" + }, + "id": "reactflow__edge-rQArtuVKGVgLn_fw9yO3bz2-SIvQYH0q1H29NgbtLq3L8y1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "rQArtuVKGVgLn_fw9yO3b", + "sourceHandle": "x2", + "target": "m1wX27XBWKXZcTMH2U1xp", + "targetHandle": "w2", + "data": { + "edgeStyle": "solid" + }, + "id": "reactflow__edge-rQArtuVKGVgLn_fw9yO3bx2-m1wX27XBWKXZcTMH2U1xpw2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "iogwMmOvub2ZF4zgg6WyF", + "sourceHandle": "x2", + "target": "rQArtuVKGVgLn_fw9yO3b", + "targetHandle": "w2", + "data": { + "edgeStyle": "solid" + }, + "id": "reactflow__edge-iogwMmOvub2ZF4zgg6WyFx2-rQArtuVKGVgLn_fw9yO3bw2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "m1wX27XBWKXZcTMH2U1xp", + "sourceHandle": "x2", + "target": "YTkOF_33oL1ZkA-loc_DP", + "targetHandle": "w1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-m1wX27XBWKXZcTMH2U1xpx2-YTkOF_33oL1ZkA-loc_DPw1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "m1wX27XBWKXZcTMH2U1xp", + "sourceHandle": "y2", + "target": "grRf-MmaXimDB4iODOV47", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-m1wX27XBWKXZcTMH2U1xpy2-grRf-MmaXimDB4iODOV47z1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "m1wX27XBWKXZcTMH2U1xp", + "sourceHandle": "y2", + "target": "Kg6Mg9ieUUGXWX9Lai7B0", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-m1wX27XBWKXZcTMH2U1xpy2-Kg6Mg9ieUUGXWX9Lai7B0z1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "m1wX27XBWKXZcTMH2U1xp", + "sourceHandle": "y2", + "target": "XABzEU9owCx9-zw1id9xU", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-m1wX27XBWKXZcTMH2U1xpy2-XABzEU9owCx9-zw1id9xUz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "m1wX27XBWKXZcTMH2U1xp", + "sourceHandle": "y2", + "target": "r5TcXQsU9s4NlAQIPvZ3U", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-m1wX27XBWKXZcTMH2U1xpy2-r5TcXQsU9s4NlAQIPvZ3Uz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "m1wX27XBWKXZcTMH2U1xp", + "sourceHandle": "y2", + "target": "SkCreb6g4i-OFtJWhRYqO", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-m1wX27XBWKXZcTMH2U1xpy2-SkCreb6g4i-OFtJWhRYqOz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "m1wX27XBWKXZcTMH2U1xp", + "sourceHandle": "y2", + "target": "iIWEjpkNFBj4R5wQ0mcWY", + "targetHandle": "z2", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-m1wX27XBWKXZcTMH2U1xpy2-iIWEjpkNFBj4R5wQ0mcWYz2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "m1wX27XBWKXZcTMH2U1xp", + "sourceHandle": "z2", + "target": "UTBnrQiZ6Bf96yJYIUf3b", + "targetHandle": "y1", + "data": { + "edgeStyle": "solid" + }, + "id": "reactflow__edge-m1wX27XBWKXZcTMH2U1xpz2-4YgbrXLXf5mfaL2tlYkzky1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "SuemqQuiePab0Qpm2EGy9", + "sourceHandle": "y2", + "target": "vmRYaXNVCe0N73xG8bsEK", + "targetHandle": "z2", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-SuemqQuiePab0Qpm2EGy9y2-vmRYaXNVCe0N73xG8bsEKz2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "vmRYaXNVCe0N73xG8bsEK", + "sourceHandle": "y2", + "target": "kSMz7mZ243qMKtT_YD3AD", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-vmRYaXNVCe0N73xG8bsEKy2-kSMz7mZ243qMKtT_YD3ADz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "vmRYaXNVCe0N73xG8bsEK", + "sourceHandle": "y2", + "target": "lwd3Gz9bJEKCIwhXD6m-v", + "targetHandle": "z2", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-vmRYaXNVCe0N73xG8bsEKy2-lwd3Gz9bJEKCIwhXD6m-vz2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "vmRYaXNVCe0N73xG8bsEK", + "sourceHandle": "y2", + "target": "vWLKYK2KUzV1fO-vQunzW", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-vmRYaXNVCe0N73xG8bsEKy2-vWLKYK2KUzV1fO-vQunzWz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "SuemqQuiePab0Qpm2EGy9", + "sourceHandle": "y2", + "target": "YLusnwCba7BIdKOYUoY6F", + "targetHandle": "z2", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-SuemqQuiePab0Qpm2EGy9y2-YLusnwCba7BIdKOYUoY6Fz2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "pG_V12qhS4HevoP_KHTvh", + "sourceHandle": "y2", + "target": "jixffcPBELkhoG0e7Te8g", + "targetHandle": "z2", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-pG_V12qhS4HevoP_KHTvhy2-jixffcPBELkhoG0e7Te8gz2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "jslk7Gy58VspO1uXGDgBp", + "sourceHandle": "y2", + "target": "bgP9NpD0DJGqN4VCt65xP", + "targetHandle": "z2", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-jslk7Gy58VspO1uXGDgBpy2-bgP9NpD0DJGqN4VCt65xPz2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "YLusnwCba7BIdKOYUoY6F", + "sourceHandle": "x2", + "target": "pG_V12qhS4HevoP_KHTvh", + "targetHandle": "w1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-YLusnwCba7BIdKOYUoY6Fx2-pG_V12qhS4HevoP_KHTvhw1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "AKd2UpITqBZV7cZszSRps", + "sourceHandle": "x2", + "target": "PLR_4yoRifoTzkOR4c7ym", + "targetHandle": "w1", + "data": { + "edgeStyle": "dashed" + }, + "selected": false, + "id": "reactflow__edge-AKd2UpITqBZV7cZszSRpsx2-PLR_4yoRifoTzkOR4c7ymw1", + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "PLR_4yoRifoTzkOR4c7ym", + "sourceHandle": "y2", + "target": "aTeYGd4JlPr5txNPyBezn", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-PLR_4yoRifoTzkOR4c7ymy2-aTeYGd4JlPr5txNPyBeznz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "9Fk3XSINBr2NNdbMtwsIK", + "sourceHandle": "y2", + "target": "STdvFYM9V0a36IkPXjvrB", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-9Fk3XSINBr2NNdbMtwsIKy2-STdvFYM9V0a36IkPXjvrBz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "9Fk3XSINBr2NNdbMtwsIK", + "sourceHandle": "y2", + "target": "FCc5xwb_G3VsDRXOcg3hV", + "targetHandle": "z2", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-9Fk3XSINBr2NNdbMtwsIKy2-FCc5xwb_G3VsDRXOcg3hVz2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "FCc5xwb_G3VsDRXOcg3hV", + "sourceHandle": "y2", + "target": "XHFV4d6Ab4kWQ3-XcZTyT", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-FCc5xwb_G3VsDRXOcg3hVy2-XHFV4d6Ab4kWQ3-XcZTyTz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "UTBnrQiZ6Bf96yJYIUf3b", + "sourceHandle": "y2", + "target": "fv5tivGad2P9GRZOodfn2", + "targetHandle": "z2", + "data": { + "edgeStyle": "solid" + }, + "id": "reactflow__edge-UTBnrQiZ6Bf96yJYIUf3by2-4YgbrXLXf5mfaL2tlYkzkz2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "fv5tivGad2P9GRZOodfn2", + "sourceHandle": "y2", + "target": "rNeOti8DDyWTMP9FB9kJ_", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-4YgbrXLXf5mfaL2tlYkzky2-rNeOti8DDyWTMP9FB9kJ_z1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "fv5tivGad2P9GRZOodfn2", + "sourceHandle": "y2", + "target": "a6H-cZtp3A_fB8jnfMxBR", + "targetHandle": "z2", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-4YgbrXLXf5mfaL2tlYkzky2-a6H-cZtp3A_fB8jnfMxBRz2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "fv5tivGad2P9GRZOodfn2", + "sourceHandle": "y2", + "target": "CeAUEN233L4IoFSZtIvvl", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-4YgbrXLXf5mfaL2tlYkzky2-CeAUEN233L4IoFSZtIvvlz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "fv5tivGad2P9GRZOodfn2", + "sourceHandle": "y2", + "target": "7OffO2mBmfBKqPBTZ9ngI", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-4YgbrXLXf5mfaL2tlYkzky2-7OffO2mBmfBKqPBTZ9ngIz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "UTBnrQiZ6Bf96yJYIUf3b", + "sourceHandle": "x2", + "target": "AdOfOJtLtNgDwuABb6orE", + "targetHandle": "w1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-UTBnrQiZ6Bf96yJYIUf3bx2-AdOfOJtLtNgDwuABb6orEw1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "4YgbrXLXf5mfaL2tlYkzk", + "sourceHandle": "y2", + "target": "jsq0UXnIIC0Z_nbK2w48f", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-4YgbrXLXf5mfaL2tlYkzky2-jsq0UXnIIC0Z_nbK2w48fz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "THMmnx8p_P0X-dSPoHvst", + "sourceHandle": "x2", + "target": "iBZ1JsEWI0xuLgUvfWfl-", + "targetHandle": "w1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-THMmnx8p_P0X-dSPoHvstx2-iBZ1JsEWI0xuLgUvfWfl-w1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "lIb5MeDoqVj6HycveOgTS", + "sourceHandle": "y2", + "target": "JW5c_0JEtO-OiBoXUia6A", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-CDYszS1U4v95GozB_drbty2-JW5c_0JEtO-OiBoXUia6Az1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "lIb5MeDoqVj6HycveOgTS", + "sourceHandle": "y2", + "target": "vYNj9nzu90e9xlrzHULnP", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-CDYszS1U4v95GozB_drbty2-vYNj9nzu90e9xlrzHULnPz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "lIb5MeDoqVj6HycveOgTS", + "sourceHandle": "y2", + "target": "shSRnMf4NONuZ3TGPAoQc", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-CDYszS1U4v95GozB_drbty2-shSRnMf4NONuZ3TGPAoQcz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "lIb5MeDoqVj6HycveOgTS", + "sourceHandle": "y2", + "target": "rmtxybcavWV6A53R4ZWgc", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-CDYszS1U4v95GozB_drbty2-rmtxybcavWV6A53R4ZWgcz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "eI2jym4AAz3ani-lreSKE", + "sourceHandle": "x2", + "target": "0g1z5G2dsF4PTIfFAG984", + "targetHandle": "w1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-eI2jym4AAz3ani-lreSKEx2-0g1z5G2dsF4PTIfFAG984w1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "UTBnrQiZ6Bf96yJYIUf3b", + "sourceHandle": "w2", + "target": "0D7KQlF-9ylmILTBBVxot", + "targetHandle": "x2", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-UTBnrQiZ6Bf96yJYIUf3bw2-0D7KQlF-9ylmILTBBVxotx2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "lIb5MeDoqVj6HycveOgTS", + "sourceHandle": "y2", + "target": "qIrePusMuvcUva9LMDmDx", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-lIb5MeDoqVj6HycveOgTSy2-qIrePusMuvcUva9LMDmDxz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "Hpf_CPmLpCSP8Qo07Kq1X", + "sourceHandle": "z2", + "target": "Ky-95ipdgyPZGAIdqwMCk", + "targetHandle": "y1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-CDYszS1U4v95GozB_drbtz2-Ky-95ipdgyPZGAIdqwMCky1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "Hpf_CPmLpCSP8Qo07Kq1X", + "sourceHandle": "x2", + "target": "Hpk8eOaOepERMmOvUgkxa", + "targetHandle": "w1", + "data": { + "edgeStyle": "solid" + }, + "selected": false, + "selectable": true, + "focusable": true, + "type": "simplebezier", + "id": "reactflow__edge-Hpf_CPmLpCSP8Qo07Kq1Xx2-CDYszS1U4v95GozB_drbtw1" + }, + { + "style": { + "strokeDasharray": "0", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "Hpk8eOaOepERMmOvUgkxa", + "sourceHandle": "x2", + "target": "CDYszS1U4v95GozB_drbt", + "targetHandle": "w1", + "data": { + "edgeStyle": "solid" + }, + "id": "reactflow__edge-Hpk8eOaOepERMmOvUgkxax2-CDYszS1U4v95GozB_drbtw1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "_i7BXZq-iLxQc3QZRMees", + "sourceHandle": "x2", + "target": "qoIkw9o8iMx7MzUyVYoR2", + "targetHandle": "w1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-XvFtMHrYsBREmuerE7CGcx2-qoIkw9o8iMx7MzUyVYoR2w1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "CDYszS1U4v95GozB_drbt", + "sourceHandle": "z2", + "target": "_i7BXZq-iLxQc3QZRMees", + "targetHandle": "y2", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-CDYszS1U4v95GozB_drbtz2-XvFtMHrYsBREmuerE7CGcy2", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "CDYszS1U4v95GozB_drbt", + "sourceHandle": "y2", + "target": "XvFtMHrYsBREmuerE7CGc", + "targetHandle": "z1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-CDYszS1U4v95GozB_drbty2-XvFtMHrYsBREmuerE7CGcz1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0.8 8", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "XvFtMHrYsBREmuerE7CGc", + "sourceHandle": "x2", + "target": "YrQgfjsdLCIUxrwflpEHO", + "targetHandle": "w1", + "data": { + "edgeStyle": "dashed" + }, + "id": "reactflow__edge-XvFtMHrYsBREmuerE7CGcx2-YrQgfjsdLCIUxrwflpEHOw1", + "selected": false, + "selectable": true, + "focusable": true + }, + { + "style": { + "strokeDasharray": "0", + "strokeLinecap": "round", + "strokeWidth": 3.5, + "stroke": "#2b78e4" + }, + "source": "CDYszS1U4v95GozB_drbt", + "sourceHandle": "x2", + "target": "GV_zWF6rSWg5bqgiXhOEf", + "targetHandle": "w1", + "data": { + "edgeStyle": "solid" + }, + "id": "reactflow__edge-CDYszS1U4v95GozB_drbtx2-GV_zWF6rSWg5bqgiXhOEfw1", + "selected": false, + "focusable": true, + "selectable": true + } + ] } \ No newline at end of file diff --git a/src/data/roadmaps/game-developer/game-developer.md b/src/data/roadmaps/game-developer/game-developer.md index 20593000a..af765241e 100644 --- a/src/data/roadmaps/game-developer/game-developer.md +++ b/src/data/roadmaps/game-developer/game-developer.md @@ -1,6 +1,7 @@ --- pdfUrl: '/pdfs/roadmaps/game-developer.pdf' order: 17 +renderer: 'editor' briefTitle: 'Game Developer' briefDescription: 'Roadmap to becoming a Game Developer in 2024' title: 'Game Developer' @@ -9,7 +10,7 @@ hasTopics: true isNew: false dimensions: width: 968 - height: 2104.59 + height: 2370 schema: headline: 'Game Developer Roadmap' description: 'Learn what Game Development is, what game developers do and how to become one using our community-driven roadmap.' diff --git a/src/data/roadmaps/game-developer/migration-mapping.json b/src/data/roadmaps/game-developer/migration-mapping.json new file mode 100644 index 000000000..4652fef8a --- /dev/null +++ b/src/data/roadmaps/game-developer/migration-mapping.json @@ -0,0 +1,145 @@ +{ + "client-side": "rQArtuVKGVgLn_fw9yO3b", + "game-mathematics": "m1wX27XBWKXZcTMH2U1xp", + "game-mathematics:linear-algebra": "grRf-MmaXimDB4iODOV47", + "game-mathematics:vector": "yLEyh5XJ3sl8eHD-PoSvJ", + "game-mathematics:matrix": "Kg6Mg9ieUUGXWX9Lai7B0", + "game-mathematics:geometry": "XWxW2ZBw3LcQ4DRk4tgAG", + "game-mathematics:linear-transformation": "XABzEU9owCx9-zw1id9xU", + "game-mathematics:affine-space": "r5TcXQsU9s4NlAQIPvZ3U", + "game-mathematics:affine-transformation": "SkCreb6g4i-OFtJWhRYqO", + "game-mathematics:orientation": "iIWEjpkNFBj4R5wQ0mcWY", + "game-mathematics:projection": "5qfoD77wU4ETI7rUSy4Nc", + "game-mathematics:orientation:quaternion": "zPs_LlDvkfxvvCrk5fXB2", + "game-mathematics:orientation:euler-angle": "L0J2kvveJNsmN9ueXhqKf", + "game-mathematics:curve": "YTkOF_33oL1ZkA-loc_DP", + "game-mathematics:orientation:spline": "nTiHZXRh2j3_FsBotmlGf", + "game-mathematics:orientation:hermite": "m4AuHjEBnHS0wyATG-I1Z", + "game-mathematics:orientation:bezier": "DUEEm9sAaZqSI-W-PFZ8f", + "game-mathematics:orientation:catmull-rom": "N9GoA3YvOaKwYjljj6NZv", + "game-mathematics:projection:perspective": "LEJymJ2EaAW5FM5LgKW38", + "game-mathematics:projection:orthogonal": "d6C1qFv-Tad3AtMBDLI6r", + "game-physics": "UTBnrQiZ6Bf96yJYIUf3b", + "game-physics:dynamics": "0D7KQlF-9ylmILTBBVxot", + "game-physics:dynamics:center-of-mass": "HWtU4q-YPXxSi64t43VNF", + "game-physics:dynamics:moment-of-inertia": "6E2mkXuAzoYnrT1SEIA16", + "game-physics:dynamics:acceleration": "ejZMnxZ0QrN-jBqo9Vrj8", + "game-physics:dynamics:joints": "m2_wUW2VHMCXHnn5B91qr", + "game-physics:dynamics:force": "qduFRhmrzJ2sn0g7L-tza", + "game-physics:dynamics:restitution": "egOcxFTQP7vPIGrxcieuk", + "game-physics:dynamics:angular-velocity": "Y7HYY5eq7OG42V9yQz0Q1", + "game-physics:dynamics:buoyancy": "WzcmdW_fKHv3gwdBnvI0_", + "game-physics:dynamics:friction": "Hz9R4YGYtD0jAur8rYist", + "game-physics:dynamics:linear-velocity": "Z_U6abGV_wVkTGZ2LVkFK", + "game-physics:collision-detection": "AdOfOJtLtNgDwuABb6orE", + "game-physics:collision-detection:narrow-phase": "SuemqQuiePab0Qpm2EGy9", + "game-physics:collision-detection:broad-phase": "AKd2UpITqBZV7cZszSRps", + "game-physics:collision-detection:ccd": "1yK8TH4Pn7Ag8VQoug54i", + "game-physics:collision-detection:narrow-phase:intersection": "vmRYaXNVCe0N73xG8bsEK", + "game-physics:collision-detection:narrow-phase:intersection:sat": "kSMz7mZ243qMKtT_YD3AD", + "game-physics:collision-detection:narrow-phase:intersection:gjk": "lwd3Gz9bJEKCIwhXD6m-v", + "game-physics:collision-detection:narrow-phase:intersection:epa": "vWLKYK2KUzV1fO-vQunzW", + "game-physics:collision-detection:narrow-phase:convexity": "YLusnwCba7BIdKOYUoY6F", + "game-physics:collision-detection:narrow-phase:convexity:convex": "pG_V12qhS4HevoP_KHTvh", + "game-physics:collision-detection:narrow-phase:convexity:concave": "jslk7Gy58VspO1uXGDgBp", + "game-physics:collision-detection:narrow-phase:convexity:convex:convex-hull": "jixffcPBELkhoG0e7Te8g", + "game-physics:collision-detection:narrow-phase:convexity:concave:convex-decomposition": "bgP9NpD0DJGqN4VCt65xP", + "game-physics:collision-detection:broad-phase:bounding-volume": "PLR_4yoRifoTzkOR4c7ym", + "game-physics:collision-detection:broad-phase:bounding-volume:aabb": "aTeYGd4JlPr5txNPyBezn", + "game-physics:collision-detection:broad-phase:bounding-volume:obb": "7nGtvbxoEAheiF4IPMfPf", + "game-physics:collision-detection:broad-phase:spatial-partitioning": "9Fk3XSINBr2NNdbMtwsIK", + "game-physics:collision-detection:broad-phase:spatial-partitioning:sort-and-sweep": "STdvFYM9V0a36IkPXjvrB", + "game-physics:collision-detection:broad-phase:spatial-partitioning:bvh": "FCc5xwb_G3VsDRXOcg3hV", + "game-physics:collision-detection:broad-phase:spatial-partitioning:bvh:dbvt": "XHFV4d6Ab4kWQ3-XcZTyT", + "game-engine": "fv5tivGad2P9GRZOodfn2", + "game-engine:unity-3d": "rNeOti8DDyWTMP9FB9kJ_", + "game-engine:unreal-engine": "a6H-cZtp3A_fB8jnfMxBR", + "game-engine:native": "CeAUEN233L4IoFSZtIvvl", + "game-engine:godot": "7OffO2mBmfBKqPBTZ9ngI", + "programming-languages": "4YgbrXLXf5mfaL2tlYkzk", + "programming-languages:csharp": "Ph3ZqmSnwwzUBUC-6dgf-", + "programming-languages:c-cpp": "jsq0UXnIIC0Z_nbK2w48f", + "programming-languages:assembly": "AaRZiItRcn8fYb5R62vfT", + "programming-languages:rust": "ts9pWxUimvFqfNJYCmNNw", + "programming-languages:python": "AJp_QRLgSG5ETXDIjUjmm", + "computer-graphics": "lIb5MeDoqVj6HycveOgTS", + "computer-graphics:ray-tracing": "JW5c_0JEtO-OiBoXUia6A", + "computer-graphics:rasterization": "vYNj9nzu90e9xlrzHULnP", + "computer-graphics:graphics-pipeline": "shSRnMf4NONuZ3TGPAoQc", + "computer-graphics:sampling": "rmtxybcavWV6A53R4ZWgc", + "computer-graphics:shader": "qIrePusMuvcUva9LMDmDx", + "computer-graphics:shader:render-equation": "WVgozaQPFbYthZLWMbNUg", + "computer-graphics:shader:reflection": "eI2jym4AAz3ani-lreSKE", + "computer-graphics:shader:mapping": "THMmnx8p_P0X-dSPoHvst", + "computer-graphics:shader:reflection:diffuse": "0g1z5G2dsF4PTIfFAG984", + "computer-graphics:shader:reflection:specular": "odfZWKtPbb-lC35oeTCNV", + "computer-graphics:shader:mapping:texture": "iBZ1JsEWI0xuLgUvfWfl-", + "computer-graphics:shader:mapping:bump": "r4UkMd5QURbvJ3Jlr_H9H", + "computer-graphics:shader:mapping:parallax": "YGeGleEN203nokiZIYJN8", + "computer-graphics:shader:mapping:horizon": "9cBOfj58I4hBlxlQIyV9g", + "computer-graphics:computer-animation": "1RdyzTI_TXqmct2bIbNh9", + "computer-graphics:color": "WK6fLWJq9Vh2ySVrSqd-U", + "computer-graphics:visual-perception": "1S1qPogijW2SQCiF7KLZe", + "computer-graphics:tone-reproduction": "RgC9TOc0wbr2QSuvrpIDV", + "computer-graphics:lightning-and-shadow": "DDN3mn0LTueBhjRzXFcbU", + "computer-graphics:lightning-and-shadow:stencil-shadow": "AEAVc8Ih4fctSGGVJG0Np", + "computer-graphics:lightning-and-shadow:shadow-map": "ygtru6fqQ3gpFZRN_I8rP", + "computer-graphics:lightning-and-shadow:shadow-map:2d": "Wq8siopWTD7sylNi0575X", + "computer-graphics:lightning-and-shadow:shadow-map:cube": "cv1-AwewuqJsZDBI3h84G", + "computer-graphics:lightning-and-shadow:shadow-map:cascaded": "Lu38SfZ38y89BffLRMmGk", + "computer-graphics:lightning-and-shadow:light-source": "VLrcBE1vb6N5fw5YESCge", + "computer-graphics:lightning-and-shadow:light-source:directional-light": "foD8K7V0yIxgeXwl687Bv", + "computer-graphics:lightning-and-shadow:light-source:point-light": "aNhyXWW2b7yKTv8y14zk9", + "computer-graphics:lightning-and-shadow:light-source:spot-light": "FetbhcK1RDt4izZ6NEUEP", + "computer-graphics:lightning-and-shadow:light-source:infinite-light": "sC3omOmL2DOyTSvET5cDa", + "computer-graphics:visibility-and-occlusion": "OcxesFnB5wO6VXrHYnhz-", + "computer-graphics:visibility-and-occlusion:occluder": "MlLYqO_8JDNOwKRvaM-bf", + "computer-graphics:visibility-and-occlusion:culling": "1gdDeUPBRco10LpOxug4k", + "computer-graphics:visibility-and-occlusion:clipping": "xP_VDMu1z9jiVnZaBFKJQ", + "computer-graphics:visibility-and-occlusion:occluder:fog": "2ocwC0P1-ZFmjA9EmA1lV", + "computer-graphics:visibility-and-occlusion:culling:frustum": "UcLGWYu41Ok2NYdLNIY5C", + "computer-graphics:visibility-and-occlusion:culling:light": "_1LkU258hzizSIgXipE0b", + "computer-graphics:visibility-and-occlusion:culling:shadow": "lqfW8hkuN3vWtacrqBBtI", + "computer-graphics:visibility-and-occlusion:clipping:polygon": "-r15srXTBLnUGokpXKclH", + "computer-graphics:visibility-and-occlusion:clipping:polyhedron": "GHfLMtgmc36OCvjQvW_Su", + "graphics-api": "Kx7O7RLp7aPGtOvK8e314", + "graphics-api:direct-x": "bgWFV09AtDv1yJS5t0EaB", + "graphics-api:open-gl": "ffa5-YxRhE3zhWg7KXQ4r", + "graphics-api:vulkan": "yPfhJSTFS7a72UcqF1ROK", + "graphics-api:direct-x:hlsl": "wYUDJb-q1rtM4w2QV3Wr1", + "graphics-api:open-gl:glsl": "j8mWMFMQCEIPUzegDDsm1", + "graphics-api:vulkan:spirv": "DvV32n3NoXNEej8Fsqqs2", + "graphics-api:web-gl": "CeydBMwckqKll-2AgOlyd", + "graphics-api:opengl-es": "EVOiWAeZsIvjLTt3EYu-6", + "graphics-api:metal": "oEznLciLxZJaulMlBGgg4", + "game-api": "Hpf_CPmLpCSP8Qo07Kq1X", + "game-api:decision-making": "Ky-95ipdgyPZGAIdqwMCk", + "game-api:movement": "mUyzX-DXnIKDl-r9o8d38", + "game-api:board-game": "eoK70YRCz73GmzbNhh5kg", + "game-api:decision-making:decision-tree": "rwGivalwv2ozdSlVMSc4U", + "game-api:decision-making:state-machine": "aJa_2xkZuSjQ5bt6Kj5oe", + "game-api:decision-making:behavior-tree": "ztoW8fBY73Es624A_tjd7", + "game-api:decision-making:fuzzy-logic": "4ZCVUpYrCT14d_JULulLe", + "game-api:decision-making:markov-system": "c6j-30p84vk3MZEF1R2hN", + "game-api:decision-making:goal-oriented-behavior": "Cuc0xvCAkVyUtwOxO_Uua", + "game-api:board-game:minimax": "oOjGqicW3eqRwWyIwJdBA", + "game-api:board-game:ab-pruning": "KYCi4d475zZfNwlj6HZVD", + "game-api:board-game:mcts": "QD9TfZn3yhGPVwiyJ6d0V", + "game-api-2": "Hpk8eOaOepERMmOvUgkxa", + "game-api-2:learning": "9_OcZ9rzedDFfwEYxAghh", + "game-api-2:learning:decision-learning": "ul5XnVwQCwr4ZaL4kBNpd", + "game-api-2:learning:naive-bayes-classifier": "aw1BAGqrdBBmUwB6vMF_A", + "game-api-2:learning:decision-tree-learning": "sz1047M8_kScjth84yPwU", + "game-api-2:learning:deep-learning": "ltkEyfuDxExs7knqs79ya", + "game-api-2:learning:artificial-neural-network": "AoH2r4EOHyZd8YaV24rBk", + "game-api-2:learning:reinforcements-learning": "rGEHTfdNeBAX3_XqC-vvI", + "advanced-rendering": "CDYszS1U4v95GozB_drbt", + "advanced-rendering:real-time-ray-tracing": "_i7BXZq-iLxQc3QZRMees", + "advanced-rendering:real-time-ray-tracing:directx-ray-tracing": "qoIkw9o8iMx7MzUyVYoR2", + "advanced-rendering:real-time-ray-tracing:vulkan-ray-tracing": "tDGnV8dGIFr_diz4HcEjr", + "advanced-rendering:real-time-ray-tracing:optix": "GDLysy3__cbYidEaOmFze", + "advanced-rendering:physically-based-rendering": "XvFtMHrYsBREmuerE7CGc", + "advanced-rendering:physically-based-rendering:translucency-and-transparency": "H3hkafXO9zqEnWuwHa38P", + "advanced-rendering:physically-based-rendering:metallicity": "olY1ibR7kw1yJ58TfU-37", + "advanced-rendering:physically-based-rendering:microsurface-scattering": "YrQgfjsdLCIUxrwflpEHO" +} \ No newline at end of file diff --git a/src/lib/resource-progress.ts b/src/lib/resource-progress.ts index f49bab6a5..41b10f98f 100644 --- a/src/lib/resource-progress.ts +++ b/src/lib/resource-progress.ts @@ -99,6 +99,7 @@ export function clearMigratedRoadmapProgress( 'software-architect', 'cyber-security', 'ux-design', + 'game-developer', ]; if (!migratedRoadmaps.includes(resourceId)) {