官术网_书友最值得收藏!

Adding an OpenGL loader

There is some external code that this chapter depends on, called glad. When you create a new OpenGL context on Windows, it's created with a legacy OpenGL context. The extension mechanism of OpenGL will let you use this legacy context to create a new modern context.

Once the modern context is created, you will need to get function pointers to all OpenGL functions. The functions need to be loaded with wglGetProcAdress, which returns a function pointer.

Loading every OpenGL function in this fashion would be very time-consuming. This is where having an OpenGL loader comes in; glad will do all this work for you. An OpenGL loader is a library or some code that calls wglGetProcAdress on the functions that the OpenGL API defines.

There are several OpenGL loaders available on Windows.; this book will use glad. glad is a small library that consists of only a few files. It has a simple API; you call one function and get access to all the OpenGL functions. glad has a web-based interface; you can find it at https://glad.dav1d.de/.

Important note

When using an X Windows system, such as many popular Linux distributions, the function to load OpenGL functions is glXGetProcAddress. As with Windows, there are OpenGL loaders available for Linux as well. Not all OSes need an OpenGL loader; for example, macOS, iOS, and Android don't need a loader. Both iOS and Android run on OpenGL ES.

主站蜘蛛池模板: 崇义县| 扬中市| 麻阳| 阜新市| 德惠市| 泉州市| 镶黄旗| 宁化县| 泽普县| 赣州市| 图木舒克市| 墨竹工卡县| 峨边| 常山县| 渭源县| 资中县| 大同县| 夏邑县| 兰州市| 偏关县| 宁明县| 赤峰市| 喀什市| 通河县| 和顺县| 南靖县| 上高县| 偃师市| 汉寿县| 黄大仙区| 辽源市| 呼玛县| 杨浦区| 澎湖县| 水城县| 龙陵县| 崇信县| 嘉义市| 晋江市| 渭源县| 仙游县|