בעייה ב-DirectX...

MotiAd

New member
בעייה ב-DirectX...

שלום רב לכם, הנה קוד ב-VB אבל אפשר להבין מתוכו גם מי שלא מתעסק עם השפה הזו. בכל אופן כל מה שאני מנסה לעשות הוא לבצע CreateDevice ואני מקבל שגיאה שמספרה: 0x8876086C. אין לי מושג מה השגיאה הזו אומרת אבל לפי מה שהבנתי הבעייה היא שהוא לא מצליח ליצור התקן. הבעייה חוזרת גם בקוד שנוצר בשפת ++C. והקוד הוא של מייקרוסופט מה-SDK של DX8. גירסת DX שיש לי במחשב היא 8.1. ומערכת ההפעלה שלי היא Windows 2000. כרטיס המסך שלי הוא Voodoo 3 3000 (שלום לכל הצוחקים). Dim d As New DxVBLibA.DirectX8() Dim d3d As DxVBLibA.Direct3D8 Dim device As DxVBLibA.Direct3DDevice8 Dim info As DxVBLibA.D3DPRESENT_PARAMETERS Dim mode As DxVBLibA.D3DDISPLAYMODE d3d = d.Direct3DCreate() If IsNothing(d3d) Then MsgBox("Nothing") End End If d3d.GetAdapterDisplayMode(DxVBLibA.CONST_D3DCONST.D3DADAPTER_DEF AULT, mode) With info .BackBufferFormat = mode.Format .SwapEffect = DxVBLibA.CONST_D3DSWAPEFFECT.D3DSWAPEFFECT_COPY_VSYNC .Windowed = 1 End With Try device = d3d.CreateDevice(DxVBLibA.CONST_D3DCONST.D3DADAPTER_DEFAULT, DxVBLibA.CONST_D3DDEVTYPE.D3DDEVTYPE_HAL, PictureBox1.Handle.ToInt32(), DxVBLibA.CONST_D3DCREATEFLAGS.D3DCREATE_FPU_PRESERVE And DxVBLibA.CONST_D3DCREATEFLAGS.D3DCREATE_MIXED_VERTEXPROCESSI NG, info) Catch err As Exception MsgBox(err.Message & vbCrLf & err.Source) End End Try אני אודה מאוד לכל מי שיוכל לעזור לי. ניסיתי להתקין מחדש את הדרייברים וזה גם לא צלח (ההתקנה הלכה בסדר אבל זה לא עזר). שלכם, מוטי.
 

gilad g

New member
יישר את הקוד לשמאל, בבקשה ../images/Emo13.gif

תודה
 

MotiAd

New member
לא מאמין שזה יצא ככה, אבל:...

Dim d As New DxVBLibA.DirectX8() Dim d3d As DxVBLibA.Direct3D8 Dim device As DxVBLibA.Direct3DDevice8 Dim info As DxVBLibA.D3DPRESENT_PARAMETERS Dim mode As DxVBLibA.D3DDISPLAYMODE d3d = d.Direct3DCreate() If IsNothing(d3d) Then MsgBox("Nothing") End End If d3d.GetAdapterDisplayMode(DxVBLibA.CONST_D3DCONST.D3DADAPTER_DEF AULT, mode) With info .BackBufferFormat = mode.Format .SwapEffect = DxVBLibA.CONST_D3DSWAPEFFECT.D3DSWAPEFFECT_COPY_VSYNC .Windowed = 1 End With Try device = השגיאה מתרחת בשורה הזו(שמתחת) d3d.CreateDevice(DxVBLibA.CONST_D3DCONST.D3DADAPTER_DEFAULT, DxVBLibA.CONST_D3DDEVTYPE.D3DDEVTYPE_HAL, PictureBox1.Handle.ToInt32(), DxVBLibA.CONST_D3DCREATEFLAGS.D3DCREATE_FPU_PRESERVE And DxVBLibA.CONST_D3DCREATEFLAGS.D3DCREATE_MIXED_VERTEXPROCESSI NG, info) Catch err As Exception MsgBox(err.Message & vbCrLf & err.Source) End End Try​
 

tberger

New member
רעיונות

קודם כל יצא SDK חדש 9.0b. האם אתה עובד עם VS.NET? האם יש לך REFERENCE ל DLL המתאים? האם יש לך השלמה אוטומטית של שמות אוביקטים של ה DirectX? אולי בכלל הקומפיילר לא מכיר את האוביקטים אליהם אתה פונה.
 
למעלה