On 3 February 2010 19:06, Stefan Dösinger <[email protected]> wrote: > > Am 03.02.2010 um 18:17 schrieb Henri Verbeet: > >> On the subject of actually supporting software devices, we should probably >> implement those by creating a software or reference adapter with appropriate >> gl_info and pipe implementations and creating a device based on that. > Wouldn't that conflict with how adapters work in the d3d8/9 API? There an > adapter identifies the display hardware, not necessarily the rendering device. > A little, but the adapter as such is never exposed in those APIs, just its index. For cases where it matters (e.g. CheckDeviceFormat()) you also get a device type parameter.
> Or, to phrase it in API terms: > >> static HRESULT WINAPI IWineD3DImpl_CreateDevice(IWineD3D *iface, UINT >> adapter_idx, >> WINED3DDEVTYPE device_type, HWND focus_window, DWORD flags, IUnknown >> *parent, >> IWineD3DDeviceParent *device_parent, IWineD3DDevice **device) > You'd want to remove device_type from here as well if we merge it into the > adapter(and then deal with splitting up wined3d adapters into d3d8/9 adapters > and device types in the client libs) > Exposing real wined3d adapters to the client libraries may not be a bad idea, but it's not required here. You could use adapter_idx and device_type together to pick an appropriate adapter to create the device with.
