I've looked on MSN all day and night to no avail.
Has anyone been able to use the MSVC 6 IDE to compile shaders using fxc? It would be nice if the IDE would let me specify a compiler for the current file and use that as well as it's error reporting.
I shudder to use fxc from the command line because debugging a shader is going to be like trying to code in C using a command line compiler. Not cool.
How am I supposed to debug these shaders? Do I have to do it outside of the IDE and are there any extensions in the DX9-12-10-2005 extras to do this for me?
I have two help files on my system now. I have the entire DX9 SDK and the DEC 05 update. Obviously they are not the same. It seems the DX has been updated, but other things like DirectInput (now XInput), DirectShow, etc. have not. So I use the help for DX9 and D3DX from 12-10-2005 and the older helps for the other portions of DX?
What a version hellhole they've created.
It seems that the shader debugger is only available through VS .NET. Guess I'll have to upgrade. It would be nice if we could use shaders as part of our project and specify fxc.exe to compile them (or even a Cg compiler).
I'm sure that's not far off with DX10 being purely shader oriented. But my card only supports VS 1.3 and PS 1.3, so I guess it's time to skip rent and upgrade the card. :)
The only way to use shaders so far in DX I've found is:
or through the Effects framework.
This article may be of some interest:
Perhaps I can do this for HLSL in VS.
I do not have enough knowledge about the topic to be able to issue an adequate answer.
I thought I'd at least say that because otherwise I don't think anybody here'd respond :)
I'm getting a new graphics card this week. Then I can actually play Quake 4 and CoD2.
Well I've got to get a jump on this shader stuff since DX10 will be pure shaders. So I might as well become the NOOB again and hit it hard so I don't get lost in the technology tornado that is approaching.
I have 3 books on shaders and have ordered one more from amazon. Also Frank Luna has a new book coming out and he does more with his terrain rendering, although I think I know how to do the frustrum culling already. I cannot do models yet because I simply suck at creating them and Blender is a bugger to use.
So I must face it that I'm an engine programmer and alas I need a modeling dev team to work on models for me. Hey you can't be good at everything. :)
Thank God the days of programmer's attempting to do the voice acting in their own game have long since past. We might be good programmers but that doesn't mean we are good actors, artists, modelers, or even story board people. Maybe just maybe that's why the credits list for a game is so long.
And this Zelda clone has taught me one thing. Estimating how long it will take to implement this or that feature is definitely a lost art. And I so suck at it. :D
And I hope this board is prepared for the literal onslaught of DX10 related questions on how to do lighting and the like. DX10 is going to be pure shaders, no more fixed function pipeline. So you will have to learn HLSL to even transform your vertices. We will get swamped with these types of questions. I've a feeling OpenGL may move in the same direction as well.
The OpenGL 2.0 specification is pretty much just that: it lets you use built in lighting but it's biased towards programming the graphics pipeline with vertex/fragment programs, and it has a bunch of other stuff (GLSL specification, two-sided stencil buffer for shadowing stuff, etc).
I think HLSL and GLSL will prove to be much easier once we all get used to it. I love the fact that you can do very complex operations in one line of code via data swizzling in the asm shader code that results.
All muls, subs, etc, operate on 3 to 4 values at a time which is extremely powerful. Games are going to really start looking life-like as we approach this new era of computer graphics.
I'm very excited about it, but it is going to cause me to re-think my design and re-think engine architecture. It's also going to require yet more research and reading to get it down pat.
I've got pretty much 0 experience game programming, but that thing about DX10 being pure shaders sounds quite interesting. Applications are just going to look better and better, which (I guess) is a good thing for the industry - I certainly know I like (almost prefer) a game with kick-ass graphics, as well as good gameplay.
I believe that we will quickly see a few libraries of shader programs that implement common tasks. It might even come with the APIs (D3DX or GLUT). Not everyone wants to program the shaders.