macでopenFrameworks入門してみた
はじめに
もともとヴィジュアルプログラミングに興味があり、TouchDesignerぽちぽち触ったりしてはいたのですが、macとwindowsの環境差分に当たることが多かったためいっそもっと低いレイヤーにお引越ししようと思ってopenFrameworksに入門してみました。
詳細には書きますが自分のメモを兼ねているので悪しからず。。。
パッケージダウンロード
https://openframeworks.cc/ja/download/
↑ここから落とす。df_vx.x.x_osx_release.zip
みたいな形式のzipファイルが落ちてくるので解凍してあげて任意のディレクトリへ
フォルダ構成
これはバージョンごとで変わる可能性が大いにあるので適宜頑張って欲しいけど現状の最新である0.10.0
だとこんな感じです
├── addons
├── apps
├── docs
├── examples
├── libs
├── other
├── projectGenerator
└── scripts
examplesになにやらサンプルプロジェクトがたくさんはいっているので実行して遊んで見ると楽しいです。
実行方法はプロジェクトのディレクトリに入って以下を実行
make
make run
試しに/of_v0.10.0_osx_release/examples/gl/alphaMaskingShaderExample
に入ってmake
したあとmake run
すると,,,
こんな感じのが実行できます。すっごーい
新規プロジェクトの作成
続いて新規プロジェクトを作ってみましょう。
作り方は簡単of_v0.10.0_osx_release/apps/myApps/emptyExample
をcpするだけ。
cp -r emptyExample hello_open_frameworks
こんな感じでcpしてあげればokです
ハロワ
さて、いよいよコードを書いていきましょう!...と、その前にまずはファイル構成の確認をします。
├── Makefile
├── Project.xcconfig
├── README.md
├── addons.make
├── bin
├── config.make
├── emptyExample.png
├── emptyExample.xcodeproj
├── obj
├── openFrameworks-Info.plist
└── src
色々あるけど主に使うのはsrc配下のファイル。
.
├── main.cpp
├── ofApp.cpp
└── ofApp.h
そしてsrc配下はこんな感じになっていてofApp.cppを書き換えていくことになります。
#include "ofApp.h"
//--------------------------------------------------------------
void ofApp::setup(){
}
//--------------------------------------------------------------
void ofApp::update(){
}
//--------------------------------------------------------------
void ofApp::draw(){
}
//--------------------------------------------------------
こんな感じになってます。(Processingっぽい!)
試しに円を描画して見ます。
void ofApp::draw(){
ofDrawCircle(400,400,200);
}
第一引数がx軸で第二引数がy軸第三引数が円の大きさになっています。これでmakeしてmake runすると、
これで入門はひとまず終了...これから色々試していきます。
Author And Source
この問題について(macでopenFrameworks入門してみた), 我々は、より多くの情報をここで見つけました https://qiita.com/ryosukeeee/items/8e758fd179c4a4f5d1fc著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .