Yes, but for something that works on materials, and not linked surfaces, it really is a problem. Even for what Daft originally stated: all the same velocity, for a material, like an animation. This only works with a directly vertical vector being applied to only vertical surfaces, or a horizontal vector to only horizontal surfaces. However, think from an editors point of view. If you're going to apply this to all surfaces with a material, are you going to want to have to try and figure out how it will translate to a particular surface depending on that surfaces orientation, and calculate it for every surface? I can't think of a case where one would want that 'problem', as it doesn't provide any sort of consistency between surfaces, and wouldn't look good. Take the simple example of a cube sector. Say you want the walls to scroll horizontally. To do it your way, you'd have to use two seperate mats, even if you want all the walls to look the same. If you just put one around the four walls, and used a directly horizontal vector for one of the walls, then two would move the same, and the other two wouldn't move at all. This isn't to say your code is bad zagibu, however, it's just not very useful in most practical applications. It's ok for Daft, because he's doing one of the two cases mentioned above; a vertical vector on only vertical surfaces. However, sliding all with the same 3d vector is more usable when you can individually select the surfaces, which isn't the case with a mat based surface scroller. I didn't mean to write this much, but I wanted to explain why it is a problem.
_ _ _____________ _ _
Wolf Moon
Cast Your Spell On Me
Beware
The Woods At Night
The Wolf Has Come