VMT Generator (in progress)


BERSERK3R
05-25-2007, 10:53 AM
EDIT: Whoops, I think this should be in the tools section.

I am working on a VMT generator, but like to have some of your input.

About the shadertypes, which should I include.
Just types which are commonly used, like "vertexlitgeneric" and "lightmappedgeneric".

Types like "unlitgeneric" are not commonly used for weapons and textures so that should not have to be inlcuded perse.
I might in a future version.

You can find a nice overview here (http://developer.valvesoftware.com/wiki/Shader_Types_and_Parameters)

I'll post more info when I'm a bit further in progress.

If you got any ideas you have on this program let me know and I might include it.

Current progress:

http://img79.imageshack.us/img79/9339/vmtgenbasic1preview1cb1.jpg

Watevaman
05-25-2007, 02:51 PM
Looks kinda useful, though I probably won't use it because most of my stuff doesn't have a lot of fancies. Great work on the good looking GUI and stuff, though.

Wile E Coyote
05-25-2007, 04:38 PM
This is actually feasible.

suggestions:

set up some sort of system where a person cannot accidentally put in 2 commands that conflict with each other. For instance, If you were to use "phongexponenttexture", then "phongexponent" would not be available (and vice-versa) because the two of them conflict with each other.
For the commands that have simple variables (on/off - 1/0) put a toggle. Sometimes it is important to actually put in a command telling it NOT to activate something
This is the hardest suggestion of all. For those commands that have a color variable (1 1 1) put in a small color box at the end of the command line, or in the margin, so you can physically see what color you set the variable to.

BERSERK3R
05-25-2007, 05:12 PM
This is actually feasible.

suggestions:

set up some sort of system where a person cannot accidentally put in 2 commands that conflict with each other. For instance, If you were to use "phongexponenttexture", then "phongexponent" would not be available (and vice-versa) because the two of them conflict with each other.
For the commands that have simple variables (on/off - 1/0) put a toggle. Sometimes it is important to actually put in a command telling it NOT to activate something
This is the hardest suggestion of all. For those commands that have a color variable (1 1 1) put in a small color box at the end of the command line, or in the margin, so you can physically see what color you set the variable to.

1) Yep, standard programming techniques, at least for me ;)
2) Yes, I had that also in mind.
3) Well I already had that already made before I read your reply.

Few notes:
- You have to first set your shadertype before you can add other items.
- I'm still messing around with the slider bars, on what to use and not.
- Alpha value can be set by slider and see where black = 0/invisible and white = 255/full opacity.
But I can't really recall any shader using alpha in (r,g,b,a - 255,255,255,255).
- I will make a colorpicker, so I can ditch the sliders, but I might put some custom value boxes in, but those small things can cost so much extra time, programmers know what im talking about ;)
- You can change the path of the basetexture for example

And btw, if you look at how it looks now, for what use would you define it like, beginner, advanced, pro.
Or like if you, Wile think it's just perfect for you or needs to be trimmed or whatever.
So I know, if some things are just to much or needs more information etc.

That's it for today, got dryed out eyes now :P

http://img518.imageshack.us/img518/6809/vmtgenbasic1preview2ec2.jpg

BERSERK3R
05-25-2007, 05:22 PM
This is actually feasible.

suggestions:

set up some sort of system where a person cannot accidentally put in 2 commands that conflict with each other. For instance, If you were to use "phongexponenttexture", then "phongexponent" would not be available (and vice-versa) because the two of them conflict with each other.
For the commands that have simple variables (on/off - 1/0) put a toggle. Sometimes it is important to actually put in a command telling it NOT to activate something
This is the hardest suggestion of all. For those commands that have a color variable (1 1 1) put in a small color box at the end of the command line, or in the margin, so you can physically see what color you set the variable to.

1) Yep, standard programming techniques, at least for me ;)
The Add button I now greyed out but that's not correct yet.
It will be changed so when you add a item, it checks if it already exists, and then will not be added.
2) Yes, I had that also in mind.
3) Well I already had that already made before I read your reply.

Few notes:
- You have to first set your shadertype before you can add other items.
- I'm still messing around with the slider bars, on what to use and not.
- Alpha value can be set by slider and see where black = 0/invisible and white = 255/full opacity.
But I can't really recall any shader using alpha in (r,g,b,a - 255,255,255,255).
- I will make a colorpicker, so I can ditch the sliders, but I might put some custom value boxes in, but those small things can cost so much extra time, programmers know what im talking about ;)
- You can change the path of the basetexture for example


That's it for today, got dryed out eyed now :P

http://img518.imageshack.us/img518/6809/vmtgenbasic1preview2ec2.jpg

cruzaderazn
05-26-2007, 04:55 AM
Great idea. I'm surprised it hasn't been done before.
My suggestion- maybe put tooltips that give a simple explanation of what each does. It'll helpful for beginners.

Furyo
05-26-2007, 05:04 AM
I'd be interested in beta testing this tool asap. Please let me know when it's available

Wile E Coyote
05-26-2007, 08:30 AM
Also, a "browse" button for the vtf files in question instead of manually typing it.

BERSERK3R
05-26-2007, 02:07 PM
Also, a "browse" button for the vtf files in question instead of manually typing it.
It's in there, see the "change" button.

Btw, about the order of the shader "components" like envmap, bumpmap, etc., is there a special order for that (from top to bottom)?

I think there should be, like envmap could not be on top of basetexture for example.
I think I know how it all works I never had any problems, but just to be sure, so I can be sure my program works correctly.

BERSERK3R
05-27-2007, 10:31 AM
*update*

This screenshot shows the current option to set your game root.
This should be done cause the path you set for the parameters in the shaders start with the game root as base and only shows the path from there in the shader.

Btw, the filebrowser automatically starts browsing at the steam installpath.
So it's just a matter of selecting your steam accountname and not further browsing is nescesary.
And that means don't select the game folder, just select the accountname folder.

I could make it this way that you could select your game folder manually from this point, but you have to select for example "day of defeat" and then "dod", and although that is quite easy, there are still some people who don't understand the folderstructure, so I decided to only let the user select the username, and then select the game by radio buttons.

http://img246.imageshack.us/img246/364/vmtgenbasic1preview3go6.jpg

Day of Defeat Forum Archive created by Neil Jedrzejewski.

This in an partial archive of the old Day of Defeat forums orignally hosted by Valve Software LLC.
Material has been archived for the purpose of creating a knowledge base from messages posted between 2003 and 2008.