このサイトは、只今WEB業界で活躍中のデザイナー、プログラマーの方々の情報を集めたweb統合情報サイトです。

Archives Details

Ubuntu 18.04 LTSで OpenGL開発

ubuntu

2019.05.20

この記事は最終更新日から1年以上が経過しています。

どもです。

今回もOpenGl周りなのですが、常日頃Macメインで開発している私ですが、去年は結構衝撃的なニュースが発表されましたね。

というのも、2018年6月にAppleは、macOS 10.14 MojaveにおけるOpen GL /GL ESとOpenCLの扱いは、非推奨になり、今後は、独自の3DグラフィックスAPI、MetalおよびMetal Performance Shadersの利用を推奨する方向となりました。

となり、マジかよApple!?状態になったのは記憶に新しいです。

そんなこんなでAppleに対する忠誠心も昔ほどなくなり、最近ではAndroidや、Linux周りを扱うようにもなってきました。

でもそもそも、OpenGLも枯れてきた技術なわけで、API設計は徐々に陳腐化してきていることもあって、ベンダーそれぞれが離れていく傾向もあるのですが、クロスプラットフォーム開発を行った点もあって、それでもやっぱりOpenGLを扱いたい。

というか、Ubuntuでも開発したいので、今回はUbuntu 18.04 LTSにインストールしていきます。

インストール

何はともあれ、いつものapt updateコマンドを実行。

$ sudo apt update
$ sudo apt upgrade

GLUT ( freeglut)をインストールしていきます。

$ sudo apt-get install freeglut3 freeglut3-dev

続いてMesa 3Dの開発パッケージをインストールしていきます。

$ sudo apt-get install libglu1-mesa-dev mesa-common-dev

インストール完了しましたら、空のウィンドウが起ち上がる様にコーディングを行います。

main.cpp

#include <GL/glut.h>

void display(void) { }

int main(int argc, char *argv[])
{
  glutInit(&argc, argv);
  glutCreateWindow(argv[0]);
  glutDisplayFunc(display);
  glutMainLoop();
  return 0;
}

上記のソースを作成しましたら、コンパイルを行いましょう。

コンパイル

以下の g++コマンドでコンパイルを実行します。

$ g++ -Wall -Weffc++ -o glut_main main.cpp -lglut -lGLU -lGL

glut_mainのバイナリファイルが作成できますので、実行。

$ ./glut_main

すると、空のウィンドウが起ち上がります。

キター。

freeglut の場合は, g++ コマンドに -lglut -lGLU -lGL というオプションを追加するだけでコンパイルできます。

Ubuntuで、OpenGL開発できそうですね。

次回は、ウィンドウに描画や、libglfw3などインストールしてレンダリングしていきます。

Comment

Related Article

Ubuntu 20.04 LTS サーバ構築 – DKIM、DMARCを設定する

2022.05.01

Ubuntu 20.04 LTS サーバ構築 – Postfix Let’s EncryptでTLS化

2022.05.01

Ubuntu 20.04 LTS サーバ構築 – Postfix SASL認証

2022.05.01

Ubuntu 20.04 LTS サーバ構築 – Dovecotインストール

2022.05.01

Ubuntu 20.04 LTS サーバ構築 – Postfixインストール

2022.05.01

Ubuntu 20.04 LTS サーバ構築 – Let’s EncryptでSSL/TLS化

2022.05.01

Ubuntu 20.04 LTS サーバ構築 – Nginxインストール

2022.05.01

Ubuntu 20.04 LTS サーバ構築 – 初期セットアップ

2022.05.01

Ubuntu 18.04 LTSで OpenGL開発

2019.05.20

平成最後のお買い物!!「Logicool MX Master 2 Wireless Mouse」と「K780 マルチデバイス BLUETOOTH® キーボード」で快適PC生活。

2019.04.27

CATEGORY LIST

LATEST NEWS

【M1 Mac】Python ScrapyがImportErrorで大ハマリ。lxmlなど環境作成し対応した件。

Python

2023.05.24

ミニPC Minisforum UM773 SE/ Liteがセールみたいだったので、ポチった件

イベント

2023.04.23

AI(ChatGPT)に聞くDart言語

Dart

2023.03.12

DartパッケージでPub Pointsを満点にする

Dart

2023.03.11

Dartパッケージをサクッと作成する

Dart

2023.03.07

DartでさくっとCLIツール作成。

Dart

2023.02.28

M1Macで行う「RUSTではじめるOpenGL」

Rust

2023.02.25

SolidityとEthereumによる実践スマートコントラクト開発 書評 ~ 再構築

暗号通貨、ブロックチェーン

2023.02.10

【Unity x WebAssembly】UnityコンテンツをBlazorとFlutterでWebアプリとして扱う

Unity

2023.01.30

【nasne】M1 Mac Miniで、「torne® mobile」使用して、テレビ視聴。

mac

2022.12.31

2022 VIVA JS World Cup 開幕!! 〜 Vue3で作るサッカーゲーム 〜

JavaScript

2022.12.24

M1 Mac ruby rbenv install error

Ruby

2022.10.10

RANKING

Follow

SPONSOR

現在、掲載募集中です。



Links

About Us

WEBデザイナーの、WEBデザイナーによる、WEBデザイナーの為のサイト。「みんなで書こう!」と仲間を募ってみたが、結局書くのは自分だけとなってしまいました。日々のメモを綴っていきます。

Entry Profile

Graphical FrontEnd Engineer
- Daisuke Takayama

MAD CITY 北九州市で生まれ育つ。20代はバンド活動に明け暮れ、ふと「webデザイナーになりたい。」と思い、デジタルハリウッド福岡校入学。卒業後、数々の賞を受賞、web業界をざわつかせる。
現在、主に、ゲーム制作中心に港区六本木界隈で活動中。

FOLLOW US