I created a simple animation today using some of the tools I've created for this application. Some of this is prerendered .pngs, but some of it isn't. Can you guess which parts is which?
Wednesday, July 23, 2014
Saturday, July 19, 2014
Miter Joint
Good noon!
I decided it's better to draw each curve's outline separately rather than together as one giant polygon. This fixed some of the inside-out holes that were appearing in the mouth test from yesterday. Because of this, I am also restricting myself to calculating and drawing the outlines of corners separately as well. This works great for convex corners! Check it out:
I'm emulating the Miter Joint from this article which basically tries to create a sharp corner or otherwise creates a squared corner if the sharp part would exceed the Miter Limit, which is defined by the user. What's cool is I can also use these points that are being calculated for these corners to create another bezier curve, meaning I can make rounded corners if I want to.
Now the tricky part is going to be figuring out how to do concave corners. I have to make it so the two curves that share that corner don't render in parts that exist past the opposite curve's boundary. I have no clue where to start with this, but I'll keep it in mind for later.
I decided it's better to draw each curve's outline separately rather than together as one giant polygon. This fixed some of the inside-out holes that were appearing in the mouth test from yesterday. Because of this, I am also restricting myself to calculating and drawing the outlines of corners separately as well. This works great for convex corners! Check it out:
I'm emulating the Miter Joint from this article which basically tries to create a sharp corner or otherwise creates a squared corner if the sharp part would exceed the Miter Limit, which is defined by the user. What's cool is I can also use these points that are being calculated for these corners to create another bezier curve, meaning I can make rounded corners if I want to.
Now the tricky part is going to be figuring out how to do concave corners. I have to make it so the two curves that share that corner don't render in parts that exist past the opposite curve's boundary. I have no clue where to start with this, but I'll keep it in mind for later.
Friday, July 18, 2014
Mouth... oops!
Today I tried focusing on how to combine primitives. I don't believe I've mentioned about primitives before, but a primitive is a shape composed of a list of points and a list of curves that may or may not be closed. Right now I have a primitive for the shape of the mouth, the head, and the shape of the muzzle.
I've loaded all three of these into a test application and did some complicated math stuff to combine both the mouth primitive and the muzzle primitive into one shape (after modifying them as needed). It was way trickier than I had expected - it isn't user-friendly in the slightest. Not to mention, I now have another problem to deal with - how to fix this terrible looking outline.
This combination technique needs a lot of work. I suspect the easiest thing to do is to use a skew transformations to simplify some of the stuff I did to create this mouth moving effect. After that, I'll need to find a way to fix the outline, probably doing some jointed corners, but I'm not sure yet.
EDIT: Actually, I think they may be using masking techniques to create the gap where the mouth is. The mouth is likely not even connected to the muzzle at all. I'll have to figure something else out to get that to work.
I've loaded all three of these into a test application and did some complicated math stuff to combine both the mouth primitive and the muzzle primitive into one shape (after modifying them as needed). It was way trickier than I had expected - it isn't user-friendly in the slightest. Not to mention, I now have another problem to deal with - how to fix this terrible looking outline.
This combination technique needs a lot of work. I suspect the easiest thing to do is to use a skew transformations to simplify some of the stuff I did to create this mouth moving effect. After that, I'll need to find a way to fix the outline, probably doing some jointed corners, but I'm not sure yet.
EDIT: Actually, I think they may be using masking techniques to create the gap where the mouth is. The mouth is likely not even connected to the muzzle at all. I'll have to figure something else out to get that to work.
Thursday, July 17, 2014
Paintpath
Today I tested out some ideas for how certain
outlines are created, specifically the type that follows a bezier curve
and only shows on one side of it. Here's a picture.
Now this is only one type of outline that is used in the show. I still need to create a version of this for the cases when sharp corners exist (jointed corners).
Now this is only one type of outline that is used in the show. I still need to create a version of this for the cases when sharp corners exist (jointed corners).
First Post!
Hello!
Ok, so to start off, I'd like to mention that I never know if I'll actually finish this project. In truth, I rarely finish anything since I often get sidetracked with life or ideas for other projects. That being said, if you really REALLY want this application to be finished, please message me (but don't email me 'cause I never check my email). I'm sadly so ADHD that I sometimes need other people's help to push me back in the right direction.
So at this point in development, I will not be working on the editor itself first. Instead, I'm going to create simple, stand-alone experimental test first, testing out each individual part that will need to be eventually added to the editor in the end. The reason I'm doing this is because I'm not sure yet what all I'll need in the editor, nor how I'll want to structure it.
So for now, enjoy the frequent posts on the tests I'll be working on.
Ok, so to start off, I'd like to mention that I never know if I'll actually finish this project. In truth, I rarely finish anything since I often get sidetracked with life or ideas for other projects. That being said, if you really REALLY want this application to be finished, please message me (but don't email me 'cause I never check my email). I'm sadly so ADHD that I sometimes need other people's help to push me back in the right direction.
So at this point in development, I will not be working on the editor itself first. Instead, I'm going to create simple, stand-alone experimental test first, testing out each individual part that will need to be eventually added to the editor in the end. The reason I'm doing this is because I'm not sure yet what all I'll need in the editor, nor how I'll want to structure it.
So for now, enjoy the frequent posts on the tests I'll be working on.
Subscribe to:
Posts (Atom)