Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

Pseudo

DX9 is 50% complete

This topic is 5218 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

How is it possible, over a year after it came out, that dx9 is still a half assed api? The docs suck. The animation code d3dx appears to be half done...with no explination of how to use it. The sample programs are way to basic. They dont show how to do anything interesting!!! For example...does anyone know if an AnimationSet actually contains more than one animation? It appears that it should because it has methods GetNumAnimations, GetAnimationIndexByName, GetAnimationNameByIndex, and GetSRT takes an animation index. HOWEVER, I cant find any way of telling an animationcontroller WHICH animation from an animationset to play. Every example I''ve seen (very few) that can actually blend two animations with an animationcontroller seem to treat animationsets as a single animation. Aimationcoontroller has a method SetTrackAnimationSet which lets you set an animationset to a track, but neither interface have anything to set the active animation within an animationset, afaik. Please inform me as to why I''m wrong. I just want the info, I''d love to be corrected. Anyone have any experience with this?

Share this post


Link to post
Share on other sites
Advertisement
Yeah, you can''t blend more than 2 animations :/
MS could have done more work on their animation controller, definetly.

Share this post


Link to post
Share on other sites
Just because the D3DX animation interface is not the best does not mean DX9 is crap. If you would actually have a firm understanding of D3D before you come and rant and rave, you would know that DX9 made huge improvements in many areas, such as HLSL.

Also, why should MS spend all this time and effort trying to perfect a global animation interface? Every professional is going to write their own, anyways.

Yes, the managed DX docs are quite incomplete - I''ll agree with you there. However, in the next SDK release look for these docs to be better.

As far as "the sample programs are way to basic" goes, I have no idea what you are talking about. Do understand everything with HDR, Pre-computed Radiance transfer, and multiple types of shadowing? These samples are on the cutting edge of realtime graphics - what more do you want?

If you think DX9 is so bad, just go over to OGL already.


Dustin Franklin
Mircrosoft DirectX MVP

Share this post


Link to post
Share on other sites
quote:
Original post by Pseudo
How is it possible, over a year after it came out, that dx9 is still a half assed api? The docs suck. The animation code d3dx appears to be half done...with no explination of how to use it. The sample programs are way to basic. They dont show how to do anything interesting!!!

For example...does anyone know if an AnimationSet actually contains more than one animation? It appears that it should because it has methods GetNumAnimations, GetAnimationIndexByName, GetAnimationNameByIndex, and GetSRT takes an animation index. HOWEVER, I cant find any way of telling an animationcontroller WHICH animation from an animationset to play. Every example I''ve seen (very few) that can actually blend two animations with an animationcontroller seem to treat animationsets as a single animation. Aimationcoontroller has a method SetTrackAnimationSet which lets you set an animationset to a track, but neither interface have anything to set the active animation within an animationset, afaik. Please inform me as to why I''m wrong. I just want the info, I''d love to be corrected.

Anyone have any experience with this?


If you look at the interface design for the animation controller properly, u will be able to do what u wanted to. For multiple (>2) animations blending, u can always hack bypass the interface and blend using a vertex shader. But blending more than 2 animations is not common in most games.

Circlesoft is also correct in stating that MS is not obliged to provide a complete animation control interface for D3D. That is counter productive because it will limit the way animation could be controlled by binding all D3D programs/programmers to using the D3DX animation controller interface only. The same thing is true for OGL. All able-brained graphics programmer would write his/her own animation system with specific optimization and customization.

If there is any reason for the D3DX animation controller to exist, it is for beginners to learn more about animations and how the .X file format could be used to provide multiple animation data encapsulation and represent a common skin-bone structure.


- Hun Yen Kwoon

Share this post


Link to post
Share on other sites
I think they have spent their most time in hardware shaders, directShow and networking. What is really they didnt improved is their codding standard.

Share this post


Link to post
Share on other sites
I was really disapointed to the sprite interface becose it cant draw clipped textures. (only the source rect can be set)

Also the text clipping options arent good enough, there isnt simble rect clipping. But center options and like that.

I was also very disapointed to direct show becose you have to write your own allocators and draw functions if you want to show the video some where else than new window. Right?

Please correct me if something isn''t true above.

Share this post


Link to post
Share on other sites
First of all, I didn't say d3d9 is crap. In fact, its far supperior to every other version I've used. That doesn't make the docs any better or d3dx any better.

Second, I'm not a professional, so the comment about "Every professional is going to write their own" is pointless. My guess is that you aren't either.

Third, if you read my post, it would be obvious that I'm not trying to blend more than 2 animations. I'm trying to figure out how to use mulitple animations within an animation set. (you assign animationsets to tracks not animations, so I only blend 2 at a time) Clearly the docs indicate this is possible, but they left out a major detail. HOW you do it.

Finally, I'm quite capable of writing my own animation system (I've done this in OGL without blending and using software skinning), however the dx9 doc's claim to have support for this already (with blending), so I figured my time was better spent on gameplay. I dont have a crew working on the game here so I cant just go off writing every detail that claims to be already implemented. Basically I just wanted to know if this was possible (setting an animation within and animationset) but I get the impression that nobody here uses them anyways.

Have you guys read any of the recent articles on XNA (http://www.microsoft.com/xna/)? Seems microsoft does see some benifit to developing animations systems and other game components even though many of the "experts" on this board claim that "Every professional is going to write their own, anyways." It's not like animation systems differ greatly from game to game, so it seems logical to have a standard component for this. Maybe I'm just not elite enough for you guys.

[edited by - Pseudo on May 7, 2004 10:26:54 AM]

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
quote:
Original post by circlesoft
If you think DX9 is so bad, just go over to OGL already.



Yes, I do...

Share this post


Link to post
Share on other sites
quote:
dx9 is still a half assed api


quote:
Original post by Pseudo
First of all, I didn''t say d3d9 is crap.


The two seem pretty interchangable to me.



Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!