get OpenGL to work
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
#include "opengl_output_device.h"
|
||||
|
||||
gnReturnCode createOpenGLOutputDevice(gnOutputDeviceHandle outputDevice, gnInstanceHandle instance, gnOutputDeviceInfo deviceInfo) { return GN_SUCCESS; }
|
||||
gnReturnCode createOpenGLOutputDevice(gnInstanceHandle instance, gnOutputDeviceHandle device, gnOutputDeviceInfo deviceInfo) { return GN_SUCCESS; }
|
||||
void waitForOpenGLDevice(const gnOutputDeviceHandle device) {}
|
||||
void destroyOpenGLOutputDevice(gnOutputDeviceHandle device) {}
|
||||
|
@@ -3,6 +3,6 @@
|
||||
|
||||
typedef struct gnPlatformOutputDevice_t {} gnPlatformOutputDevice;
|
||||
|
||||
gnReturnCode createOpenGLOutputDevice(gnOutputDeviceHandle outputDevice, gnInstanceHandle instance, gnOutputDeviceInfo deviceInfo);
|
||||
gnReturnCode createOpenGLOutputDevice(gnInstanceHandle instance, gnOutputDeviceHandle device, gnOutputDeviceInfo deviceInfo);
|
||||
void waitForOpenGLDevice(const gnOutputDeviceHandle device);
|
||||
void destroyOpenGLOutputDevice(gnOutputDeviceHandle device);
|
||||
|
@@ -1,11 +1,12 @@
|
||||
#include "opengl_physical_device.h"
|
||||
#include "stdlib.h"
|
||||
|
||||
gnPhysicalDevice* getOpenGLDevice(gnInstanceHandle instance, uint32_t* deviceCount) {
|
||||
*deviceCount = 1;
|
||||
|
||||
gnPhysicalDevice* devices = malloc(sizeof(gnPhysicalDevice));
|
||||
|
||||
gnPhysicalDevice device = {
|
||||
devices[0] = malloc(sizeof(struct gnPhysicalOutputDevice_t));
|
||||
*devices[0] = (struct gnPhysicalOutputDevice_t){
|
||||
.physicalDevice = malloc(sizeof(gnPlatformPhysicalDevice)),
|
||||
.features = {
|
||||
.maxColorSamples = GN_SAMPLE_BIT_1,
|
||||
@@ -16,20 +17,10 @@ gnPhysicalDevice* getOpenGLDevice(gnInstanceHandle instance, uint32_t* deviceCou
|
||||
.properties = {
|
||||
.deviceType = GN_DEDICATED_DEVICE,
|
||||
.name = gnCreateString("Generic OpenGL device")
|
||||
},
|
||||
.queueProperties = {
|
||||
.queueCount = 1,
|
||||
.queueProperties = (gnQueueProperties[1]){
|
||||
(gnQueueProperties){
|
||||
.queueCount = 1,
|
||||
.queueType = GN_QUEUE_GRAPHICS
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
devices[0] = device;
|
||||
return devices;
|
||||
}
|
||||
gnBool openGLQueueCanPresent(const gnPhysicalDevice device, uint32_t queueIndex, gnWindowSurfaceHandle windowSurface) {
|
||||
return gnTrue;
|
||||
gnBool openglCanDevicePresent(gnPhysicalDevice device, gnWindowSurfaceHandle windowSurface) {
|
||||
return GN_TRUE;
|
||||
}
|
||||
|
@@ -5,4 +5,4 @@
|
||||
typedef struct gnPlatformPhysicalDevice_t {} gnPlatformPhysicalDevice;
|
||||
|
||||
gnPhysicalDevice* getOpenGLDevice(gnInstanceHandle instance, uint32_t* deviceCount);
|
||||
gnBool openGLQueueCanPresent(const gnPhysicalDevice device, uint32_t queueIndex, gnWindowSurfaceHandle windowSurface);
|
||||
gnBool openglCanDevicePresent(gnPhysicalDevice device, gnWindowSurfaceHandle windowSurface);
|
||||
|
Reference in New Issue
Block a user