当前位置: 首页 > news >正文

百度网站官网入口做网站都需要准备什么软件

百度网站官网入口,做网站都需要准备什么软件,加强旅游网站建设,wordpress 用户文章数文章目录 1、简介1.1 OpenGL简介1.2 glut简介1.3 freeglut 2、glut安装2.1 命令安装glut2.2 源码安装glut 3、glut测试3.1 测试1#xff0c;版本打印3.2 测试2#xff0c;绘制三角形3.3 测试3#xff0c;VBO绘制三角形 结语 1、简介 1.1 OpenGL简介 OpenGL作为图形界的工业… 文章目录 1、简介1.1 OpenGL简介1.2 glut简介1.3 freeglut 2、glut安装2.1 命令安装glut2.2 源码安装glut 3、glut测试3.1 测试1版本打印3.2 测试2绘制三角形3.3 测试3VBO绘制三角形 结语 1、简介 1.1 OpenGL简介 OpenGL作为图形界的工业标准其仅仅定义了一组2D和3D图形接口API而对于窗口管理、IO消息响应等并没有规定。也就是说OpenGL依赖各平台提供用于渲染的context以及具体实现方式而各平台提供的实现不尽相同。这些实现主要有Windows平台下的WGL、Linux下的Mesa/GLX、Mac OS X下的Cocoa/NSGL以及跨平台的GLUT、GLFW、SDL等等。 安装OpenGL库 # sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev sudo apt-get install build-essential sudo apt-get install libgl1-mesa-dev sudo apt-get install libglu1-mesa-dev使用如下的命令来查看对应显卡的OpenGL版本 glxinfo | grep -i opengl1.2 glut简介 https://www.opengl.org/resources/libraries/glut/glut_downloads.php http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip https://www.opengl.org/resources/libraries/glut/glut-3.spec.pdf OpenGL工具库 OpenGL Utility Toolkit包含大约30多个函数函数名前缀为glut。 glut是不依赖于窗口平台的OpenGL工具包由Mark KLilgrad在SGI编写现在在Nvidia目的是隐藏不同窗口平台API的复杂度。 函数以glut开头它们作为aux库功能更强的替代品提供更为复杂的绘制功能此函数由glut.dll来负责解释执行。由于glut中的窗口管理函数是不依赖于运行环境的因此OpenGL中的工具库可以在X-Window, Windows NT, OS/2等系统下运行特别适合于开发不需要复杂界面的OpenGL示例程序。对于有经验的程序员来说一般先用glut理顺3D图形代码然后再集成为完整的应用程序。 1.3 freeglut https://freeglut.sourceforge.net/ https://github.com/freeglut/freeglut/releases freeglut最初由帕维尔·W. Olszta与安德烈亚斯·乌姆巴赫和史蒂夫·贝克的贡献。史蒂夫是现在官方的拥有者/维护者。帕维尔在1999年12月1日开始freeglut的开发。目前该项目几乎可以100%的替代原来的GLUT只有少数差别如the abandonment of SGI-specific features按钮盒子和动态视频分辨率和 其他一小部分程序Bug。 这个库是原始的GLUT库修改之后得到的它既提供32位、也提供64位的编译环境。 2、glut安装 2.1 命令安装glut # sudo apt-get install build-essential freeglut3 freeglut3-dev # sudo apt-get install libglut-dev or sudo apt-get install freeglut3-devlocate freeglutsudo apt-get remove freeglut3 # or sudo apt-get -y autoremove freeglut3 # or sudo apt-get -y purge freeglut3 # or sudo apt-get -y autoremove --purge freeglut3在卸载freeglut库之后编译测试项目如下 2.2 源码安装glut 1glut 如果安装 GLUT地址在https://user.xmission.com/~nate/glut.html下载 glut-3.7.6-bin.zip已经十几年没更新过了所以就是这个版本了 https://user.xmission.com/~nate/glut/glut-3.7.6-bin.zip2freeglut freeglut 在地址https://github.com/freeglut/freeglut/releases/download/v3.6.0/freeglut-3.6.0.tar.gz 3、glut测试 3.1 测试1版本打印 CMakeLists.txt cmake_minimum_required(VERSION 2.8.1)project(my_project) set(CMAKE_C_STANDARD 11) set(CMAKE_CXX_STANDARD 14)# seach find_package(OpenGL REQUIRED) find_package(GLUT REQUIRED)# include include_directories(${OPENGL_INCLUDE_DIRS}) include_directories(${GLUT_INCLUDE_DIRS})add_executable(${PROJECT_NAME} main.cpp)target_link_libraries(${PROJECT_NAME} ${OPENGL_LIBRARIES} ${GLUT_LIBRARIES})main.cpp #include iostream #include GL/freeglut.hint main(int argc, char** argv) {std::cout hello, yxy std::endl;glutInit(argc, argv);glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB | GLUT_DEPTH);glutInitWindowSize(300, 300);glutInitWindowPosition(100, 100);glutCreateWindow(OpenGL Version);const GLubyte* szVendor glGetString(GL_VENDOR);const GLubyte* szRender glGetString(GL_RENDERER);const GLubyte* szGLVersion glGetString(GL_VERSION);const GLubyte* szGluVersion gluGetString(GLU_VERSION);printf(OpenGL实现厂商的名字%s\n, szVendor);printf(OpenGL渲染器标识符%s\n, szRender);printf(OpenGL实现的版本号%s\n, szGLVersion);printf(GLU工具库版本%s\n, szGluVersion);return 0; }编译如下 或者直接使用gcc编译 gcc -o test main.c -lGL -lGLU -lglut # or apt-get install libglew-dev g -o test main.cpp -lGL -lGLU -lglut -lGLEW3.2 测试2绘制三角形 main.cpp #include GL/freeglut.hvoid renderScene(void) {glClearColor(1.0, 1.0, 0.6, 1.0);glClear(GL_COLOR_BUFFER_BIT);glLoadIdentity();glBegin(GL_TRIANGLES);glColor3f(1, 0, 0);glVertex3f(-0.5, -0.5, 0.0);glColor3f(0, 1, 0);glVertex3f(0.5, 0.0, 0.0);glColor3f(0, 0, 1);glVertex3f(0.0, 0.5, 0.0);glEnd();glutSwapBuffers(); }int main(int argc, char** argv) {glutInit(argc, (char**)argv);glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA);glutInitWindowPosition(100, 100);glutInitWindowSize(800, 480);glutCreateWindow(yxy glut: draw triangle);glutDisplayFunc(renderScene);glutMainLoop();return 0; }测新项目运行如下 3.3 测试3VBO绘制三角形 CMakeLists.txt cmake_minimum_required(VERSION 2.8.1)project(my_project) set(CMAKE_C_STANDARD 11) set(CMAKE_CXX_STANDARD 14)# seach find_package(OpenGL REQUIRED) find_package(GLUT REQUIRED) find_package(GLEW REQUIRED)# include include_directories(${OPENGL_INCLUDE_DIRS}) include_directories(${GLUT_INCLUDE_DIRS})add_executable(${PROJECT_NAME} main.cpp)target_link_libraries(${PROJECT_NAME} ${OPENGL_LIBRARIES} ${GLUT_LIBRARIES} GLEW::GLEW)main.cpp #include stdio.h #include GL/glew.h #include GL/freeglut.hGLuint VBO;static void RenderSceneCB() {glClear(GL_COLOR_BUFFER_BIT);glEnableVertexAttribArray(0);glBindBuffer(GL_ARRAY_BUFFER, VBO);glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 0, 0);glDrawArrays(GL_TRIANGLES, 0, 3);glDisableVertexAttribArray(0);glutSwapBuffers(); }static void InitializeGlutCallbacks() {glutDisplayFunc(RenderSceneCB); }static void CreateVertexBuffer() {const GLfloat Vertices[] {-1.0f, -1.0f, 0.0f,1.0f, -1.0f, 0.0f,0.0f, 1.0f, 0.0f};glGenBuffers(1, VBO);glBindBuffer(GL_ARRAY_BUFFER, VBO);glBufferData(GL_ARRAY_BUFFER, sizeof(Vertices), Vertices, GL_STATIC_DRAW); }int main(int argc, char** argv) {glutInit(argc, argv);glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGBA);glutInitWindowSize(800, 600);glutInitWindowPosition(0, 0);glutCreateWindow(yxy glut: VBO triangle );InitializeGlutCallbacks();// Must be done after glut is initialized!GLenum res glewInit();if (res ! GLEW_OK) {fprintf(stderr, Error: %s\n, glewGetErrorString(res));return 1;}glClearColor(0.6f, 0.6f, 0.6f, 1.0f);CreateVertexBuffer();glutMainLoop();return 0; }测新项目运行如下 结语 如果您觉得该方法或代码有一点点用处可以给作者点个赞或打赏杯咖啡╮(▽)╭ 如果您感觉方法或代码不咋地//(ㄒoㄒ)//就在评论处留言作者继续改进o_O??? 如果您需要相关功能的代码定制化开发可以留言私信作者(✿◡‿◡) 感谢各位大佬童鞋们的支持( ´ ▽´ ) ( ´ ▽´)っ
http://www.w-s-a.com/news/922266/

