<br>Hi,All<br><br>I try to run a 3D application named "Unity 3d" with Wine, but failed.<br><br>And there is already a bug report about that: <br><br>Bug 18061 - Unity Indie Trial Editor window contents not drawn <br>
<a href="http://bugs.winehq.org/show_bug.cgi?id=18061">http://bugs.winehq.org/show_bug.cgi?id=18061</a><br><br><br>Now I try to find out the reason.<br><br>So, I follow the error messages:<br><br>...<br>err:wgl:internal_SetPixelFormat Couldn't set format of the window, returning failure<br>
err:d3d:CreateContext SetPixelFormat failed on HDC=0x1534 for iPixelFormat=3<br>err:d3d:IWineD3DDeviceImpl_CreateSwapChain Failed to create a new context<br>... <br><br><br>do<br><br>------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>
<br>vim dlls/winex11.drv/opengl.c <br><br><br>/* This function is the core of X11DRV_SetPixelFormat and X11DRV_SetPixelFormatWINE.<br> * Both functions are the same except that X11DRV_SetPixelFormatWINE allows you to<br> * set the pixel format multiple times. */<br>
static BOOL internal_SetPixelFormat(X11DRV_PDEVICE *physDev,<br> int iPixelFormat,<br> const PIXELFORMATDESCRIPTOR *ppfd) {<br> WineGLPixelFormat *fmt;<br> int value;<br>
HWND hwnd;<br><br>....<br><br> if(!SendMessageW(hwnd, WM_X11DRV_SET_WIN_FORMAT, (WPARAM)fmt->fmt_id, 0)) {<br> ERR("Couldn't set format of the window, returning failure\n");<br> return FALSE;<br>
}<br> }<br>.......<br><br>------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>
<br>But i can not find the definition of function "SendMessageW", <br><br><br>in wine-1.1.30/dlls , i run " grep -ir --color SendMessageW . |grep spec ", just found something like this:<br>
<br>------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>./user32/user32.spec:@ stdcall SendMessageW(long long long long)<br>
./unicows/unicows.spec:@ stdcall SendMessageW(long long long long)<br>./wtsapi32/wtsapi32.spec:@ stub WTSSendMessageW<br>./shlwapi/shlwapi.spec:136 stdcall -noname SendMessageWrapW(long long long long) user32.SendMessageW<br>
<br>------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------<br><br>And I am not familiar with C programming.<br>
<br>Any ideas? Thanks.<br><br><br><br><br>