HLSL Development Cookbook Review

When Packt approached me to write a review on this book, I thought it was a great opportunity to get back into DirectX programming. I am in the visual effects industry and with the cross-platform nature of that industry I have mostly been using some basic OpenGL. With the way technology is advancing and with it having been many years since I last work with DX9, I wanted a refresher and to update my skills using the latest techniques. However, jumping straight into this book probably isn’t the best way to do that.

HLSL Development Cookbook is not an introduction to HLSL or an introduction to writing Direct3D 11/HLSL-based applications. Readers should already be familiar with HLSL and Direct3D 11. I was a bit disappointed in this having read the OpenGL 4.0 Shading Language Cookbook, which introduces readers to GLSL and writing GLSL-based programs before going on to more advanced techniques. To be fair though, the author does say right before the first recipe that readers should already know how to

  • Compile and load the shaders.
  • Prepare a system that will load and manage the scene.
  • Prepare a framework that supports Direct3D draw calls with shaders that will render the scene

Although it might have made sense to put that information in the “Who this book is for” section. That section also states that people looking to transition from DX9 to DX11 should get this book. However, if you are trying to transition from DX9 to DX11, there really isn’t a whole lot about DX11 besides what values to fill in different structs in order to setup proper resources and buffers. The book is mostly the HLSL and it’s corresponding explanations on traditional lighting equations, deferred shading, shadow techniques, post-processing (hdr, bloom, dof, bokeh), screen space effects (ssao, lens flare, reflections, sun rays), and environment effects (dynamic decals, fog, and rain).

My own ignorance aside, the demos are interesting and the material is presented clearly. The demos all ran and provide great reference to study. The author just assumes a certain level of knowledge.

So if you are interested in this book but have little to no HLSL and/or D3D11 experience, I would recommend getting an introduction to HLSL and/or DirectX 11, such as Frank D. Luna’s Introduction to 3D Game Programming with DirectX 11 and the documentation on MSDN. Once you are comfortable with that material, then go ahead and get this book.

Rating:

HLSL Development Cookbook

With movie VFX and game technology converging closer and closer, I’ve decided to put on my real-time hat again and brush up on my graphics programming skill. The last time I really dug into the material was about 10 years ago when I wrote my DirectX 9 and Managed DirectX tutorials. To help get back into the material, I’ve been asked to review HLSL Development Cookbook. From the publisher’s website, this book is targeted towards the following people:

If you have some basic Direct3D knowledge and want to give your work some additional visual impact by utilizing advanced rendering techniques, then this book is for you. It is also ideal for those seeking to make the transition from DirectX 9 to DirectX 11, and those who want to implement powerful shaders with the High Level Shader Language (HLSL).

Which pretty much means I’m the target audience. And I do hope to eventually expand my tutorial section into DirectX 11 and HLSL. Maybe this book will be just the spark that I need.

Last Week of Maya API Introductory Price

This is the last week of the 20% introductory price of my Introduction to the Maya API videos over on CGCircuit, so if you’re interested and want the discount, this is the last week to do so. On July 1, the price will go to the original $100.

This class introduces students to the Maya API. The Maya API allows programmers and scripters to customize Maya with innovative new technology and create tools to support a production pipeline. This class is the launching point to more advanced topics using the Maya API. While the Maya API is accessible in both C++ and Python, this class will focus mainly on C++ since C++ is the language that most plug-ins should be written in a production environment.

Creature Art and Mechanics

We’ve launched!

A group of artists and technologists that helped bring “Davy Jones” to life in “Pirates of the Caribbean,” and made everyone’s favorite childhood robots leap into action in “Transformers,” have launched a new studio based in Marin County, CA. The men, formerly Creature and Character Designers from ILM, Digital Domain, and Imagemovers Digital, have launched “Creature Art and Mechanics Digital” (CAM Digital or CAMd). The announcement was made today by the new company’s founding partners Scott C. Smith, Timothy Naylor, Andrea Maiolo and Chad Vernon.

Read the full press release here.

CGCircuit.com

The site creators of CGCircuit.com are ready to let more people in and buy my videos! The videos are finally ready to be sold. However, you still need an invite to register on the site and buy the videos. I have a new set of invites to give away so use my contact form to send me your email if you want in and I’ll send you an invite. The Maya API class is still discounted at $80 until a month after the full public release.

Also those that I invite will have invites of their own to give away.

Maya API and Applied 3d Math Videos

My Maya API videos will soon be released. I’ve gotten word that they will be open to the public very shortly. The Maya API series is about 6 hours worth of video covering several topics from creating commands, contexts, locators, deformers, file translators, and dependency graph nodes to working with callbacks, multi-threading, attribute editor templates, and distributing your plug-ins.

I’ve also created an Applied 3d Math video series. This series is a little over an hour and covers how to actually use 3d math with practical examples. This isn’t your typical how-to-multiply-matrices math tutorial. I don’t even go over how to multiply matrices! The focus of this series is how you can apply 3d math in your day-to-day work.

Stay tuned for the actual release. It should just be a matter of days.