Discussion of article "How to create 3D graphics using DirectX in MetaTrader 5"

 

New article How to create 3D graphics using DirectX in MetaTrader 5 has been published:

3D graphics provide excellent means for analyzing huge amounts of data as they enable the visualization of hidden patterns. These tasks can be solved directly in MQL5, while DireсtX functions allow creating three-dimensional object. Thus, it is even possible to create programs of any complexity, even 3D games for MetaTrader 5. Start learning 3D graphics by drawing simple three-dimensional shapes.

3D models are described using a mesh consisting of polygons. The division of polygons into triangles appeared long ago when early computer graphics had to run on weak graphics cards. The triangle enables the exact description of the position of a small surface part, as well as the calculation of related parameters, such as lights and light reflections. The collection of such small triangles allows creating a realistic three-dimensional image of the object. Hereinafter, the polygon and the triangle will be used as synonyms since it is much easier to imagine a triangle than a polygon with N vertices.


Cube made up of triangles.

A three-dimensional model of an object can be created by describing the coordinates of each vertex of the triangle, which allows further calculation of coordinates for each point of the object, even if the object moves or the viewer's position changes. Thus, we deal with vertices, the edges that connect them, and the face which is formed by the edges. If the position of a triangle is known, we can create a normal for the face using the laws of linear algebra (a normal is a vector that is perpendicular to the surface). This allows calculating how the face will be lighted and how the light will be reflected from it.


Examples of simple objects with vertices, edges, faces and normals. A normal is a red arrow.

Author: MetaQuotes

MetaQuotes
  • www.mql5.com
Trader's profile
 
Amazing thanks for sharing.
 

I have a suggestion if you want to promote gaming or graphical application or one screen application.


Make a switch with mt4/mt5 application like

-singleappmode windowed templatename.tpl theea.ex4/ex5 

-singleappmode fullscreen templatename.tpl theea.ex4/ex5 


When someone runs application with switch metatrader will just open one chart apply template and attach the EA. All other things will be hidden only shown if EA allows using a property or function.

Like show controls, show menubar etc. Or it could be showdefaults.

In this way MetaTrader can become serious graphical application or single ea  user application.


I know it could be hard to make or require some company level decisions , just my suggestion to improve meta trader.

 
Mahrukh Aleem:

I have a suggestion if you want to promote gaming or graphical application or one screen application.


Make a switch with mt4/mt5 application like

-singleappmode windowed templatename.tpl theea.ex4/ex5 

-singleappmode fullscreen templatename.tpl theea.ex4/ex5 


When someone runs application with switch metatrader will just open one chart apply template and attach the EA. All other things will be hidden only shown if EA allows using a property or function.

Like show controls, show menubar etc. Or it could be showdefaults.

In this way MetaTrader can become serious graphical application or single ea  user application.


I know it could be hard to make or require some company level decisions , just my suggestion to improve meta trader.

3d is nice feature, but I would prefer a lot to have all basic stuff to be fixed in priority, and there are a lot believe me.

Developing game inside a trading platform, really ?

 
Alain Verleyen:

3d is nice feature, but I would prefer a lot to have all basic stuff to be fixed in priority, and there are a lot believe me.

Developing game inside a trading platform, really ?

It could be a game or a very well styled trading robot with fully customized gui.

 
It’s nice 
Reason: