使用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 释放句柄