<div dir="ltr"><div dir="ltr">Here is the full implementation of aligned arrays, let me know if it works for you.<div><br></div><div><a href="https://www.getlazarus.org/arrays/">https://www.getlazarus.org/arrays/</a><br></div><div><br></div><div>Here is another example:</div><div><br></div><div><font face="monospace, monospace">uses</font></div><div><font face="monospace, monospace">  AlignArrays;</font></div><div><font face="monospace, monospace"><br></font></div><div><font face="monospace, monospace">procedure Test;</font></div><div><font face="monospace, monospace">var<br></font></div><div><font face="monospace, monospace">  VertexData: TAlignedArray<TVec3>;</font></div><div><font face="monospace, monospace">  V: PVec3;</font></div><div><font face="monospace, monospace">  I: Integer;</font></div><div><font face="monospace, monospace">begin</font></div><div><font face="monospace, monospace">  VertexData.Length := 100; // page sized and aligned memory allocated here</font></div><div><font face="monospace, monospace">  V := VertexData[0]; // get a reference to the first item</font></div><div><font face="monospace, monospace">  for I := 0 to V.Length - 1 do</font></div><div><font face="monospace, monospace">  begin</font></div><div><font face="monospace, monospace">    V^ := ComputeVertex(I); // write to vertex data faster via a pointer<br></font></div><div><font face="monospace, monospace">    Inc(V);</font></div><div><font face="monospace, monospace">  end;</font></div><div><font face="monospace, monospace">  for V in VertexData do // array like enumerators are supported</font></div><div><font face="monospace, monospace">    PrintVertex(V);</font></div><div><font face="monospace, monospace">  V.Item[6] := ComputeVertex(Random(100)); // you can write directly using this syntax</font></div><div><font face="monospace, monospace">  V[7]^ := ComputeVertex(Random(100)); // or write by dereferencing  the default indexer</font></div><div><font face="monospace, monospace">end; // there is no need to free the memory, it is taken care of for you by finalize</font></div><div><br></div></div></div>