问题标签 [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.

0 投票
2 回答
9122 浏览

c++ - C ++中的未知类型错误

到底是怎么回事?

突然,当我包含 .h 并写下 var Xcode 给了我大量错误......以及未知类型错误。

当 .h 包含在其中时,怎么会不知道呢?

这是与示例中的 MyClass.h 对应的 NodeButton.h 文件

这里是 CursorMano.h 的内容,它对应于示例中的 MyOtherClass.h。

0 投票
1 回答
1014 浏览

xcode - 用于 iOS 开发的 Cinder 或纯 OpenGL

由于我对 obj-C 很陌生,但另一方面,我是 CPP 和 ANSI C 的普通用户,我在使用 obj-C 时有点脱离了我的舒适区。

所以有人可能会问,为什么我不学obj-C?我很想学习它,但不幸的是,由于我的 uni 项目,我的日程安排非常紧张,我希望尽可能多地工作。

我已经使用 obj-C 进行了一些工作并浏览了教程,但我认为自己无法像使用 CPP 那样创建大量宝贵的代码。

昨天我熟悉了 Cinder 框架并尝试了一些示例,结果非常快,尤其是 OpenGL 和数学库。

现在困扰我的是使用 XCode 界面构建器并将情节提要或 xib 文件绑定到项目的能力。

有没有一种创造性的方法可以将出色的 GUI 与 XCode 中的 Cinder 结合起来,还是我“被迫”回到纯 obj-C 和我的库?

谢谢。

0 投票
0 回答
306 浏览

xcode - 为什么加载新着色器时 XCode 4.3.2 中会引发 SIGABRT 异常?

我正在使用 Cinder (libcinder.org) 创建一个使用一些着色器的应用程序。

我使用完全相同的方法加载和工作现有着色器,但是当我添加两个新着色器时,它们在运行时抛出 SIGABRT 异常。

以下是资源定义的示例: #define RES_VERT CINDER_RESOURCE( ../resources/, vert.glsl, 804, GLSL ) #define RES_FRAG CINDER_RESOURCE( ../resources/, frag.glsl, 805, GLSL )

这是尝试构建抛出异常的着色器程序的行: shader = gl::GlslProg( loadResource(RES_VERT), loadResource(RES_FRAG) );

是的,这些文件包含在我的项目和我的构建路径捆绑设置中。

为什么我的资源定义不起作用?

已解决:这是由于着色器版本控制错误,请参阅评论。

0 投票
0 回答
446 浏览

c++ - 在 OpenGL 中使用 FBO 绘画应用程序

我正在使用 C++ 和 OpenGL 开发一个应用程序(使用 Cinder 库)。

它只是简单地获取鼠标输入,并在 draw 方法中将鼠标位置上的圆圈绘制到 FBO。之后,FBO 被绘制到屏幕上。FBO不是每次都清零,所以之前的圈子还在里面。问题是,当我在 FBO 上绘制新圆时,它不是在其上绘制,而是在 FBO 的先前内容下绘制。FBO 仅使用宽度和高度参数创建,没有其他设置。它也在 setup() 中被清除。

0 投票
1 回答
301 浏览

oop - 从 Cinder 中的另一个类绘制到画布

有没有一种方法可以使用 libcinder 进行绘制,而无需将所有代码放在主类的 draw() 方法上。我正在开发一个大型应用程序,将所有内容塞入一个文件中无论如何都不方便。

这是这个想法的一个例子:

0 投票
2 回答
774 浏览

matrix - 在球面上从一个点移动到另一个点

我正在使用基于 GPU 的粒子系统。通过将 x、y、z 位置作为 1024*1024 纹理上的 rgb 值传递来计算一百万个粒子。他们的速度也是如此。

我试图让它们从任意点移动到球体上的一个点。

我当前用于计算的着色器正在从一个点直接移动到另一个点。

我目前没有使用质量或速度纹理

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) 计算角度仍然是一个问题

0 投票
2 回答
419 浏览

c++ - cinder 函数重载错误

在这个简单的 cinder 示例中(来自 cinder 介绍 - http://libcinder.org/docs/v0.8.4/hello_cinder.html)我得到这个编译错误:

错误 1 ​​错误 C2661: 'cinder::app::App::loadResource' : 没有重载函数需要 1 个参数

但是文档说:

有任何想法吗?

0 投票
2 回答
1302 浏览

c++ - 试图从 Cinder 中找出 Vec2 类

所以我有一个 Node 类,它包含一个 Vec2float* 的成员变量“center”。这样做的原因是因为我想使用drawSolidCircle函数,并且我需要一个Vec2float变量来表示中心。我的一个问题是, Vec2float 是一个向量,还是空间中的一个点?许多成员函数使它听起来像某种矢量类,但 set() 函数只接受两个参数,这使它看起来像空间中的一个点,为了画一个圆,你需要一个点和半径,而不是矢量。我遇到的另一个问题是,如果有人给了我 2 个双打,我该如何正确地将它们转换为 Vec2float 并设置中心的 x 和 y(如果它甚至有 x 和 y)。因此,例如在下面的函数中,我得到了一个条目数组和它的长度,'n'。一个条目有两个成员变量“x”和“y”,它们都是双精度数。我想创建一个节点数组并复制该数据以使用它来绘制圆圈。

参考: Vec2 类:http ://libcinder.org/docs/v0.8.4/classcinder_1_1_vec2.html 绘制形状的函数列表,我使用 drawSolidCircle:http ://libcinder.org/docs/v0.8.4/namespacecinder_1_1gl.html

有什么建议么?

0 投票
1 回答
1123 浏览

c++ - OpenCV 从网络摄像头流中分离出剪影

我试图从未知的视频流中分离出一个人的剪影。(用户网络摄像头),使用C++/Cinder/OpenCV. 我已经识别和绘制轮廓,但我没有得到整个人的轮廓,只是元素(头发、眼睛等)

我正在使用:BackgroundSubtractorMOG2 删除背景。模糊以消除噪音。自适应阈值。查找和绘制具有一定复杂性的轮廓。

代码:

输出:(我在这里太初级,无法发布图片)

http://barnabysheeran.com/outgoing/stackoverflow/ss_1.png http://barnabysheeran.com/outgoing/stackoverflow/ss_2.png

我希望这是一个充满全身的剪影。

0 投票
2 回答
360 浏览

c++ - 随机 EXC_BAD_ACCESS 由于我必须忽略的一些事情

很长一段时间后我又回到了 C++,我想用风格来做这件事,所以我一头扎进了 libCinder 并开始做我以前很少做的事情(即使那时我还是因为一些原因更喜欢 Qt )。这个计划有什么问题?

问题是很少这样做,尤其是当我使用调试配置文件从 Xcode 内部运行我的代码并系上几条安全带(又名调试器)时,但随后我不得不陷入困境并且发生了令人讨厌的事情:用户也得到了兴奋,有些东西不够紧,最终我的应用程序悲惨地崩溃了。

我设法将罪魁祸首缩小到 PilotStudyApp::draw() 函数(参见此处的代码https://github.com/Morpheu5/PilotStudy),很可能是在最后一个 for 循环附近,即通过 _activePoints 的那个,但我不能确定,正如你从 bt 看到的那样

您可以在这里完全看到:http: //pastebin.com/izZcFy8p

我有一种强烈的感觉,我的 C++-fu(或缺乏)出了点问题,所以如果你们能发现我忽略的东西,我将非常感激(因为我不想去处理,它会感觉要回幼儿园了:)

编辑:我突然想到 STL 可能不是线程安全的,所以同步或制作本地副本应该可以解决吗?