Part of some code that someone (oops can't remember who now :S) wrote for me on here was a vertex deformation thing. It involved storing the vertex coords in a little array matrix before manipulating them in turn.
However, I wanted to pull the deform code out into a separate function which means the Array is re-DIMmed in the function because its dimensions are dependant on the surface's number of verts I think.
I added a preliminary Dim statement in the main program, but either receive an "Expected )" error if I just try to add to the array in the function, or a "Duplicate Identifier" error if I re-Dim within the function.
Is it possible to re-Dim within a function?
Here's the relevant bits of the function code:
However, I wanted to pull the deform code out into a separate function which means the Array is re-DIMmed in the function because its dimensions are dependant on the surface's number of verts I think.
I added a preliminary Dim statement in the main program, but either receive an "Expected )" error if I just try to add to the array in the function, or a "Duplicate Identifier" error if I re-Dim within the function.
Is it possible to re-Dim within a function?
Here's the relevant bits of the function code:
Dim VertexMatrix#(CountVertices(CurrentSurface)-1,3) For CurrentVert=0 To CountVertices(CurrentSurface)-1 Debug("DISTORT MESH","CHECKING COORDS FOR MESH: "+Mesh+" SURFACE: "+CurrentSurface+" VERTEX: "+CurrentVert) VertexMatrix#(CurrentVert,0)=VertexX(CurrentSurface,CurrentVert) VertexMatrix#(CurrentVert,1)=VertexY(CurrentSurface,CurrentVert) VertexMatrix#(CurrentVert,2)=VertexZ(CurrentSurface,CurrentVert) VertexMatrix#(CurrentVert,3)=0