   HLSL required for DirectX 10?
  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?   
  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.   ;  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.   