Archived

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

FuzzyBunny

WildMagic2

Recommended Posts

Hi everyone, I have stumbled upon WildMagic2 library (http://www.wild-magic.com), I have never even heard about it before, and accidently found their website. For those of you who don''t know, WildMagic is a software libreary, currently able to handle Math, Physics, and cross platform rendering, supporting (Windows, Linux, and Mac). I briefly went over some features, Portal Rendering, Skeletal Animation, Shader Effects, Dynamic Clod, DOT3 bumps, Texture Effects, Light Maps, Morphing, Particle Systems, Reflections, Shadows, Terrain Rendering. Thats just the rendering part of the library (DX9, OpenGL, GLUT, and MacGL) sup[ported. There''s a huge physics part to it also, which seems to be pretty damn impressive, but only comes with the book ''Game Physics'' or osmething. This library can be downloaded for FREE right from their website, lib comes as C++ source, and can be compiled either into DLLs or static .lib files, the directory sctuctures are all set up and you can use any renderer you choose to.... I compiled the lib with no problems, then compiled the sample apps that come with\, no problem.... lib seems to handle everything pretty nicely, the morphics sample showed real time morphing between 3D models, then i cheked out the Skinned Animation sample, no problem either. Reason for my long post is : has anyone used, heard, or knows anything about this library? i would apprecialte some feedback or link, tutorials or sample work... i am just very surprised that this lib seems so powerful, it''s free, and I''ve never heard about it. i want to know what can be done with it, and is it worth using? has anyone made any games using this lib? for instance i was having trouble setting it to FullScreen mode, samples all use windowed, and the function doesn''t seem to have a fullscreen flag. This looks like a promising lib, I want to know if anyone knows anything about it? Please reply, I appreciate any info, and thanks in advance. Dima

Share this post


Link to post
Share on other sites
Hi,

Yes, I''ve known about this library (it was more of a compilation of code back then) for a couple of years now. I used the math part for my game, and it worked quite nicely.

Keep in mind that math and physics are different things. Math is things like finding the closest distance from a line to a point, finding intersections, vector/matrix math, and so on. Physics is more high-level, like handling impulses, joints, collision response and so on. The math part is free, and always has been. The physics part requires you to own a copy of their Game Physics book.

---
shurcooL`

Share this post


Link to post
Share on other sites
Sounds very nice, yes I know that the physics part comes with the book only, i went to the book store today to check it out, but didn''t buy the book. Aparently the physics part has alot to offer, so I might get the book later....

i am stil wondering though how good this lib is for making games? It seems to be pretty optimized, with vector/matrix math, and the scene graph works nicely, so is this a good lib to start writing games? I still cant figure out how to get it fullscreen, and let''s say I want to make a dynamic VB (DX), with animated textures (UVs within the same texture map), how would this lib handle something like that?

I like my FPS with the sample apps that come with the lib, seems to run very smooth, and effects seem to be easily applied.

How about sound, music, or network code? aparently the lib has no support for neither of those, but the graphics code seems powerful...

Please,any more feedback is appreciated, are there any major limitations to the lib? (without recompiling the code), does it handle input well? Timing functions? Any tutorials available for setting up apps, (fullscreen for instance)?

tanks in advance, Dima

Share this post


Link to post
Share on other sites
for me, it''s more than a lib, because it has some impressive docs, and the book is great. It''s open source, it''s got tons of things you can learn from. But as far as building a game with it right of the bat, I don''t know

Share this post


Link to post
Share on other sites
It seems pretty great. Are there any tutorials available anywhere? I read somewhere that a new book "Wild Magic" will come out soon, which will explain the structure of the lib and how it works..

Im wondering though if there are any resources available online on how to use the graphics lib properly..

In DX9, i can create a dynamic VB class with a member function AddVertex, or AddTriangle, or AddQuad, then fill this VB real time with the data I need and flush it to the backbuffer whenever it''s full or I change the texture. I can render a sweet ammount of geometry with this method, and animate the texture UVs (within same texture map).

How would I go about this in WildMagic? Im not understanding too much how the core structure works with he scene graph and nodes.

Here is some code from the ''LightMapping sample'':

// use base texture
TriMesh* pkSquare0 = CreateSquare();
pkSquare0->Rotate().FromAxisAngle(Vector3f::UNIT_X,-0.25f*Mathf:I);
pkSquare0->Translate() = Vector3f(1.0f,-1.0f,0.0f);
m_spkTrnNode->AttachChild(pkSquare0);

TextureState* pkTS0 = new TextureState;
pkTS0->Set(0,pkBaseTexture);
pkSquare0->SetRenderState(pkTS0);

notice how the texture state is set after the pkSquare0 mesh has been added to the Node, which is part of the scene and wil be rendered in one call. This code happens in a member function, and pkSquare0 and pkTS0 are temporary pointers? they are defined right within the function, so how would I access the UV data for instance from my Scene? Im still a little confused how the TextureState is set after the mesh is attached to the node.

If anyone knows anything about this lib, please let me know. I am very excited about what coud be donw with this and hoping to take it further.

THanks in advance,
Dima

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
This library is by the former chief engineer for NDL, the makers of NetImmerse (GameBryo). There are some obvious similarities in design. It is extremely good once you learn it and it comes with the source code.

Share this post


Link to post
Share on other sites
Just as the physics code is available to those who bought Eber''y''s physics book, the WildMagic code was included with his book titled ''3D Game Engine Design''. At one time, WildMagic was not downloadable either. Some time in the past few months he did away with his original free code (FreeMagic) and made WildMagic available to all.

Check out the game engine book for insight into what the code does. But be prepared, it''s not an easy read for someone with a weak math background. It''s a very math-centric book (Eberly is a math major after all). And the code has evolved a good deal from that on the book''s CD, but the text is still relevant.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
quote:
Original post by Aldacron
It''s a very math-centric book (Eberly is a math major after all).



Eberly is more than just a math major. He has PhDs in math and Comp Sci and was a professor of CompSci and Neurosurgery.

http://www.wild-magic.com/DEberlyVita.pdf


Share this post


Link to post
Share on other sites