利用CodeBlocks结合freeglut快速搭建OpenGL开发环境
利用CodeBlocks结合freeglut快速搭建OpenGL开发环境

这也算是个老生常谈的话题了。使用CodeBlocks也有很多年了,学习的过程中都少不了它的身影。回顾我的学习历程,不管学什么编程语言,我首先想要学会如何进行图形编程,哪怕是只能画出简单的线条。出现了3D图形加速卡之后,自然就想着如何进行3D编程,于是就知道了OpenGL,理所当然的就想学习OpenGL编程。在这里把之前的经验总结一下,也算是一个备忘。
一、首先是CodeBlocks安装。
访问链接:http://www.codeblocks.org/
在【Main => Downloads => Binaries】下可以看到不同平台的发布,这里选择Windows平台的codeblocks-17.12mingw-setup.exe。

安装很简单,建议选择安装所有的组件。

第一次运行的时候,会让你选择编译器。

我们选择GNU GCC Compiler,并点击Set as default将其设定为默认编译器,点击OK关闭对话框。如果以后想改为其它的编译器,就选择菜单【Settings => Compiler】,在如图的界面变更。

二、取得freeglut。
freeglut是GLUT的一个完全开源替代库,我们可以取得源代码自行编译或者得到编译完成的发行包。
官网链接:http://freeglut.sourceforge.net/
Windows的发行包:https://www.transmissionzero.co.uk/software/freeglut-devel/
这里下载freeglut 3.0.0 MinGW Package,然后解压缩到自己指定的路径下,里面有下面的内容。

三、修改CodeBlocks的工程向导模板。
在下面的路径找到wizard.script文件,将里面的glut32全部替换成freeglut,然后保存。


四、快速创建工程并编译运行。
建议创建单独的目录作为工作空间,并另存当前的工作空间并重命名,然后创建新的工程,启动创建向导。


选中GLUT project,点击Go。
然后是指定工程名称,还有工程路径,建议指定到自己指定的工作空间目录,这样多个工程会在一个工作空间管理。关键是freeglut库的指定,参照下图:

这里面要指定之前解压freeglut的路径,然后下一步。

点击Finish,我们就得到了一个快速构建的工程。

编译运行看看效果。

那么还等什么,继续吧……
利用CodeBlocks结合freeglut快速搭建OpenGL开发环境的更多相关文章
- Windows下快速搭建安卓开发环境android-studio
Windows下快速搭建安卓开发环境android-studio 发布时间:2018-01-18 来源:网络 上传者:用户 关键字: 安卓 搭建 Android Windows 快速 环境 Studi ...
- mac 下 用 glfw3 搭建opengl开发环境
mac 下 用 glfw3 搭建opengl开发环境 下载编译 glfw3 Build Setting 里面, Library Search Paths -> 设置好编译 glfw 库的路径 H ...
- CentOS 7快速搭建Nodejs开发环境
Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好.学习Nodejs首先需要会安装环境.这里我介绍如 ...
- Linux下快速搭建php开发环境
php开发环境快速搭建 一.Linux下快速搭建php开发环境 1.安装XAMPP for Linux XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,使用XA ...
- 【IntelliJ IDEA新手入门】IDEA如何快速搭建Java开发环境
作为IntelliJ IDEA mac新手,IDEA如何快速搭建Java开发环境呢? 今天小编就给大家带来了IntelliJ IDEA mac使用教程,想知道IDEA如何快速搭建Java开发环境?那就 ...
- IDEA如何快速搭建Java开发环境
作为IntelliJ IDEA mac新手,IDEA如何快速搭建Java开发环境呢?今天小编就给大家带来了IntelliJ IDEA mac使用教程,想知道IDEA如何快速搭建Java开发环境? 全局 ...
- 五分钟用Docker快速搭建Go开发环境
挺早以前在我写过一篇用 `Docker`搭建LNMP开发环境的文章:[用Docker搭建Laravel开发环境](http://mp.weixin.qq.com/s?__biz=MzUzNTY5MzU ...
- 使用Docker快速搭建PHP开发环境
最近有个同事找过来,希望我对在很早之前写的一个PHP网站上增加一些功能,当时开发使用xampp构建的本地开发环境,但是现在我的笔记本电脑已经更新,没有当时的开发环境.本着尽量不往电脑上装无用软件的原则 ...
- linux(ubuntu)和windows下面快速搭建android开发环境
在windows和linux下面搭建android开发环境,一般要安装以下几个软件: 1.JDK安装 2.Eclipse安装 3.Android SDK安装 4.在eclipse里面安装ADT 5.e ...
随机推荐
- 【Leetcode_easy】686. Repeated String Match
problem 686. Repeated String Match solution1: 使用string类的find函数: class Solution { public: int repeate ...
- 转 Linux平台卸载MySQL总结
如何在Linux下卸载MySQL数据库呢? 下面总结.整理了一下Linux平台下卸载MySQL的方法. MySQL的安装主要有三种方式:二进制包安装(Using Generic Binaries).R ...
- Python hashlib加密模块
hashlib模块 简介: hashlib模块是一个提供了字符串加密功能的模块,包含MD5和SHA的加密算法.具体的加密支持有: MD5,sha1,sha224,sha256, sha384, sha ...
- java23种设计模式之八: 工厂方法模式
定义: 定义一个创建产品对象的工厂接口,将产品对象的实际创建工作推迟到具体子工厂类当中.这满足创建型模式中所要求的“创建与使用相分离”的特点. 我们把被创建的对象称为“产品”,把创建产品的对象称为“工 ...
- FastJson反序列化获取不到值
今天碰到一个问题,使用fastjson反序列化,就是将JSON解析成javaBean时,一个字段值为null.后面经查,是JavaBean中的set方法写错了,fastJson解析的是利用反射通过se ...
- 《Mysql 事务 - 隔离》
一:事务概念 - ACID(Atomicity.Consistency.Isolation.Durability,即原子性.一致性.隔离性.持久性) 二:事务产生的问题 - 多个事务同时执行的时候 ...
- 【51nod】1776 路径计数
[51nod]1776 路径计数 我们先把前两种数给排好,排好之后会有\(a + b + 1\)个空隙可以填数,我们计算有\(k\)个空隙两端都是相同字母的方案数 可以用枚举把第二种数分成几段插进去来 ...
- SrpingBoot入门到入坟04-配置文件
SpringBoot使用一个全局的配置文件,名称是固定,作用就是修改SpringBoot自动配置的默认值. *application.properties *application.yml 先看看两者 ...
- hdu 4324
思路待整理 #include<cstdio> #include<iostream> #include<vector> #include<queue> # ...
- EF中DbContext的生命周期
/// <summary>/// 依赖注入系统中类的生命周期./// </summary>public enum DependencyLifeStyle{ /// < ...