Discussão do artigo "Tutorial DirectX (Parte I): Desenhando o primeiro triângulo"

 

Novo artigo Tutorial DirectX (Parte I): Desenhando o primeiro triângulo foi publicado:

Este é um artigo introdutório sobre o DirectX, que descreve as especificidades da operação com a API. Ele deve ajudar a entender a ordem em que seus componentes são inicializados. O artigo contém um exemplo de como escrever um script MQL5 que renderiza um triângulo usando o DirectX.

A renderização de primitivas é o objetivo principal da API gráfica. As placas de vídeo modernas são adaptadas para a renderização rápida de um grande número de triângulos. Na verdade, no atual estágio de desenvolvimento da computação gráfica, a maneira mais eficaz de desenhar objetos 3D é criar uma superfície a partir de polígonos. Uma superfície pode ser descrita especificando apenas três pontos. O software de modelagem 3D geralmente usa retângulos, mas a placa gráfica ainda forçará os polígonos em triângulos.

Malha

Malha de triângulos

Autor: Rorschach

 
MetaQuotes:

Um novo artigo Tutorial do DirectX (Parte 1): desenhando o primeiro triângulo foi lançado:

Autor: Rorschach

 
Bom artigo
 
O artigo ficou muito bom e muito bem escrito. Mas gostaria de deixar como dica para futuros artigos, você disponibilizar em anexo o código fonte usado ne explicação, para quem deseja ver a coisa funcionando de fato, assim o interesse no artigo será ainda maior ... LEMBRE-SE : Muitos estão começando a aprender MQL5, e não vão conseguir de fato acompanhar a explicação a ponto de fazer um código funcional, o que acabara por desestimular a pessoa a aprender a programar em MQL5 ... principalmente que tem muito pouca experiência em programação. Fica ai a dica ... 😁👍
 
Daniel Jose #:
O artigo ficou muito bom e muito bem escrito. Mas gostaria de deixar como dica para futuros artigos, você disponibilizar em anexo o código fonte usado ne explicação, para quem deseja ver a coisa funcionando de fato, assim o interesse no artigo será ainda maior ... LEMBRE-SE : Muitos estão começando a aprender MQL5, e não vão conseguir de fato acompanhar a explicação a ponto de fazer um código funcional, o que acabara por desestimular a pessoa a aprender a programar em MQL5 ... principalmente que tem muito pouca experiência em programação. Fica ai a dica ... 😁👍
Thanks for the feedback. All code is presented in the article, nothing has been cut.
 

não foi executado?

2023.05.05 15:03:12.927 DXTutorial ( EURUSD,M1) Erro: falha ao criar o contexto gráfico: 5151


 
okwh #:

não está funcionando?

2023.05.05 15:03:12.927 DXTutorial (EURUSD,M1) Erro: falha ao criar o contexto gráfico: 5151


.

Arquivos anexados:
DX.mq5  21 kb
 
Rorschach #:

.

Senhor:

Seu este DX.mq5 é o mesmo que DXTutorial.mq5, e recebeu o mesmo erro: Ошибка , не удалось создать графический контекст: 5151


Verifiquei o código e descobri que a função DXContextCreate falha! todas as amostras em https://www.mql5.com/en/articles/7708  deram o mesmo erro.

Quando altero o código como

   Print("Before DXContextCreate");
   m_dx_context = DXContextCreate(m_width, m_height);
   if(m_dx_context == INVALID_HANDLE)
     {
      Print("Ошибка, не удалось создать графический контекст: ", GetLastError());
      return(false);
     }
   Print("After DXContextCreate");

recebi que

2023.05.09 18:32:21.723 DX (EURUSD,H1) Before DXContextCreate

2023.05.09 18:32:21.727 DX (EURUSD,H1) Ошибка, не удалось создать графический контекст: 5151


Não consigo depurá-lo, meu sistema operacional é o Windows Server 2019 e o adaptador de tela é o Nivida Quadro FX 1700, e o DXdiag informou que ele suporta o DirectX12



Use seu telefone celular para "deslizar" x
How to create 3D graphics using DirectX in MetaTrader 5
How to create 3D graphics using DirectX in MetaTrader 5
  • www.mql5.com
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.
 
okwh #:
Quadro FX 1700

A Quadro FX 1700 foi uma placa de vídeo profissional de classe entusiasta da NVIDIA, lançada em 12 de setembro de 2007. Construída no processo de 80 nm e baseada no processador gráfico G84, em sua variante G84-875-A2, a placa suporta DirectX 11.1. Construída no processo de 80 nm e baseada no processador gráfico G84, em sua variante G84-875-A2, a placa é compatível com o DirectX 11.1. Embora seja compatível com o DirectX 11, o nível de recursos é de apenas 10_0%. Embora seja compatível com o DirectX 11, o nível de recursos é de apenas 10_0 Embora seja compatível com o DirectX 11, o nível de recursos é de apenas 10_0, o que pode ser problemático com muitos títulos DirectX 11 e DirectX 12.

Tente isso.


DirectX
DirectX
  • 2020.04.22
  • www.mql5.com
Привет, кто-нибудь уже разобрался с directx, там есть DirectCompute...
 
Rorschach #:
problemático

Obrigado!

Sim, eu encontrei, o nível de recurso DirectX do FX 1700 suporta apenas a versão 10.0, é um adaptador de jogo antigo .

DXDiag: Versão do DirectX: DirectX 12, Tipo de chip: Quadro FX 1700 Data/tamanho do driver: 2016-10-18 8:00:00, 17559200 bytes

Versão do DDI: 11.1 Níveis de recursos: 10_0,9_3,9_2,9_1 & nbsp; Modelo de driver: WDDM 1.2

Vou tentar, caso contrário, talvez eu troque meu adaptador de diaplay nesse PC servidor.


Testei o código em meu PC com bloco de notas e sistema operacional Windows 11, e tudo funcionou bem.

 
Rorschach #:

A Quadro FX 1700 foi uma placa de vídeo profissional de classe entusiasta da NVIDIA, lançada em 12 de setembro de 2007. Construída no processo de 80 nm e baseada no processador gráfico G84, em sua variante G84-875-A2, a placa suporta DirectX 11.1. Construída no processo de 80 nm e baseada no processador gráfico G84, em sua variante G84-875-A2, a placa é compatível com o DirectX 11.1. Embora seja compatível com o DirectX 11, o nível de recursos é de apenas 10_0%. Embora seja compatível com o DirectX 11, o nível de recursos é de apenas 10_0 Embora seja compatível com o DirectX 11, o nível de recursos é de apenas 10_0, o que pode ser problemático com muitos títulos DirectX 11 e DirectX 12.

Tente isso.


Mais uma vez, obrigado!

Quando definir Forçar WARP para MT, execute OK!