Sign in to follow this  
Skyd168

HLSL required for DirectX 10?

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
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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this