問題タブ [cinder]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - C++ の不明な型エラー
何が起こっている?
突然、.h をインクルードしてその var Xcode を書き込むと、大量のエラーが発生します... また、不明な型のエラーも発生します。
.h がすぐそこに含まれているのにどうしてわからないのでしょうか?
例の MyClass.h に対応する NodeButton.h ファイルを次に示します。
そして、ここに例の MyOtherClass.h に対応する CursorMano.h の内容があります。
xcode - iOS開発用のCinderまたは純粋なOpenGL
obj-Cはまったく新しいですが、一方でCPPとANSI Cの一般的なユーザーであるため、obj-Cを使用する私の快適ゾーンから少し外れています。
だから人々は、なぜ私はobj-Cを学ばないのかと尋ねるかもしれません。私はそれを学びたいのですが、残念ながら私のユニプロジェクトのために非常にタイトなスケジュールで私はできるだけ多くの仕事をしたいと思っています。
私はobj-Cを少し使ってチュートリアルを実行しましたが、CPPの場合のように大量の貴重なコードを作成できるとは思いません。
昨日、私はCinderフレームワークに精通し、いくつかの例を試しました。その結果、特にOpenGLと数学ライブラリで非常に迅速な結果が得られました。
今私が気になっているのは、XCode Interface Builderを操作して、ストーリーボードまたはxibファイルをプロジェクトにバインドする機能です。
優れたGUIをXCodeのCinderと組み合わせるクリエイティブな方法はありますか、それとも純粋なobj-Cとライブラリに戻るように「強制」されていますか?
ありがとう。
xcode - 新しいシェーダーをロードするときに XCode 4.3.2 で SIGABRT 例外がスローされるのはなぜですか?
Cinder (libcinder.org) を使用して、いくつかのシェーダーを使用するアプリケーションを作成しています。
まったく同じアプローチを使用してロードして動作する既存のシェーダーがありますが、2 つの新しいシェーダーを追加すると、実行時に SIGABRT 例外がスローされます。
リソース定義の例を次に示します。
以下は、例外がスローされるシェーダー プログラムをビルドしようとする行です。shader = gl::GlslProg( loadResource(RES_VERT), loadResource(RES_FRAG) );
はい、ファイルはプロジェクトとビルド パス バンドル設定に含まれています。
リソース定義が機能しないのはなぜですか?
解決済み: これは、シェーダーのバージョン管理エラーが原因でした。コメントを参照してください。
c++ - OpenGL で FBO を使用したペイント アプリ
私は C++ と OpenGL (Cinder ライブラリを使用) でアプリケーションに取り組んでいます。
これは単純にマウス入力を取得しており、draw メソッドではマウスの位置に円を FBO に描画します。その後、FBO が画面に描画されます。FBO は毎回クリアされるわけではないので、以前のサークルはまだそこにあります。問題は、新しい円を FBO に描画すると、その上に描画されず、FBO の以前のコンテンツの下に描画されることです。FBO は、幅と高さのパラメーターのみで作成され、その他の設定はありません。setup() でもクリアされます。
oop - Cinderの別のクラスからキャンバスに描画する
すべてのコードをメインクラスのdraw()メソッドに配置せずに、libcinderを使用して描画できる方法はありますか?私は大きなアプリに取り組んでいますが、すべてを1つのファイルに詰め込むのは決して便利ではありません。
これは、アイデアの例です。
matrix - 球上のある点から点への移動
GPU ベースのパーティクル システムを使用しています。1024*1024 テクスチャの RGB 値として x、y、z 位置を渡すことによって計算された 100 万個のパーティクルがあります。速度についても同じことが行われています。
それらを任意の点から球上の点に移動させようとしています。
計算に使用している現在のシェーダーは、あるポイントから別のポイントに直接移動しています。
現在、質量または速度のテクスチャは使用していません。
moveToPos は、浮動小数点 (0.0f > 1.0f) としてのマウス ポインターです。座標系は (0.5,0.5 > -0.5,-0.5) から (0.0,0.0 > 1.0,1.0) に変換されます。
私はベクトル数学にまったく慣れていないので、計算が混乱しています。次の式を使用する必要があることはわかっています。
x=Rsinϕcosθ
y=Rsinφsinθ
z=Rcosφ
しかし、 moveToPos(xyz) > p(xyz) から角度を計算することは問題のままです
c++ - cinder 関数のオーバーロード エラー
この単純な cinder の例 (cinder の紹介から - http://libcinder.org/docs/v0.8.4/hello_cinder.html ) では、次のコンパイル エラーが発生します。
エラー 1 エラー C2661: 'cinder::app::App::loadResource' : 1 つの引数を取らないオーバーロードされた関数はありません
ただし、ドキュメントには次のように記載されています。
何か案は?
c++ - Cinder から Vec2 クラスを把握しようとしています
したがって、Vec2float* であるメンバー変数「center」を含む Node クラスがあります。この理由は、drawSolidCircle 関数を使用したいためで、中心を表すために Vec2float 変数が必要です。私が持っている質問の 1 つは、Vec2float はベクトルですか、それとも空間内のポイントですか? 多くのメンバー関数はある種のベクトル クラスのように聞こえますが、set() 関数は 2 つの引数しかとらないため、空間内の点のように見えます。円を描くには、点が必要です。ベクトルではなく、半径です。また、私が抱えている別の問題は、誰かが私に 2 つの double を与えた場合、どうすればそれらを Vec2float に適切に変換し、中心の x と y を設定できるかということです (x と y がある場合)。たとえば、以下の関数では、エントリの配列とその長さ 'n' が与えられます。エントリには、両方とも double である 2 つのメンバ変数 'x' と 'y' があります。ノードの配列を作成し、そのデータをコピーして円を描画したいと考えています。
参照: Vec2 クラス: http://libcinder.org/docs/v0.8.4/classcinder_1_1_vec2.html 形状を描画する関数のリスト、im drawSolidCircle を使用: http://libcinder.org/docs/v0.8.4/namespacecinder_1_1gl.html
助言がありますか?
c++ - OpenCVはウェブカメラストリームからシルエットを分離します
人のシルエットを未知のビデオストリームから分離しようとしています。(ユーザーのウェブカメラ)、を使用しC++/Cinder/OpenCV
ます。輪郭を特定して描画することはできますが、人全体の輪郭を取得するのではなく、要素(髪、目など)だけを取得します。
私が使用しているのは、BackgroundSubtractorMOG2を使用して背景を削除することです。ノイズを取り除くためにぼかします。適応しきい値。特定の複雑さで輪郭を見つけて描画します。
コード:
出力:(私はここでは若すぎて画像を投稿できません)
http://barnabysheeran.com/outgoing/stackoverflow/ss_1.png http://barnabysheeran.com/outgoing/stackoverflow/ss_2.png
全身いっぱいのシルエットにしたいと思います。
c++ - 私が見落としていたに違いない何かのためにランダムなEXC_BAD_ACCESS
久しぶりにC++に戻ってきたので、スタイルでやりたかったので、最初にlibCinderに飛び込んで、今までめったにやったことのないことを始めました(それでも、さまざまな理由でQtを好んでいました。 )。この計画で何がうまくいかない可能性がありますか?
特に、デバッグプロファイルを使用してXcode内からコードを実行し、いくつかの安全ベルトをストラップで固定した場合(別名デバッガー)はほとんど機能しませんが、その後、ワイルドで厄介なことが起こります。ユーザーも取得します。興奮して、何かが十分にタイトではなく、最終的に私のアプリケーションは惨めにクラッシュします。
犯人をPilotStudyApp::draw()関数(https://github.com/Morpheu5/PilotStudyのコードを参照)に絞り込むことができました。おそらく最後のforループ、つまり_activePointsを通過するループの周りです。しかし、あなたがBTから見ることができるように私は確信が持てません
あなたがここで完全に見ることができること:http://pastebin.com/izZcFy8p
C ++-fu(またはその欠如)に何か問題があると強く感じているので、見落としているものを見つけていただければ、非常に感謝しています(Processingに行きたくないので、幼稚園に戻りたい気がします:)
編集:STLはスレッドセーフではない可能性があるので、同期またはローカルコピーの作成はおそらく解決する必要があると思いましたか?