使用DirectX

DirectX 11功能和着色器旨在直接在价格图表上实现3D可视化。

创建3D图形需要一个具有所需图像大小的图形环境(DXContextCreate)。此外,还需要准备顶点和索引缓冲区(DXBufferCreate),以及创建顶点和像素着色器(DXShaderCreate)。这足以显示彩色图形。

下一级图形需要输入(DXInputSet)以将其他渲染参数传递到着色器。这可以设置相机和3D对象的位置、描述光源并实现鼠标和键盘控制。

因此,内置的MQL5函数可以使您在MetaTrader 5中直接创建动画3D图表,无需第三方工具。显卡应支持DX 11和Shader Model 5.0,以便使函数正常工作。

若要开始使用该函数库,只需阅读文章如何在MetaTrader 5中使用DirectX创建3D图形

函数

操作

DXContextCreate

创建图形环境,以渲染指定大小的画帧

DXContextSetSize

更改在DXContextCreate()中创建的图形环境的画帧大小

DXContextSetSize

获取在DXContextCreate()中创建的图形环境的画帧大小

DXContextClearColors

为渲染缓冲区的所有像素设置指定的颜色

DXContextClearDepth

清除深度缓冲区

DXContextGetColors

从图形环境获取具有指定大小和偏移量的图像

DXContextGetDepth

获取渲染画帧的深度缓冲区

DXBufferCreate

根据数据数组创建指定类型的缓冲区

DXTextureCreate

从传递图像中剪切的指定大小的矩形中创建2D结构

DXInputCreate

创建着色器输入

DXInputSet

设置着色器输入

DXShaderCreate

创建指定类型的着色器

DXShaderSetLayout

设置顶点着色器的顶点布局

DXShaderInputsSet

设置着色器输入

DXShaderTexturesSet

设置着色器结构

DXDraw

渲染在DXBufferSet()中设置的顶点缓冲区的顶点

DXDrawIndexed

渲染由DXBufferSet()的索引缓冲区描述的图形原语

DXPrimiveTopologySet

设置使用DXDrawIndexed()渲染的原语类型

DXBufferSet

设置当前渲染的缓冲区

DXShaderSet

设置渲染的着色器

DXHandleType

返回句柄类型

DXRelease

释放句柄