タグ

c++に関するSpring_MTのブックマーク (8)

  • C++初心者ならビルドはBazelでラクしちゃいましょう - will and way

    この記事は 初心者C++er Advent Calendar 2015, Qiita C++ Advent Calendar 2015 15 日目の記事です. 注意 UbuntuもしくはMac OSXの環境が作れない方はそっと閉じてください。(VagrantでUbuntuはすぐ準備できる) スマホアプリ畑の人間が書くので、それに向けた内容も多くなっています。 PCからの閲覧をおすすめします。スマホで読むと、コードのレイアウトが崩れるようなので。 ビルドツールについて みなさんはビルドオートメーションツールには何を使っていますか? 玄人界隈ではcmakeが定番です。 私が携わっているプロジェクトではgypと呼ばれるツールを使っています。 元々Chromiumで開発されていたGoogleのオープンソースの一つで、node.jsにも使われているビルドツールです。 特殊なフォーマットに従ってファイ

    C++初心者ならビルドはBazelでラクしちゃいましょう - will and way
  • clangでc++コードをコンパイルする方法(解説付き) | Now or Never

    $ clang main.cpp Undefined symbols for architecture x86_64: "std::ostream::operator<<(std::ostream& (*)(std::ostream&))", referenced from: _main in example-YhevQb.o "std::ios_base::Init::Init()", referenced from: ___cxx_global_var_init in example-YhevQb.o "std::ios_base::Init::~Init()", referenced from: ___cxx_global_var_init in example-YhevQb.o "std::cout", referenced from: _main in example-YhevQ

  • GLUTによる「手抜き」OpenGL入門

    資料: 今までにあった質問 リフレッシュレートの変更 AUX 版, Indy 版, 書籍版 床井研究室 (OpenGL 関連記事) 柴山 健伸 先生 (システム工学部情報通信システム学科) の混沌としたサンプル 陳 謙 先生 (システム工学部デザイン情報学科) の Motif を使ったサンプル 中山 礼児 氏 (経済学部 2000 年卒) の Delphi についての解説 The OpenGL WEB Site (OpenGL の総山) GLUT - The OpenGL Utility Toolkit (OpenGL.org の GLUT のページ) OpenGL Code & Tutorial Listings (OpenGL.org のチュートリアル集) OpenGL Technical FAQ (OpenGL について良く聞かれる質問) OpenGL FAQ 日語 (OpenG

  • UnityのNative Pluginを作ってC++のコードやライブラリを使う - yuki-koyama's blog

    概要 UnityといえばC#で開発するのが基ですが、Native Pluginという機能を使えば、他の言語 (C++など) で書かれたコードを呼び出すことができます。 今回はじめてNative Pluginを作ってみたので、調べたことなどをメモしておきたいと思います。 C++のライブラリ (Eigenとlibigl) を用いてUnity上でメッシュのガウス曲率を可視化した例 背景と動機 普段はC++でコンピュータグラフィクス関連の研究をしています(プロダクトの開発は行なっていません)。私がC++を使う主な理由は 過去に自分で書いたコードを使いまわしたいから 優秀な数学演算のライブラリや高度なジオメトリ処理のライブラリを使えるから 高速化がしやすいから などです。一方でUnityを使うこともあります。私がUnityを使う際の主な理由は 優秀なリアルタイムレンダリングが予め用意されているから

    UnityのNative Pluginを作ってC++のコードやライブラリを使う - yuki-koyama's blog
  • 本格的なシューティングゲームを実現するタスクシステム

    はじめに タスクとは「Windowsはマルチタスクだ」という時のタスクに同義ですが、プログラム的にはオブジェクトに近いです。シューティングゲームを作る場合は「自機」「敵」「敵出現制御」「得点管理」「タイトル画面」など、ゲームを構成する全ての要素をタスクとします。 タスクシステムとは、これら複数のタスクを管理する仕組みであり、現在でもプロの現場で用いられています。長所は次の通りです。 ジャンルを問わず様々なゲームに適用できる 並列処理をうまい具合に実現できる ゲームの流れを自然な形で表現できる 大規模なゲームも開発できる タスクごとに独立しているため、複数人で開発できる 一方の短所は、タスクシステムの歴史が古いことに起因する、高すぎる自由度です。さまざまな実装方法があり、またオブジェクト指向が一般的ではなかった時代の手法なためか、スパゲティプログラムや、データの隠蔽化が不十分なプログラムとな

    本格的なシューティングゲームを実現するタスクシステム
  • プログラまる Unity C#でCのプラグインを使う際の問題あれこれ

    ブログをずーっと放置してしまった。 存在をほとんど忘れていた…。 家でプログラム書く時間が無い(Diablo3楽しいです)のですが、 仕事UnityをC#で触ってて、C#の経験があまり無くて理解が薄く、 色々謎だったり教えてもらったりしているので、 その辺りで何か書けたらなーと。 んで今は、CのライブラリをUnityで呼び出して使う、ってな辺りを触ってますよ。 ・プラグイン関数の呼び出し方 Windowsでは、DLLを作って Assets/Plugin の下に置く。 Unity側では [DllImport("Dll名")] private static extern void Func(); とか書けば普通に呼び出せます。 ディレクトリ内のdllを勝手にロードさせたいような場合は http://d.hatena.ne.jp/lord_hollow/20090606/p1 が参考になりそう

  • C++ BuilderでRubyの拡張モジュールを作る

    ○一般的な話 Rubyの機能を拡張するためにC/C++などで書かれたライブラリを拡張モジュールと言います。Windowsでは、その実体はDLLです。 拡張モジュールの書き方は、Rubyの doc/ruby/ruby-1.6.7/README.EXT.ja に詳しく書かれています。Ruby/KAKASI拡張モジュールのページには、拡張モジュールのサンプルコードと解説が有って、役立ちます。 ○はじめに BCB6 Proを例に説明します。以下の説明は、「こうやったらうまくいったっぽい」というだけで、正しいやり方なのかは分かりません。何か間違ってたり、もっと簡単な方法が有ったら指摘してください。 ○BCBでDLLのプロジェクトを作る 普通に作ります。念のため説明すると、 [ファイル]-[新規]-[その他]を選び、[DLLウィザード]を選んで[OK]をクリック。 ソースの種類とかをお好みで選択。以下

  • (Cではなく)C++でRubyの拡張ライブラリを作るには - tuedaの日記

    CでRubyの拡張ライブラリを作る方法はいくらでものっているのに、調べてもC++で作る方法が全然見つからなかったので自分で書く事にする。 ようはC++で定義したクラスとそのメンバー関数をRubyから使えるようにしたい。 第1部は普通のグローバル関数をRubyから使えるようにする。 第2部はクラスとそのメンバー関数をRubyから使えるようにする。 第3部はrbplusplusを使って処理を自動化する すべてのクラス、関数を手で書くと結構大変なので、実際には第3部で紹介する rbplusplus を使って自動で処理する事になると思うが、 そうは言っても中で何をやっているのか知っておかないと気持ち悪いので第1部、第2部も書いた。 自動処理のためのツールには他にもswigがあるが、今なら多分rbplusplusの方を使った方が良い。

  • 1