{"id":578,"date":"2024-05-13T12:36:17","date_gmt":"2024-05-13T04:36:17","guid":{"rendered":"https:\/\/ultserver.com\/blog\/?p=578"},"modified":"2024-12-27T10:25:58","modified_gmt":"2024-12-27T02:25:58","slug":"opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c","status":"publish","type":"post","link":"https:\/\/ultserver.com\/blog\/cg\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\/","title":{"rendered":"OpenGL\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898&amp;\u7ecf\u9a8c"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">TBN\u7684\u4f7f\u7528\u65b9\u5f0f<\/h2>\n\n\n\n<p>LearnOpenGL\u6307\u51fa\uff0c\u4f7f\u7528TBN\u77e9\u9635\u8f6c\u6362\u6cd5\u7ebf\u5750\u6807\u7cfb\u65f6\u6709\u4e24\u79cd\u5e38\u89c1\u65b9\u5f0f\uff0c\u4e00\u662f\u5728\u9876\u70b9\u7740\u8272\u5668\u4e2d\u8ba1\u7b97TBN\uff0c\u8ba9\u540e\u628aTBN\u4f20\u7ed9\u7247\u5143\u7740\u8272\u5668\u7528\u4e8e\u5c06\u6cd5\u7ebf\u8f6c\u5316\u5230\u4e16\u754c\u5750\u6807\u7cfb\uff1b\u5176\u6b21\u662f\u5728\u9876\u70b9\u7740\u8272\u5668\u4e2d\u76f4\u63a5\u5229\u7528TBN\u7684\u9006\u5c06\u5149\u6e90\u5c5e\u6027\u8f6c\u5316\u5230\u5207\u7ebf\u7a7a\u95f4\u4e4b\u4e0b\uff0c\u8fd9\u6837\u53ef\u4ee5\u907f\u514d\u7247\u5143\u7740\u8272\u5668\u4e2d\u8fdb\u884c\u77e9\u9635\u8fd0\u7b97\u3002\u56e0\u6b64\u5b9e\u73b0\u65f6\u901a\u5e38\u504f\u5411\u4e8e\u7b2c\u4e8c\u79cd<\/p>\n\n\n\n<p>\u4e0d\u8fc7\u5b9e\u9645\u4e0a\uff0c\u7b2c\u4e8c\u79cd\u65b9\u5f0f\u5728\u7247\u5143\u7740\u8272\u5668\u6027\u80fd\u53d7\u9650\u7684\u65e7\u8bbe\u5907\u4e0a\u80fd\u591f\u8d77\u5230\u4f18\u5316\u4f5c\u7528\uff0c\u5e76\u4e14\u4ec5\u9002\u7528\u4e8e\u5355\u5149\u6e90\u7684\u573a\u666f\uff0c\u56e0\u4e3a\u591a\u5149\u6e90\u9700\u8981\u5bf9\u6bcf\u4e2a\u5149\u6e90\u90fd\u8fdb\u884c\u53d8\u6362\u548c\u5dee\u503c\uff0c\u6027\u80fd\u53cd\u800c\u53ef\u80fd\u4f1a\u66f4\u4f4e\u3002\u3010<a href=\"https:\/\/stackoverflow.com\/a\/21271414\/11889237\">\u53c2\u8003<\/a>\u3011<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Cube Map\u7684\u8f74\u5411<\/h2>\n\n\n\n<p>\u4e0d\u540c\u4e8e\u666e\u901a\u7eb9\u7406\uff0cCube Map\u4e2d\u6bcf\u4e2a\u56fe\u50cf\u539f\u70b9\u662f\u4f4d\u4e8e\u5de6\u4e0b\u89d2\u7684\uff0c\u56e0\u6b64\u52a0\u8f7d\u56fe\u7247\u65f6\u65e0\u9700\u8fdb\u884c\u7ffb\u8f6c\u3002\u3010<a href=\"https:\/\/stackoverflow.com\/a\/11690553\/11889237\">\u53c2\u8003<\/a>\u3011<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">OpenGL\u5750\u6807\u7cfb\u8f74\u5411\u6539\u53d8<\/h2>\n\n\n\n<p>\u5982\u679c\u4e00\u76f4\u5728\u53f3\u624b\u7cfb\u4e2d\u8fdb\u884c\u53d8\u6362\uff0c\u6700\u7ec8NDC\u7684\u6df1\u5ea6\u503c\u8d8a\u5c0f\u8d8a\u8fdc\uff0c\u4e0e\u77e5\u89c9\u76f8\u6096\u3002OpenGL\u4e2d\uff0c\u6295\u5f71\u77e9\u9635\u4f1a\u5c06\u53f3\u624b\u7cfb\u53d8\u4e3a\u5de6\u624b\u7cfb\uff08\u5373\u53cd\u8f6cZ\uff09\uff0c\u4ece\u800c\u4f7f\u5f97\u6df1\u5ea6\u503c\u8d8a\u5927\u8d8a\u8fdc\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u8c03\u8bd5\u6280\u5de7<\/h2>\n\n\n\n<p>Debug\u6280\u5de7\uff0c\u76f4\u63a5\u52a0\u65ad\u70b9\uff0c\u5b9a\u4f4dGL\u62a5\u9519\u4f4d\u7f6e\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Sampler\u7ed1\u5b9a\u95ee\u9898<\/h2>\n\n\n\n<p>Sampler\u4e0d\u540c\uff0c\u4e0d\u80fd\u7ed1\u5b9a\u76f8\u540c\u7684unit\uff0c\u5bfc\u81f4default\u60c5\u51b5\u4e0b\uff0c\u4ea7\u751f\u51b2\u7a81\uff08GL_INVALID_OPERATION error generated. State(s) are invalid: program texture usage\uff09<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u6750\u8d28\u5927\u5c0f<\/h2>\n\n\n\n<p>\u6750\u8d28\u5927\u5c0f\u7531glTexImage2D\u51b3\u5b9a\uff0cViewport\u4ec5\u5f71\u54cd\u5199\u5165<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u6c47\u603b\u4e86OpenGL\u5f00\u53d1\u8fc7\u7a0b\u4e2d\u9047\u5230\u7684\u4e00\u4e9b\u56fe\u5f62\u5f00\u53d1\u7684\u76f8\u5173\u95ee\u9898\u548c\u7ecf\u9a8c<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","wikipediapreview_detectlinks":true,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[4],"tags":[46,10],"class_list":["post-578","post","type-post","status-publish","format-standard","hentry","category-cg","tag-opengl","tag-10"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>OpenGL\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898&amp;\u7ecf\u9a8c - UltBlog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/ultserver.com\/blog\/cg\/opengl\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898\u7ecf\u9a8c\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"OpenGL\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898&amp;\u7ecf\u9a8c - UltBlog\" \/>\n<meta property=\"og:description\" content=\"\u6c47\u603b\u4e86OpenGL\u5f00\u53d1\u8fc7\u7a0b\u4e2d\u9047\u5230\u7684\u4e00\u4e9b\u56fe\u5f62\u5f00\u53d1\u7684\u76f8\u5173\u95ee\u9898\u548c\u7ecf\u9a8c\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ultserver.com\/blog\/cg\/opengl\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898\u7ecf\u9a8c\/\" \/>\n<meta property=\"og:site_name\" content=\"UltBlog\" \/>\n<meta property=\"article:published_time\" content=\"2024-05-13T04:36:17+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-12-27T02:25:58+00:00\" \/>\n<meta name=\"author\" content=\"Ultcrt\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ultcrt\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/cg\\\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/cg\\\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\\\/\"},\"author\":{\"name\":\"Ultcrt\",\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/#\\\/schema\\\/person\\\/7e56085265669846c542f2b5790feab2\"},\"headline\":\"OpenGL\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898&amp;\u7ecf\u9a8c\",\"datePublished\":\"2024-05-13T04:36:17+00:00\",\"dateModified\":\"2024-12-27T02:25:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/cg\\\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\\\/\"},\"wordCount\":37,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/#\\\/schema\\\/person\\\/7e56085265669846c542f2b5790feab2\"},\"keywords\":[\"OpenGL\",\"\u957f\u671f\u66f4\u65b0\"],\"articleSection\":[\"\u56fe\u5f62\u5b66\"],\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/ultserver.com\\\/blog\\\/cg\\\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/cg\\\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\\\/\",\"url\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/cg\\\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\\\/\",\"name\":\"OpenGL\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898&amp;\u7ecf\u9a8c - UltBlog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/#website\"},\"datePublished\":\"2024-05-13T04:36:17+00:00\",\"dateModified\":\"2024-12-27T02:25:58+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/cg\\\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\\\/#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/ultserver.com\\\/blog\\\/cg\\\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/cg\\\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"OpenGL\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898&amp;\u7ecf\u9a8c\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/\",\"name\":\"UltBlog\",\"description\":\"Ultcrt\u7684\u4e2a\u4eba\u535a\u5ba2\",\"publisher\":{\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/#\\\/schema\\\/person\\\/7e56085265669846c542f2b5790feab2\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"zh-Hans\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/#\\\/schema\\\/person\\\/7e56085265669846c542f2b5790feab2\",\"name\":\"Ultcrt\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/LOGOv1.1.5-Transparent.png\",\"url\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/LOGOv1.1.5-Transparent.png\",\"contentUrl\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/LOGOv1.1.5-Transparent.png\",\"width\":800,\"height\":600,\"caption\":\"Ultcrt\"},\"logo\":{\"@id\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/LOGOv1.1.5-Transparent.png\"},\"description\":\"\u70ed\u7231\u5f00\u53d1\u548c\u6e38\u620f\",\"sameAs\":[\"https:\\\/\\\/ultserver.com\\\/blog\"],\"url\":\"https:\\\/\\\/ultserver.com\\\/blog\\\/author\\\/ultcrt\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"OpenGL\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898&amp;\u7ecf\u9a8c - UltBlog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/ultserver.com\/blog\/cg\/opengl\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898\u7ecf\u9a8c\/","og_locale":"zh_CN","og_type":"article","og_title":"OpenGL\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898&amp;\u7ecf\u9a8c - UltBlog","og_description":"\u6c47\u603b\u4e86OpenGL\u5f00\u53d1\u8fc7\u7a0b\u4e2d\u9047\u5230\u7684\u4e00\u4e9b\u56fe\u5f62\u5f00\u53d1\u7684\u76f8\u5173\u95ee\u9898\u548c\u7ecf\u9a8c","og_url":"https:\/\/ultserver.com\/blog\/cg\/opengl\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898\u7ecf\u9a8c\/","og_site_name":"UltBlog","article_published_time":"2024-05-13T04:36:17+00:00","article_modified_time":"2024-12-27T02:25:58+00:00","author":"Ultcrt","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"Ultcrt","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"1 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/ultserver.com\/blog\/cg\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\/#article","isPartOf":{"@id":"https:\/\/ultserver.com\/blog\/cg\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\/"},"author":{"name":"Ultcrt","@id":"https:\/\/ultserver.com\/blog\/#\/schema\/person\/7e56085265669846c542f2b5790feab2"},"headline":"OpenGL\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898&amp;\u7ecf\u9a8c","datePublished":"2024-05-13T04:36:17+00:00","dateModified":"2024-12-27T02:25:58+00:00","mainEntityOfPage":{"@id":"https:\/\/ultserver.com\/blog\/cg\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\/"},"wordCount":37,"commentCount":2,"publisher":{"@id":"https:\/\/ultserver.com\/blog\/#\/schema\/person\/7e56085265669846c542f2b5790feab2"},"keywords":["OpenGL","\u957f\u671f\u66f4\u65b0"],"articleSection":["\u56fe\u5f62\u5b66"],"inLanguage":"zh-Hans","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/ultserver.com\/blog\/cg\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/ultserver.com\/blog\/cg\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\/","url":"https:\/\/ultserver.com\/blog\/cg\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\/","name":"OpenGL\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898&amp;\u7ecf\u9a8c - UltBlog","isPartOf":{"@id":"https:\/\/ultserver.com\/blog\/#website"},"datePublished":"2024-05-13T04:36:17+00:00","dateModified":"2024-12-27T02:25:58+00:00","breadcrumb":{"@id":"https:\/\/ultserver.com\/blog\/cg\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\/#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ultserver.com\/blog\/cg\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/ultserver.com\/blog\/cg\/opengl%e5%bc%80%e5%8f%91%e6%97%b6%e9%81%87%e5%88%b0%e7%9a%84%e4%b8%80%e4%ba%9b%e9%97%ae%e9%a2%98%e7%bb%8f%e9%aa%8c\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/ultserver.com\/blog\/"},{"@type":"ListItem","position":2,"name":"OpenGL\u5f00\u53d1\u65f6\u9047\u5230\u7684\u4e00\u4e9b\u95ee\u9898&amp;\u7ecf\u9a8c"}]},{"@type":"WebSite","@id":"https:\/\/ultserver.com\/blog\/#website","url":"https:\/\/ultserver.com\/blog\/","name":"UltBlog","description":"Ultcrt\u7684\u4e2a\u4eba\u535a\u5ba2","publisher":{"@id":"https:\/\/ultserver.com\/blog\/#\/schema\/person\/7e56085265669846c542f2b5790feab2"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ultserver.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"zh-Hans"},{"@type":["Person","Organization"],"@id":"https:\/\/ultserver.com\/blog\/#\/schema\/person\/7e56085265669846c542f2b5790feab2","name":"Ultcrt","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/ultserver.com\/blog\/wp-content\/uploads\/2024\/03\/LOGOv1.1.5-Transparent.png","url":"https:\/\/ultserver.com\/blog\/wp-content\/uploads\/2024\/03\/LOGOv1.1.5-Transparent.png","contentUrl":"https:\/\/ultserver.com\/blog\/wp-content\/uploads\/2024\/03\/LOGOv1.1.5-Transparent.png","width":800,"height":600,"caption":"Ultcrt"},"logo":{"@id":"https:\/\/ultserver.com\/blog\/wp-content\/uploads\/2024\/03\/LOGOv1.1.5-Transparent.png"},"description":"\u70ed\u7231\u5f00\u53d1\u548c\u6e38\u620f","sameAs":["https:\/\/ultserver.com\/blog"],"url":"https:\/\/ultserver.com\/blog\/author\/ultcrt\/"}]}},"spectra_custom_meta":{"_edit_lock":["1735266523:1"],"_edit_last":["1"],"_yoast_wpseo_primary_category":["4"],"_yoast_wpseo_content_score":["90"],"_yoast_wpseo_estimated-reading-time-minutes":["1"],"_yoast_wpseo_wordproof_timestamp":[""],"_uagb_toc_options":["a:2:{s:17:\"_uagb_toc_version\";s:10:\"1777915058\";s:18:\"_uagb_toc_headings\";a:6:{i:0;a:4:{s:5:\"level\";i:2;s:2:\"id\";s:18:\"tbn\u7684\u4f7f\u7528\u65b9\u5f0f\";s:7:\"content\";s:18:\"TBN\u7684\u4f7f\u7528\u65b9\u5f0f\";s:5:\"depth\";i:2;}i:1;a:4:{s:5:\"level\";i:2;s:2:\"id\";s:17:\"cube-map\u7684\u8f74\u5411\";s:7:\"content\";s:17:\"Cube Map\u7684\u8f74\u5411\";s:5:\"depth\";i:2;}i:2;a:4:{s:5:\"level\";i:2;s:2:\"id\";s:27:\"opengl\u5750\u6807\u7cfb\u8f74\u5411\u6539\u53d8\";s:7:\"content\";s:27:\"OpenGL\u5750\u6807\u7cfb\u8f74\u5411\u6539\u53d8\";s:5:\"depth\";i:2;}i:3;a:4:{s:5:\"level\";i:2;s:2:\"id\";s:12:\"\u8c03\u8bd5\u6280\u5de7\";s:7:\"content\";s:12:\"\u8c03\u8bd5\u6280\u5de7\";s:5:\"depth\";i:2;}i:4;a:4:{s:5:\"level\";i:2;s:2:\"id\";s:19:\"sampler\u7ed1\u5b9a\u95ee\u9898\";s:7:\"content\";s:19:\"Sampler\u7ed1\u5b9a\u95ee\u9898\";s:5:\"depth\";i:2;}i:5;a:4:{s:5:\"level\";i:2;s:2:\"id\";s:12:\"\u6750\u8d28\u5927\u5c0f\";s:7:\"content\";s:12:\"\u6750\u8d28\u5927\u5c0f\";s:5:\"depth\";i:2;}}}"],"_uagb_previous_block_counts":["a:90:{s:21:\"uagb\/advanced-heading\";i:0;s:15:\"uagb\/blockquote\";i:0;s:12:\"uagb\/buttons\";i:0;s:18:\"uagb\/buttons-child\";i:0;s:19:\"uagb\/call-to-action\";i:0;s:15:\"uagb\/cf7-styler\";i:0;s:11:\"uagb\/column\";i:0;s:12:\"uagb\/columns\";i:0;s:14:\"uagb\/container\";i:0;s:21:\"uagb\/content-timeline\";i:0;s:27:\"uagb\/content-timeline-child\";i:0;s:14:\"uagb\/countdown\";i:0;s:12:\"uagb\/counter\";i:0;s:8:\"uagb\/faq\";i:0;s:14:\"uagb\/faq-child\";i:0;s:10:\"uagb\/forms\";i:0;s:17:\"uagb\/forms-accept\";i:0;s:19:\"uagb\/forms-checkbox\";i:0;s:15:\"uagb\/forms-date\";i:0;s:16:\"uagb\/forms-email\";i:0;s:17:\"uagb\/forms-hidden\";i:0;s:15:\"uagb\/forms-name\";i:0;s:16:\"uagb\/forms-phone\";i:0;s:16:\"uagb\/forms-radio\";i:0;s:17:\"uagb\/forms-select\";i:0;s:19:\"uagb\/forms-textarea\";i:0;s:17:\"uagb\/forms-toggle\";i:0;s:14:\"uagb\/forms-url\";i:0;s:14:\"uagb\/gf-styler\";i:0;s:15:\"uagb\/google-map\";i:0;s:11:\"uagb\/how-to\";i:0;s:16:\"uagb\/how-to-step\";i:0;s:9:\"uagb\/icon\";i:0;s:14:\"uagb\/icon-list\";i:0;s:20:\"uagb\/icon-list-child\";i:0;s:10:\"uagb\/image\";i:0;s:18:\"uagb\/image-gallery\";i:0;s:13:\"uagb\/info-box\";i:0;s:18:\"uagb\/inline-notice\";i:0;s:11:\"uagb\/lottie\";i:0;s:21:\"uagb\/marketing-button\";i:0;s:10:\"uagb\/modal\";i:0;s:18:\"uagb\/popup-builder\";i:0;s:16:\"uagb\/post-button\";i:0;s:18:\"uagb\/post-carousel\";i:0;s:17:\"uagb\/post-excerpt\";i:0;s:14:\"uagb\/post-grid\";i:0;s:15:\"uagb\/post-image\";i:0;s:17:\"uagb\/post-masonry\";i:0;s:14:\"uagb\/post-meta\";i:0;s:18:\"uagb\/post-taxonomy\";i:0;s:18:\"uagb\/post-timeline\";i:0;s:15:\"uagb\/post-title\";i:0;s:20:\"uagb\/restaurant-menu\";i:0;s:26:\"uagb\/restaurant-menu-child\";i:0;s:11:\"uagb\/review\";i:0;s:12:\"uagb\/section\";i:0;s:14:\"uagb\/separator\";i:0;s:11:\"uagb\/slider\";i:0;s:17:\"uagb\/slider-child\";i:0;s:17:\"uagb\/social-share\";i:0;s:23:\"uagb\/social-share-child\";i:0;s:16:\"uagb\/star-rating\";i:0;s:23:\"uagb\/sure-cart-checkout\";i:0;s:22:\"uagb\/sure-cart-product\";i:0;s:15:\"uagb\/sure-forms\";i:0;s:22:\"uagb\/table-of-contents\";i:0;s:9:\"uagb\/tabs\";i:0;s:15:\"uagb\/tabs-child\";i:0;s:18:\"uagb\/taxonomy-list\";i:0;s:9:\"uagb\/team\";i:0;s:16:\"uagb\/testimonial\";i:0;s:14:\"uagb\/wp-search\";i:0;s:19:\"uagb\/instagram-feed\";i:0;s:10:\"uagb\/login\";i:0;s:17:\"uagb\/loop-builder\";i:0;s:18:\"uagb\/loop-category\";i:0;s:20:\"uagb\/loop-pagination\";i:0;s:15:\"uagb\/loop-reset\";i:0;s:16:\"uagb\/loop-search\";i:0;s:14:\"uagb\/loop-sort\";i:0;s:17:\"uagb\/loop-wrapper\";i:0;s:13:\"uagb\/register\";i:0;s:19:\"uagb\/register-email\";i:0;s:24:\"uagb\/register-first-name\";i:0;s:23:\"uagb\/register-last-name\";i:0;s:22:\"uagb\/register-password\";i:0;s:30:\"uagb\/register-reenter-password\";i:0;s:19:\"uagb\/register-terms\";i:0;s:22:\"uagb\/register-username\";i:0;}"],"_uag_css_file_name":["uag-css-578.css"],"_uag_js_file_name":["uag-js-578.js"],"_uag_page_assets":["a:9:{s:3:\"css\";s:5938:\"\ufeff.wp-block-uagb-table-of-contents .uagb-toc__wrap{display:inline-block;max-width:-moz-available;max-width:-webkit-fill-available;max-width:fill-available}.wp-block-uagb-table-of-contents li.uagb-toc__list{padding-top:10px}.wp-block-uagb-table-of-contents ul.uagb-toc__list,.wp-block-uagb-table-of-contents ol.uagb-toc__list{list-style-position:inside;padding-left:0;margin-bottom:0;margin-left:2.2em}.wp-block-uagb-table-of-contents ul.uagb-toc__list li,.wp-block-uagb-table-of-contents ol.uagb-toc__list li{margin:0}.wp-block-uagb-table-of-contents ul li:empty{display:none}.wp-block-uagb-table-of-contents .uagb-toc__title-wrap{display:flex;align-items:center}.wp-block-uagb-table-of-contents .uagb-toc__title{display:flex;align-items:center}.wp-block-uagb-table-of-contents .uagb-toc__is-collapsible.uagb-toc__title-wrap{cursor:pointer}.wp-block-uagb-table-of-contents .uag-toc__collapsible-wrap svg{width:20px;height:20px}.wp-block-uagb-table-of-contents svg{width:20px;height:20px;display:inline-block;margin-left:10px;cursor:pointer}.wp-block-uagb-table-of-contents .uag-toc__collapsible-wrap{display:flex;margin-left:10px;cursor:pointer}.wp-block-uagb-table-of-contents.uagb-toc__collapse .uagb-toc__list-wrap{display:none}.wp-block-uagb-table-of-contents.uagb-toc__collapse--list ul.uagb-toc__list,.wp-block-uagb-table-of-contents.uagb-toc__collapse--list ol.uagb-toc__list{padding-left:2px}ol.uagb-toc__list li.uagb-toc__list ul,ol.uagb-toc__list ul.uagb-toc__list ul{list-style-type:circle}ol.uagb-toc__list>ul,ol.uagb-toc__list>li{list-style-type:disc}.uagb-toc__scroll-top{position:fixed;right:50px;bottom:50px;display:none;padding:10px;background:#ccd0d4;cursor:pointer;font-size:1rem;line-height:1.8571428571}.uagb-toc__scroll-top svg{width:1.6em;height:.6em;margin-left:0;transform:translate(0, -20%) rotate(180deg);fill:currentColor}.uagb-toc__scroll-top.uagb-toc__show-scroll{display:inline-table}body[class*=astra] .uagb-toc__list{line-height:normal}.uagb-toc__list{margin-top:0}.wp-block-uagb-table-of-contents ol.uagb-toc__list li.uagb-toc__list.uagb-toc__list--expandable{list-style-type:none !important}ul.uagb-toc__list--child-of-closed-list{padding-top:0 !important}ul.uagb-toc__list--hidden-child{display:none !important}.list-open::before,.list-collapsed::before{content:\"\u25bc\"\/\"\";transition:transform .3s ease;transform:scale(0.7) translateX(-50%);display:inline-block}.list-collapsed::before{transform:scale(0.7) rotate(-90deg) translate(-84%, 6%)}span.list-open,span.list-collapsed{cursor:pointer;outline:none !important}.uagb-toc__list.transition{transition:max-height 300ms ease-in-out,padding-top 300ms ease-in-out}.uagb-toc__loader{border:2px solid #f3f3f3;border-top:2px solid #0073aa;border-radius:50%;width:20px;height:20px;animation:spin 1.1s linear infinite;display:block;position:absolute;margin-top:5px}.uagb-toc__list-hidden{opacity:0}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}[dir=rtl] .list-open::before{transform:scale(0.7) translateX(50%)}[dir=rtl] .list-collapsed::before{transform:scale(0.7) rotate(90deg) translate(84%, 6%)}[dir=rtl] .wp-block-uagb-table-of-contents.uagb-toc__collapse--list ul.uagb-toc__list,[dir=rtl] .wp-block-uagb-table-of-contents.uagb-toc__collapse--list ol.uagb-toc__list{padding-left:0;padding-right:2px;margin-left:0;margin-right:2.2em}.uagb-block-0cf44a2b.wp-block-uagb-table-of-contents{text-align: left;}.uagb-block-0cf44a2b .uagb-toc__list-wrap li a:hover{color: #000000;}.uagb-block-0cf44a2b .uagb-toc__list-wrap li a{color: #a00000;}.uagb-block-0cf44a2b .uagb-toc__wrap .uagb-toc__title-wrap{justify-content: left;}.uagb-block-0cf44a2b .uagb-toc__wrap .uagb-toc__title{color: #000000;justify-content: space-between;cursor: pointer;}.uagb-block-0cf44a2b .uagb-toc__wrap{border-top-left-radius: 6px;border-top-right-radius: 6px;border-bottom-left-radius: 6px;border-bottom-right-radius: 6px;border-color: #333;border-style: none;padding-left: 30px;padding-right: 30px;padding-top: 30px;padding-bottom: 30px;background: #ffffff;width: 100%;}.uagb-block-0cf44a2b .uagb-toc__list-wrap{column-count: 1;overflow: hidden;text-align: left;}.uagb-block-0cf44a2b .uagb-toc__list-wrap > ul.uagb-toc__list > li:first-child{padding-top: 0;}.uagb-block-0cf44a2b .uagb-toc__list-wrap ol.uagb-toc__list:first-child{margin-left: 0px;margin-right: 0px;margin-top: 0px;margin-bottom: 0px;}.uagb-block-0cf44a2b .uagb-toc__list-wrap ul.uagb-toc__list:last-child > li:last-child{padding-bottom: 0;}.uagb-block-0cf44a2b .uag-toc__collapsible-wrap svg{fill: #000000;}.uagb-block-0cf44a2b svg{fill: #000000;}.uagb-block-0cf44a2b .uagb-toc__list-wrap ol.uagb-toc__list > li{padding-top: calc( 0px \/ 2 );padding-bottom: calc( 0px \/ 2 );}.uagb-block-0cf44a2b .uagb-toc__list-wrap ul.uagb-toc__list > li{padding-top: calc( 0px \/ 2 );padding-bottom: calc( 0px \/ 2 );}.uagb-block-0cf44a2b .uagb-toc__list-wrap li.uagb-toc__list.uagb-toc__list--expandable > ul.uagb-toc__list{padding-top: calc( 0px \/ 2 );}.uagb-block-0cf44a2b .uagb-toc__list .uagb-toc__list{list-style-type: disc !important;}.uagb-block-0cf44a2b .uagb-toc__title{font-weight: Default;font-size: 20px;}@media only screen and (max-width: 976px) {.uagb-block-0cf44a2b .uagb-toc__wrap{border-style: none;}.uagb-block-0cf44a2b .uagb-toc__list-wrap{column-count: 1;overflow: hidden;text-align: left;}.uagb-block-0cf44a2b .uagb-toc__list-wrap > ul.uagb-toc__list > li:first-child{padding-top: 0;}.uagb-block-0cf44a2b .uagb-toc__list-wrap ul.uagb-toc__list:last-child > li:last-child{padding-bottom: 0;}}@media only screen and (max-width: 767px) {.uagb-block-0cf44a2b .uagb-toc__wrap{border-style: none;}.uagb-block-0cf44a2b .uagb-toc__list-wrap{column-count: 1;overflow: hidden;text-align: left;}.uagb-block-0cf44a2b .uagb-toc__list-wrap > ul.uagb-toc__list > li:first-child{padding-top: 0;}.uagb-block-0cf44a2b .uagb-toc__list-wrap ul.uagb-toc__list:last-child > li:last-child{padding-bottom: 0;}}\";s:2:\"js\";s:382:\"document.addEventListener(\"DOMContentLoaded\", function(){ window.addEventListener( 'load', function(){\n\tUAGBTableOfContents._run( {\"mappingHeaders\":[true,true,true,true,true,true],\"scrollToTop\":false,\"makeCollapsible\":true,\"enableCollapsableList\":false,\"initialCollapse\":false,\"markerView\":\"disc\",\"isFrontend\":true,\"initiallyCollapseList\":false}, '.uagb-block-0cf44a2b' );\n} );\n });\";s:18:\"current_block_list\";a:15:{i:0;s:12:\"core\/heading\";i:1;s:14:\"core\/paragraph\";i:2;s:11:\"core\/search\";i:3;s:10:\"core\/group\";i:4;s:17:\"core\/latest-posts\";i:5;s:20:\"core\/latest-comments\";i:6;s:13:\"core\/archives\";i:7;s:15:\"core\/categories\";i:8;s:14:\"core\/page-list\";i:9;s:10:\"core\/embed\";i:11;s:18:\"core\/legacy-widget\";i:12;s:9:\"core\/list\";i:13;s:14:\"core\/list-item\";i:14;s:22:\"uagb\/table-of-contents\";i:15;s:25:\"uagb\/animations-extension\";}s:8:\"uag_flag\";b:1;s:11:\"uag_version\";s:10:\"1777915058\";s:6:\"gfonts\";a:0:{}s:10:\"gfonts_url\";s:0:\"\";s:12:\"gfonts_files\";a:0:{}s:14:\"uag_faq_layout\";b:0;}"]},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"Ultcrt","author_link":"https:\/\/ultserver.com\/blog\/author\/ultcrt\/"},"uagb_comment_info":2,"uagb_excerpt":"\u6c47\u603b\u4e86OpenGL\u5f00\u53d1\u8fc7\u7a0b\u4e2d\u9047\u5230\u7684\u4e00\u4e9b\u56fe\u5f62\u5f00\u53d1\u7684\u76f8\u5173\u95ee\u9898\u548c\u7ecf\u9a8c","_links":{"self":[{"href":"https:\/\/ultserver.com\/blog\/wp-json\/wp\/v2\/posts\/578","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ultserver.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ultserver.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ultserver.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ultserver.com\/blog\/wp-json\/wp\/v2\/comments?post=578"}],"version-history":[{"count":6,"href":"https:\/\/ultserver.com\/blog\/wp-json\/wp\/v2\/posts\/578\/revisions"}],"predecessor-version":[{"id":596,"href":"https:\/\/ultserver.com\/blog\/wp-json\/wp\/v2\/posts\/578\/revisions\/596"}],"wp:attachment":[{"href":"https:\/\/ultserver.com\/blog\/wp-json\/wp\/v2\/media?parent=578"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ultserver.com\/blog\/wp-json\/wp\/v2\/categories?post=578"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ultserver.com\/blog\/wp-json\/wp\/v2\/tags?post=578"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}