{ "FormatVersion": 3, "Id": "f61ceb9b-74f8-4883-88ea-7e6c35b63bbd"/*_BuildSpatialHashMap*/, "Description": "Building a spatial hashmap can be an important basis for complex simulations that require nearest neighbor search.\nThe implementation is based on work by Guillaume Boissé and involves multiple compute buffers and calculating an exclusive prefix sum.\n\nSome documentation can be found here: https://www.figma.com/file/wBNGUlaACjaCDOTdeBvBvR/ComputeShader-Ideas?node-id=8%3A0", "InputUis": [ { "InputId": "22f9737b-b3b4-4455-a4ec-8d61ab7abc6c"/*CellSize*/, "Position": { "X": 1585.6239, "Y": 1320.0493 }, "Min": 0.001, "Max": 100.0, "Scale": 0.01, "ClampMin": true, "ClampMax": true }, { "InputId": "4bae9eaa-42d8-4c1c-8776-3abebcce20e2"/*PointsA_*/, "Relevancy": "Required", "Position": { "X": 404.84814, "Y": 709.10516 } } ], "SymbolChildUis": [ { "ChildId": "02f136be-1912-45cb-98e9-4880f0b4bd86"/*Clear*/, "Position": { "X": 1413.1151, "Y": 903.26495 } }, { "ChildId": "083ec96e-a7b8-4f97-a203-15dd76b0ccba"/*Count*/, "Position": { "X": 1945.9032, "Y": 1161.2839 } }, { "ChildId": "13c5c5bc-55ec-48bc-b256-ad4443355808"/*GetBufferComponents*/, "Position": { "X": 554.84814, "Y": 709.10516 } }, { "ChildId": "178429cd-57d1-4a8e-a665-edfbb98f0c6a"/*CalcDispatchCount*/, "Position": { "X": 1725.6239, "Y": 1190.3373 } }, { "ChildId": "26b0a38e-2090-4c54-b545-ed73c919ea46"/*GetBufferComponents*/, "Position": { "X": 916.03735, "Y": 1965.1658 } }, { "ChildId": "2b30d631-991b-45f4-9a69-83ee8d590ced"/*GetBufferComponents*/, "Position": { "X": 916.03735, "Y": 1644.7163 } }, { "ChildId": "3f5444ce-9bc1-42c3-b0fa-cf3fe0507ea6"/*GetBufferComponents*/, "Position": { "X": 2062.473, "Y": 2313.0488 } }, { "ChildId": "5482af90-715e-44dd-a31e-f5e871a5b38f"/*CellEntries*/, "Position": { "X": 488.9499, "Y": 1008.4984 } }, { "ChildId": "57fd2baf-62cf-4ce4-a6ba-50473a0a7085"/*ParticleGridBuffer*/, "Position": { "X": 916.03735, "Y": 1609.7163 } }, { "ChildId": "8b1ad3df-5bd1-4945-b42e-e8dca5ad3580"/*PrefixSum*/, "Position": { "X": 1922.473, "Y": 2278.0486 } }, { "ChildId": "8e391859-097a-42f0-84cc-03521c79a51c"/*GetSRVProperties*/, "Position": { "X": 722.0831, "Y": 806.2484 } }, { "ChildId": "a7502316-2af6-4b82-8338-306610b856c5"/*MultiplyInt*/, "Position": { "X": 628.9499, "Y": 973.49835 } }, { "ChildId": "a9ae64e6-72a7-4d34-a8e8-7dbf818818a6"/*FloatsToBuffer*/, "Style": "Resizable", "Size": { "X": 110.86372, "Y": 44.69636 }, "Position": { "X": 1725.6239, "Y": 1285.0493 } }, { "ChildId": "b0ddf1e5-ba6f-446d-b877-5e504b9b8ebe"/*GetBufferComponents*/, "Position": { "X": 916.03735, "Y": 2133.0989 } }, { "ChildId": "b18f495f-d0b1-4a20-9795-4a37f436f756"/*ComputeShader*/, "Position": { "X": 1585.6239, "Y": 1155.3373 } }, { "ChildId": "b28ef13f-9b9f-4169-b334-98460c606f46"/*ParticleGridCountBuffer*/, "Position": { "X": 916.03735, "Y": 2098.0989 } }, { "ChildId": "ba25d171-0086-470a-8334-836b130e1c2d"/*CalcDispatchCount*/, "Position": { "X": 2230.7056, "Y": 1483.8842 } }, { "ChildId": "baf5d18a-e410-4287-a630-433358ce0314"/*Execute*/, "Style": "Resizable", "Size": { "X": 110.0, "Y": 490.9287 }, "Position": { "X": 2709.0825, "Y": 1007.9415 } }, { "ChildId": "c60af93b-1472-4dae-85de-df3b44e30272"/*ScatterParticlesInCells*/, "Position": { "X": 2440.9614, "Y": 1460.5917 } }, { "ChildId": "c7f781c4-aa85-464d-a629-73f371ed0469"/*GetBufferComponents*/, "Position": { "X": 916.03735, "Y": 1803.2943 } }, { "ChildId": "c8f75754-6036-4404-b8cc-d08be7a6a01e"/*ParticleGridCellBuffer*/, "Position": { "X": 916.03735, "Y": 1768.2943 } }, { "ChildId": "ceb9ec75-8a5c-4c1f-9bce-8db80a108abb"/*CalcDispatchCount*/, "Position": { "X": 1203.1113, "Y": 936.59515 } }, { "ChildId": "d6617889-06c7-4996-845f-7acc5158193a"/*ComputeShader*/, "Position": { "X": 1063.1113, "Y": 901.59515 } }, { "ChildId": "dda3dd38-1bad-4add-9a6d-0ef20847b0a6"/*FloatsToBuffer*/, "Style": "Resizable", "Size": { "X": 110.86372, "Y": 44.69636 }, "Position": { "X": 1203.1113, "Y": 1078.6514 } }, { "ChildId": "eb884c6d-8be0-4d52-9894-bdf0b3f5bdc3"/*CellCount*/, "Position": { "X": 488.9499, "Y": 973.49835 } }, { "ChildId": "ec614cbd-a7e8-478e-af89-edb3452f302c"/*FloatsToBuffer*/, "Style": "Resizable", "Size": { "X": 110.86372, "Y": 44.69636 }, "Position": { "X": 2230.7056, "Y": 1570.369 } }, { "ChildId": "f450b0c3-85da-493c-ad59-b9d624dfb13c"/*ParticleGridHashBuffer*/, "Position": { "X": 916.03735, "Y": 1930.1658 } }, { "ChildId": "f5cfa01d-25ab-4065-8308-0b71f08ef76b"/*ComputeShader*/, "Position": { "X": 2090.7056, "Y": 1448.8842 } } ], "OutputUis": [ { "OutputId": "13f0d2c2-a18b-457b-a3cf-cfd0c755b9a9"/*CellPointCounts*/, "Position": { "X": 1070.2051, "Y": 2133.7297 } }, { "OutputId": "6c026a5f-a724-4240-bb96-077d65266f66"/*PointCellIndices*/, "Position": { "X": 1099.8169, "Y": 1808.1682 } }, { "OutputId": "eeb282ee-ad73-471c-89ab-ae7cc8de6b15"/*CellRangeIndices*/, "Position": { "X": 2217.2283, "Y": 2315.2175 } }, { "OutputId": "b4505f1e-ab0e-45be-8e46-8e3b37ec59ec"/*CellPointIndices*/, "Position": { "X": 1203.3767, "Y": 1638.79 } }, { "OutputId": "fb96e3d2-9a0f-466a-9b1d-997a4aa3e625"/*HashGridCells*/, "Position": { "X": 1099.3984, "Y": 1968.3187 } }, { "OutputId": "59d09aa6-051c-4906-9f32-f65e66979c56"/*Update*/, "Position": { "X": 3749.775, "Y": 849.28375 } } ] }