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