Mac 搭建 OpenGL 窗口环境(glew glfw)

8 篇文章 0 订阅
6 篇文章 0 订阅
安装 glew glfw
brew install glew
brew install glfw

brew 安装后的目录在 /usr/local/Cellar 下,后面会使用到路径。

用 Clion 创建工程

CMakeList.txt 配置如下:

cmake_minimum_required(VERSION 3.6)
project(CGL3DDemo)

set(GLM_H /usr/local/Cellar/glm/0.9.9.8/include)
set(GLEW_H /usr/local/Cellar/glew/2.2.0_1/include)
set(GLFW_H /usr/local/Cellar/glfw/3.3.4/include)
include_directories(${GLM_H} ${GLEW_H} ${GLFW_H})

set(GLEW_LINK /usr/local/Cellar/glew/2.2.0_1/lib/libGLEW.2.2.dylib)
set(GLFW_LINK /usr/local/Cellar/glfw/3.3.4/lib/libglfw.3.dylib)
link_libraries(${OPENGL} ${GLEW_LINK} ${GLFW_LINK})

set(CMAKE_CXX_STANDARD 11)

set(SOURCE_FILES main.cpp)
add_executable(CGL3DDemo ${SOURCE_FILES})

target_link_libraries(CGL3DDemo "-framework OpenGL")
target_link_libraries(CGL3DDemo "-framework GLUT")
测试

显示一个空窗口

#include <iostream>
#include <GL/glew.h>
#include <GLFW/glfw3.h>

int main()
{
    std::cout << "Starting GLFW context, OpenGL 3.3" << std::endl;
    glfwInit();
    glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
    glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
    glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
    glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GLFW_TRUE); // 在 Mac 上要加这一句配置,否则不显示
    glfwWindowHint(GLFW_RESIZABLE, GLFW_TRUE);

    GLFWwindow* window = glfwCreateWindow(800, 600, "CGL3DDemo", nullptr, nullptr);
    if (window == nullptr) {
        std::cout << "Failed to create GLFW window" << std::endl;
        glfwTerminate();
        return -1;
    }
    glfwMakeContextCurrent(window);

    glewExperimental = GL_TRUE;
    if (glewInit() != GLEW_OK) {
        std::cout << "Failed to initialize GLEW" << std::endl;
        return -1;
    }

    int width, height;
    glfwGetFramebufferSize(window, &width, &height);
    glViewport(0, 0, width, height);

    while (!glfwWindowShouldClose(window))
    {
        glClearColor(0.2f, 0.3f, 0.3f, 1.0f);
        glClear(GL_COLOR_BUFFER_BIT);

        glfwSwapBuffers(window);
        glfwPollEvents();
    }

    glfwTerminate();
    return 0;

}

显示如下:
请添加图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 安装OpenGL OpenGL是一个图形库,需要安装才能使用。安装OpenGL的方法因操作系统而异,以下是Windows和macOS的安装方法: Windows:下载并安装Mingw-w64,选择64位版本并包含OpenGL支持。下载链接:https://sourceforge.net/projects/mingw-w64/ macOS:在终端中使用Homebrew安装OpenGL。打开终端并输入以下命令: brew install glew brew install glfw3 2. 安装IDE 编写OpenGL程序需要一个集成开发环境(IDE),可以选择以下其中一个: Visual Studio:适用于Windows系统,可从Microsoft官网下载并安装。下载链接:https://visualstudio.microsoft.com/downloads/ Xcode:适用于macOS系统,可从App Store下载并安装。 3. 配置IDE 无论是Visual Studio还是Xcode,都需要配置才能使用OpenGL。以下是配置步骤: Visual Studio: 1) 创建一个Win32控制台应用程序项目。 2) 在项目属性中选择“配置属性”->“VC++目录”,将“包含目录”和“库目录”设置为OpenGL的安装路径。例如,如果OpenGL安装在C:\OpenGL,则包含目录应该为C:\OpenGL\include,库目录应该为C:\OpenGL\lib。 3) 在项目属性中选择“配置属性”->“链接器”->“输入”,将“附加依赖项”设置为opengl32.lib;glu32.lib;glew32.lib。 4) 在代码中包含OpenGL头文件和库文件。例如: #include <GL/gl.h> #include <GL/glu.h> #include <GL/glew.h> #pragma comment(lib, "opengl32.lib") #pragma comment(lib, "glu32.lib") #pragma comment(lib, "glew32.lib") Xcode: 1) 创建一个C++命令行工具项目。 2) 在“Build Settings”中,将“Header Search Paths”设置为OpenGL的安装路径。例如,如果OpenGL安装在/usr/local/include,则“Header Search Paths”应该为/usr/local/include。 3) 在“Build Settings”中,将“Library Search Paths”设置为OpenGL的安装路径。例如,如果OpenGL安装在/usr/local/lib,则“Library Search Paths”应该为/usr/local/lib。 4) 在“Build Phases”中,展开“Link Binary With Libraries”,添加以下库文件:OpenGL.framework、GLUT.framework、GLEW.framework。 5) 在代码中包含OpenGL头文件和库文件。例如: #include <OpenGL/gl.h> #include <OpenGL/glu.h> #include <GLUT/glut.h> #include <GLEW/glew.h> 注意:在macOS上,OpenGL和GLU库已经被包含在OpenGL.framework中,无需单独添加。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值