相关文章:

  • 做网站优化有用吗学做文案的网站
  • wordpress 知名网站怎么做微网站
  • 用电脑怎么做原创视频网站河南建设工程信息网一体化平台官网
  • 云服务器和网站空间郑州做招商的网站
  • 规模以上工业企业的标准北京seo结算
  • 软件开发过程模型如何做网站性能优化
  • 网站建站公司广州南京江北新区楼盘
  • 哪些做展架图的网站好开发公司2022年工作计划
  • 磨床 东莞网站建设wordpress下载类主题系统主题
  • 免费学编程网站芜湖做网站都有哪些
  • 能发外链的网站门户网站网页设计规范
  • 网站建设所需人力南城区网站建设公司
  • 网站做图尺寸大小手机模板网站模板下载网站有哪些内容
  • 德阳市建设管理一体化平台网站做美食网站
  • 怎么做自己的推广网站2024年瘟疫大爆发
  • vps正常网站打不开linux网站建设
  • 福州网站快速排名在一个网站的各虚拟目录中默认文档的文件名要相同
  • 网站开发 流程图网站开发用哪个linux
  • 怎么用自己电脑做服务器发布网站吗seo门户网价格是多少钱
  • 备案网站可以做影视站网站400
  • 四川住房与城乡建设部网站注册登记
  • 网站建设第三方沈阳工程最新动态
  • 兰州做网站客户上海企业在线登记
  • 新乡公司做网站wordpress被大量注册
  • 小语种服务网站公众号平台建设网站
  • 免费做mc皮肤网站企业网站建设合同模板
  • 做网站可以申请个体户么网站的定位分析
  • jsp做的零食网站下载wordpress侧边栏折叠
  • 帝国网站单页做301南京旅游网站建设公司
  • 网站sem优化怎么做网站建设推广安徽