Page 1 of 1

Phew... (getting there)

PostPosted: Mon Jul 14, 2008 8:46 am
by Karl G.
3 days and 1300+ lines of brand-new code later, I'm about 1/3 of the way to being able to load animated .X meshes. Now that the system's coming together, here's what it's going to sport:
  • Fully capable of using any skeleton-animated (basically all) .X mesh
  • Up to 4 blend weights per vertex
  • Takes full advantage of hardware, including using vertex shaders for super fast rendering on high-end hardware
  • Complete software support for older computers
  • Unlimited number of animations
  • fast, Fast, FAST! :D <-- I did a trial run of about 250 fully animated meshes before I noticed a drop from 60 FPS on my laptop


I should have this up-and-running by the end of the week. I look forward to being able to put some characters in this game :D

Re: Phew... (getting there)

PostPosted: Mon Jul 14, 2008 10:01 am
by Hatebreed
So awesome!

It has been a while since I posted, but I'm really getting excited now. I feel like a school girl again!

Re: Phew... (getting there)

PostPosted: Mon Jul 14, 2008 10:50 am
by Ashlar
excellent! It's been ages since i've posted but i check here daily to see what's happening. Good work! I'm defiantly stoked.

Re: Phew... (getting there)

PostPosted: Mon Jul 14, 2008 9:04 pm
by lawn gnome
Sounds sweet!

Karl G. wrote:fast, Fast, FAST! :D <-- I did a trial run of about 250 fully animated meshes before I noticed a drop from 60 FPS on my laptop


Well how much ram you got in it? My lappy only has 512mb.

Re: Phew... (getting there)

PostPosted: Tue Jul 15, 2008 7:24 am
by Karl G.
I have 2 GB of RAM, but the meshes don't take up that much memory. The rendering speed is really limited by the graphics card and the number of GB/s throughput to the card. Here's a rough estimate of how much memory this takes:

250 meshes
~35 bones/mesh type
100 mesh types
1 matrix/bone in mesh type
1 matrix/bone in instance
~ 15 matrices/bone in mesh animation
let's say there are 135 mesh animation types

this gives:

(15 * 135) matrices for animation + (1 * 35 * 100) matrices for mesh types + (1 * 35 * 250) matrices for mesh instances
= 2025 + 3500 + 8750 = 14275 matrices (upper limit)

4 * 4 * 4 bytes/matrix = 64 bytes / matrix
= 913600 bytes for meshes

or about 1 MB (accounting for extra data) to hold almost as many meshes as you could ever want :)

Re: Phew... (getting there)

PostPosted: Sat Jul 19, 2008 9:59 am
by speed3b
Sounds extremely efficient! Good work!

Re: Phew... (getting there)

PostPosted: Sat Jul 19, 2008 1:40 pm
by figgles
Karl,

Congrats on the animation system! It looks like things are coming along for you. Do you need an SSE implementation of software skinning? I happen to have one that I wrote a while ago. It's about 29x faster than the standard x87 FPU and requires a Pentium-III or better.

Patrick Baggett
baggett.patrick@figglesoftware.com

Re: Phew... (getting there)

PostPosted: Sat Jul 19, 2008 5:02 pm
by Karl G.
Hey Patrick,

Thanks for the offer--I'd love to have a look at the code! Send me an email (karlgluck@gmail.com) and we can chat about it.

Look forward to hearing from you.