cocos2d-xの簡単な紹介と、cocos2d-x 3.0のalpha版でどのように変わったかを紹介します。Read less
cocos2d-xの簡単な紹介と、cocos2d-x 3.0のalpha版でどのように変わったかを紹介します。Read less
VSTホストを作ろう! @hotwatermorningです。 この記事は、C++ Advent Calendar 2013の5日目の参加記事です。 はじめに 今回は、VSTiという種類のプラグインを読み込んで音を鳴らす、「VSTホスト」の作り方について紹介します。 VSTホストの画面を作るにあたり、「balor」というC++のWindows GUIライブラリを使用しました。balorについてはリンク先をご参照ください。 この記事の内容について、筆者がVST規格について勘違いしている点があるかもしれません。 ご了承ください。 VSTとは VSTとは簡単に言うと音楽製作ソフトのプラグイン周りの規格です。Wikipediaでは、以下のように解説されています。 Steinberg's Virtual Studio Technology(一般的にはVST)とは、ソフトウェア・シンセサイザーやエフェ
このエントリーは以下の「Webの未来 PNaClとasm.jsでカワルミライ - いま、モバイルWebの先端で起こっていること〜」というスライドへのアンサーエントリーです。 ひょんなことからまとめはじめたのですが、とりあえずタイトルにあがっているようなasm.js(あせむじぇいえす)やPNaCl(ぴなくる)、LLVMという単語が知らない人でもわかないひとがわかった気になれるように書きました。つまりわかってないやつとはエントリを書いている本人のことだよ! PNaClとasm.jsでカワルミライ Webの未来 〜 PNaClとasm.jsでカワルミライ - いま、モバイルWebの先端で起こっていること from Kei Nakazawa 結構ブクマが多いのでみんな気になっているんだろうなぁ、という雰囲気があります。 でも読んでみると良く分からない単語があったり、業界背景を理解して
こんにちは、 id:yanbe です。2013年12月16日(月)に、ブログ「本の虫」を書かれている江添亮様と、ボレロ村上様による「江添とボレロ村上の京都C++勉強会」が、株式会社はてな 京都オフィス 8階セミナールームにて開催されます。 C++の最新動向などにご関心をお持ちの方は、ふるってご参加ください。参加の申し込みはATNDにて受け付けております。 基礎情報 内容 C++の勉強会 開催日 2013年12月16日 (月) 時間 19:00~22:00(19:00 開場、19:30 開始) 場所 〒604-0835 京都府京都市中京区高宮町206 御池ビル8F 会場名 株式会社はてな 京都本社 セミナールーム 発表者 江添亮、ボレロ村上 参加枠 40人 参加費 無料 入場方法 御池ビル8階には、西側の玄関から入り、廊下をまっすぐ進むと見えるエレベーター1つで上がれます。 開場の時間帯(1
ホーム < ゲームつくろー! FBX習得編 FBXは3D製作ツールの筆頭であるMayaやMaxでお馴染みAutodesk社が提唱している汎用フォーマットです。3Dモデルの頂点やポリゴンの情報はもちろんのこと、アニメーションやライト、カメラその他様々な情報を格納できます。大半の3DモデルツールがFBXのエクスポートをサポートしているのも魅力です。3DモデルのフォーマットとしてはXファイルがありますが、親元であるMicrosoftがDirectX10でこれを不採用にしてしまったために幸先不安になってしまいました。代替となる有力フォーマットとしてFBXは知っておいて損は無いわけです。 嬉しい事に、AutodeskはFXBファイルとプログラムを結びつける「FXB SDK」を無償で提供していまして、この編ではこのSDKを使って3Dの情報を読み込んでみようと思います。
C++11の参考書をGitHubで公開する。 GitHub: EzoeRyou/cpp-book GitHubからzipでダウンロード GitHub Pagesでの閲覧:C++11の文法と機能 序 本書はC++11のコア言語の文法と機能を、標準規格書に従って解説したものである。正式なC++規格書として発行された後の、ひとつ後のドラフト規格、N3337 を参考にしている。ドラフト規格を参考にした理由は、正式なC++規格書は、個人での入手が煩わしいためである。読者に入手が困難な資料を元に記述された参考書は価値がない。そのため、読者が容易に入手できるドラフト規格のうち、正式なC++規格書とほとんどかわらないN3337を参考にした。 本書の対象読者は、C++を記述するものである。C++実装者ではない。そのため、サンプルコードを増やし、冗長な解説を増やし、C++コンパイラーを実装するための詳細な定義
Release Notes for Cocos2d-x v3.0.0¶ Release Notes for Cocos2d-x v3.0.0Misc InformationRequirementsRuntime RequirementsCompiler Requirements Highlights of v3.0.0Features in detailC++11 featuresstd::functionstrongly typed enumsoverride Removed Objective-C patternsNo more 'CC' prefix for C++ classes and free functionsclone() instead of copy()Singletons use getInstance() and destroyInstance()gettersPO
Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode
15. Visual Studio は 着実に C++11/14 に対応 2010. 4 2010 auto, move, nullptr lamdas, <random> 2012. 9 2012 Range-based for, enum class <chrono> , <ratio>. <thread> 2013. 6 2013 Preview Variadic templates initializer_lists, C++14 libs 2013. 9 2013 RC Non-static data member init defaulted / deleted functions 2013. 11 2013 2013 Q4 2013 + CTP constexpr, noexcept C++14 generic lamdas
14 views Boost.勉強会 #12で発表した「C++で作るWebアプリケーション」 ... More… Boost.勉強会 #12で発表した「C++で作るWebアプリケーション」 C++をJavaScriptにコンパイルするコンパイラ Emscriptenを使ってC++でブラウザ上で動くアプリケーションを開発する方法を解説します C++で作るWebアプリケーション Presentation Transcript そんなC++の進出を拒んできた領域C++はとてつもなく汎用的な言語である2013年6月22日土曜日 WEB2013年6月22日土曜日 サーバ クライアントこっちは割とどんな言語でも書ける問題はこっち2013年6月22日土曜日 JavaScriptWEBブラウザで動く物を作るために長らく使われてきた言語近代的な多くのブラウザが共通して対応している唯一の言語2013年6月22
先日llvm 3.3がリリースされました。aarch64(arm 64bit)のコードが生成できるようになったということなので、ソースからビルドして遊んでいたのですが、さりげなく凄く最適化されたコードが生成されているのに気がつきました。aarch64だと今は実行して確認できる環境が手元に無いので、普通のarmv7-aで同じことを試しました。 ここで使ったコードとその結果はgistに貼りました。 https://gist.github.com/tetsu-koba/5835724 ソースコード int sum(int x) { int sum = 0; int i; for (i = 1; i <= x; i++) { sum += i; } return sum; } 1からnまでの総和を求める関数です。1から100までの総和が5050なのはガウス少年の逸話で有名ですね。 gcc 4.8.
tolua++とは何か LuaにC++の関数やクラスを公開するにはグルーコードを書く必要がある。 けど、グルーコードを毎回書くのは大変! ↓ tolua++でグルーコードを自動生成。C++の関数やクラスをLuaで使えるように(バインド)する。 tolua++でバインド可能なもの 定数値(enumまたは#define) クラス(class)、構造体(struct) グローバル変数 グローバル関数 クラステンプレート このうち、関数に関してはluaの汎用グルーコードでもできるが、他のパターンにはまだ対応していないのでtolua++に頼る。 tolua++の準備 Windowsならtolua++の公式でダウンロード http://www.codenix.com/~tolua/ Macはcocos2d-xのアーカイブ内の/tools/tolua++/tolua++Mac.zipにtolua++が入
Embarcaderoが出したモバイルアプリ開発への解とは ──モバイルアプリ開発に注力する理由を教えてください。 de la Lama:今やモバイルが主流だからです。多くの企業が、「モバイルファースト戦略」を採っています。世界が劇的に変わっているのですから、ツールも変わらなければいけません。 世界中にあるクライアントの台数を見てみましょう。Windowsが10億台、Macが6500万台の規模なのに対して、モバイルは10億台、そしてWebは20億クライアントという規模です。今後も、ダイバーシティ(多様性)が強まる傾向が続くでしょう。開発者にとってもマルチデバイス対応は急務です。 ──Embarcaderoは、マルチデバイス対応について、どのような特色を打ち出そうとしているのですか。 de la Lama:私たちの狙いは、「ラピッド(迅速)なマルチデバイス開発」です。 マルチデバイス開発では
Boost の一部ながらも「実用的」すぎるため、とかくテンプレートメタプログラミングを愛好する諸兄から黙殺されてきた不幸のライブラリ、Boost.Python。Boost.勉強会でこいつの魅力を伝えようと思ったのだけど、時間の都合で無理だったので、簡単に紹介してみたい。 Boost.Python の基礎 Boost.Python は C++ のクラスや関数をラップする Python モジュールを恐ろしく簡単に書けるようにする、強力なライブラリである。 特に、Pyrex や Cython と比べて何がうれしいのかというと、 Python側にいちいちラッパ関数を書かなくてよい (テンプレートにより自動的に定義される) コンバータを登録することで、Python⇆C++の型の透過的な変換が容易にできる C++ のクラスを分かりやすい形で Python のクラスとして見せることが可能 といった点が挙
Objective-C と C++ のコードは、 *.mm 形式のファイルの中では混在させることができます。 なので、 Objective-C のライブラリを C++ でラップしてしまえば、ほとんどが C++ で組めるようになります。 以下はその方法 *.h では混在コードを書けないので、 C++ のクラスのメンバとして Objective-C のオブジェクトを持つには PImplイディオム を使用します。 Cpp.h #ifndef CPP_INCLUDE #define CPP_INCLUDE #include <boost/shared_ptr.hpp> class CppHoge { struct Impl; boost::shared_ptr<Impl> pImpl_; public: CppHoge(); ~CppHoge(); void doSomething(); }; #
そういえば C++ のヘッダファイルを #include するだけで使える GC を書きました。使い方は下のサンプルコードを見てもらえばいいとして、特徴としては、 ヘッダファイルを #include するだけで使える C++ の標準機能だけを使っているのでポータブル*1 mark-and-sweep, precise GC ってなあたりでしょうか。コードは GitHub - kazuho/picogc: a tiny, portable, precise, mark-and-sweep GC in C++ にあります。 C++ のプロジェクトで、ちょっとここだけは GC がほしいんだけど、ってなケースで使いやすいと思います。速度も、そこそこでるんじゃないかな*2。 というわけで、以下、サンプルコード。軽く説明しておくと、 GC を使うクラスは picogc::gc_object を継承する
先日、TimSortというソートアルゴリズムが話題になりました。TimSortは、高速な安定ソートで、Python(>=2.3)やJava SE 7、およびAndroidでの標準ソートアルゴリズムとして採用されているそうです。 C++のstd::sort()よりも高速であるというベンチマーク結果1が話題になり(後にベンチマークの誤りと判明)、私もそれで存在を知りました。実際のところ、ランダムなデータに対してはクイックソート(IntroSort)ほど速くないようですが、ソートというシンプルなタスクのアルゴリズムが今もなお改良され続けていて、なおかつ人々の関心を引くというのは興味深いものです。 しかしながら、オリジナルのTimSortのコードは若干複雑で、実際のところどういうアルゴリズムなのかわかりづらいところがあると思います。そこで今回はTimSortのアルゴリズムをできるだけわかりやすく解
makeって何? † ソースファイルを分割して大規模なプログラムを作成していると、コマンドでコンパイルするのが面倒です。また、一部のソースファイルを書き換えただけなのに全部をコンパイルし直すのは時間の無駄です。 そんな問題を解決するのがmakeです。Makefileと呼ばれるテキストファイルに必要なファイルと各ファイルのコンパイルのコマンド、ファイル間の依存関係を記します。そして、“make”というコマンドを実行するだけで、自動的にコマンドを実行してコンパイルしてくれます。これだけではスクリプトと大差がないのですが、makeはMakefileに記された依存関係に基づいて更新されたファイルの内関連のあるものだけを更新することで、コンパイル時間を短くします。 makeは特定のプログラミング言語に依存したものではありません。C言語のソースファイルのコンパイルにも使えますし、Verilog-HDL
C++, BoostC++ の定番ライブラリ Boost はいまや不動の地位を得ていますが、機能が多岐にわたりすぎていて、何から使い始めていいのか分からずにとっつきにくい印象がありました。Boost 関連の情報を探していて、Boostを使用しているプロジェクト - boostjp というページを見つけました。ここから、boost.org 上の次の3ページ製品情報オープンソースプロジェクト会社にリンクされていす。このページでは、様々な製品やプロジェクトで利用されている Boost のライブラリが紹介されています。せっかくなので、利用数ランキングを集計してみました。ランキング1〜10位早速1位から10位を紹介!!順位コンポーネント名利用数1Boost.SmartPointers241Boost.Bind243Boost.Regex204Boost.Function175Boost.String
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く