I think it would be nice if there was a way to make a sprite move along a path. Such would allow smoother curves. Submit your thoughts about it here!
Offline
I agree that motion paths are useful for animation. I've used them in flash. I think one reason we have not considered them much for scratch is that they are actually quite complicated to use. My first guess is that it would be hard to design a user interface for this that would be simple enough and easy to use. Do you have any suggestions for how to make a really simple interface for creating motion paths?
Offline
ericr wrote:
I agree that motion paths are useful for animation. I've used them in flash. I think one reason we have not considered them much for scratch is that they are actually quite complicated to use. My first guess is that it would be hard to design a user interface for this that would be simple enough and easy to use. Do you have any suggestions for how to make a really simple interface for creating motion paths?
No. I've not been a member that long.
Offline
You can actually use that in 1.3 lists
Simply make a script that records all of the sprite's x and y positions every milliseconds in 2 lists, move the sprite and let the lists record it, and make the sprite goto those positions.
Last edited by Rukqo (2008-10-09 17:22:44)
Offline
Rukqo wrote:
You can actually use that in 1.3 lists
Simply make a script that records all of the sprite's x and y positions every milliseconds in 2 lists, move the sprite and let the lists record it, and make the sprite goto those positions.
What happens if I want a smooth squiggle. How many million x-y positions, again?
Offline
well, depends on how much and long you want to move, but as long as the list doesn't exceed 10mb, scratch can handle it.
Here's the script if you want to know:
1. Set up 2 lists: x and y, hide them when you're done. Set up a variable: var1
2. Put this script on your zigzag object, also click the lock to make your sprite draggable
when flag clicked
delete [all] of [x]
delete [all] of [y]
reset timer
if [timer<the time amount of time you want to move the sprite]
add <x position> to list [x]
add <y position> to list [y]
else
stop all
3. Go into present mode and click the green flag. start dragging your sprite around. when you make a mistake, click the green flag and start again.
4. Delete the above script (2).
5. Add this script to your sprite
when flag clicked
set [var1] to 0
forever
set <x position> to list {item [var1] of [x]}
set <y position> to list {item [var1] of [y]}
change [var1] by (1)
6. This should do the trick.
Offline
Rukqo wrote:
well, depends on how much and long you want to move, but as long as the list doesn't exceed 10mb, scratch can handle it.
Here's the script if you want to know:
1. Set up 2 lists: x and y, hide them when you're done. Set up a variable: var1
2. Put this script on your zigzag object, also click the lock to make your sprite draggable
when flag clicked
delete [all] of [x]
delete [all] of [y]
reset timer
if [timer<the time amount of time you want to move the sprite]
add <x position> to list [x]
add <y position> to list [y]
else
stop all
3. Go into present mode and click the green flag. start dragging your sprite around. when you make a mistake, click the green flag and start again.
4. Delete the above script (2).
5. Add this script to your sprite
when flag clicked
set [var1] to 0
forever
set <x position> to list {item [var1] of [x]}
set <y position> to list {item [var1] of [y]}
change [var1] by (1)
6. This should do the trick.
Personally, I think that there could be something somewhat like what there is in powerpoint, a dotted, drawable line that the sprite would follow that wouldn't show up online or otherwise when the project was playing. It would be much easier and far less time consuming than the above process.
Last edited by Cat_Animator (2008-11-02 21:20:39)
Offline
Cat_Animator wrote:
Personally, I think that there could be something somewhat like what there is in powerpoint, a dotted, drawable line that the sprite would follow that wouldn't show up online or otherwise when the project was playing. It would be much easier and far less time consuming than the above process.
That's basically what I was thinking of when I made this. But how would we do it? I guess that's for the Scratch team to figure out... It also might be good to be able to name them so there can be many of them.
Offline
mulus_equum_amat wrote:
Rukqo wrote:
You can actually use that in 1.3 lists
Simply make a script that records all of the sprite's x and y positions every milliseconds in 2 lists, move the sprite and let the lists record it, and make the sprite goto those positions.What happens if I want a smooth squiggle. How many million x-y positions, again?
<forever>
<repeat( a
<change x by( b
<change y by( c
<end>
<repeat( a
<change x by( b
<change y by((( -1 <*> c ))
<end>
<end>
Offline
mabye it can be made as a sprite. Somewhere in the sprite costume creator (when the sprite is made) there could be a option to make it a motion path, or a normal sprite. Using this method will aslo make things such as Text boxes possible, and possibly even make your own variable- much like in flash. (obviousally, sprite will always be the defult option). things that can be done with this method: Sprite (such as what is the norm now) Motion path (as suggested above) Entery textbox ( a textbox that can be typed ino once the projectis playing, for uses like usernames ect...) variable textbox (a textbox that contains a variable. The fonts, size, decorations ect... will be displayed but with the variable's value). For now these are the only ones i could think of.
Hope you can improve on my idea
Offline
yambanshee wrote:
mabye it can be made as a sprite. Somewhere in the sprite costume creator (when the sprite is made) there could be a option to make it a motion path, or a normal sprite. Using this method will aslo make things such as Text boxes possible, and possibly even make your own variable- much like in flash. (obviousally, sprite will always be the defult option). things that can be done with this method: Sprite (such as what is the norm now) Motion path (as suggested above) Entery textbox ( a textbox that can be typed ino once the projectis playing, for uses like usernames ect...) variable textbox (a textbox that contains a variable. The fonts, size, decorations ect... will be displayed but with the variable's value). For now these are the only ones i could think of.
Hope you can improve on my idea
True, but I think that there could simply be, as I said, a block option to follow a pen-like line. The others could also be done with blocks and , say, a drawn textbox, such as in Microsoft Paint.
Last edited by Cat_Animator (2008-11-14 19:08:01)
Offline
Cat_Animator wrote:
yambanshee wrote:
mabye it can be made as a sprite. Somewhere in the sprite costume creator (when the sprite is made) there could be a option to make it a motion path, or a normal sprite. Using this method will aslo make things such as Text boxes possible, and possibly even make your own variable- much like in flash. (obviousally, sprite will always be the defult option). things that can be done with this method: Sprite (such as what is the norm now) Motion path (as suggested above) Entery textbox ( a textbox that can be typed ino once the projectis playing, for uses like usernames ect...) variable textbox (a textbox that contains a variable. The fonts, size, decorations ect... will be displayed but with the variable's value). For now these are the only ones i could think of.
Hope you can improve on my ideaTrue, but I think that there could simply be, as I said, a block option to follow a pen-like line. The others could also be done with blocks and , say, a drawn textbox, such as in Microsoft Paint.
true, but pen lines can be seen
Offline
yambanshee wrote:
Cat_Animator wrote:
yambanshee wrote:
mabye it can be made as a sprite. Somewhere in the sprite costume creator (when the sprite is made) there could be a option to make it a motion path, or a normal sprite. Using this method will aslo make things such as Text boxes possible, and possibly even make your own variable- much like in flash. (obviousally, sprite will always be the defult option). things that can be done with this method: Sprite (such as what is the norm now) Motion path (as suggested above) Entery textbox ( a textbox that can be typed ino once the projectis playing, for uses like usernames ect...) variable textbox (a textbox that contains a variable. The fonts, size, decorations ect... will be displayed but with the variable's value). For now these are the only ones i could think of.
Hope you can improve on my ideaTrue, but I think that there could simply be, as I said, a block option to follow a pen-like line. The others could also be done with blocks and , say, a drawn textbox, such as in Microsoft Paint.
true, but pen lines can be seen
Yes, but what if it were made so that they couldn't be seen when the program was run? Or perhaps an option whether or not they are shown or hidden?
Offline
I have a *cough cough* "better" idea.
Why don't you try and make it where:
there's a block that says:
go along {path} for [] secs
(the {path} is a button)
when {path} is clicked, you go to the "Path editor" section.
Inside said editor, you can add points, change type of path, and so on and so forth.
Sorta like the Vectorworks curve tool, if you've ever used it.
Offline
boinoinoi wrote:
I have a *cough cough* "better" idea.
Why don't you try and make it where:
there's a block that says:
go along {path} for [] secs
(the {path} is a button)
when {path} is clicked, you go to the "Path editor" section.
Inside said editor, you can add points, change type of path, and so on and so forth.
Sorta like the Vectorworks curve tool, if you've ever used it.
Great idea! Now we're getting somewhere!
Offline
boinoinoi wrote:
I have a *cough cough* "better" idea.
Why don't you try and make it where:
there's a block that says:
go along {path} for [] secs
(the {path} is a button)
when {path} is clicked, you go to the "Path editor" section.
Inside said editor, you can add points, change type of path, and so on and so forth.
Sorta like the Vectorworks curve tool, if you've ever used it.
and you can make a number of diffrent paths and give them all uniqe names that can induvidually be selected! and paths can also be made using the pen tool!
Offline
yambanshee wrote:
boinoinoi wrote:
I have a *cough cough* "better" idea.
Why don't you try and make it where:
there's a block that says:
go along {path} for [] secs
(the {path} is a button)
when {path} is clicked, you go to the "Path editor" section.
Inside said editor, you can add points, change type of path, and so on and so forth.
Sorta like the Vectorworks curve tool, if you've ever used it.and you can make a number of diffrent paths and give them all uniqe names that can induvidually be selected! and paths can also be made using the pen tool!
Perfect! The rest is up to the Scratch Team ( if they like the idea). I wish there was something we could do to help...
Offline
yea, mabye help them out with layout, more details about how to use, helpig them make it ect...
Offline
ive used gamemaker a little bit and from what i remember it was quite easy to add a path, you pretty much chose like a curve or a line and then you made as many points as you wanted, every click of the mouse locked in the previous selection and made an angle. so if they made it like that it would be very easy
Offline
yambanshee wrote:
yea, mabye help them out with layout, more details about how to use, helpig them make it ect...
One of my most prominent suggestions about my suggestion is that they are all open to interpretation.
(Hmm, maybe I should add that to mah sig.)
Offline