Kanzi 3.3 migration guide

Kanzi 3.3 migration guide contains information and provides instructions for porting existing Kanzi applications from the previous Kanzi release.

Kanzi Engine changes

  • RenderTarget class is now called GraphicsOutput.

  • In the earlier versions of Kanzi the state manager transitions for integer, resource ID, or string properties was immediate, now these transitions take the time specified in the transition. To keep the old behavior set the transition type to Step and transition easing mode to Ease out.

  • In <KanziWorkspace>/Engine/include/user/include/kanzi the graphics_2d and graphics_3d directories are now graphics2d and graphics3d.

Directory structure

Renderer.hpp

Kanzi 3.2.2

Kanzi 3.3

bool linkShader(const KzcMemoryManager* memoryManager, unsigned int programHandle, kzString shaderName);

bool linkShaderProgram(unsigned int programHandle, kzString shaderName);

bool compileSourceShader(const KzcMemoryManager* memoryManager, Shader::ShaderType shaderType, unsigned int shaderHandle, kzString shaderCode, kzString shaderName);

bool compileSourceShader(Shader::ShaderType shaderType, unsigned int shaderHandle, string_view shaderCode, string_view shaderName);

bool programBinary(const KzcMemoryManager* memoryManager, unsigned int program, unsigned int formatConstant, const void* data, unsigned int dataSize);

bool deployProgramBinary(unsigned int program, unsigned int binaryFormat, const void* data, unsigned int dataSize);

void deleteShader(unsigned int programHandle, unsigned int vertexShaderHandle, unsigned int fragmentShaderHandle);

void deleteShaderProgram(unsigned int programHandle);

void deleteShader(unsigned int shaderHandle);

bool compileSourceShader(Shader::ShaderType shaderType, unsigned int shaderHandle, string_view shaderCode, string_view shaderName);

bool compileSourceShader(ShaderType shaderType, unsigned int shaderHandle, const char* const shaderCode, string_view shaderName);

bool deployProgramBinary(unsigned int program, unsigned int binaryFormat, const void* data, unsigned int dataSize);

bool deployBinaryProgram(unsigned int program, unsigned int binaryFormat, const void* data, unsigned int dataSize);

bool isGlShaderBinaryFormatSupported(unsigned int glShaderBinaryFormat) const;

bool isShaderBinaryFormatSupported(unsigned int glShaderBinaryFormat) const;

bool isGlProgramBinaryFormatSupported(unsigned int glProgramBinaryFormat) const;

bool isProgramBinaryFormatSupported(unsigned int glProgramBinaryFormat) const;

void setBinaryShaderFormatIdentifier(kzString binaryShaderID, unsigned int binaryFormatGPUConstant);

Removed.

kzString getBinaryShaderFormatIdentifier() const;

Removed.

void setProgramBinaryExtensionEnabled(bool enabled);

Removed.

bool programBinaryExtensionIsEnabled() const;

Removed.

Not available.

enum ProgramBinary

Not available.

ProgramBinary getProgramBinarySupport() const;

Not available.

bool isGlShaderBinaryFormatSupported(unsigned int glShaderBinaryFormat) const;

Not available.

bool isGlProgramBinaryFormatSupported(unsigned int glProgramBinaryFormat) const;

Not available.

New value in the enum Information: InformationProgramBinarySupport

Shader.hpp

Kanzi 3.2.2

Kanzi 3.3

void initializeFromMemory(kzString vertexShader, kzString fragmentShader, kzUint vertexAttributeCount, const kzString* vertexAttributes);

void initializeFromMemory(string_view vertexShader, string_view fragmentShader, vector<string> const& attributes);

void initializeFromMemory(string_view vertexShader, string_view fragmentShader, vector<string> const& attributes);

void initializeFromMemory(const char* const vertexShaderSourceSource, const char* const fragmentShaderSourceCode, unsigned int attributeCount, const char* const* attributes);

void initializeFromMemory(unsigned int shaderBinaryFormat, unsigned int dataSize, void* data, vector<string> const& attributes);

void initializeFromMemory(unsigned int shaderBinaryFormat, unsigned int dataSize, void* data, unsigned int attributeCount, const char* const* attributes);

void initializeFromMemory(unsigned int shaderBinaryFormat, unsigned int vertexDataSize, void* vertexData, unsigned int fragmentDataSize, void* fragmentData, vector<string> const& attributes);

void initializeFromMemory(unsigned int shaderBinaryFormat, unsigned int vertexDataSize, void* vertexData, unsigned int fragmentDataSize, void* fragmentData, unsigned int attributeCount, const char* const* attributes);

void compile(const KzcMemoryManager* memoryManager, Renderer* renderer, kzString shaderCode, ShaderType shaderType, kzString shaderName, unsigned int* out_handle, bool* out_compileSuccess);

Removed. Use kanzi::Renderer instead.

Not available.

void initializeFromMemory(unsigned int shaderBinaryFormat, unsigned int dataSize, void* data, vector<string> const& attributes);

Not available.

void initializeFromMemory(unsigned int shaderBinaryFormat, unsigned int vertexDataSize, void\* vertexData, unsigned int fragmentDataSize, void\* fragmentData, vector<string> const& attributes);