问题标签 [soil]

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 投票
1 回答
82 浏览

c++ - C++ OpenGL 中的第二个窗口在第一个窗口中停用 SOIL 纹理

所以我一直在为 openGL 类玩 SOIL,我的项目遇到了一个奇怪的问题。我将显示两个窗口,每个窗口包含三个视口,我在其中绘制一个带纹理的立方体或椭圆体,以展示我对深度和面剔除的理解。现在所有形状都正确绘制,并且在单独测试时看起来与预期完全一样,但是一旦我同时启用两个窗口,纹理就会在第一个窗口中禁用。我之前发布了一个类似的问题,所以为了澄清,如果我禁用窗口二,或者如果我在窗口二中使用窗口一的绘制功能,纹理将起作用。只有当两个窗口同时显示时才会出现问题。我还能够更改渲染形状的颜色,

这是我的主要代码 w/ Initialisation void main(int argc, char** argv) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);

这些是两个窗口绘制函数

这是我的对象绘制代码的一点点。我已经把它剥离了一点;它只为立方体绘制一个面(我已经确认如果所有视口都绘制一个面,也会出现同样的问题)。

0 投票
0 回答
29 浏览

statistics - 对数变换以获得正态分布。适用于实验室研究?

我对不同土壤的一氧化二氮和二氧化碳排放进行了实验室孵化研究。数据高度倾斜。我记录转换数据以运行方差分析。但我的一位同事对此表示怀疑,因为我们还没有发现任何研究人员使用对数转换数据的土壤孵化研究论文。我应该怎么办?无论其他人做什么,我都应该记录转换我的数据以获得正态分布吗?当我们将文章提交给期刊时,我们关心的是审稿人的问题。

0 投票
2 回答
4316 浏览

c++ - SOIL_load_image() 返回 null

回答

SOIL_last_result()按照dcook建议使用后,我发现了两件事:

1)如前所述,它找不到图像,PaulMcKenzie因此我的工作目录确实不正确。genpfault

2)设置完整路径后,它提到我的jpeg格式(渐进式)不支持。我将图像设置为标准的 jpeg 格式并且它工作。

谢谢您的帮助!


原始问题

我目前正在尝试使用 SOIL 加载图像以与 OpenGL 一起使用。但是,它似乎无法正确加载图像,因为分配给它的变量最终为空。我试过看这个,但似乎这个人在设置属性时只是放错了布局位置。我让它glGetError()在每一行之后检查错误(),但为了便于阅读,我在这里省略了它。

OpenGL 错误发生glTexImage2D()GL_INVALID_VALUE. 这很可能是因为imgWidth/imgHeightGL_MAX_TEXTURE_SIZE空图像大。

输出:

代码:

让我知道是否需要更多数据。谢谢!

编辑 1:是的,图像位于正确的位置: bin目录

另外,我尝试使用完整路径,但没有帮助。

0 投票
1 回答
3435 浏览

c++ - SOIL 将PNG图像加载到纹理中会变成灰色图像

所以我想使用 SOIL 加载 PNG 图像,如下所示:

当我使用 JPEG 图像时,一切都按预期加载和渲染......但是当我尝试加载 PNG 图像时,我得到以下结果:

以 PNG 格式渲染的图像

任何人都知道这里可能出了什么问题?!

0 投票
1 回答
1387 浏览

c++ - SOIL - 获取图像尺寸

我决定使用 SOIL 来加载图像,以便在我的项目中与 OpenGL 一起使用。我有这个方法,它加载一个图像并返回一个 GLTexture,它是一个包含 GLuint 纹理 ID 和两个整数宽度和高度的结构:

}

据我所知,glGetTexLevelParameteriv() 应该返回绑定到宽度和高度的纹理的宽度,但是每当我加载图像时,它都会返回 0。

我应该填写宽度和高度作为方法的参数,还是可以通过 OpenGL 获取它们?

0 投票
1 回答
912 浏览

r - 如何在 R 中绘制剂量反应模型?

我对 R 游戏比较陌生,因此试图将我的数据分析转换为 R。

在 excel 中,我拟合了一个动力学模型来解释作为锰可用性函数的产量变化。

我想结合我的实验数据在 R 中绘制模型。

我已经尝试使用样本 X 值绘制模型 Y 值,并且由于它们没有排序,因此该线无法正确绘制。

任何人都可以帮忙吗?

也许有一种简单的方法可以将具有定义参数的模型拟合到实验数据?

0 投票
3 回答
1734 浏览

c++ - 在优胜美地中通过 g++ 链接 SOIL 的问题

我一直在尝试将SOIL链接到我正在使用 OpenGL 进行的项目。我正在运行优胜美地 10.10.4。

当我尝试在我的代码中使用 SOIL 库时,我收到以下错误(更新):

我的脚步

我按照 SOIL 中的 make 文件指示的过程进行操作:make,make install。它将 libSOIL.a 文件放在 /usr/local/lib 中,将 SOIL.h 放在 /usr/local/include 中。我在我的代码中包含:

我的 Makefile 包含这个 g++ 目标:

然后就出现了上面的错误。

然后我尝试了许多不同的事情:我安装了这个人的 Mac OS 版本的 SOIL(将 libSOIL.a 和 libSOIL.dylib 放在 /opt/local/lib 中,将 SOIL.h 放在 /opt/local/include 中);我尝试'-arch 1386 -arch x86_64' 按照这个答案的建议添加添加。对于这些中的每一个,我仍然收到与以前相同的错误。

关于可能是什么问题的任何建议?

0 投票
1 回答
700 浏览

c++ - OpenGL纹理加载与土壤帮助需要

这是代码。请帮助伙计们

我没有收到错误,但没有加载纹理。

0 投票
1 回答
209 浏览

opengl - OpenGL 纹理不使用 SOIL 加载

嘿,我的纹理无法显示,我不知道出了什么问题。教程没有帮助。这是我的代码:

spriteX = 0, spriteY = 0, spriteW = 400, spriteL = 400, x = 0, y = 0

这是我得到的输出: 输出窗口

如您所见,黑色三角形显示良好,但没有纹理

0 投票
1 回答
1077 浏览

c++ - 如何在OpenGL中将不透明对象与透明对象分开

我正在尝试在 OpenGL 中实现透明度,从我读过的内容来看,有必要首先渲染所有不透明对象,然后以正确的顺序渲染透明对象。

我的问题是如何在场景图中将不透明对象与透明对象分开,以便我可以首先渲染不透明对象。我的场景图由一堆节点组成,这些节点可以附加实体,每个实体可以由多个具有不同材质的网格组成,每个网格都有一个或多个纹理。

如果我将一个场景加载到我的图表中,我需要知道哪些材质是部分或完全透明的,这意味着我需要检查加载的纹理是否有任何小于 1 的 alpha 值。我目前正在使用 Assimp 来处理加载模型/场景和 SOiL 来读取纹理,我还没有找到任何简单的方法来区分透明材料和不透明材料。

这可能有一个非常简单的解决方案,因为我还没有找到其他人有同样的问题,但我仍然从 OpenGL 开始,过去几个小时我一直坚持这个问题。

透明度通常是如何完成的,不透明对象如何与部分或完全透明的对象分开,以便可以首先渲染它们?