Nintendo Switch™、PlayStation®4、STADIA、Linux(OpenGL)、Windows(DirectX 11/12、OpenGL、Vulkan)、 Android(OpenGL ES3、Vulkan)、iOS(OpenGL ES3、Vulkan、Metal(予定))
![リアルタイムレンダリングエンジン Mizuchi - シリコンスタジオ](https://cdn-ak-scissors.b.st-hatena.com/image/square/54f8982d15eb384cbdb4a312076f9a02c4219167/height=288;version=1;width=512/https%3A%2F%2Fwww.siliconstudio.co.jp%2Fmiddleware%2Fmizuchi%2Fimages%2Fog_mizuchi.jpg)
iOSとアンドロイド、2大プラットホーム対応のゲーム開発が可能な『cocos2d-x』。国内外を問わず採用事例も多い人気フレームワークだが、その次期メジャーバージョンアップである3.0のリリースが近づいている。本稿ではcocos2d-x自体の紹介と共に、バージョン3.0の注目機能を取り上げてみたいと思う。要チェックだ! ◆cocos2d-xとは? cocos2d-xはMITライセンス下で配布されているゲーム開発用フレームワークであり、github上で誰でも参加できるオープンなスタイルで開発が進められている。すでにご存知の方も多いと思われるが、改めて紹介しておこう。 cocos2d-x最大の特徴はiOS、AndroidをはじめMacやWindows向けのゲームも開発できるマルチプラットホーム対応だ。開発言語には、C++をはじめLua、JavaScriptなどが使用できる。 エイリムの『ブレイ
Unicode APIをC++標準ライブラリに入れる設計的な難しさについての思考整理。 たとえば、以下のような「あるコードポイントが結合文字かを判定する非メンバ関数」をC++標準ライブラリに入れることはできない。 bool is_combining_character(char32_t code_unit); Unicodeのプロパティ取得には超巨大な辞書が必要になる。そしてC++の設計思想としてゼロオーバーヘッド原則というのがあるから(D&E読もう)、こういう設計はできない。 もしやるなら、unicode_propertyのようなクラスを作り、そのインスタンスを経由してプロパティを取得することになる。そして超巨大な辞書をいくつもぽんぽん作られると困るので、ここはシングルトンにするのが適切となる。しかしシングルトンが一般的に嫌われているというのと、C++標準ライブラリにシングルトンを取り入
MonoプロジェクトのGithubをうろうろしてるとなんか面白そうなのを見つけました、ってので。 mono/CppSharp ってのを見つけました。こいつは、C++のDLLを自動でラップしてくれるコードを吐いてくれる、というライブラリです。C++ネイティブのライブラリをC#から呼びたい、って場面も結構あるんですよね。特に数値計算系の処理とか。なので、昔から色々プロジェクトは盛んで、monoもCXXIってのもやってます。また、C#に限らない汎用的なツールとしてSWIGってのもあります。 これらのツールと大きくアプローチが異なるところがありまして、それは、この人、中にLLVM/Clangを飼っています。C#コードを生成する際のC++のパースにClangを用いているのですよ。なので、SWIGのように事前の型定義をしておく必要がありません。 一方で、CXXIがマルチプラットフォームをはなっから志向
cppmix.connpass.com C++勉強会「C++ MIX」の次回日程は、2024年2月9日(金) 19:00-21:00に決まりました。 ご参加お待ちしております。 cppmix.connpass.com 3年ぶりにC++勉強会を開催します! cpprefjp.github.io opencollective.com C++日本語リファレンスを提供しているcpprefjpプロジェクトで、スポンサー募集をはじめました。 スポンサー募集のサービスとしては、Open Collectiveを使用しています。このサービスの特徴としては、手数料として10%ほど引かれますが、一般社団法人などを作らずとも団体口座をもつことができ、その口座の状況がオープンになるのでオープンソースのプロジェクトで使いやすいサービスとなっています。 私たちのWebサイトは広告をつけていないので、これまでは完全に無償
かつて、ゲームプログラミングはアセンブリが主流で、8bitのCPUは掛け算や割り算すらないものでした。割り算がないCPUっていつの時代だよ、っていう人たちもおりますが、ゲームボーイアドバンスに搭載されているARM7TDMIは除算の命令を持っていません。(故に除算を書くと死ぬほど遅いので、乗算で代用したりする) また、浮動小数に対する演算ユニットを持っていないハードウェアもあります。ニンテンドーDSに搭載されているARM946E-Sですら、浮動小数演算ユニットはありません。(CPUの機能としてはオプションで存在する)そのために固定小数点といった技術もあるわけですが、古くさい話です。 これらはCとC++の機能を駆使していかにパフォーマンスを出すかを余儀なくされた時代です。 さておき、最近はスマートフォンでのゲーム開発も進化しており、C++がiPhoneとAndroidの両方で動くということもあ
執筆時点のAndroid NDK(r19)について。 知って措いた方良い事 JNIのCバインディングとC++バインディングはまったく別物 APIの名前は同じ挙句にC++版でも名前空間つこうて無かったりで、ありがちなC/C++対応と言いつつ実はCっていうパターンかと思いきやC++バインディングでは同名のAPIでパラメーターの数が違ったり、ポインターのポインターがポインターと参照になっていてAPIを使ったユーザー定義部分のコードをCとC++では変える必要があるなど設計がおかしい。 JNIは蛇殺し JNIのJAVAとCの名前空間の結合ルールが馬鹿なのでユーザー定義でsnake_caseのシンボルを使うと死ぬ。しかもAndroidで実行してランタイムエラーが出現するまで問題は顕在化しない。 この問題に対しsnakerの私は_の代わりに大文字の'X'を使う事にせざるを得なかった。例えば`jni_is
C++プログラミング入門 作者:サティア,グレゴリー,ブラウン,ダウグオライリー・ジャパンAmazon お手軽暗号 @yutakikuchi_です。 今日はcppで暗号/復号するためのエントリーを書きます。PHPやPythonにはcrypt標準モジュールがありドキュメントも充実しているので簡単に暗号化できますが、cppではそれらがあまり整備されていない事もあってプログラム書く時にちょいと苦労します。尚、ここでお手軽暗号と言っているのは暗号化のブロック方式をECBで対応するためです。CBC方式でも良いのですがIVの管理も面倒だし、そもそもそこまで暗号化強度に拘らないケースを想定しています。cppでの暗号化を行う為のLibraryとしてcrypto++という様々な暗号化方式をサポートする物を利用します。 Crypto++ Library 5.6.2 - a Free C++ Class Lib
What's new 2008/06/30 Google 検索窓をつけてみました。 2008/06/14 身長や体重など複数の基準でソートする例 を追記。 2008/06/14 英文字文書を読んで、文字数の頻度順にソートする例 を追記。 古い What's new 当サイトで提示するサンプルコードは、あまりにも単純明快で、一見つまらないぐらいに見えるはずです。しかし、もしあなたがそう感じたのであれば、それは、ねらいどおりで、大成功と言えます。ちょっと難解と思われている C++ が、つまらなく見えるほど平易に解説されているということですから。 基礎(入門)編 その他(非 C++ 的) エッセー C++ はアセンブリ言語のように軽快であるにもかかわらず、仮想クラスやクラスの継承、オペレータのオーバーロード、そして、テンプレートと、高級言語のプログラミングテクニックを余すところなく駆使で
みなさま初めまして。 ヘッドウォータースの竹上と申します。 iOS、Androidに変わる新しいスマホ向けOSの Tizen Native アプリ開発 について綴っていきたいと思います。 開発言語はC++になります。 C++経験者にとってはうれしいですね。 世間一般ではまだまだなじみのないTizenなので、超入門です。 解説の前に。 解説する前に今回出てくる用語を軽く説明しますね。 Form(フォーム):画面用クラス Control(コントロール):Formに配置するオブジェクトクラス FormはAndroidでいうActivity ControlはViewにあたります。 Tizen Native アプリ開発は、Android Nativeアプリ開発に非常に似ているので、 上のような感じでAndroidに置き換えて説明する事も多くなると思いますが、 できる限り、Androidのアプリ開発未
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く