Échec de Directx 8 en raison d’une exception

la programmation

[ad_1]

Je rencontre un problème sur un projet ; je souhaite créer une image 3D en utilisant DirectX 8 mais je n’arrive pas à créer l’image car cela génère une exception :

<pre lang="text">argumentnullException the argument of D3D.createDevice 's last parameter was null.

Mon code :

Ce que j’ai essayé :

<pre lang="VB">
Imports System
imports system.drawing
imports system.data
imports system.collections.generic
imports system.windows.forms
imports Microsoft.direct4XVB.directX8
public class cellular
inherits Forms
Dim Dx8 As DirectX8
Dim D3D As Direct3D8
Dim app As Object = createObject("app")
Dim Device As Direct3Ddevice8
Dim apprunning As Boolean
Public Function init() As boolean
 On Error goto  errHdl:
  Dim Dispmode As D3Ddisplaymode,_
  Dwindow As D3Dpresent_parameters 
  Dx8=new DirectX8()
  D3D = Dx8.Direct3Dcreate()
  'the rest of the code isn't important reply 1209 to view it
  'the code where the problem Revolves 
  D3Ddevice = D3D.createDevice(D3Dadapter_default,D3Dedevtype_hal,D3Dcreate_software_vertexprocessing,D3Dwindow)
  init()=true
  Exit Function
  errhdl:
    init()=false
 End Function
End Class

Solution 1

Tout d’abord, arrêtez d’utiliser On Error – utiliser le plus moderne Try ... Catch plutôt.

Regardez ensuite la définition de la fonction :
IDirect3D9 :: CreateDevice (d3d9.h) – Applications Win32 | Microsoft Apprendre[^]

Ou le tutoriel MS :
IDirect3D9 :: CreateDevice (d3d9.h) – Applications Win32 | Microsoft Apprendre[^]

Il nécessite 6 paramètres, et vous n’en fournissez que 4…

[ad_2]

コメント

Titre et URL copiés