3D Studio Max 4 and vertex shaders

How can I use 3D Studio Max 4 as a platform for developing a Vertex Or a Pixel Shader?

I was just thinking the same thing.
Do they mean like writing a plugin-type thing for MAX? I don’t get it…

I wouldn’t mind having a license to MAX4 or a new GeForece card…

Well, I understood 3ds max R4 uses Pixel and Vertex shaders in order th create REAL-TIME effects like reflection, how can I use it to my purposes?

For anybody who doesn’t know why this topic is relevant, Nvidia has a little contest about making effects using the new functionality.

The little statement about it on this link is worded kinda funny. I would assume they mean write a plugin for MAX. To do that, you would want the SDK that Kinetix er…Discreet releases to developers.
One question: If you wrote a plugin for MAX4, wouldn’t you need a copy of MAX4? The first prize in the contest is a copy of MAX4…hmmm…

well, i don’t know if they talking about writing a plugin…
and if they don’t I guess they will allow using illegal copies of 3D studio max…

anyway, it IS weird.

It says you can use the NVEffectsBrowser as well, so I suppose they probably expect people without a legal copy of MAX to do that. Says they are releasing an OpengL version of it too so you can use either D3D or OpenGL…

OK, but if I DO HAVE a legal copy of Max, how can I use it as a platform?

I’m just guessing here but…

From what I remember reading pluggins were made for 3D Studio Max 3 that alowed you to use the power of the register combiners to make models and interact with them in REAL TIME (as Steve Jobs would say).

With this in mind maybe you could export the register combiner info from 3D Studio Max just like you can from NVEffectsBrowser.

The answer is simple: when you use 3DSMax 4, you can use your vertex programs/texture shaders (actually vertex shaders/pixel shaders because Discreet uses the Dx8 terminology) directly in the software.

Let’s try to be clear: I cannot remember exactly how you do it but you can copy/paste your vertex program code (DX8 syntax I believe…) in 3DS Max4 via a modifier. Then, this vertex program will be used for rendering in the viewport (in the viewport only ! Not in the renderer !).

It allows for developer to see exactly what their custom transforms/materials will look like: no more need to export to your own program. 3DS Max 4 can do it !!!

OK, now, back to the nVIDIA contest, I don’t think a lot of people will be using Max4 for it… You had better using the NVEffectsBrowser (is the OpenGL version out yet ???).

I should ask my employer to upgrade our copy of Max, just to have fun (the upgrade is £450… Ouch…).



P.S.: for those who have tried texture shaders on a GeForce/GeForce2, I suppose you have noticed how slow those things are on a non-GeForce3… That will be painful to develop our effects on these cards !

I can’t find any modifier which let me load a vertex program…

If I want to use the NVEffectsBrowser to load my programs how can I do that?

[This message has been edited by Quaternion (edited 03-16-2001).]

Originally posted by Quaternion:
I can’t find any modifier which let me load a vertex program…

If you actually have a copy of 3DS Max 4, you must have the on-line help that goes with it ! You should be able to find how to use vertex shaders in it…



I know that
but unfortunately all I can find is that max uses have an Active shader. That’s all they write about shaders…

Well, doesn’t sound like a good documentation !

I am pretty sure Vertex Shaders are implemented via a new type of modifier. Pixel Shaders, on the other hand, are set with materials… Well, I have just seen a 3DS Max 4 demo so I do not really remember…

Have they got any kind of customer support at Discreet ?



I just spent a half hour looking through the online help for anything regarding vertex shading and I see absolutely nothing there. In the SDK docs however there is mention of vertex (and pixel) shaders, though I still dont see how to load a vertex shader. I just spent another 15 minutes playing with every modifier that even comes close to being related to vertices still to no avail. I’ll ask one of the artists at work tomarrow if they have ever run across anything like that in their travels through max I’d like to know if this can actually be done (without writting a special plugin to do it).

I am in the same situation as you, BwB.
Please let me know if you get to know something about it…


Originally posted by Quaternion:
I can’t find any modifier which let me load a vertex program…

With 3D Studio MaxR4 comes some hardware DX8 sample vertex and pixel shader in form of texmap plugin.Vertex program can be changed simply as .nvj source file.There is also a source code in max sdk.

BTW: If I want to use NVEffectsBrowser to develope an effect how can I do that?

I found the directory HardwareShaders in my plugins directory. I can see a vertex program there. but I can’t find any texmap plugin, neither a way to load the vertex program.

In my MaxSDK directory I found a VC projects called HSUtil and HardwareShaders. But what should I do with them?

You need to manualy load HardwareShaders.dlt plugin whith Max4 PluginManager Menu->Customize->PluginManager, or just copy all files from Plugins/HardwareShaders directory to Plugins directory and then restart Max4 to automaticaly load the plugin.

If you want to create NVEffectBrowser effect ,just see a Quad sample project.