Sunday, October 2, 2011

Holding off a bit

If you couldn't tell from my posts, or rather lack thereof: I'm getting swamped in all kinds of work, and October doesn't look like it's going to be any different.

I've almost finished the animator, but I still have the assembler to give a makeover.

So until I can get some more free time, I won't be able to work on it. Sorry, guys.

Friday, September 16, 2011

A Little Preview

Here's how the current engine looks

It contains a .gm81 editable and an .exe

It shows the simple little walk animation presented in the first video I showed you guys (It's the only one that's survived the format changes since then).

Anyway, how does that look for you guys. And what other features would you like to see?

Wednesday, September 14, 2011

Schedule Prioritzing

Alright. Since I'm getting pretty busy, my posts have been pretty far apart. But don't worry, I'm still working on the animator and it's making progress.

So instead, I'll try to make small posts and include images.

I've added new GUI functions
  • Clear Rotations
  • Clear Offsets
  • Animation Preview
I've also fixed tweening so it uses SLERP and no longer needs the "Turn" rotation to make smooth rotations. (Efficiency +1)
Onion Skin enabled Animation preview

You can now also group rotations so that the children parts rotate with it.

Tuesday, September 6, 2011

Mapping

Alright. I managed to get back to it for a little while and now I'm starting to wrap this new GUI onto the previous animator, but I still probably won't have a lot of time. And you can also select parts by clicking them (still a little buggy).

Thursday, August 25, 2011

Setbacks

Hmm. Well, I have to say that school and work have started to eat away at the time. Lately I haven't had much time to do anything.

In fact, since the video has been posted, all I've been able to do is fix the rotators (again, yes I manage to keep breaking it. And it's STILL not 100% accurate, but it's pretty darn close).

I'll try to work on this as much as time allows, though.

Monday, August 22, 2011

Another video for you

This video demonstrates the new GUI in progress for the animator.

Sunday, August 14, 2011

Wrapping up

I believe I have this GUI thing down. I've finished all of the dialogue window types for the most part.

