netlib.narod.ru< Назад | Оглавление | Далее >

16.4. Ключевые слова, инструкции и приведение типов

16.4.1. Ключевые слова

Для справки мы приводим здесь ключевые слова, определенные в HLSL:

asm      bool    compile const       decl         do
double   else    extern  false       float        for
half     if      in      inline      inout        int
matrix   out     pass    pixelshader return       sampler
shared   static  string  struct      technique    texture
true     typedef uniform vector      vertexshader void
volatile while

Во втором списке приведены идентификаторы, которые зарезервированы и в данный момент не используются, но в будущих версиях могут стать ключевыми словами:

auto             break    case    catch     char         class
const_cast       continue default delete    dynamic_cast enum
explicit         friend   goto    long      mutable      namespace
new              operator private protected public       register
reinterpret_cast short    signed  sizeof    static_cast  switch
template         this     throw   try       typename     union
unsigned         using    virtual

16.4.2. Поток выполнения программы

Набор поддерживаемых HLSL инструкций для ветвления, повторов и общего потока программы очень похож на инструкции C++. Синтаксис этих инструкций тоже полностью аналогичен C++.


Инструкция Return:

return (выражение);

Инструкции If и If...Else:

if(условие)
{
     инструкция(s);
}

if( условие )
{
     инструкция(s);
}
else
{
     инструкция(s);
}

Инструкция for:

for(инициализация; условие; изменение)
{
     инструкция(s);
}

Инструкция while:

while( условие )
{
     инструкция(s);
}

Инструкция do...while:

do
{
     инструкция(s);
} while(условие);

16.4.3. Приведение типов

HLSL поддерживает очень гибкую схему приведения типов. Синтаксис приведения в HLSL тот же самый, что и в C. Например, чтобы преобразовать значение типа float в значение типа matrix, мы напишем:

float f = 5.0f;
matrix m = (matrix)f;

В примерах из этой книги вы сможете понять смысл приведения из синтаксиса. Однако, если вам потребуется дополнительная информация по поддерживаемым приведениям типов, вы найдете ее в документации DirectX SDK, выбрав на вкладке Contents пункт DirectX Graphics\Reference\Shader Reference\High Level Shading Language\Type.


netlib.narod.ru< Назад | Оглавление | Далее >

Сайт управляется системой uCoz