Archived

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

Crispy

creating ethereal-looking "creatures"

Recommended Posts

Hi, what I''d like to do, is create sort of like ghostish players in my game - like the alien in "Predator", only obscured that you can only faintly see through. It would be best if it didn''t have a specific form (as models do), but would, well... wobble/morph slowly, leaving a sort of floating impression. What would be the best way to attack such a problem? The creatures would have to have this "local fog" floating around inside of them (at least that''s what I''m seeing in my mind''s eye)... Since these are currently the only kinds of creatures I''d like to have in my level, should I continue to write my own model loading routines and mess around with models (how?), or create them some other way (how?). Any help would be welcome, Crispy

Share this post


Link to post
Share on other sites
Hmm - an interesting thought. Unfortunately it won''t run on my gpu because it doesn''t support vertex programs, so I can''t really develop stuff like that without first buying a new graphics card which would mean that, under present circumstances, I''d have to rob a bank or two Besides - refraction afaik is slow which is not necessarily the best thing for a realtime game...

Thanks, anyway. I''m open to more suggestions, though...

Crispy

Share this post


Link to post
Share on other sites
animated model (for the waving / morphing - look into skeletal animation maybe, or use the nehe morphing tut to help you do it that way)) blended to be translucent? auto texture coord gen to make it a bit more wobbly (eg sphere map maybe)

Use opacity maps (just add an alpha channel to your textures),
also if you modulate the texture by the current colour then you can change the colours alpha to make it look less solid (assuming the texture already has a <1 value in alpha). Multitexture too.

experiment with some of these in different combinations and I''m sure you''ll find something that does what you want.

Just sphere mapped multitexturing with textures that are translucent will probably give good results.

once you''ve got it, write a little tool that imports existing models and lets you edit them to add your ''ghostliness'' effect.

Depending on what is supported by your current model format, you may need to come up with a new one which can represent all your ''ghost'' parameters.

Oh yeah, and while I remember, gentexcoord may or may not be supported on multiple texturing units. Last time I looked the spec said no, nvidia said yes ;¬)

Dan

Share this post


Link to post
Share on other sites
btw, no matter what card you have vertex shaders are supported via software when using dx8. the catch of course is no pixel shaders can be done in software, and the vertex shaders will run slightly slower then if the gpu did them (only because the cpu could do other things while the gpu did the vertex shaders).

basically you want as others have mentioned a model which refracts (could even be a "reverse" reflection). you could also use alpha channel of a texture to give a wispy effect. you may whish to use a simple billboarded alpha texture that you modify each frame (only write to dont read).

possibly consider implementing md2 loading since its pretty basic and there is plenty of information on the spec. while you cant use models you find on the net in your actual game (since they are owned by the creator), you can test things with them. most authors though would allow you to use them if given credit.

you can then create models using milkshape or some other app (surf the net).

as for the actual ghost effect in the model format, you wish to actually just have a seperate files that describes the ghost effect. this way you can use any number of model formats (ie pick one hat best suits you) yet still have an adjustable per model effect which is not tied to a particular model format.

Share this post


Link to post
Share on other sites
Just had an idea. What if you did an environment map on inverted normals with backward winding polys? That doesn''t sound right, let me try again. Turn your model inside out so your drawing the inside of the object. Then put an environment map on it (with high alpha) that points to the other side of the object. Can you do that? So it would almost act like a prism which is what you want. This might be was a person suggested, not sure...

Always remember, you''''re unique. Just like everyone else.

Share this post


Link to post
Share on other sites
Thanks!

Greven - your suggestion seems the unearthliest, I''ll certainly try it out once I get round to it. I''ll see to what the others suggested, as well, though it seems like a considerable amount of coding... I was going to write the model bit of code when I posted this thread, but the lovely Win2k crashed and took a large chunk of some very annoying-to-write code with it, forcing me to redevelop some of the earlier stuff (brrrr). Reminds me how, not only important, but crucial it is to create backups of what you write - I''d just like to warn people out there - so far there isn''t an OS out there that doesn''t suck on some level...

Crispy

Share this post


Link to post
Share on other sites