• Advertisement
Sign in to follow this  

HLSL required for DirectX 10?

This topic is 3189 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

I just started learning DirectX 10 and the msdn tutorials mention the use of HLSL effects files. From what I've seen, I can't really use DirectX 10 without having an effects file. I know that in Directx 9 you could pretty much do everything without writing your own effects file, but is this now a requirement in directx 10?

Share this post


Link to post
Share on other sites
Advertisement
In DirectX9 you have the option of fixed function pipeline (setting render states) and rendering with HLSL effects, programmable pipeline (although at the moment there's a tendency to use programmable pipeline). In DirectX10 there's no fixed function pipeline where you can create effects with setting various differnet render states. So short answer is yes, you do have to use effects. There's a very good reason for this, it's far more flexable and now that HLSL has come about, you no longer need to write shaders in assembly, you can do a huge amount with shaders. Don't see learning HLSL as a huge barrier in programming DirectX10, although it is confusing at the start, it greatly simplifies with practice (as does anything), and it is very similar to the C language, think of it as a way of scripting render state changes.
Hope that helped.

Share this post


Link to post
Share on other sites
Actually, D3D10 (and up) does allow you to compile and use shaders without using the Effect framework. However, you cannot input shader assembly code anymore in D3D10, so writing of said shaders requires HLSL.

Share this post


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

  • Advertisement