Jump to content
  • Advertisement
Sign in to follow this  
derek7

Effect framework is a parit of HLSL?

This topic is 4858 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Advertisement
The Effects framework is built on top of HLSL shaders. You can use HLSL without the Effects framework - just check out the HLSLwithoutEffects sample. I prefer to use ID3DXEffect because it simplifies shader integration a lot.

Share this post


Link to post
Share on other sites
If you are talking about ID3DXEffect; this is part of the D3DX framework which is distributed with DirectX. It is an additional set of utility functions for use with Direct3D, making life easier.

So you can use it with HLSL; you can alternatively use HLSL without it. It is not part of HLSL in any way.

Illco

Share this post


Link to post
Share on other sites
Also note that it is possible to use the Effect framework without using HLSL or shaders at all. The Effect framework is able to use the fixed-function pipeline without any problems.

So in effect (no pun intended), the Effect framework isn't really built "ontop" of HLSL. Instead, it uses HLSL, among other things, to set up a particular rendering state.

neneboricua

Share this post


Link to post
Share on other sites
Quote:
Original post by Illco
If you are talking about ID3DXEffect; this is part of the D3DX framework which is distributed with DirectX. It is an additional set of utility functions for use with Direct3D, making life easier.

So you can use it with HLSL; you can alternatively use HLSL without it. It is not part of HLSL in any way.

Illco


Thats a little misleading. The Effects runtime is independent, but thats becuase there basically isn't an HLSL runtime (Save a constantbuffer manager utility).

From a language perspective, The Effect System is a superset of HLSL, and they use the same grammer and parsing. This relationship is somewhat similar to C and C++. HLSL expressions are also valid in many places in Effects. Likewise, any syntax for effects constructs are still 'valid' in HLSL compiles, they just don't mean anything.

Share this post


Link to post
Share on other sites
EvilDecl, I think you forgot to read the first line of my post
Quote:
If you are talking about ID3DXEffect...

since you are talking about what you can do inside a HLSL effect file (*.fx) while I was talking about what is provided by the framework in whatever language you choose to use HLSL shaders with.

Illco

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!