As of right now I'm still trying to get this 3-ring rotation gadget to work properly. This is a rather empty post, but I assure you a lot has been accomplished. I'll release screenshots in my next post, and then hopefully I can have it augmented into the Model Manipulator (Oh. So that's what this blog is about. It's been a while since I've touched the subject.)

EDIT: Ah. Found the error in the rotators. They're a little closer to being completed but also, in other stuff:

How would you like to contribute to this project? Do you have any spare .OBJ models laying around? Or do you feel like just making some for the fun of it? Well, if so. It would be very appreciated if you would allow me to package them with the Model Manipulator. I, personally, won't use them, but when the time comes when I release it, it will allow new users to get used to it without going through the mess of setting up their own models.

If you have any models you'd like to share: PM me at the GMC, Post here with a comment, or Email me. Thank you.

Wednesday, August 10, 2011

Messages and Rotations and Loops, Oh MY

I've been cranking out some more GUI features, not only is there a menu bar, but I've been working on a message box system ( still early work-in-progress, I'm meaning to add buttons to the bottom of the message ), and yet ANOTHER way to work with rotations, because I don't think anyone would like the number-crunching method that was used in the beginning.

So yeah. That's the message box, and it's covering up the rotation rings. Rotation rings are pretty close to done, but the algorithm used to calculate the way you should drag your mouse across the ring only works half the time. I'm not entirely sure how I'm going to fix it, but it isn't all too distracting, so it's not that high of a priority.

I'm sure I'm forgetting to mention something else, but I'm far too tired to be concerned.

Jon out.

Saturday, August 6, 2011

Crazy over GUI

(Hehe. A reference to banov.)
Anyway. I decided to take a crack at at least starting to get some of this stuff down for now. As of the moment, I have made a system that draws buttons( Really customizable and cool buttons ) and a menu bar.

I'm going to be nice today, because it's been a really good day today. Here's the script to make your very own Jon Buttons
(EDIT: Sorry about that, but that script required another script of mine I forgot to include. But now you should be able to use it.)
They could look like this.

Wednesday, August 3, 2011

GMC Jam #3

Side tracked (again), this time with the GMC Jam. So those three days were poured into making my entry. I'm not going to link to it, but it's not too hard to find.

I also have another small camp, but it shouldn't take too much of my time away.

Friday, July 29, 2011

Quaternions

If you've ever asked for help on the GMC for 3d rotations, you've probably heard that word. But in my experience, noone has ever really explained them to me, so I never took what they have said at face value. Which is too bad for me, because after doing a little research on my own time, I've found that they are Awesome. I'm not going to write a tutorial in my dev blog, but I'll gladly explain elsewhere (comments section, maybe?) if needed.

I will however provide these three awesome links that helped me out a lot.
http://www.flipcode.com/documents/matrfaq.html
http://www.cprogramming.com/tutorial/3d/quaternions.html
http://www.gpwiki.org/index.php/OpenGL:Tutorials:Using_Quaternions_to_represent_rotation

Anyway, what have I done with quaternions? I have used them to create rotations that can manipulated on the screen with your mouse. The functions are almost completed, but sometimes the original mouse position is forgotten and returning the mouse to it doesn't result with the starting rotation.

With Quaternions I should also be able to merge the turn rotation into the main rotation at compile time, so that's another optimization I should note.

After this, I'll try to incorporate clicking separate parts on the screen to select them, and maybe then I'll be able to redo the GUI (I'm looking forward to it).

Tuesday, July 26, 2011

I'm Back

Wow. I can't believe it's been 3 paychecks since my last post. I'm sorry for the inactivity, but I'm back from Robotics Camp. I had fun, but this isn't what this blog is for. This for SERIOUS BUSINESS.

And I'm all for serious business right now.

So my plans right now are to implement the ideas and fixes I thought about before my leave, but also... To completely overhaul the GUI for the animator and skeleton creator. I'm hoping to have menu bars, scrollwheel support, and more interactivity with the field. As in: I'm hoping that I can implement clicking on the parts to choose them or rotating/moving them by dragging the mouse on the screen.

Once again, sorry for the long wait.

In other news, whoever marked all of the posts as "That's Dumb": I'll have you know that I take that very seriously* and to tell you the truth, it really ruined my day**.

*I don't.
**It didn't.

Tuesday, July 5, 2011

Progress is Slow. Period.

I'm probably not going to have much time to work on this project over the next week or so, I have a summer camp to go to and then there's work.

Hmmm...

Not good at all.

Thursday, June 30, 2011

Progress is Slow, kind of.

Over the past 5 days a lot of the changes have been small. I don't have any fancy screenshots to show off, but currently, I'm rethinking certain aspects of the animation engine's core. I've notice that there are further optimizations that I've yet to tap into, and key features I neglected to add.

So I'm afraid to say I'm going to back-pedal a bit before adding anything new.

Sunday, June 26, 2011

Managed to Get a Video


Not the best, but here's the animator showing a primitive walk cycle I pulled together in about 15 minutes.

Saturday, June 25, 2011

Not Much to Say

I've been messing around with the terrain engine. It's a good thing too, as I've squashed a few big bugs and brought light to new ones.

One of the bugs was that it wouldn't be able to show terrains with more than 1000 or so polygons. No errors given, it would just stop. But now it is fixed and can support models up to 63368 polygons per ground id.

As another bug I've noticed is that it sometimes the left most side of the ground sometimes gets creased when loading heightmaps and it is very noticeable when smoothing.

No Pictures.

Wednesday, June 22, 2011

Progress on Terrain

It's been a while since my last post. I think I was a tad bit aggressive previously with how often I posted.

Anyway, I have fixed normal calulating and smoothing the mesh. Now, not only does it support random terrain but height maps as well. Just paint the terrain on an image and import it.

Here's how height mapping looks:
The input
Perspective from ground
Viewed from the air

But it hasn't always worked that smooth...
: (
Anyway that's all for now. I'll have to think of what to do now.

In other news: .....the adapter has not come in yet.....

Friday, June 17, 2011

Nothing but Bad.

So I was out shopping for supplies for this game. I had two things to get: a decent microphone so I could record sounds, and a mannequin that I could use to plan out poses in the animator.
After driving around four stores I found a little $10 mannequin (I didn't expect finding one) and bought it. Then I found a $40 microphone and I bought that. I then took everything home and opened my spoils to find... The microphone had a 1/4" cable.

F**k.

They should really say these things on the box. All I got before purchase was a picture of the microphone and its cable (which on the picture looked 1/8").
I hoped it wasn't too much of a problem so I went and  I ordered an adapter for it on Amazon, but Friday is a horrible day to order anything online. It probably won't come in for another 1-2 weeks.
Well. At least the microphone problem is dealt with: It's just a matter of waiting.

So then I decided to open the case to my mannequin, only to find out that the legs don't rotate. Cool. That's exactly what I did not want. I think I'm going to have to break off his legs and do something that would allow them to rotate. Maybe something involving Velcro.

In other news: Height checking has been fixed. Normals and smoothing: Not so much.

Wednesday, June 15, 2011

Terrain Engine

Alright. I haven't been able to work on it much for the past two days but I've started on a random terrain generator so I could build the Terrain Engine on top of it. But I've also been running into a couple of problems. It can read the height when I isolate the positions to either X or Y but it jumps erratically when I join them. Which is not the effect I'm going for.

Anyway, not much to say for this post, but hopefully I'll have things going by next post.

Monday, June 13, 2011

The 3D Skeleton Animator

This is where the magic happens. Right as I'm typing this, I'm finishing it up and squashing the bugs.
Model shown with applied stretching

This program takes what we finished in the other program and adds some motion. You edit each part over the frames by editing the rotation vector and how much it should be rotated by, there's also another localz rotation (called turn) that allows for smoother tweens.
Tween Window shown with momentum tween with alterations



Speaking of Tweens: the tweening in this program is incredibly powerful and customizable. There are four built-in algorithms (linear,exponential,logarithmic,momentum) which you can add and even then you can physically alter the tween graph.
It also comes with other functions and doohickeys, like:
Onion Skin enabled animation
  • Remapping Skeletons
  • Onion Skins
  • Flipping
  • Animation loops
  • Skeleton Offset
  • Adding Animations
  • Splitting Animations
  • Split Tweening
And once you've finished making the animation, you can compile which adds the animations, skeleton class, and the components to growing pool of game resources.

Frame selection expanded

I'm quite happy with it. Even though the interfaces between the programs aren't the greatest, I'm proud of the accomplishments made under the hood.
I think maybe the next post will involve the game engine, but as of writing this, I haven't started, yet.




It's come a long way.

Saturday, June 11, 2011

The 3D Skeleton Assembler



Yes. It's a 3D game. But I haven't started on the 'game' yet, but rather I've been working on the things I would need.

(Click for a larger image)

I thought I might as well describe a program I've made to help in the process. It doesn't really have a name, but the title "The 3D Skeleton Assembler" seems apt as that is exactly what it does. You import models and assign them their parents. Then you also input their offset and they rotate around that point of the parent. You can also change the origin of the model itself if it is incorrect in the model file.

On the left there is a scroll list that shows you all of the parts of the skeletons. There are buttons to delete the part, change the model file of the part, scale the model, flip the model, and to reverse the winding order of the model.

Once you've gotten the configurations down to how you want, you save the assembled model file and stores its unique skeleton class id if it is a new class.

Tune in next time to see where we go next with the file.

The Beginning

Hey guys. Jon here.
Hopefully in time this blog will be filled with progress on the development of my current project in GM.
At the moment there isn't much but a template and an introduction.