 |
Flutter Impeller
|
|
Go to the documentation of this file.
8 #include "GLFW/glfw3.h"
13 fprintf(stderr,
"GLFW Error (%d): %s\n", error, description);
18 return glfwGetProcAddress(proc_name);
21 int main(
int argc,
char const* argv[]) {
23 [[maybe_unused]]
int result = glfwInit();
24 assert(result == GLFW_TRUE);
26 glfwWindowHint(GLFW_CONTEXT_CREATION_API, GLFW_EGL_CONTEXT_API);
29 glfwCreateWindow(800, 600,
"Impeller Example", NULL, NULL);
30 assert(window != NULL);
32 int framebuffer_width, framebuffer_height;
33 glfwGetFramebufferSize(window, &framebuffer_width, &framebuffer_height);
36 glfwMakeContextCurrent(window);
40 assert(context != NULL);
43 surface_size.
width = framebuffer_width;
44 surface_size.
height = framebuffer_height;
48 assert(surface != NULL);
50 ImpellerDisplayList dl = NULL;
75 while (!glfwWindowShouldClose(window)) {
78 glfwSwapBuffers(window);
85 glfwMakeContextCurrent(NULL);
87 glfwDestroyWindow(window);
IMPELLER_EXPORT IMPELLER_NODISCARD ImpellerSurface IMPELLER_NULLABLE ImpellerSurfaceCreateWrappedFBONew(ImpellerContext IMPELLER_NULLABLE context, uint64_t fbo, ImpellerPixelFormat format, const ImpellerISize *IMPELLER_NULLABLE size)
int main(int argc, char const *argv[])
IMPELLER_EXPORT void ImpellerDisplayListBuilderRelease(ImpellerDisplayListBuilder IMPELLER_NULLABLE builder)
IMPELLER_EXPORT void ImpellerDisplayListBuilderDrawRect(ImpellerDisplayListBuilder IMPELLER_NONNULL builder, const ImpellerRect *IMPELLER_NONNULL rect, ImpellerPaint IMPELLER_NONNULL paint)
IMPELLER_EXPORT void ImpellerContextRelease(ImpellerContext IMPELLER_NULLABLE context)
IMPELLER_EXPORT bool ImpellerSurfaceDrawDisplayList(ImpellerSurface IMPELLER_NULLABLE surface, ImpellerDisplayList IMPELLER_NONNULL display_list)
IMPELLER_EXPORT void ImpellerSurfaceRelease(ImpellerSurface IMPELLER_NULLABLE surface)
IMPELLER_EXPORT void ImpellerDisplayListRelease(ImpellerDisplayList IMPELLER_NULLABLE display_list)
void GLFWErrorCallback(int error, const char *description)
IMPELLER_EXPORT IMPELLER_NODISCARD ImpellerDisplayList IMPELLER_NULLABLE ImpellerDisplayListBuilderCreateDisplayListNew(ImpellerDisplayListBuilder IMPELLER_NONNULL builder)
@ kImpellerPixelFormatRGBA8888
IMPELLER_EXPORT void ImpellerPaintSetColor(ImpellerPaint IMPELLER_NONNULL paint, const ImpellerColor *IMPELLER_NONNULL color)
IMPELLER_EXPORT IMPELLER_NODISCARD ImpellerDisplayListBuilder IMPELLER_NULLABLE ImpellerDisplayListBuilderNew(const ImpellerRect *IMPELLER_NULLABLE cull_rect)
IMPELLER_EXPORT IMPELLER_NODISCARD ImpellerPaint IMPELLER_NULLABLE ImpellerPaintNew()
IMPELLER_EXPORT void ImpellerPaintRelease(ImpellerPaint IMPELLER_NULLABLE paint)
IMPELLER_EXPORT IMPELLER_NODISCARD ImpellerContext IMPELLER_NULLABLE ImpellerContextCreateOpenGLESNew(uint32_t version, ImpellerProcAddressCallback IMPELLER_NONNULL gl_proc_address_callback, void *IMPELLER_NULLABLE gl_proc_address_callback_user_data)
IMPELLER_EXPORT void ImpellerDisplayListBuilderDrawPaint(ImpellerDisplayListBuilder IMPELLER_NONNULL builder, ImpellerPaint IMPELLER_NONNULL paint)
void * ProcAddressCallback(const char *proc_name, void *user_data)