So, recently I've been working on a Scratch clone for the CE. Right now I only have basic block rendering done:
yes, I am aware that that's slightly off center. I'll fix that as soon as I finish this post
I'm actually basing the language itself off UC Berkeley's Snap! programming language, which supports all of Scratch's features but also includes advanced functionality such as first class lists.
Right now I have the block format worked out, and can render blocks, predicates (Boolean blocks), block text, string literals, and Boolean literals. I still need to implement rendering for hat ("on") blocks, reporters (round blocks), custom block definitions, Snap's rings, C blocks, argument lists, float literals, and variables.
As for speed, this example with 15 levels of nesting runs at 20FPS:
Of course, none of these blocks actually do anything yet - I still need to implement actual functionality, as well as the editor.
yes, I am aware that that's slightly off center. I'll fix that as soon as I finish this post
I'm actually basing the language itself off UC Berkeley's Snap! programming language, which supports all of Scratch's features but also includes advanced functionality such as first class lists.
Right now I have the block format worked out, and can render blocks, predicates (Boolean blocks), block text, string literals, and Boolean literals. I still need to implement rendering for hat ("on") blocks, reporters (round blocks), custom block definitions, Snap's rings, C blocks, argument lists, float literals, and variables.
As for speed, this example with 15 levels of nesting runs at 20FPS:
Of course, none of these blocks actually do anything yet - I still need to implement actual functionality, as well as the editor.