diff --git a/libobs/graphics/device-exports.h b/libobs/graphics/device-exports.h index f044b9bb7..5bb29c248 100644 --- a/libobs/graphics/device-exports.h +++ b/libobs/graphics/device-exports.h @@ -29,7 +29,7 @@ EXPORT bool device_enum_adapters( bool (*callback)(void *param, const char *name, uint32_t id), void *param); EXPORT const char *device_preprocessor_name(void); -EXPORT int device_create(gs_device_t **device, const struct gs_init_data *data); +EXPORT int device_create(gs_device_t **device, uint32_t adapter); EXPORT void device_destroy(gs_device_t *device); EXPORT void device_enter_context(gs_device_t *device); EXPORT void device_leave_context(gs_device_t *device); diff --git a/libobs/graphics/graphics-internal.h b/libobs/graphics/graphics-internal.h index e41bf4d0d..caed7a2c6 100644 --- a/libobs/graphics/graphics-internal.h +++ b/libobs/graphics/graphics-internal.h @@ -30,8 +30,7 @@ struct gs_exports { bool (*callback)(void*, const char*, uint32_t), void*); const char *(*device_preprocessor_name)(void); - int (*device_create)(gs_device_t **device, - const struct gs_init_data *data); + int (*device_create)(gs_device_t **device, uint32_t adapter); void (*device_destroy)(gs_device_t *device); void (*device_enter_context)(gs_device_t *device); void (*device_leave_context)(gs_device_t *device); diff --git a/libobs/graphics/graphics.c b/libobs/graphics/graphics.c index 012f3aa21..5a0b06008 100644 --- a/libobs/graphics/graphics.c +++ b/libobs/graphics/graphics.c @@ -139,19 +139,14 @@ static bool graphics_init(struct graphics_subsystem *graphics) return true; } -int gs_create(graphics_t **pgraphics, const char *module, - const struct gs_init_data *data) +int gs_create(graphics_t **pgraphics, const char *module, uint32_t adapter) { - struct gs_init_data new_data = *data; int errcode = GS_ERROR_FAIL; graphics_t *graphics = bzalloc(sizeof(struct graphics_subsystem)); pthread_mutex_init_value(&graphics->mutex); pthread_mutex_init_value(&graphics->effect_mutex); - if (!new_data.num_backbuffers) - new_data.num_backbuffers = 1; - graphics->module = os_dlopen(module); if (!graphics->module) { errcode = GS_ERROR_MODULE_NOT_FOUND; @@ -162,7 +157,7 @@ int gs_create(graphics_t **pgraphics, const char *module, module)) goto error; - errcode = graphics->exports.device_create(&graphics->device, &new_data); + errcode = graphics->exports.device_create(&graphics->device, adapter); if (errcode != GS_SUCCESS) goto error; diff --git a/libobs/graphics/graphics.h b/libobs/graphics/graphics.h index c50fa5b40..7bb157a14 100644 --- a/libobs/graphics/graphics.h +++ b/libobs/graphics/graphics.h @@ -452,7 +452,7 @@ EXPORT void gs_enum_adapters( void *param); EXPORT int gs_create(graphics_t **graphics, const char *module, - const struct gs_init_data *data); + uint32_t adapter); EXPORT void gs_destroy(graphics_t *graphics); EXPORT void gs_enter_context(graphics_t *graphics);