Krash
9th March 2002, 12:29
After generating the mobile motionvector template (which has since been fiddle with and used to great effect by Rovastar), I've been thinking the way that the vectors work might be changed.
Currently, when the number of motion vectors is between 0 and 1, you have no vectors at all. Once the value hits 1, you get a single vector. Greater than one, and the vector moves to the left (or down, if you're talking about mv_y), until it gets to 2, and the second vector appears.
Using this method, it is impossible to get a single vector anywhere in quadrants 1, 2, or 4 (if you don't know what I mean by that, don't worry).
I suggest a different way of doing it.
mv_x = 0 - no vectors.
mv_x = 0.001 - one vector, on the extreme right (or left) of the screen
mv_x = 0.001 to 0.5 - vector moves across the screen, until it reaches the center at 0.5
mv_x = 0.501 to 1 - vector continues moving to get to other side of the screen.
mv_x = 1.001 - second vector appears at opposite side of screen
mv_x = 1.001 to 2 - two vectors converge on the center of the screen, until at mv_x = 2, it looks the same as mv_x = 0.5.
mv_x = 2.001 - the two vectors at the center become a single vector, and we get two more vectors at the edges, which converge.
mv_x = 3 - the two vectors have reached the center - looks like just one vector again.
mv_x = 3.001 - two more vectors appear at the edges, and begin converging. The single vector at the center separates, so now we have four vectors. At mv_x = 3.5, the vectors are evenly spaced, and at mv_x = 4, the two pairs on either side have reached each other, so it looks like just two, evenly spaced.
The pattern would continue on.
I hope what I've said makes sense - it would work, and I've followed the logic through pretty well, but I wouldn't want to try to code it.
- Krash
Currently, when the number of motion vectors is between 0 and 1, you have no vectors at all. Once the value hits 1, you get a single vector. Greater than one, and the vector moves to the left (or down, if you're talking about mv_y), until it gets to 2, and the second vector appears.
Using this method, it is impossible to get a single vector anywhere in quadrants 1, 2, or 4 (if you don't know what I mean by that, don't worry).
I suggest a different way of doing it.
mv_x = 0 - no vectors.
mv_x = 0.001 - one vector, on the extreme right (or left) of the screen
mv_x = 0.001 to 0.5 - vector moves across the screen, until it reaches the center at 0.5
mv_x = 0.501 to 1 - vector continues moving to get to other side of the screen.
mv_x = 1.001 - second vector appears at opposite side of screen
mv_x = 1.001 to 2 - two vectors converge on the center of the screen, until at mv_x = 2, it looks the same as mv_x = 0.5.
mv_x = 2.001 - the two vectors at the center become a single vector, and we get two more vectors at the edges, which converge.
mv_x = 3 - the two vectors have reached the center - looks like just one vector again.
mv_x = 3.001 - two more vectors appear at the edges, and begin converging. The single vector at the center separates, so now we have four vectors. At mv_x = 3.5, the vectors are evenly spaced, and at mv_x = 4, the two pairs on either side have reached each other, so it looks like just two, evenly spaced.
The pattern would continue on.
I hope what I've said makes sense - it would work, and I've followed the logic through pretty well, but I wouldn't want to try to code it.
- Krash